:root{--surface: #ffffff;--canvas: #f7f7f8;--ink: #111111;--muted: #535353;--rule: #cfcfd2;--rule-strong: #1b1b1b;--accent: #e4002b;--accent-dark: #b80022;--success: #187a3d;--warning: #8e4e00;--ease-out: cubic-bezier(.22, 1, .36, 1);font-family:Helvetica Neue,Arial,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--canvas)}*{box-sizing:border-box}body{min-width:320px;margin:0;background:var(--canvas)}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.auth-shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);min-height:100vh;padding:28px;background:var(--canvas)}.auth-loading{place-items:center;grid-template-columns:1fr;align-content:center;gap:16px;color:var(--muted);font-size:14px}.auth-loading-mark{width:38px;height:38px;border:2px solid var(--rule);border-top-color:var(--accent);border-radius:50%;animation:spin .85s linear infinite}.auth-intro{display:grid;align-content:center;min-height:620px;padding:clamp(38px,8vw,112px);border:2px solid var(--rule-strong);background:var(--surface)}.auth-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:64px;font-size:18px;font-weight:800}.auth-brand-mark{display:block;width:17px;height:17px;border:2px solid var(--accent);box-shadow:5px 5px 0 var(--ink)}.auth-intro h1{max-width:610px;margin:0 0 22px;font-size:52px;line-height:1.04;letter-spacing:0;text-wrap:balance}.auth-intro h1 span{color:var(--accent)}.auth-summary{max-width:530px;margin:0;color:var(--muted);font-size:16px;line-height:1.75;text-wrap:pretty}.auth-principles{display:grid;gap:0;max-width:560px;margin:54px 0 0;border-top:1px solid var(--rule-strong)}.auth-principles div{display:grid;grid-template-columns:108px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:13px;line-height:1.5}.auth-principles dt{font-weight:800}.auth-principles dd{margin:0;color:var(--muted)}.auth-panel{align-self:center;justify-self:center;width:min(100%,420px);padding:42px 0;background:var(--canvas)}.auth-panel h2{margin:0 0 8px;font-size:26px}.auth-panel>.form-note{margin-top:0}.auth-form{display:grid;gap:18px;margin-top:32px}.auth-form label{display:grid;gap:8px;color:var(--ink);font-size:13px;font-weight:800}.auth-form input{width:100%;min-height:46px;border:1px solid var(--rule-strong);border-radius:0;padding:10px 12px;color:var(--ink);background:var(--surface);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.auth-form input::placeholder{color:#6a6a6a}.auth-form input:hover{border-color:var(--ink)}.auth-form input:focus{border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);outline:0}.auth-form .primary-action{width:100%;margin-top:4px}.auth-switch{margin-top:22px}.console-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh;max-width:1480px;margin:0 auto;background:var(--surface)}.sidebar{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;border-right:2px solid var(--rule-strong);padding:26px 16px;background:#f2f2f3}.sidebar-brand{border:0;padding:0 8px;color:var(--ink);background:transparent;font-size:21px;font-weight:800;line-height:1.05;text-align:left}.sidebar-brand span{color:var(--muted);font-size:12px;font-weight:600}.sidebar-nav{display:grid;gap:4px;margin-top:46px}.sidebar-nav-bottom{margin-top:auto}.sidebar-nav button{min-height:42px;border:1px solid transparent;border-left:3px solid transparent;padding:9px 10px;color:var(--muted);background:transparent;font-size:14px;text-align:left;transition:color .16s var(--ease-out),background-color .16s var(--ease-out),border-color .16s var(--ease-out)}.sidebar-nav button:hover{color:var(--ink);background:var(--surface)}.sidebar-nav button.active{border-left-color:var(--accent);color:var(--ink);background:var(--surface);font-weight:800}.app-shell{min-width:0;padding:0 42px 72px;background:var(--surface)}h1,h2,h3,p{margin-top:0}h1{margin-bottom:16px;font-size:38px;line-height:1.12;letter-spacing:0;text-wrap:balance}h2{margin-bottom:9px;font-size:19px;line-height:1.3;text-wrap:balance}h3{text-wrap:balance}.section-index{margin-bottom:9px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:0}.form-note{margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.6;text-wrap:pretty}.entry-view,.draft-view,.workspace-view{padding-top:62px}.entry-intro{max-width:700px}.entry-intro>p:last-child,.draft-heading>p:last-child,.workspace-heading>p{color:var(--muted);font-size:16px;line-height:1.7;text-wrap:pretty}.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;border:1px solid var(--rule-strong);border-radius:0;padding:9px 14px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .14s var(--ease-out),border-color .14s var(--ease-out),background-color .14s var(--ease-out),color .14s var(--ease-out),box-shadow .14s var(--ease-out)}.primary-action{border-color:var(--accent);background:var(--accent);color:var(--surface)}.primary-action:not(:disabled):hover{border-color:var(--accent-dark);background:var(--accent-dark);box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.primary-action:not(:disabled):active{box-shadow:0 0 0 var(--ink);transform:translate(1px,1px)}.secondary-action{background:var(--surface);color:var(--ink)}.secondary-action:not(:disabled):hover{border-color:var(--ink);background:#f2f2f3}.secondary-action:not(:disabled):active{background:#e7e7e9;transform:translateY(1px)}.button-loader{width:13px;height:13px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}.text-action{border:0;padding:0;color:var(--muted);background:transparent;font-size:13px;text-align:left;text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:4px;transition:color .16s var(--ease-out),text-decoration-color .16s var(--ease-out)}.text-action:hover{color:var(--accent);text-decoration-color:var(--accent)}.version-launch-panel,.strategy-interview-panel{max-width:920px;margin-top:34px;border-top:2px solid var(--rule-strong);border-bottom:1px solid var(--rule);padding:22px 0 28px}.version-launch-panel .primary-action{margin-top:8px}.strategy-interview-panel{margin-top:32px}.interview-field{display:grid;gap:8px;border-top:1px solid var(--rule);padding:17px 0;font-size:14px;font-weight:800}.interview-field textarea,.interview-field input{width:100%;border:1px solid var(--rule-strong);border-radius:0;padding:11px;color:var(--ink);background:var(--surface);font-weight:400;line-height:1.55;transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.interview-field textarea{resize:vertical}.interview-field textarea:focus,.interview-field input:focus{border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);outline:0}.interview-confirmation{margin-top:20px}.interview-confirmation .primary-action{margin-top:10px}.generation-progress{display:grid;gap:10px;margin:18px 0;border:1px solid var(--rule);border-top:3px solid var(--accent);padding:14px;background:var(--canvas)}.generation-progress p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.generation-progress-track{height:5px;overflow:hidden;background:#d2d2d4}.generation-progress-track span{display:block;width:38%;height:100%;background:var(--accent);animation:generation-progress-slide 1.25s linear infinite}.generation-result{display:grid;gap:9px;margin:18px 0 0;border:1px solid var(--success);border-top-width:3px;padding:15px;background:#f5faf6}.generation-result strong{color:var(--ink)}.generation-result span{color:var(--muted);font-size:13px}.generation-result .secondary-action{width:fit-content}.validation-status{display:grid;margin:2px 0 0;border-top:1px solid rgba(24,122,61,.42)}.validation-status div{display:grid;grid-template-columns:144px minmax(0,1fr);gap:14px;border-bottom:1px solid rgba(24,122,61,.28);padding:10px 0;font-size:13px;line-height:1.55}.validation-status dt{font-weight:800}.validation-status dd{margin:0;color:#31553d}.strategy-input{display:grid;margin-top:36px;border:1px solid var(--rule-strong);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.strategy-input:focus-within{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.strategy-input textarea{min-height:220px;resize:vertical;border:0;padding:22px;color:var(--ink);font-size:16px;line-height:1.65}.strategy-input textarea:focus{outline:0}.compact-input{margin-top:20px}.compact-input>span:first-child{padding:12px 20px 0;font-size:13px;font-weight:800}.compact-input input{min-width:0;flex:1;border:0;padding:10px 0;color:var(--ink)}.compact-input input:focus{outline:0}.input-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding:14px 16px 14px 20px;color:var(--muted);font-size:13px;line-height:1.5}.notice{margin:18px 0 0;border:1px solid var(--rule);border-top:3px solid var(--accent);padding:12px 14px;background:var(--canvas);color:#353535;font-size:13px;line-height:1.6}.action-queue,.recent-projects{margin-top:50px;border-top:2px solid var(--rule-strong)}.recent-projects{margin-top:66px}.section-heading,.workspace-heading,.version-meta{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:21px 0}.section-heading h2{margin-bottom:0}.project-row{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:16px;align-items:center;border-top:1px solid var(--rule);padding:18px 0}.project-row div{display:grid;gap:5px}.project-row span:not(.status){color:var(--muted);font-size:13px}.context-bar{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--rule);padding:16px 0;color:var(--muted);font-size:13px}.context-bar span:nth-child(2){flex:1;color:var(--ink);font-weight:800}.status{display:inline-flex;width:max-content;border:1px solid var(--rule);padding:4px 7px;color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.status.green{border-color:var(--success);color:var(--success)}.status.blue{border-color:#002fa7;color:#002fa7}.status.amber{border-color:var(--warning);color:var(--warning)}.status.neutral{color:var(--muted)}.draft-heading{max-width:700px;padding:38px 0 20px}.rule-list{border-top:2px solid var(--rule-strong)}.rule-list article{border-bottom:1px solid var(--rule);padding:20px 0}.rule-top{display:flex;align-items:start;justify-content:space-between;gap:16px}.rule-list p{max-width:720px;margin-bottom:12px;color:#4d4d4d;font-size:15px;line-height:1.65}.details-toggle{border:0;background:transparent;padding:16px 0;color:var(--ink);font-weight:800;text-decoration:underline;text-underline-offset:4px}.technical-details{border:1px solid var(--rule);padding:18px;background:#fcfcfc}.technical-details p{margin-bottom:0;color:var(--muted);line-height:1.6}.generation-check{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.65fr);gap:24px;margin-top:30px;border-top:2px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);padding:23px 0}.generation-check p{margin-bottom:0;color:var(--muted);line-height:1.6}.risk-check{display:flex;align-items:start;gap:9px;color:#333;font-size:14px;line-height:1.55}.risk-check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--accent)}.confirm-action{width:100%;margin-top:18px}.workspace-heading{padding:38px 0 21px;border-bottom:1px solid var(--rule)}.workspace-heading h1{margin-bottom:0}.workspace-heading p{max-width:350px;margin-bottom:0;font-size:13px}.tabs{display:flex;overflow-x:auto;border-bottom:2px solid var(--rule-strong)}.tabs button{position:relative;flex:0 0 auto;border:0;border-left:1px solid var(--rule);padding:15px 18px;background:var(--surface);color:#4b4b4b;font-size:14px;transition:background-color .16s var(--ease-out),color .16s var(--ease-out)}.tabs button:first-child{border-left:0}.tabs button:hover{background:var(--canvas);color:var(--ink)}.tabs button.active{background:var(--ink);color:var(--surface)}.progress-panel,.tab-panel{max-width:920px;padding-top:24px}.version-meta{align-items:center;border-bottom:1px solid var(--rule)}.version-meta div{display:grid;gap:5px}.version-meta span:not(.status){color:var(--muted);font-size:13px}.stages{margin:0;padding:0;list-style:none}.stages li{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:16px;align-items:start;border-bottom:1px solid var(--rule);padding:21px 0}.stage-number{color:var(--accent);font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}.stages p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.55}.tab-panel{border-top:0;padding-bottom:30px}.tab-panel>p:not(.section-index){max-width:670px;color:var(--muted);line-height:1.7}.data-list{margin:22px 0 0;border-top:1px solid var(--rule)}.data-list div{display:grid;grid-template-columns:180px 1fr;gap:16px;border-bottom:1px solid var(--rule);padding:13px 0;font-size:14px}.data-list dt{font-weight:800}.data-list dd{margin:0;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes generation-progress-slide{0%{transform:translate(-115%)}to{transform:translate(300%)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.auth-shell{grid-template-columns:1fr;padding:16px}.auth-intro{min-height:auto;padding:42px 28px}.auth-brand{margin-bottom:34px}.auth-intro h1{font-size:42px}.auth-principles{margin-top:36px}.auth-panel{width:min(100%,520px);justify-self:stretch;padding:42px 28px}.console-shell{grid-template-columns:206px minmax(0,1fr)}.app-shell{padding:0 28px 58px}}@media(max-width:720px){.auth-shell{padding:0;background:var(--surface)}.auth-intro{padding:34px 22px 28px;border:0;border-bottom:2px solid var(--rule-strong)}.auth-brand{margin-bottom:30px}.auth-intro h1{font-size:35px}.auth-summary{font-size:15px}.auth-principles{margin-top:30px}.auth-principles div{grid-template-columns:92px 1fr}.auth-panel{padding:34px 22px 40px}.console-shell{display:block}.sidebar{position:static;height:auto;border-right:0;border-bottom:2px solid var(--rule-strong);padding:14px 16px}.sidebar-brand{display:block}.sidebar-nav{display:flex;gap:0;margin-top:14px;overflow-x:auto}.sidebar-nav-bottom{margin-top:8px}.sidebar-nav button{flex:0 0 auto;min-height:40px;white-space:nowrap}.app-shell{padding:0 16px 44px}.entry-view,.draft-view,.workspace-view{padding-top:38px}h1{font-size:31px}.input-footer,.workspace-heading,.section-heading,.version-meta{align-items:start;flex-direction:column}.primary-action{width:100%}.strategy-input textarea{min-height:190px}.project-row{grid-template-columns:1fr;gap:10px}.project-row .secondary-action{width:100%}.context-bar{flex-wrap:wrap}.context-bar span:nth-child(2){flex-basis:100%;order:3}.generation-check{grid-template-columns:1fr}.validation-status div{grid-template-columns:1fr;gap:5px}.stages li{grid-template-columns:36px minmax(0,1fr)}.stages li .status{grid-column:2}.data-list div{grid-template-columns:1fr;gap:5px}.tabs button{padding:13px 15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
