:root,[data-theme=light]{--ds-bg:#edeae4;--ds-bg-soft:#e4e0d8;--ds-bg-warm:#f5f1ea;--ds-card:#fcfbf9;--ds-ink:#1a1714;--ds-ink-soft:#4a443d;--ds-muted:#837a72;--ds-faint:#a39a8e;--ds-border:#1a171414;--ds-border-strong:#1a171429;--ds-accent:#b4762a;--ds-accent-deep:#8a5a1f;--ds-accent-glow:#b4762a3d;--ds-accent-soft:#b4762a1a;--ds-accent-faint:#b4762a0f;--ds-serif:"Newsreader", Georgia, serif;--ds-sans:"Instrument Sans", -apple-system, "SF Pro Text", Inter, sans-serif;--ds-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--ds-text-display:32px;--ds-text-title:24px;--ds-text-heading:18px;--ds-text-body:15px;--ds-text-small:13px;--ds-text-tiny:11px;--ds-leading-tight:1.25;--ds-leading-normal:1.55;--ds-leading-relaxed:1.7;--ds-space-1:4px;--ds-space-2:8px;--ds-space-3:12px;--ds-space-4:16px;--ds-space-5:20px;--ds-space-6:24px;--ds-space-8:32px;--ds-space-10:40px;--ds-space-12:48px;--ds-space-16:64px;--ds-radius-sm:8px;--ds-radius-md:12px;--ds-radius-lg:16px;--ds-radius-xl:24px;--ds-radius-full:999px;--ds-shadow-sm:0 1px 2px #1a17140a;--ds-shadow-md:0 4px 12px #1a17140f;--ds-shadow-lg:0 12px 32px #1a17141a;--ds-shadow-xl:0 24px 64px #1a171424;--ds-ease:cubic-bezier(.4, 0, .2, 1);--ds-ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ds-duration-fast:.15s;--ds-duration-normal:.25s;--ds-duration-slow:.4s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--ds-bg:#14110d;--ds-bg-soft:#1c1813;--ds-bg-warm:#1a1611;--ds-card:#201b15;--ds-ink:#edeae4;--ds-ink-soft:#c9c0b4;--ds-muted:#8a8177;--ds-faint:#6b6359;--ds-border:#edeae414;--ds-border-strong:#edeae429;--ds-accent:#d6a45c;--ds-accent-deep:#e8be7e;--ds-accent-glow:#d6a45c38;--ds-accent-soft:#d6a45c1a;--ds-accent-faint:#d6a45c0f;--ds-shadow-sm:0 1px 2px #0003;--ds-shadow-md:0 4px 12px #0000004d;--ds-shadow-lg:0 12px 32px #0006;--ds-shadow-xl:0 24px 64px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.ds-reset{box-sizing:border-box;margin:0;padding:0}.ds-display{font-family:var(--ds-serif);font-size:var(--ds-text-display);line-height:var(--ds-leading-tight);letter-spacing:-.01em;color:var(--ds-ink);font-weight:400}.ds-title{font-family:var(--ds-serif);font-size:var(--ds-text-title);line-height:var(--ds-leading-tight);letter-spacing:-.005em;color:var(--ds-ink);font-weight:500}.ds-heading{font-family:var(--ds-sans);font-size:var(--ds-text-heading);line-height:var(--ds-leading-tight);color:var(--ds-ink);font-weight:600}.ds-body{font-family:var(--ds-sans);font-size:var(--ds-text-body);line-height:var(--ds-leading-normal);color:var(--ds-ink-soft)}.ds-small{font-family:var(--ds-sans);font-size:var(--ds-text-small);line-height:var(--ds-leading-normal);color:var(--ds-muted)}.ds-tiny{font-family:var(--ds-mono);font-size:var(--ds-text-tiny);line-height:var(--ds-leading-normal);letter-spacing:.08em;text-transform:uppercase;color:var(--ds-faint)}.ds-icon{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}.ds-icon-sm{width:16px;height:16px}.ds-icon-lg{width:24px;height:24px}.ds-icon-xl{width:32px;height:32px}.ds-icon-accent{color:var(--ds-accent)}.ds-icon-muted{color:var(--ds-muted)}.ds-btn{justify-content:center;align-items:center;gap:var(--ds-space-2);font-family:var(--ds-sans);font-size:var(--ds-text-body);cursor:pointer;transition:all var(--ds-duration-fast) var(--ds-ease);white-space:nowrap;border:0;font-weight:500;text-decoration:none;display:inline-flex}.ds-btn-primary{background:var(--ds-ink);color:var(--ds-bg);border-radius:var(--ds-radius-full);padding:var(--ds-space-3) var(--ds-space-6)}.ds-btn-primary:hover{box-shadow:var(--ds-shadow-md);transform:translateY(-1px)}.ds-btn-accent{background:var(--ds-accent);color:#fff;border-radius:var(--ds-radius-full);padding:var(--ds-space-3) var(--ds-space-6)}.ds-btn-accent:hover{background:var(--ds-accent-deep);box-shadow:0 4px 16px var(--ds-accent-glow);transform:translateY(-1px)}.ds-btn-ghost{color:var(--ds-ink);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-full);padding:var(--ds-space-3) var(--ds-space-6);background:0 0}.ds-btn-ghost:hover{border-color:var(--ds-accent);background:var(--ds-accent-faint)}.ds-btn-icon{border-radius:var(--ds-radius-full);width:40px;height:40px;color:var(--ds-ink-soft);background:0 0;justify-content:center;align-items:center;display:inline-flex}.ds-btn-icon:hover{background:var(--ds-bg-soft);color:var(--ds-ink)}.ds-card{background:var(--ds-card);border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);padding:var(--ds-space-5);box-shadow:var(--ds-shadow-sm);transition:all var(--ds-duration-normal) var(--ds-ease)}.ds-card-hover:hover{box-shadow:var(--ds-shadow-md);border-color:var(--ds-border-strong);transform:translateY(-2px)}.ds-card-accent{border-color:var(--ds-accent);background:linear-gradient(135deg, var(--ds-card), var(--ds-accent-faint))}.ds-input{font-family:var(--ds-sans);font-size:var(--ds-text-body);color:var(--ds-ink);background:var(--ds-card);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-md);padding:var(--ds-space-3) var(--ds-space-4);width:100%;transition:all var(--ds-duration-fast) var(--ds-ease)}.ds-input:focus{border-color:var(--ds-accent);box-shadow:0 0 0 3px var(--ds-accent-glow);outline:none}.ds-input::placeholder{color:var(--ds-faint)}.ds-badge{align-items:center;gap:var(--ds-space-1);font-family:var(--ds-mono);font-size:var(--ds-text-tiny);letter-spacing:.06em;padding:var(--ds-space-1) var(--ds-space-2);border-radius:var(--ds-radius-full);background:var(--ds-bg-soft);color:var(--ds-muted);display:inline-flex}.ds-badge-accent{background:var(--ds-accent-soft);color:var(--ds-accent-deep)}.ds-badge-success{color:#2d7d2d;background:#228b221a}.ds-divider{background:var(--ds-border);height:1px;margin:var(--ds-space-4) 0;border:0}.ds-empty{text-align:center;padding:var(--ds-space-12) var(--ds-space-6);color:var(--ds-muted)}.ds-empty-icon{width:48px;height:48px;margin:0 auto var(--ds-space-4);color:var(--ds-faint);opacity:.6}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ds-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes ds-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ds-animate-fade-in{animation:ds-fade-in var(--ds-duration-normal) var(--ds-ease)}.ds-animate-slide-up{animation:ds-slide-up var(--ds-duration-normal) var(--ds-ease)}.ds-animate-scale-in{animation:ds-scale-in var(--ds-duration-fast) var(--ds-ease-spring)}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--ds-sans);font-size:var(--ds-text-body);line-height:var(--ds-leading-normal);color:var(--ds-ink);background:radial-gradient(1200px 600px at 85% -10%, var(--ds-accent-faint), transparent 60%), var(--ds-bg);margin:0}button{font-family:inherit}code{font-family:var(--ds-mono);font-size:.92em}.sun{width:54px;height:54px;margin-bottom:var(--ds-space-5);background:radial-gradient(circle at 35% 35%, var(--ds-accent-deep), var(--ds-accent) 70%);box-shadow:0 0 34px var(--ds-accent-glow);border-radius:50%}.sun-sm{width:30px;height:30px;margin-bottom:0}.sun-lg{width:120px;height:120px}.splash{justify-content:center;align-items:center;gap:var(--ds-space-2);flex-direction:column;min-height:100%;display:flex}.shell{flex-direction:column;min-height:100%;display:flex}.topbar{z-index:30;align-items:center;gap:var(--ds-space-3);padding:var(--ds-space-3) var(--ds-space-5);background:color-mix(in srgb, var(--ds-bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--ds-border);display:flex;position:sticky;top:0}.brand{font-family:var(--ds-serif);font-size:var(--ds-text-heading);letter-spacing:-.01em;color:var(--ds-ink);font-weight:600}.brand em{color:var(--ds-accent);font-style:normal}.topbar-spacer{flex:1}.session-chip{align-items:center;gap:var(--ds-space-2);display:inline-flex}.session-avatar{border-radius:var(--ds-radius-full);background:var(--ds-accent);color:#fff;width:28px;height:28px;font-size:var(--ds-text-small);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.session-signout{color:var(--ds-muted);font-size:var(--ds-text-small);cursor:pointer;padding:var(--ds-space-1) var(--ds-space-2);background:0 0;border:0}.session-signout:hover{color:var(--ds-ink)}.nav-overlay{z-index:40;animation:ds-fade-in var(--ds-duration-fast) var(--ds-ease);background:#1a171452;position:fixed;inset:0}.nav-drawer{background:var(--ds-bg-warm);border-right:1px solid var(--ds-border);width:min(300px,84vw);box-shadow:var(--ds-shadow-lg);padding:var(--ds-space-5);gap:var(--ds-space-6);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto}.nav-header{justify-content:space-between;align-items:center;display:flex}.nav-section{gap:var(--ds-space-1);flex-direction:column;display:flex}.nav-section>button{align-items:center;gap:var(--ds-space-3);padding:var(--ds-space-3) var(--ds-space-3);border-radius:var(--ds-radius-md);color:var(--ds-ink-soft);font-size:var(--ds-text-body);cursor:pointer;text-align:left;transition:all var(--ds-duration-fast) var(--ds-ease);background:0 0;border:0;font-weight:500;display:flex}.nav-section>button:hover{background:var(--ds-bg-soft);color:var(--ds-ink)}.nav-section>button.active{background:var(--ds-accent-soft);color:var(--ds-accent-deep)}.nav-label{padding:0 var(--ds-space-3) var(--ds-space-2)}.btn-primary{justify-content:center;align-items:center;gap:var(--ds-space-2);font-family:var(--ds-sans);font-size:var(--ds-text-body);cursor:pointer;background:var(--ds-ink);color:var(--ds-bg);border-radius:var(--ds-radius-full);padding:var(--ds-space-3) var(--ds-space-6);transition:all var(--ds-duration-fast) var(--ds-ease);border:0;font-weight:500;display:inline-flex}.btn-primary:hover{box-shadow:var(--ds-shadow-md);transform:translateY(-1px)}.chat{width:100%;max-width:820px;min-height:0;padding:0 var(--ds-space-5);flex-direction:column;flex:1;margin:0 auto;display:flex}.chat-scroll{padding:var(--ds-space-6) 0;flex:1;overflow-y:auto}.chat-empty{padding-top:var(--ds-space-16)}.chat-empty-sub{max-width:480px;margin:var(--ds-space-3) auto 0}.chat-samples{gap:var(--ds-space-2);max-width:560px;margin:var(--ds-space-8) auto 0;flex-direction:column;display:flex}.chat-sample{text-align:left;background:var(--ds-card);border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);padding:var(--ds-space-3) var(--ds-space-4);color:var(--ds-ink-soft);font-size:var(--ds-text-small);cursor:pointer;transition:all var(--ds-duration-fast) var(--ds-ease)}.chat-sample:hover{border-color:var(--ds-accent);background:var(--ds-accent-faint);color:var(--ds-ink)}.chat-messages{gap:var(--ds-space-4);flex-direction:column;display:flex}.msg{max-width:86%;padding:var(--ds-space-3) var(--ds-space-4);border-radius:var(--ds-radius-lg);animation:ds-slide-up var(--ds-duration-normal) var(--ds-ease)}.msg p{white-space:pre-wrap;margin:0}.msg-user{background:var(--ds-ink);color:var(--ds-bg);border-bottom-right-radius:var(--ds-radius-sm);align-self:flex-end}.msg-gia{background:var(--ds-card);border:1px solid var(--ds-border);color:var(--ds-ink-soft);border-bottom-left-radius:var(--ds-radius-sm);box-shadow:var(--ds-shadow-sm);align-self:flex-start}.msg-badge{margin-top:var(--ds-space-2)}.msg-actions{gap:var(--ds-space-2);margin-top:var(--ds-space-3);display:flex}.composer-wrap{padding:var(--ds-space-4) 0 var(--ds-space-6)}.composer{gap:var(--ds-space-2);flex-direction:column;display:flex}.composer textarea{resize:none;color:var(--ds-ink);font-family:var(--ds-sans);font-size:var(--ds-text-body);line-height:var(--ds-leading-normal);background:0 0;border:0;min-height:28px;max-height:160px}.composer textarea:focus{outline:none}.composer textarea::placeholder{color:var(--ds-faint)}.composer-meta{justify-content:space-between;align-items:center;gap:var(--ds-space-3);display:flex}.send-btn{border-radius:var(--ds-radius-full);padding:var(--ds-space-2) var(--ds-space-4)}.send-btn:disabled{opacity:.45;cursor:default}.canvas{width:100%;max-width:1080px;padding:var(--ds-space-8) var(--ds-space-5) var(--ds-space-16);margin:0 auto}.canvas-hero{margin-bottom:var(--ds-space-8)}.canvas-hero h1 em{color:var(--ds-accent);font-style:italic}.canvas-grid{gap:var(--ds-space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;display:grid}.canvas-section{background:var(--ds-card);border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-sm);padding:var(--ds-space-5)}.canvas-section-head{align-items:center;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4);display:flex}.canvas-section-head h3{font-family:var(--ds-sans);font-size:var(--ds-text-heading);color:var(--ds-ink);flex:1;margin:0;font-weight:600}.canvas-section-icon{color:var(--ds-accent);display:inline-flex}.canvas-empty{color:var(--ds-muted);font-size:var(--ds-text-small);line-height:var(--ds-leading-normal);margin:0}.canvas-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.canvas-item{align-items:center;gap:var(--ds-space-3);padding:var(--ds-space-2) 0;border-bottom:1px solid var(--ds-border);flex-wrap:wrap;display:flex}.canvas-item:last-child{border-bottom:0}.canvas-item-main{align-items:center;gap:var(--ds-space-3);cursor:pointer;text-align:left;background:0 0;border:0;flex:1;min-width:0;padding:0;display:flex}.canvas-item-icon{color:var(--ds-accent);flex-shrink:0;display:inline-flex}.canvas-item-title{color:var(--ds-ink);font-size:var(--ds-text-body);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.canvas-item-meta{color:var(--ds-faint);font-size:var(--ds-text-small);flex-shrink:0}.canvas-item-note{color:var(--ds-muted);font-size:var(--ds-text-small);padding-left:calc(20px + var(--ds-space-3));flex-basis:100%}.canvas-seams-intro{margin-bottom:var(--ds-space-3)}.canvas-note-add{align-items:center;gap:var(--ds-space-1);display:flex}.canvas-note-add input{font-family:var(--ds-sans);font-size:var(--ds-text-small);color:var(--ds-ink);background:var(--ds-bg-warm);border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);padding:var(--ds-space-1) var(--ds-space-3);width:150px}.canvas-note-add input:focus{border-color:var(--ds-accent);outline:none}.canvas-note-del{color:var(--ds-faint);cursor:pointer;padding:var(--ds-space-1);background:0 0;border:0;display:inline-flex}.canvas-note-del:hover{color:var(--ds-ink)}.work-composer{gap:var(--ds-space-3);margin-bottom:var(--ds-space-4);align-items:stretch;display:flex}.work-composer textarea{font-family:var(--ds-sans);font-size:var(--ds-text-body);color:var(--ds-ink);background:var(--ds-bg-warm);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-md);padding:var(--ds-space-3) var(--ds-space-4);resize:vertical;transition:all var(--ds-duration-fast) var(--ds-ease);flex:1}.work-composer textarea:focus{border-color:var(--ds-accent);box-shadow:0 0 0 3px var(--ds-accent-glow);outline:none}.work-composer textarea::placeholder{color:var(--ds-faint)}.work-composer-side{gap:var(--ds-space-2);flex-direction:column;justify-content:flex-start;align-items:stretch;display:flex}.work-assign:disabled{opacity:.5;cursor:default;box-shadow:none;transform:none}.work-composer-hint{color:var(--ds-faint);font-size:var(--ds-text-tiny);text-align:center}.work-assign-error{color:#9c2b2e;border-radius:var(--ds-radius-md);padding:var(--ds-space-3) var(--ds-space-4);font-size:var(--ds-text-small);margin:0 0 var(--ds-space-4);background:#9c2b2e14;border:1px solid #9c2b2e40}.work-list{flex-direction:column;display:flex}.work-row{border-top:1px solid var(--ds-border);padding:var(--ds-space-3) 0}.work-row:first-child{border-top:0;padding-top:0}.work-head{justify-content:space-between;align-items:baseline;gap:var(--ds-space-3);display:flex}.work-head-clickable{cursor:pointer}.work-title{color:var(--ds-ink);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.work-meta{align-items:center;gap:var(--ds-space-2);flex-shrink:0;display:inline-flex}.work-time{color:var(--ds-faint);font-size:var(--ds-text-small)}.work-pill-running{background:var(--ds-accent-soft);color:var(--ds-accent-deep)}.work-pill-queued{background:var(--ds-bg-soft);color:var(--ds-muted)}.work-pill-done{color:#2d7d2d;background:#228b221a}.work-pill-failed{color:#9c2b2e;background:#9c2b2e1a}.work-pill-cancelled{background:var(--ds-bg-soft);color:var(--ds-faint)}.work-progress{margin-top:var(--ds-space-2)}.work-bar{border-radius:var(--ds-radius-full);background:var(--ds-bg-soft);height:6px;overflow:hidden}.work-bar-fill{background:var(--ds-accent);border-radius:var(--ds-radius-full);height:100%;transition:width var(--ds-duration-slow) var(--ds-ease)}.work-status-line{margin-top:var(--ds-space-1);color:var(--ds-muted);font-size:var(--ds-text-small)}.work-result{margin-top:var(--ds-space-3)}.work-error-text{margin-top:var(--ds-space-3);color:#9c2b2e;font-size:var(--ds-text-small);white-space:pre-wrap}.work-actions{gap:var(--ds-space-2);margin-top:var(--ds-space-2);flex-wrap:wrap;display:flex}.work-btn{align-items:center;gap:var(--ds-space-1);border:1px solid var(--ds-border-strong);color:var(--ds-ink-soft);border-radius:var(--ds-radius-full);padding:var(--ds-space-1) var(--ds-space-3);font-size:var(--ds-text-small);cursor:pointer;transition:all var(--ds-duration-fast) var(--ds-ease);background:0 0;font-weight:500;text-decoration:none;display:inline-flex}.work-btn:hover{border-color:var(--ds-accent);color:var(--ds-ink);background:var(--ds-accent-faint)}.work-btn:disabled{opacity:.5;cursor:default}.work-btn.quiet{color:var(--ds-faint);border-color:#0000}.work-doc-link{color:var(--ds-accent-deep);border-color:var(--ds-accent)}.md{color:var(--ds-ink-soft);font-size:var(--ds-text-body);line-height:var(--ds-leading-relaxed);overflow-wrap:anywhere}.md h1,.md h2,.md h3,.md h4{color:var(--ds-ink);line-height:var(--ds-leading-tight);margin:var(--ds-space-5) 0 var(--ds-space-2)}.md h1{font-family:var(--ds-serif);font-size:var(--ds-text-title);font-weight:500}.md h2{font-size:var(--ds-text-heading);font-weight:600}.md h3{font-size:var(--ds-text-body);font-weight:600}.md p{margin:var(--ds-space-2) 0}.md ul,.md ol{margin:var(--ds-space-2) 0;padding-left:var(--ds-space-6)}.md blockquote{margin:var(--ds-space-3) 0;padding:var(--ds-space-2) var(--ds-space-4);border-left:3px solid var(--ds-accent);background:var(--ds-accent-faint);color:var(--ds-ink-soft);border-radius:0 var(--ds-radius-sm) var(--ds-radius-sm) 0}.md a{color:var(--ds-accent-deep)}.md code{background:var(--ds-bg-soft);border-radius:var(--ds-radius-sm);padding:0 var(--ds-space-1)}.md pre{background:var(--ds-bg-soft);border-radius:var(--ds-radius-md);padding:var(--ds-space-3) var(--ds-space-4);overflow-x:auto}.md pre code{background:0 0;padding:0}.md table{border-collapse:collapse;margin:var(--ds-space-3) 0}.md th,.md td{border:1px solid var(--ds-border);padding:var(--ds-space-1) var(--ds-space-3);text-align:left}.doc-overlay{z-index:50;padding:var(--ds-space-5);animation:ds-fade-in var(--ds-duration-fast) var(--ds-ease);background:#1a17145c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.doc-panel{background:var(--ds-card);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-xl);flex-direction:column;width:min(760px,100%);max-height:88vh;display:flex;overflow:hidden}.doc-head{align-items:center;gap:var(--ds-space-3);padding:var(--ds-space-4) var(--ds-space-5);border-bottom:1px solid var(--ds-border);display:flex}.doc-head-icon{color:var(--ds-accent);display:inline-flex}.doc-title{font-size:var(--ds-text-heading);color:var(--ds-ink);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-weight:600;overflow:hidden}.doc-head-actions{align-items:center;gap:var(--ds-space-2);display:inline-flex}.doc-body{padding:var(--ds-space-5);overflow-y:auto}.doc-raw{white-space:pre-wrap;font-family:var(--ds-mono);font-size:var(--ds-text-small);color:var(--ds-ink-soft)}.store{width:100%;max-width:1080px;padding:var(--ds-space-8) var(--ds-space-5) var(--ds-space-16);margin:0 auto}.store-hero{margin-bottom:var(--ds-space-8)}.store-hero h1 em{color:var(--ds-accent);font-style:italic}.store-search{align-items:center;gap:var(--ds-space-2);margin-top:var(--ds-space-5);max-width:440px;display:flex}.store-search-icon{color:var(--ds-faint);display:inline-flex}.store-grid{gap:var(--ds-space-5);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.store-card{gap:var(--ds-space-4);text-align:left;cursor:pointer;font:inherit;width:100%;display:flex}.store-card-icon{border-radius:var(--ds-radius-md);background:var(--ds-accent-faint);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.store-card-icon.lg{border-radius:var(--ds-radius-lg);width:64px;height:64px}.store-card-body{min-width:0}.store-card-body h3{margin:0 0 var(--ds-space-1)}.store-card-body p{margin:0}.store-card-meta{align-items:center;gap:var(--ds-space-3);margin-top:var(--ds-space-3);flex-wrap:wrap;display:flex}.store-back{margin-bottom:var(--ds-space-5);color:var(--ds-ink-soft);font-size:var(--ds-text-body);padding:var(--ds-space-2) var(--ds-space-3);border-radius:var(--ds-radius-full)}.store-back:hover{background:var(--ds-bg-soft)}.store-detail{max-width:720px}.store-detail-head{gap:var(--ds-space-5);margin-bottom:var(--ds-space-8);align-items:flex-start;display:flex}.store-detail-head h1{margin:0 0 var(--ds-space-1)}.store-section{margin-bottom:var(--ds-space-6)}.store-section h3{align-items:center;gap:var(--ds-space-2);margin:0 0 var(--ds-space-2);display:flex}.perm-list{gap:var(--ds-space-2);margin:var(--ds-space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.consent-box{max-width:480px}.consent-list{margin:var(--ds-space-2) 0 var(--ds-space-4);padding-left:var(--ds-space-6);color:var(--ds-ink-soft)}.consent-actions{gap:var(--ds-space-3);flex-wrap:wrap;display:flex}.login-screen{grid-template-columns:1.1fr 1fr;min-height:100%;display:grid}.login-left{padding:var(--ds-space-8);background:var(--ds-bg-warm);flex-direction:column;display:flex}.login-brand{align-items:center;gap:var(--ds-space-3);font-family:var(--ds-serif);font-size:var(--ds-text-title);color:var(--ds-ink);font-weight:600;display:flex}.login-form-wrap{justify-content:center;gap:var(--ds-space-4);flex-direction:column;flex:1;width:100%;max-width:460px;margin:0 auto;display:flex}.login-headline{margin:0;font-size:36px}.login-subhead{margin:0}.login-auth-card{gap:var(--ds-space-3);flex-direction:column;display:flex}.login-auth-card h2,.login-auth-card p{margin:0}.login-continue{align-self:flex-start}.login-seam-note{align-items:center;gap:var(--ds-space-2);display:flex}.clerk-signin{justify-content:center;display:flex}.login-privacy{margin:0}.login-footer{margin-top:var(--ds-space-8)}.login-right{justify-content:center;align-items:center;gap:var(--ds-space-8);padding:var(--ds-space-10);background:linear-gradient(160deg, var(--ds-accent-faint), var(--ds-bg-soft));flex-direction:column;display:flex;position:relative;overflow:hidden}.login-quotes{gap:var(--ds-space-3);flex-direction:column;width:100%;max-width:420px;display:flex}.quote-bubble{padding:var(--ds-space-3) var(--ds-space-4);border-radius:var(--ds-radius-lg);font-size:var(--ds-text-body);box-shadow:var(--ds-shadow-sm);animation:ds-slide-up var(--ds-duration-slow) var(--ds-ease)}.quote-bubble.user{background:var(--ds-ink);color:var(--ds-bg);border-bottom-right-radius:var(--ds-radius-sm);align-self:flex-end}.quote-bubble.assistant{background:var(--ds-card);color:var(--ds-ink-soft);border:1px solid var(--ds-border);border-bottom-left-radius:var(--ds-radius-sm);align-self:flex-start}@media (width<=860px){.login-screen{grid-template-columns:1fr}.login-right{display:none}.canvas-grid{grid-template-columns:1fr}.work-composer{flex-direction:column}}
