.patrick-preferences-section{display:grid;gap:24px;margin-block:32px;scroll-margin-top:90px}.patrick-preferences-card{padding:clamp(18px,3vw,32px);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--ink);min-width:0}.patrick-preferences-card h2,.patrick-preferences-card h3{margin-top:0}.patrick-preferences-form,.patrick-preferences-form fieldset,.patrick-memory-add,.patrick-memory-list form{display:grid;gap:14px}.patrick-preferences-form fieldset{border:0;margin:0;padding:0;min-width:0}.patrick-preferences-form label,.patrick-memory-list label,.patrick-memory-add label{display:grid;gap:6px;font-weight:600}.patrick-preferences-form input:not([type=checkbox]),.patrick-preferences-form select,.patrick-memory-list textarea,.patrick-memory-add textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:inherit;min-height:44px;padding:10px 12px}.patrick-preferences-form textarea,.patrick-memory-list textarea,.patrick-memory-add textarea{resize:vertical}.patrick-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-block:10px}.patrick-preferences-form small,.patrick-preferences-menu small{color:var(--muted);line-height:1.5}.patrick-preferences-form .patrick-preferences-toggle{display:flex;align-items:center;gap:10px;min-height:44px}.patrick-preferences-toggle input,.patrick-preferences-menu input{width:20px;height:20px;flex:none;accent-color:var(--ink)}.patrick-style-preview{border-radius:var(--radius);padding:16px;background:var(--surface-tint);overflow-wrap:anywhere}.patrick-style-preview p{margin:8px 0}.patrick-preferences-actions{display:flex;flex-wrap:wrap;gap:10px}.patrick-preferences-card button,.patrick-preferences-form button,.patrick-preferences-menu button{min-height:44px;padding:10px 16px;border:1px solid var(--line-strong);border-radius:var(--radius-control);color:var(--ink);background:var(--surface);font:inherit;cursor:pointer}.patrick-preferences-form button[type=submit],.patrick-memory-add button{background:var(--brand);color:var(--surface)}.patrick-preferences-form summary,.patrick-preferences-menu summary{cursor:pointer;padding-block:12px}.patrick-preferences-status{min-height:24px;margin:0;color:var(--muted)}.patrick-preferences-card [role=alert],.patrick-preferences-form [role=alert]{border-left:3px solid currentColor;padding-left:12px;font-weight:600}.patrick-memory-list{list-style:none;padding:0;display:grid;gap:16px}.patrick-memory-list li{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);padding:16px;overflow-wrap:anywhere}.patrick-memory-list button{justify-self:start}.patrick-memory-list fieldset,.patrick-memory-add fieldset{display:grid;gap:12px;border:0;padding:0;margin:0;min-width:0}.patrick-memory-list input,.patrick-memory-add input,.patrick-remember-form input,.patrick-remember-form textarea{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control)}.patrick-remember-form fieldset{display:grid;gap:12px;border:0;padding:0;margin:0;min-width:0}.patrick-remember-form label{display:grid;gap:6px}.patrick-recalled-work{border:1px solid var(--line-strong);border-radius:var(--radius);padding:16px;margin-block:18px}.patrick-recalled-work h4{margin:0 0 8px}.patrick-recalled-work p,.patrick-recalled-work small{color:var(--muted)}.patrick-recalled-work ul{list-style:none;padding:0;display:grid;gap:16px}.patrick-recalled-work li{display:grid;gap:8px;overflow-wrap:anywhere}.patrick-recalled-work button{justify-self:start;min-height:44px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);cursor:pointer}.patrick-welcome-dialog{box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line-strong);border-radius:var(--radius-card);padding:clamp(18px,4vw,32px);background:var(--surface);color:var(--ink)}.patrick-welcome-dialog::backdrop{background:color-mix(in srgb,var(--ink) 38%,transparent)}.patrick-welcome-dialog h1{font:700 clamp(28px,5vw,38px)/1.15 var(--display)}.patrick-ai-disclosure{color:var(--muted);font-size:.9rem}.patrick-preferences-menu{position:relative;font-size:14px}.patrick-preferences-menu summary{min-height:44px;box-sizing:border-box;white-space:nowrap}.patrick-preferences-menu>div{position:absolute;z-index:60;right:0;top:100%;width:min(300px,calc(100vw - 48px));display:grid;gap:14px;padding:18px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.patrick-preferences-menu label{display:flex;align-items:center;gap:8px}.patrick-preferences-menu p{margin:0}.patrick-preferences-menu>div{max-height:calc(100dvh - 150px);overflow-y:auto}.patrick-preferences-form :focus-visible,.patrick-memory-list :focus-visible,.patrick-memory-add :focus-visible,.patrick-preferences-menu :focus-visible{outline:3px solid var(--ink);outline-offset:3px}.patrick-preferences-form button:disabled,.patrick-preferences-card button:disabled{opacity:.55;cursor:wait}@media(max-width:560px){.patrick-preferences-grid{grid-template-columns:minmax(0,1fr)}.patrick-preferences-menu>div{position:fixed;top:120px;right:16px;max-height:calc(100dvh - 160px);overflow-y:auto}}.patrick-preferences-card small,.patrick-preferences-form small,.patrick-memory-list small{font-size:14px}.patrick-preferences-card button,.patrick-preferences-form button,.patrick-preferences-menu button,.patrick-recalled-work button{transition:background-color var(--motion-fast) ease-out,border-color var(--motion-fast) ease-out}.patrick-preferences-card button:not(:disabled):hover,.patrick-preferences-menu button:not(:disabled):hover,.patrick-recalled-work button:not(:disabled):hover{border-color:var(--brand);background:var(--surface-tint)}.patrick-preferences-form button[type=submit]:not(:disabled):hover,.patrick-memory-add button:not(:disabled):hover{background:var(--brand-hover);color:var(--surface)}@media(prefers-reduced-motion:no-preference){.patrick-welcome-dialog[open],.patrick-preferences-menu[open]>div{animation:csi-arrive var(--motion-panel) var(--ease-enter)}}
