:root{--p-navy-900:#1b2f45;--p-navy-800:#243a52;--p-navy-100:#e6ecf3;--p-gold-700:#8f6a22;--p-gold-600:#a87f2e;--p-gold-400:#c9a24b;--p-gold-100:#f4ecd8;--p-green-700:#2d6343;--p-green-100:#e6efe8;--p-red-700:#b42318;--p-red-100:#fdf2f0;--p-amber-700:#6b4300;--p-amber-100:#f7e6c4;--p-stone-900:#1f2b38;--p-stone-600:#4a5664;--p-stone-400:#9aa3ad;--p-stone-200:#ddd7cb;--p-stone-100:#f1eee6;--p-stone-50:#faf9f6;--p-white:#fff;--navy:var(--p-navy-800);--navy-strong:var(--p-navy-900);--navy-soft:var(--p-navy-100);--gold:var(--p-gold-600);--gold-strong:var(--p-gold-700);--gold-light:var(--p-gold-400);--gold-soft:var(--p-gold-100);--green:var(--p-green-700);--green-soft:var(--p-green-100);--red:var(--p-red-700);--red-soft:var(--p-red-100);--amber:var(--p-amber-700);--amber-soft:var(--p-amber-100);--ink:var(--p-stone-900);--mut:var(--p-stone-600);--faint:var(--p-stone-400);--line:var(--p-stone-200);--paper:var(--p-stone-50);--bg:var(--p-stone-100);--card:var(--p-white);--sans:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--serif:"BiauKai", "DFKai-SB", "Kaiti TC", serif;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--sh-sm:0 1px 2px #1f2b380f;--sh-md:0 2px 8px #1f2b3814, 0 1px 2px #1f2b380a;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--fs-xs:14px;--fs-sm:15px;--fs-md:16px;--fs-lg:19px;--fs-xl:24px;--t-fast:.15s ease}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--navy-strong);color:#fff}body{font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.7}button,input,select,textarea{font-family:inherit;font-size:inherit}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid var(--gold-light);outline-offset:2px}.app-header{align-items:center;gap:var(--sp-4);background:var(--navy-strong);color:#fff;border-bottom:3px solid var(--gold);padding:14px max(40px,50% - 600px);display:flex}.app-header .brand{align-items:center;gap:var(--sp-3);display:flex}.app-header .logo{background:var(--gold);border-radius:8px;flex:none;place-items:center;width:40px;height:40px;display:grid}.app-header h1{font-size:var(--fs-lg);letter-spacing:.02em;font-weight:700;line-height:1.2}.app-header .sub{font-size:var(--fs-xs);color:#d9c08a;letter-spacing:.06em}.app-header .spacer{flex:1}.app-header .doc-picker{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:#b9c6d4;white-space:nowrap;min-width:0;display:flex}.app-header select{border-radius:var(--r-sm);color:#fff;width:auto;max-width:260px;font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);background:#ffffff14;border:1px solid #ffffff47;padding:8px 12px;font-weight:600}.app-header select:hover{background:#ffffff24;border-color:#ffffff80}.app-header select option{color:var(--ink);background:var(--card)}.app{max-width:1280px;margin:0 auto;padding:40px 40px 72px}.tabs-nav{background:var(--card);border-bottom:1px solid var(--line)}.tabs-nav-inner{flex-wrap:wrap;gap:4px;max-width:1280px;margin:0 auto;padding:0 40px;display:flex}.tabs-nav button{font-size:var(--fs-md);color:var(--mut);cursor:pointer;transition:color var(--t-fast);background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:14px 16px 11px;display:flex}.tabs-nav button:hover{color:var(--ink)}.tabs-nav button.on{color:var(--navy-strong);border-bottom-color:var(--navy-strong);font-weight:700}.tabs-nav .num{font-size:var(--fs-xs);color:var(--mut);background:#efece5;border-radius:10px;padding:0 8px;line-height:20px}.app-main{gap:var(--sp-5);margin-top:var(--sp-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.app-main{grid-template-columns:1fr}}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}.panel-head{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.panel-head h2{font-size:var(--fs-lg);align-items:center;gap:8px;font-weight:800;display:flex}.panel-head .hint{font-size:var(--fs-xs);color:var(--mut)}.panel-body{padding:var(--sp-6)}.pane-preview{top:var(--sp-4);max-height:calc(100vh - var(--sp-8));flex-direction:column;display:flex;position:sticky}@media (width<=900px){.pane-preview{max-height:none;position:static}}.form-section+.form-section{margin-top:var(--sp-6)}.form-section>h3{align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--navy);letter-spacing:.04em;margin-bottom:var(--sp-3);font-weight:800;display:flex}.form-section>h3:after{content:"";background:var(--line);flex:1;height:1px}.field-grid{gap:var(--sp-3) var(--sp-4);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.field-grid{grid-template-columns:1fr}}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field.wide{grid-column:1/-1}.field>span{color:var(--ink);font-size:13px;font-weight:700}.field .req{color:var(--gold-strong);margin-left:2px}.field .note{color:var(--mut);font-weight:400;font-size:var(--fs-xs);margin-left:4px}input,textarea,select{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);width:100%;color:var(--ink);font-size:var(--fs-md);transition:border-color var(--t-fast), box-shadow var(--t-fast), background var(--t-fast);outline:none;padding:9px 12px}textarea{resize:vertical;line-height:1.65}input:focus,textarea:focus,select:focus{border-color:var(--navy);background:var(--card);box-shadow:0 0 0 3px var(--navy-soft)}.field-example{font-size:var(--fs-xs);color:var(--mut);line-height:1.5}.doc-help{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);margin-bottom:var(--sp-4);overflow:hidden}.doc-help-bar{align-items:center;gap:var(--sp-2);padding:7px var(--sp-3);font-size:var(--fs-xs);flex-wrap:wrap;display:flex}.doc-help-back,.doc-help-toggle{border:1px solid var(--line);background:var(--card);color:var(--mut);border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;white-space:nowrap;transition:color var(--t-fast), background var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast);padding:3px 10px}.doc-help-back:hover,.doc-help-toggle:hover{border-color:var(--navy);color:var(--navy)}.doc-help-crumb{color:var(--navy);white-space:nowrap;font-weight:700}.doc-help-crumb span{color:var(--faint);margin:0 2px}.doc-help-body{border-top:1px solid var(--line);padding:var(--sp-3);gap:var(--sp-2);background:var(--card);flex-direction:column;display:flex}.doc-help-row{gap:var(--sp-2);align-items:flex-start;display:flex}.doc-help-tag{font-size:var(--fs-xs);color:var(--navy);background:var(--navy-soft);border-radius:var(--r-sm);white-space:nowrap;flex:none;margin-top:1px;padding:2px 8px;font-weight:700}.doc-help-tag.next{color:var(--gold-strong);background:var(--gold-soft)}.doc-help-row p{font-size:var(--fs-sm);color:var(--ink);line-height:1.75}.subform{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);padding:var(--sp-3) var(--sp-4) var(--sp-4);grid-column:1/-1}.subform>legend,.subform>.legend{color:var(--navy);margin-bottom:var(--sp-3);font-size:13px;font-weight:800;display:block}.motion-card{gap:var(--sp-2);background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-3);flex-direction:column;display:flex}.motion-card+.motion-card{margin-top:var(--sp-3)}.motion-card-header{font-size:var(--fs-sm);color:var(--navy);justify-content:space-between;align-items:center;font-weight:800;display:flex}.resolution-row{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.resolution-row{grid-template-columns:1fr}}.object-row{gap:var(--sp-2);background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.object-row+.object-row{margin-top:var(--sp-2)}.object-row input[type=text]{flex:1;min-width:100px}.object-row input[type=number]{width:88px}.object-row-no{color:var(--faint);font-size:var(--fs-sm);text-align:right;flex:none;width:18px;font-weight:700}.object-check{font-size:var(--fs-sm);color:var(--mut);white-space:nowrap;align-items:center;gap:5px;display:flex}.object-check input{width:auto;accent-color:var(--navy)}.object-inline-field{font-size:var(--fs-xs);color:var(--mut);flex-direction:column;gap:2px;font-weight:600;display:flex}.object-inline-field input{width:92px}.btn{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:var(--fs-sm);cursor:pointer;white-space:nowrap;transition:color var(--t-fast), background var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast);justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--navy);color:var(--navy);box-shadow:var(--sh-sm)}.btn:disabled{opacity:.5;cursor:default;box-shadow:none}.btn-primary{background:var(--navy-strong);border-color:var(--navy-strong);color:#fff}.btn-primary:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff}.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--navy-strong)}.btn-gold:hover:not(:disabled){background:var(--gold-strong);border-color:var(--gold-strong);color:#fff}.btn-danger:hover{border-color:var(--red);color:var(--red)}.btn-sm{font-size:var(--fs-xs);padding:5px 11px}.btn-block{width:100%;font-size:var(--fs-md);margin-top:var(--sp-5);padding:12px;font-weight:700}.btn-dashed{width:100%;color:var(--mut);margin-top:var(--sp-3);background:0 0;border-style:dashed}.badge{border-radius:var(--r-pill);font-size:var(--fs-xs);background:var(--paper);color:var(--mut);align-items:center;gap:5px;padding:2px 10px;font-weight:700;display:inline-flex}.badge.gold{background:var(--gold-soft);color:var(--gold-strong)}.badge.navy{background:var(--navy-soft);color:var(--navy)}.alert{border-radius:var(--r-md);margin-top:var(--sp-3);font-size:var(--fs-sm);align-items:flex-start;gap:9px;padding:11px 14px;line-height:1.6;display:flex}.alert .alert-icon{flex:none;font-weight:800}.alert p{margin:1px 0}.alert-warning{background:var(--amber-soft);color:var(--amber);border:1px solid #e6cf9a}.alert-error{background:var(--red-soft);color:var(--red);border:1px solid #e0b3ad}.alert-success{background:var(--green-soft);color:var(--green);border:1px solid #a9d3bd}.ai-panel{border-radius:var(--r-md);background:var(--gold-soft);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-5);border:1px solid #d9c690}.ai-panel>summary{cursor:pointer;color:var(--gold-strong);font-weight:800;font-size:var(--fs-sm);list-style:none}.ai-panel>summary::-webkit-details-marker{display:none}.ai-panel>summary:before{content:"▸ ";transition:transform var(--t-fast);display:inline-block}.ai-panel[open]>summary:before{content:"▾ "}.ai-panel .ai-desc{font-size:var(--fs-xs);color:#6b5a2a;margin:var(--sp-2) 0 var(--sp-3);line-height:1.7}.ai-controls{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.ai-controls input[type=file]{background:var(--card);min-width:190px;font-size:var(--fs-xs);flex:1;padding:7px 10px}.ai-result{gap:var(--sp-2);margin-top:var(--sp-3);flex-direction:column;display:flex}.ai-notes{background:var(--card);border-radius:var(--r-sm);color:var(--amber);font-size:var(--fs-xs);border:1px solid #e6cf9a;margin:0;padding:8px 12px 8px 26px;line-height:1.7}.ai-todos{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-3);font-size:var(--fs-xs)}.ai-todos-head{color:var(--navy);margin-bottom:var(--sp-2);font-weight:800}.ai-todos-head span{color:var(--mut);font-weight:400}.ai-todos ul{flex-direction:column;gap:6px;list-style:none;display:flex}.ai-todos li{color:var(--ink);flex-wrap:wrap;align-items:center;gap:6px;padding-left:14px;line-height:1.6;display:flex;position:relative}.ai-todos li:before{content:"▪";color:var(--gold-strong);position:absolute;left:0}.generate-row{gap:var(--sp-3);display:flex}.generate-row .btn-block{flex:1}.ai-transcript{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);font-size:var(--fs-xs);padding:7px 12px}.ai-transcript>summary{cursor:pointer;color:var(--mut);font-weight:700}.ai-transcript p{white-space:pre-wrap;max-height:200px;margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px dashed var(--line);color:var(--ink);line-height:1.8;overflow-y:auto}.preview-scroll{padding:var(--sp-5) var(--sp-6) var(--sp-6);background:var(--bg);border-radius:0 0 var(--r-lg) var(--r-lg);overflow-y:auto}.preview-paper{background:var(--card);border:1px solid var(--line);box-shadow:var(--sh-md);font-family:var(--serif);font-size:var(--fs-md);min-height:480px;padding:34px 30px;line-height:1.95}.preview-paper p{margin:2px 0}.preview-center{text-align:center;font-size:var(--fs-lg)}.preview-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;margin:8px 0}.preview-table th,.preview-table td{border:1px solid var(--faint);text-align:left;padding:4px 8px}.preview-table th{background:var(--gold-soft);font-weight:700}.preview-partial-note{font-family:var(--sans);color:var(--mut);font-size:var(--fs-xs);margin:0 0 var(--sp-4);padding-bottom:var(--sp-2);border-bottom:1px dashed var(--line);align-items:center;gap:6px;display:flex}.preview-pending{text-align:center;color:var(--mut);font-size:var(--fs-sm);padding:60px 24px}.resources-page{gap:var(--sp-5);margin-top:var(--sp-4);flex-direction:column;display:flex}.flow-image{border:1px solid var(--line);border-radius:var(--r-md);max-width:100%;margin-bottom:var(--sp-4)}.resource-stage>h3{align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--navy);margin:var(--sp-5) 0 var(--sp-2);font-weight:800;display:flex}.resource-stage:first-of-type>h3{margin-top:0}.resource-stage>h3:after{content:"";background:var(--line);flex:1;height:1px}.resource-list{list-style:none}.resource-item{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:9px var(--sp-2);border-bottom:1px solid var(--line);font-size:var(--fs-sm);display:flex}.resource-item:last-child{border-bottom:none}.resource-item:hover{background:var(--paper)}.resource-name{align-items:center;gap:var(--sp-2);flex-wrap:wrap;min-width:0;display:flex}.resource-actions{gap:var(--sp-3);white-space:nowrap;align-items:center;display:flex}.resource-actions a{color:var(--navy);font-size:var(--fs-xs);transition:border-color var(--t-fast);border-bottom:1px solid #0000;font-weight:600;text-decoration:none}.resource-actions a:hover{border-bottom-color:var(--gold)}.skel-row{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--line) 25%, var(--paper) 50%, var(--line) 75%);background-size:200% 100%;height:16px;margin:10px 0;animation:1.4s infinite skel-shimmer}.skel-row.w60{width:60%}.skel-row.w40{width:40%}@keyframes skel-shimmer{to{background-position:-200% 0}}.app-main,.resources-page{animation:.18s content-fade}@keyframes content-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.skel-row,.app-main,.resources-page,.guide-steps-wrap{transition:none;animation:none}}.audit-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);border-bottom:1px solid #e7e2d8;flex-wrap:wrap;padding:28px 36px 22px;display:flex}.audit-head-titles h2{color:var(--navy-strong);letter-spacing:.02em;font-size:28px;font-weight:700}.audit-summary{font-size:var(--fs-md);color:var(--mut);margin-top:4px}.audit-picker{align-items:center;gap:var(--sp-3);font-size:var(--fs-md);color:var(--ink);font-weight:600;display:flex}.audit-picker select{width:auto;min-width:240px;height:44px;font-size:var(--fs-md);background:var(--card);border:2px solid var(--navy-strong);border-radius:6px;padding:0 14px}.audit-next-wrap{padding:4px 0 var(--sp-4)}.audit-hero-chips{align-items:center;gap:8px;display:flex}.audit-chip.next{background:var(--gold);color:var(--navy-strong)}.audit-hero{border:2px solid var(--amber);background:var(--amber-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;padding:22px 26px;display:flex}.audit-hero.overdue{border-color:var(--red);background:var(--red-soft)}.audit-hero-main{flex-direction:column;gap:8px;min-width:0;display:flex}.audit-hero-name{color:var(--ink);letter-spacing:.02em;font-size:26px;font-weight:700;line-height:1.3}.audit-hero-meta{font-size:var(--fs-md);color:#3d4855}.audit-hero .audit-chip{align-self:flex-start}.audit-hero.overdue .audit-chip.overdue{background:var(--red);color:#fff}.audit-hero-btn{height:50px;font-size:var(--fs-lg);letter-spacing:.06em;border-radius:8px;padding:0 26px;font-weight:700}.audit-rows{flex-direction:column;display:flex}.audit-row{border-bottom:1px solid #e7e2d8;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:16px 4px;display:flex}.audit-row:last-child{border-bottom:none}.audit-row-chip{flex:none;width:92px}.audit-row .audit-name{font-size:var(--fs-lg);color:var(--ink);font-weight:700}.audit-row.ok .audit-name{font-size:var(--fs-md);color:#5a6573;font-weight:400}.audit-row.ok .audit-chip.ok{font-weight:500}.btn-outline-navy{background:var(--card);color:var(--navy-strong);border:2px solid var(--navy-strong);height:42px;font-size:var(--fs-md);letter-spacing:.04em;cursor:pointer;transition:background var(--t-fast);border-radius:8px;padding:0 18px;font-weight:700}.btn-outline-navy:hover{background:var(--navy-soft)}.btn-textlink{color:var(--mut);font-size:var(--fs-md);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 4px;text-decoration:underline}.btn-textlink:hover{color:var(--navy-strong)}.audit-panel .panel-head select{background:var(--card);width:auto;max-width:300px;color:var(--ink);font-size:var(--fs-sm);padding:7px 10px}.audit-empty{color:var(--mut);font-size:var(--fs-sm)}.audit-list{gap:var(--sp-2);flex-direction:column;display:flex}.audit-item{align-items:center;gap:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);padding:8px var(--sp-3);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.audit-item.overdue{background:var(--red-soft);border-color:#e8c7c2}.audit-item.missing{border-color:#e6d4a8}.audit-item.due-soon,.audit-item.due_soon{border-color:var(--gold-light)}.audit-item.ok{opacity:.75}.audit-chip{white-space:nowrap;border-radius:4px;flex:none;padding:2px 10px;font-size:14px;font-weight:700}.audit-chip.overdue{background:var(--red-soft);color:var(--red)}.audit-chip.missing{background:var(--amber-soft);color:var(--amber)}.audit-chip.due-soon{background:var(--gold-soft);color:var(--gold-strong)}.audit-chip.ok{background:var(--green-soft);color:var(--green)}.audit-name{color:var(--ink);font-weight:700}.audit-meta{font-size:var(--fs-xs);color:var(--mut);white-space:nowrap}.audit-note{margin-top:var(--sp-3);font-size:var(--fs-xs);color:var(--faint)}.audit-ask p{font-size:var(--fs-sm);color:var(--ink);margin-bottom:var(--sp-3);line-height:1.8}.audit-ask-btns{gap:var(--sp-3);flex-wrap:wrap;display:flex}.audit-next{align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.audit-next-label{font-size:var(--fs-xs);color:var(--gold-strong);background:var(--gold-soft);border-radius:var(--r-pill);padding:2px 10px;font-weight:800}.audit-next strong{font-size:var(--fs-md);color:var(--navy-strong)}.intake{gap:var(--sp-4);flex-direction:column;display:flex}.intake-phase{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:var(--sp-3) var(--sp-4)}.intake-phase>strong{font-size:var(--fs-md);color:var(--navy-strong);margin-bottom:var(--sp-2);display:block}.intake-items{gap:6px var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.intake-item{font-size:var(--fs-md);color:var(--ink);cursor:pointer;align-items:center;gap:10px;padding:6px 4px;line-height:1.6;display:flex}.intake-item input{width:22px;height:22px;accent-color:var(--navy-strong);flex:none}.intake-actions{gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.road{margin-top:40px}.road-head{margin-bottom:var(--sp-4);border-bottom:1px solid #d6d0c3;flex-wrap:wrap;align-items:baseline;gap:8px 16px;padding:0 4px 14px;display:flex}.road-head h2{font-size:var(--fs-xl);color:var(--navy-strong);letter-spacing:.02em;font-weight:700}.road-head .hint{font-size:var(--fs-sm);color:var(--mut)}.guide-phases{flex-direction:column;display:flex}.guide-phase{grid-template-columns:44px 1fr;gap:0 20px;display:grid}.guide-phase-no{background:var(--card);border:2px solid var(--navy-strong);width:44px;height:44px;color:var(--navy-strong);font-weight:700;font-size:var(--fs-md);border-radius:50%;place-items:center;margin-top:18px;display:grid}.guide-phase-rail{flex-direction:column;align-items:center;display:flex}.guide-phase-rail:after{content:"";background:#c9c2b3;flex:1;width:2px}.guide-phase:last-child .guide-phase-rail:after{background:0 0}.guide-phase.active .guide-phase-no{background:var(--gold);border-color:var(--gold);color:var(--navy-strong)}.guide-phase-body{min-width:0}.guide-phase-head{border-bottom:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--r-sm);min-height:78px;transition:background var(--t-fast);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:14px 10px;display:flex}.guide-phase-head:hover{background:#1b2f450a}.guide-phase-head h3{color:var(--navy-strong);align-items:baseline;gap:var(--sp-3);font-size:22px;font-weight:700;display:flex}.guide-phase-head h3 small{font-size:var(--fs-md);color:var(--mut);font-weight:400}.guide-phase-desc{font-size:var(--fs-md);color:var(--mut);margin-bottom:var(--sp-3);line-height:1.85}.guide-phase-titles{align-items:baseline;gap:var(--sp-3);flex-wrap:wrap;flex:1;min-width:0;display:flex}.guide-phase-meta{color:var(--mut);flex:none;align-items:center;gap:14px;margin-left:auto;font-size:14px;display:flex}.guide-phase-count{white-space:nowrap}.guide-phase-chevron{color:var(--navy-strong);white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}.guide-phase-chevron svg{transition:transform var(--t-fast)}.badge.green,.guide-phase .badge.green{color:var(--mut);background:#e6e2d9}.guide-steps-wrap{grid-template-rows:0fr;transition:grid-template-rows .25s;display:grid}.guide-steps-wrap.open{grid-template-rows:1fr}.guide-steps-wrap>.guide-steps{min-height:0;overflow:hidden}.guide-phase .guide-steps-wrap.open>.guide-steps{padding:var(--sp-4) 4px var(--sp-5);border-bottom:1px solid var(--line)}.guide-steps{flex-direction:column;display:flex}.guide-step{gap:var(--sp-3);grid-template-columns:36px 1fr;display:grid}.guide-step-rail{flex-direction:column;align-items:center;display:flex}.guide-step-no{width:32px;height:32px;font-weight:700;font-size:var(--fs-xs);background:var(--paper);color:var(--mut);border:2px solid var(--line);border-radius:50%;flex:none;place-items:center;display:grid}.guide-step.actor-authority .guide-step-no,.guide-step.actor-joint .guide-step-no{background:0 0;border-style:dashed;font-size:11px}.guide-step.done .guide-step-no{background:var(--green);border-color:var(--green);color:#fff;border-style:solid}.guide-step.now .guide-step-no{background:var(--gold);border-color:var(--gold);color:var(--navy-strong);border-style:solid}.guide-step-line{background:var(--line);flex:1;width:2px;margin:3px 0}.guide-step:last-child .guide-step-line{display:none}.guide-step.done .guide-step-line{background:var(--green)}.guide-step-body{padding-bottom:var(--sp-4);min-width:0}.guide-step:last-child .guide-step-body{padding-bottom:0}.guide-step-head{align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:2px;display:flex}.guide-step-head h4{font-size:var(--fs-md);color:var(--ink);font-weight:700}.guide-step.actor-authority .guide-step-head h4,.guide-step.actor-joint .guide-step-head h4{color:var(--mut);font-weight:600}.guide-step.now .guide-step-head h4{color:var(--gold-strong);font-weight:800}.guide-step-desc{font-size:var(--fs-md);color:var(--mut);margin-bottom:var(--sp-2);line-height:1.85}.guide-docs{gap:var(--sp-2);flex-wrap:wrap;display:flex}.guide-doc{align-items:center;gap:var(--sp-2);background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-sm);padding:5px 6px 5px 12px;display:flex}.guide-doc-label{color:var(--ink);white-space:nowrap}.guide-doc .btn{font-size:var(--fs-xs);padding:3px 10px}.guide-cycles{columns:300px 4;column-gap:var(--sp-4)}.guide-cycle .guide-docs{flex-direction:column;align-items:flex-start}.guide-cycle{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);background:var(--paper);break-inside:avoid;margin-bottom:var(--sp-4)}.guide-cycle-head{color:var(--navy);font-weight:800;font-size:var(--fs-md);margin-bottom:2px}.archive-table-wrap{overflow-x:auto}.archive-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;min-width:560px}.archive-table th{background:var(--gold-soft);text-align:left;font-size:var(--fs-xs);border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 12px}.archive-table td{border-bottom:1px solid var(--line);padding:7px 12px}.archive-table tr:last-child td{border-bottom:none}.archive-table tr:hover td{background:var(--paper)}.empty{text-align:center;padding:var(--sp-8);color:var(--mut);background:var(--card);border:1px dashed var(--line);border-radius:var(--r-lg);font-size:var(--fs-sm)}.field-anchor{display:contents}.field-flash{border-radius:var(--r-sm);animation:1.6s field-flash}@keyframes field-flash{0%,60%{box-shadow:0 0 0 4px var(--gold-light)}to{box-shadow:0 0 #0000}}.missing-title{margin-bottom:6px;font-weight:700}.missing-list{flex-wrap:wrap;gap:6px 8px;display:flex}.missing-chip{background:var(--card);color:var(--ink);font-size:var(--fs-sm);cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast);border:1px solid #e6cf9a;border-radius:6px;padding:4px 10px;font-weight:600}.missing-chip span{color:var(--amber);font-weight:400}.missing-chip:hover{background:var(--amber-soft);border-color:var(--amber)}.missing-rule{color:var(--amber);font-weight:600}.archive-actions{white-space:nowrap;align-items:center;gap:8px;display:flex}.archive-noedit{font-size:var(--fs-xs);color:var(--faint)}@media (prefers-reduced-motion:reduce){.field-flash{outline:3px solid var(--gold-light);animation:none}}:root[data-theme=brutal]{--ink:#111;--mut:#333;--faint:#5c5c5c;--line:#111;--bg:#fff6e0;--paper:#fffdf6;--card:#fff;--navy:#111;--navy-strong:#111;--navy-soft:#ffe9a8;--gold:#ffc83d;--gold-strong:#111;--gold-light:#ffc83d;--gold-soft:#fff1c2;--red:#c8102e;--red-soft:#ffe0e0;--green:#111;--green-soft:#fff;--amber:#111;--amber-soft:#fff1c2;--bw:2.5px;--hard:4px 4px 0 #111;--hard-lg:7px 7px 0 #111;--hard-sm:3px 3px 0 #111}:root[data-theme=brutal] body{background:var(--bg)}:root[data-theme=brutal] .skel-row{background:#efe3c4;animation:none}:root[data-theme=brutal] .app-header{border-bottom:var(--bw) solid #111;background:#111}:root[data-theme=brutal] .app-header .logo{background:var(--gold);border:var(--bw) solid #fff}:root[data-theme=brutal] .app-header .sub{color:var(--gold)}:root[data-theme=brutal] .tabs-nav{border-bottom:var(--bw) solid #111;background:var(--paper)}:root[data-theme=brutal] .tabs-nav-inner{gap:8px;padding-top:10px;padding-bottom:10px}:root[data-theme=brutal] .tabs-nav button{border:var(--bw) solid transparent;color:#111;border-radius:999px;padding:8px 16px;font-weight:700}:root[data-theme=brutal] .tabs-nav button.on{background:var(--gold);box-shadow:var(--hard-sm);border-color:#111}:root[data-theme=brutal] .panel,:root[data-theme=brutal] .guide-cycle,:root[data-theme=brutal] .doc-help,:root[data-theme=brutal] .intake-phase,:root[data-theme=brutal] .subform,:root[data-theme=brutal] .ai-panel{border:var(--bw) solid #111;box-shadow:var(--hard);border-radius:12px}:root[data-theme=brutal] .panel-head,:root[data-theme=brutal] .audit-head{border-bottom:var(--bw) solid #111}:root[data-theme=brutal] .audit-head-titles h2,:root[data-theme=brutal] .panel-head h2,:root[data-theme=brutal] .road-head h2{letter-spacing:-.01em;font-weight:900}:root[data-theme=brutal] .audit-hero,:root[data-theme=brutal] .audit-hero.overdue{background:var(--card);box-shadow:var(--hard-lg);border:3px solid #111;border-radius:14px;padding:26px 30px}:root[data-theme=brutal] .audit-hero-name{font-size:32px;font-weight:900}:root[data-theme=brutal] .audit-chip,:root[data-theme=brutal] .badge{color:#111;background:var(--card);border:2px solid #111;border-radius:999px;font-weight:800}:root[data-theme=brutal] .audit-chip.next{background:var(--gold);transform:rotate(-3deg)}:root[data-theme=brutal] .audit-chip.overdue,:root[data-theme=brutal] .audit-hero.overdue .audit-chip.overdue{background:var(--red);color:#fff;transform:rotate(2deg)}:root[data-theme=brutal] .audit-chip.missing{background:var(--gold-soft)}:root[data-theme=brutal] .audit-row,:root[data-theme=brutal] .resource-item,:root[data-theme=brutal] .guide-phase-head{border-bottom:2px solid #111}:root[data-theme=brutal] .btn,:root[data-theme=brutal] .btn-outline-navy,:root[data-theme=brutal] .missing-chip,:root[data-theme=brutal] .guide-doc,:root[data-theme=brutal] .doc-help-back,:root[data-theme=brutal] .doc-help-toggle,:root[data-theme=brutal] .theme-switch button{border:var(--bw) solid #111;box-shadow:var(--hard-sm);color:#111;border-radius:999px;font-weight:800;transition:transform 80ms ease-out,box-shadow 80ms ease-out,background .12s}:root[data-theme=brutal] .btn:hover:not(:disabled),:root[data-theme=brutal] .btn-outline-navy:hover,:root[data-theme=brutal] .missing-chip:hover{background:var(--gold-soft);color:#111}:root[data-theme=brutal] .btn:active:not(:disabled),:root[data-theme=brutal] .btn-outline-navy:active,:root[data-theme=brutal] .missing-chip:active,:root[data-theme=brutal] .doc-help-back:active,:root[data-theme=brutal] .doc-help-toggle:active,:root[data-theme=brutal] .theme-switch button:active{transform:translate(3px,3px);box-shadow:0 0 #111}:root[data-theme=brutal] .btn-primary,:root[data-theme=brutal] .btn-gold{background:var(--gold);color:#111;border-color:#111}:root[data-theme=brutal] .btn-primary:hover:not(:disabled){color:#111;background:#ffb800}:root[data-theme=brutal] .audit-hero-btn{box-shadow:var(--hard);font-size:19px;font-weight:900}:root[data-theme=brutal] .audit-hero-btn:active:not(:disabled){transform:translate(4px,4px);box-shadow:0 0 #111}:root[data-theme=brutal] .guide-doc{background:var(--card);border-radius:10px}:root[data-theme=brutal] input,:root[data-theme=brutal] textarea,:root[data-theme=brutal] select{border:var(--bw) solid #111;background:var(--card);border-radius:8px}:root[data-theme=brutal] input:focus,:root[data-theme=brutal] textarea:focus,:root[data-theme=brutal] select:focus{box-shadow:var(--hard-sm);background:#fffbe8}:root[data-theme=brutal] .guide-phase-no{box-shadow:var(--hard-sm);border:3px solid #111;font-weight:900}:root[data-theme=brutal] .guide-phase-rail:after,:root[data-theme=brutal] .guide-step-line{background:#111;width:3px}:root[data-theme=brutal] .alert{border:var(--bw) solid #111;box-shadow:var(--hard-sm);color:#111}:root[data-theme=brutal] .alert-warning{background:var(--gold-soft)}:root[data-theme=brutal] .alert-success{background:#e9f7e9}:root[data-theme=brutal] .alert-error{background:var(--red-soft)}:root[data-theme=brutal] .preview-paper{border:var(--bw) solid #111;box-shadow:var(--hard)}.theme-switch{background:#ffffff1a;border-radius:999px;gap:4px;margin-left:auto;padding:3px;display:inline-flex}.theme-switch button{color:#d9c08a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:4px 12px;font-size:13px}.theme-switch button.on{color:#1b2f45;background:#fff;font-weight:700}:root[data-theme=brutal] .theme-switch{background:0 0}:root[data-theme=brutal] .theme-switch button{background:#fff;padding:3px 12px;font-size:13px}:root[data-theme=brutal] .theme-switch button.on{background:var(--gold)}@media (prefers-reduced-motion:reduce){:root[data-theme=brutal] .btn:active,:root[data-theme=brutal] .audit-hero-btn:active{transform:none}}:root[data-theme=brutal] .app-header select{color:#111;border:var(--bw) solid #fff;background:#fff;font-weight:700}.guide-cycles{columns:320px 3}.guide-cycle .guide-docs{margin-top:var(--sp-2);flex-direction:column;align-items:stretch;gap:0}.guide-cycle .guide-doc{justify-content:space-between;gap:var(--sp-3);border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;padding:10px 0}.guide-cycle .guide-doc-label{white-space:normal;font-weight:600}.guide-cycle .guide-doc .btn{flex:none}:root[data-theme=brutal] .guide-cycle .guide-doc{box-shadow:none;background:0 0;border:0;border-top:2px solid #111;border-radius:0}:root[data-theme=brutal] .guide-cycle-head{font-size:var(--fs-lg);font-weight:900}.todo-edit-list{flex-direction:column;gap:6px;list-style:none;display:flex}.todo-edit{flex-wrap:wrap;align-items:center;gap:6px 8px;padding-left:0;display:flex}.ai-todos .todo-edit:before{content:none}.todo-edit.off input[type=text],.todo-edit.off input[type=date]{opacity:.45;text-decoration:line-through}.todo-edit input[type=checkbox]{width:18px;height:18px;accent-color:var(--navy);flex:none;margin:0}.todo-edit input[type=text],.todo-edit input[type=date]{font-size:var(--fs-xs);padding:6px 9px}.todo-edit-task{flex:220px;min-width:0}.todo-edit-owner{flex:0 110px}.todo-edit-date{flex:0 0 150px}.todo-edit-hint{color:var(--faint);flex:1 0 100%;padding-left:26px;font-size:13px}.todos-body{border-top:1px solid var(--line)}.todos-head{align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.todos-head h3{font-size:var(--fs-md);color:var(--navy-strong);font-weight:800}.todo-list{flex-direction:column;list-style:none;display:flex}.todo{border-bottom:1px solid #e7e2d8;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 4px;display:flex}.todo:last-child{border-bottom:none}.todo.overdue{background:var(--red-soft);border-radius:var(--r-sm);padding-left:8px;padding-right:8px}.todo-check{cursor:pointer;flex:280px;align-items:center;gap:10px;min-width:0;display:flex}.todo-check input[type=checkbox]{width:20px;height:20px;accent-color:var(--navy);flex:none;margin:0}.todo-task{font-size:var(--fs-md);color:var(--ink);font-weight:600;line-height:1.5}.todo.done .todo-task{color:var(--mut);font-weight:400;text-decoration:line-through}.todo-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.todo-date{width:150px;font-size:var(--fs-xs);padding:4px 8px}.todo-source{color:var(--faint);white-space:nowrap;font-size:13px}.todo-done{margin-top:var(--sp-3)}.todo-done summary{cursor:pointer;font-size:var(--fs-xs);color:var(--mut)}:root[data-theme=brutal] .todos-body{border-top:2px solid #111}:root[data-theme=brutal] .todo{border-bottom:2px solid #111}:root[data-theme=brutal] .todo.overdue{border:var(--bw) solid #111;box-shadow:var(--hard-sm);border-radius:0;margin:4px 0}:root[data-theme=brutal] .todo-check input[type=checkbox],:root[data-theme=brutal] .todo-edit input[type=checkbox]{accent-color:#111}
