:root{color-scheme:light;--ink:#15202b;--paper:#e7ecf2;--paper-deep:#d9e0e8;--surface:#f5f8fb;--muted:#5a6878;--line:#b7c3d0;--line-soft:color-mix(in srgb,var(--line) 55%,transparent);--accent:#0e6b66;--accent-hover:#0a5753;--accent-soft:#d3ebe8;--accent-fg:#f4fbfa;--danger:#8f3a3a;--ok:#0e6b66;--shadow:color-mix(in srgb,#15202b 10%,transparent);--radius:0.55rem;--radius-lg:0.9rem;--focus:0 0 0 3px color-mix(in srgb,var(--accent) 35%,transparent);--bg:var(--paper);--fg:var(--ink);--border:var(--line);--font-body:var(--font-sans),var(--font-sc),"PingFang SC","Microsoft YaHei",sans-serif;--font-brand:var(--font-display),Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.55;font-size:1.02rem;text-rendering:optimizeLegibility}body{position:relative;isolation:isolate;background-image:radial-gradient(1200px 600px at 8% -10%,#f7fafc 0,transparent 55%),radial-gradient(900px 500px at 100% 0,#dfe8f0 0,transparent 50%),linear-gradient(180deg,var(--paper) 0,var(--paper-deep) 100%);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}body>*{position:relative;z-index:1}a{color:var(--accent);text-underline-offset:.18em}a:hover{color:var(--accent-hover)}:focus-visible{outline:none;box-shadow:var(--focus)}button,input,select,textarea{font:inherit}.page,.studio{max-width:40rem;margin:0 auto;padding:2.5rem 1.25rem 4rem}.hub{max-width:48rem;margin:0 auto;padding:3.5rem 1.5rem 5rem}.hub-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.75rem}.hub-top>button.ghost{flex-shrink:0;margin-top:.15rem}.hub-kicker,.studio-kicker{margin:0 0 .65rem;color:var(--muted);letter-spacing:.08em;font-size:.78rem;font-weight:500;text-transform:lowercase}.brand-mark,.hub-kicker{font-family:var(--font-brand);font-size:1.05rem;letter-spacing:.01em;text-transform:none;color:var(--ink);font-weight:600}.hub-cta,.session-exit,.studio-kicker a{color:var(--accent);text-decoration:none;font-weight:500}.hub-cta:hover,.session-exit:hover,.studio-kicker a:hover{text-decoration:underline}.header h1,.hub-title,.studio-header h1{margin:0 0 .4rem;font-family:var(--font-sc),var(--font-sans),sans-serif;font-size:clamp(1.75rem,3vw,2.15rem);font-weight:650;letter-spacing:-.02em;line-height:1.2;text-wrap:balance}.hub-title:after{content:"";display:block;width:3.25rem;height:2px;margin-top:.85rem;background:linear-gradient(90deg,var(--accent),transparent);border-radius:999px}.hub-lead{margin:.85rem 0 0;color:var(--muted);max-width:28rem;font-size:1.02rem;line-height:1.6}.hub-toolbar{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.75rem 0 1.1rem;align-items:center}.hub-upload{display:inline-flex;align-items:center;gap:.35rem;padding:.58rem 1rem;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:var(--radius);cursor:pointer;color:var(--ink);background:color-mix(in srgb,var(--surface) 70%,transparent);transition:background .2s ease,border-color .2s ease,transform .15s ease}.hub-upload:hover{background:var(--accent-soft);border-color:var(--accent)}.hub-upload:active{transform:translateY(1px)}.hub-list{list-style:none;margin:1.25rem 0 0;padding:0;gap:.9rem}.hub-card,.hub-list{display:flex;flex-direction:column}.hub-card{background:color-mix(in srgb,var(--surface) 88%,white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:1.2rem 1.2rem 1.3rem;gap:.85rem;box-shadow:0 10px 28px -22px var(--shadow);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.hub-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:0 14px 32px -20px var(--shadow)}.hub-card h2,.hub-card-head h2{margin:0;font-size:1.18rem;font-weight:650;letter-spacing:-.015em;color:var(--ink)}.hub-card p{margin:0;color:var(--muted)}.hub-pick{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--muted)}.hub-meta{margin:.2rem 0 0;font-size:.88rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hub-cta,.hub-cta-btn{align-self:flex-start;text-decoration:none}.hub-cta-btn,.hub-link-btn,button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;padding:.58rem 1.05rem;border-radius:var(--radius);cursor:pointer;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .12s ease,box-shadow .2s ease}.hub-cta-btn,button:not(.ghost):not(.session-arrow){background:var(--accent);color:var(--accent-fg);border-color:var(--accent);box-shadow:0 8px 18px -12px color-mix(in srgb,var(--accent) 70%,transparent)}.hub-cta-btn:hover,button:not(.ghost):not(.session-arrow):hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.hub-cta-btn:active,button:active:not(:disabled){transform:translateY(1px) scale(.99)}.hub-link-btn,button.ghost{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none;font-weight:550}.hub-link-btn:hover,button.ghost:hover:not(:disabled){background:color-mix(in srgb,var(--accent-soft) 55%,white);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}button.ghost.danger-btn{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}button.ghost.danger-btn:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 8%,white);border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.hub-empty{margin-top:1.5rem;padding:1.5rem 1.25rem;border:1px dashed var(--line);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--muted)}.hub-dialog-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1.25rem;background:color-mix(in srgb,var(--ink) 28%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.hub-dialog{width:min(22rem,100%);padding:1.35rem 1.25rem 1.2rem;border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 24px 48px -28px var(--shadow)}.hub-dialog h2{margin:0 0 .55rem;font-size:1.15rem}.hub-dialog-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.15rem}.studio-header h1{font-size:clamp(1.55rem,2.6vw,1.85rem)}.author-check{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.92rem;cursor:pointer}.author-check input:disabled+span{opacity:.55}.author-bulk{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding-top:.25rem}.session,.session-result{min-height:100dvh;background:transparent}.session{display:grid;grid-template-columns:3.5rem minmax(0,34rem) 3.5rem;grid-template-rows:auto auto 1fr;grid-template-areas:"status status status" ". progress ." "left stage right";justify-content:center;grid-column-gap:.75rem;column-gap:.75rem;padding:0 .5rem 1.5rem}.session-status{grid-area:status;margin:0;padding:1.15rem 0 .35rem;text-align:center;color:var(--muted);font-size:.86rem;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.session-progress{grid-area:progress;height:3px;margin:.35rem 0 .75rem;border-radius:999px;background:color-mix(in srgb,var(--line) 55%,transparent);overflow:hidden}.session-progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 40%,#7eb7b2));border-radius:inherit;transition:width .35s ease}.session-arrow{align-self:center;width:2.85rem;height:2.85rem;padding:0;border:1px solid var(--line-soft);background:color-mix(in srgb,var(--surface) 80%,white);color:var(--ink);font-size:1.85rem;line-height:1;border-radius:999px;box-shadow:0 8px 20px -16px var(--shadow)}.session-arrow:hover:not(:disabled){background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.session-arrow:disabled{opacity:.28}.session-arrow-left{grid-area:left}.session-arrow-right{grid-area:right}.session-arrow-spacer{grid-area:right;width:2.85rem;height:2.85rem;align-self:center;pointer-events:none}.session-submit-wrap{margin-top:1.35rem;display:flex;justify-content:center}.session-submit{min-width:10rem}.session-stage{grid-area:stage;align-self:center;padding:.5rem 0 2.5rem}.session-item{display:flex;flex-direction:column;gap:1.1rem;padding:1.35rem 1.25rem 1.45rem;background:color-mix(in srgb,var(--surface) 92%,white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);box-shadow:0 16px 40px -28px var(--shadow)}.session-item textarea{resize:none;min-height:8rem}.session-note{margin:-.35rem 0 0;padding:.65rem .85rem;border-left:3px solid color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--muted);font-size:.95rem;line-height:1.55;white-space:pre-wrap;border-radius:0 .35rem .35rem 0}.session-addon{margin-top:.25rem;border-color:transparent;background:color-mix(in srgb,var(--surface) 70%,transparent)}.session-addon:focus{border-color:var(--line);background:#fff}.session-centered{align-items:center;justify-content:center;gap:1rem;min-height:100dvh;padding:2rem}.session-centered,.session-result{display:flex;flex-direction:column}.session-result{max-width:36rem;margin:0 auto;padding:3rem 1.25rem 4rem;gap:1.25rem}.session-result .session-status{padding-top:0;text-align:left;letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:600;color:var(--accent)}.session-purpose{margin:0;font-size:1.2rem;font-weight:600}.session-answers{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.85rem}.session-answers li{padding:1rem 1.05rem;border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 90%,white);border:1px solid var(--line-soft)}.session-answers p{margin:.4rem 0 0;color:var(--ink)}.session-exit{align-self:flex-start}.stack{display:flex;flex-direction:column;gap:1.15rem}.header h1{font-size:clamp(1.55rem,2.6vw,1.85rem)}.muted{color:var(--muted);margin:0}.field,.panel{display:flex;flex-direction:column;gap:.55rem;padding:1.05rem 1.1rem;background:color-mix(in srgb,var(--surface) 90%,white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);box-shadow:0 10px 28px -24px var(--shadow)}.prompt{font-weight:650;letter-spacing:-.01em}input:not([type]),input[type=number],input[type=password],input[type=search],input[type=text],select,textarea{width:100%;resize:vertical;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}input:not([type]):hover,input[type=number]:hover,input[type=password]:hover,input[type=search]:hover,input[type=text]:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}input:not([type]):focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}input[type=checkbox],input[type=radio]{width:auto;margin:.15rem 0 0;flex-shrink:0;accent-color:var(--accent)}input:not([type]),input[type=number],input[type=password],input[type=search],input[type=text],select{resize:none}.option-list{display:flex;flex-direction:column;gap:.55rem;margin:0;padding:0;border:0;min-inline-size:0}.option-list legend{padding:0;margin-bottom:.25rem}.option-row{display:flex;flex-direction:row;align-items:flex-start;gap:.7rem;cursor:pointer;padding:.7rem .8rem;border:1px solid var(--line-soft);border-radius:var(--radius);background:#fff;transition:border-color .15s ease,background .15s ease}.option-row:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent-soft) 40%,white)}.option-row:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.option-row span{flex:1 1;min-width:0}.prompt-typewriter{min-height:1.5em;white-space:pre-wrap}.prompt-caret{display:inline-block;width:.08em;height:1em;margin-left:.05em;vertical-align:-.1em;background:var(--ink);animation:prompt-caret-blink 1s step-end infinite}@keyframes prompt-caret-blink{50%{opacity:0}}.actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.ok{color:var(--ok)}.danger,.ok{margin:0;font-weight:500}.danger{color:var(--danger)}code{font-size:.9em;font-family:ui-monospace,Cascadia Code,Segoe UI Mono,monospace;background:color-mix(in srgb,var(--paper-deep) 70%,white);padding:.08em .35em;border-radius:.25rem}details summary{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}details summary:hover{color:var(--accent)}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:2rem 1.25rem}.login-card{width:min(100%,24rem);padding:1.75rem 1.5rem 1.85rem;background:color-mix(in srgb,var(--surface) 94%,white);border:1px solid var(--line-soft);border-radius:calc(var(--radius-lg) + .15rem);box-shadow:0 24px 50px -28px var(--shadow)}.login-card h1{margin:0 0 .4rem;font-size:1.55rem;letter-spacing:-.02em}.skeleton{height:1rem;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--line) 35%,transparent),color-mix(in srgb,var(--surface) 80%,white),color-mix(in srgb,var(--line) 35%,transparent));background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}@media (max-width:40rem){.hub{padding:2.25rem 1.1rem 3.5rem}.session{grid-template-columns:2.6rem minmax(0,1fr) 2.6rem;column-gap:.35rem}.session-item{padding:1.1rem 1rem 1.2rem}.hub-top{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}