@import "https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;700&display=swap";
:root{--report-teal:#0f766e;--report-teal-deep:#0b5a54;--teal-tint:#e6f4f1;--teal-band:#cdebe5;--ink:#1f2933;--ink-muted:#52606d;--ink-absent:#616e7c;--rule-strong:#9aa5b1;--rule:#cbd2d9;--hairline:#e4e7eb;--bench:#eef1f3;--sheet:#fff;--sheet-foot:#f7faf9;--flag-h-bg:#fef3c7;--flag-h-ink:#92400e;--flag-l-bg:#e0f2fe;--flag-l-ink:#075985;--alert:#b91c1c;--control-h:44px}*{box-sizing:border-box}body{background:var(--bench);color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-family:Noto Sans TC,PingFang TC,sans-serif;font-size:15px;line-height:1.5}::selection{background:var(--teal-band);color:var(--ink)}a{color:var(--report-teal);text-underline-offset:3px}a:hover{color:var(--report-teal-deep)}:focus-visible{outline:2px solid var(--report-teal);outline-offset:2px}h1{margin:0;font-size:22px;line-height:1.3}h2{margin:0;font-size:18px;line-height:1.4}h3{margin:0;font-size:15px;line-height:1.4}.shell{max-width:1216px;margin:0 auto;padding:32px}.shell.narrow{max-width:480px}.shell.medium{max-width:800px}.shell>h1{margin:0 0 16px}.sheet{background:var(--sheet);border:1px solid var(--rule);padding:24px 28px 28px}.sheet-head{border-bottom:2px solid var(--ink);flex-wrap:wrap;align-items:flex-end;gap:12px;padding-bottom:12px;display:flex}.sheet-head .grow{flex:1;min-width:0}.part{border-top:2px solid var(--ink);margin-top:28px;padding-top:14px}.crumbs{color:var(--ink-muted);margin:0 0 10px;font-size:13px}.crumbs a{text-decoration:none}.meta{color:var(--ink-muted);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;margin:14px 0 0;font-size:13px;display:grid}.meta dd{color:var(--ink);margin:2px 0 0;font-size:15px}.note{color:var(--ink-muted);margin:12px 0 0;font-size:13px;line-height:1.7}.sub{color:var(--ink-muted);font-size:13px}.muted{color:var(--ink-muted)}.na{color:var(--ink-absent)}.error{color:var(--alert)}.label{color:var(--ink-muted);font-size:13px;display:block}.prose{max-width:720px}.card{background:var(--sheet);border:1px solid var(--rule);padding:18px 24px}.app-header{background:var(--sheet);border-bottom:1px solid var(--rule);align-items:center;gap:40px;height:56px;padding:0 32px;display:flex}.app-header .brand{color:var(--report-teal);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.brand-logo rect{fill:var(--report-teal)}.brand-logo path{fill:none;stroke:var(--sheet);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.brand-logo circle{fill:var(--sheet)}.brand-title{align-items:center;gap:10px;display:flex}.trademark-note{color:var(--ink-muted);margin-top:24px;font-size:13px}.app-header nav{flex:1;gap:28px;height:100%;display:flex}.app-header nav a{color:var(--ink-muted);align-items:center;text-decoration:none;display:flex}.app-header nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--report-teal);font-weight:700}.app-header .who{color:var(--ink-muted);align-items:center;gap:12px;font-size:13px;display:flex}.app-footer{max-width:1216px;color:var(--ink-muted);margin:0 auto;padding:0 32px 32px;font-size:13px}button,.btn{height:var(--control-h);border:1px solid var(--rule-strong);background:var(--sheet);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:15px;text-decoration:none;display:inline-flex}button:hover,.btn:hover{border-color:var(--ink-muted);color:var(--ink)}button.primary,.btn.primary{background:var(--report-teal);border-color:var(--report-teal);color:#fff;padding:0 18px}button.primary:hover,.btn.primary:hover{background:var(--report-teal-deep);border-color:var(--report-teal-deep);color:#fff}button.danger{color:var(--alert);border-color:var(--alert)}button:disabled{opacity:.5;cursor:not-allowed}.link-button{height:var(--control-h);color:var(--report-teal);background:0 0;border:0;padding:0 8px;font-size:13px}.link-button:hover{color:var(--report-teal-deep)}input,select,textarea{height:var(--control-h);border:1px solid var(--rule-strong);background:var(--sheet);color:var(--ink);font:inherit;accent-color:var(--report-teal);border-radius:4px;padding:0 12px;font-size:15px}textarea{height:auto;padding:10px 12px}.segmented{border:1px solid var(--rule-strong);border-radius:4px;display:inline-flex;overflow:hidden}.segmented button{border:0;border-left:1px solid var(--rule-strong);border-radius:0}.segmented button:first-child{border-left:0}.segmented button[aria-pressed=true]{background:var(--ink);color:#fff}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.toolbar .spacer{flex:1}.toolbar label{color:var(--ink-muted);align-items:center;gap:8px;font-size:13px;display:flex}.form{flex-direction:column;gap:16px;display:flex}.form.inline{flex-flow:wrap;align-items:flex-end;margin-bottom:16px}.form label{color:var(--ink);flex-direction:column;gap:6px;font-size:15px;font-weight:500;display:flex}.form .hint{color:var(--ink-muted);font-size:13px;font-weight:400}.form label.check{grid-template-columns:20px 1fr;align-items:center;gap:2px 10px;font-weight:400;display:grid}.form label.check input{width:20px;height:20px;margin:0}.form label.check .hint{grid-column:2}.form label.prefilled input{border-color:var(--report-teal);background:var(--teal-tint)}.prefill-tag{color:var(--report-teal-deep);border:1px solid var(--report-teal);border-radius:2px;align-self:flex-start;padding:1px 6px;font-size:12px;font-weight:700}.shots{border-top:1px solid var(--hairline);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.shots li{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0;display:flex}.shots li .check{flex:1;min-width:200px}.shot-thumb{border:1px solid var(--rule);background:var(--bench);width:72px;height:72px;display:block}.shot-thumb img{object-fit:contain;width:72px;height:72px}.form label.file-button,.file-button{cursor:pointer;flex-direction:row;align-items:center;font-weight:400;display:inline-flex;position:relative}.file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--report-teal);outline-offset:2px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.form-actions{border-top:1px solid var(--rule);align-items:center;gap:12px;padding-top:18px;display:flex}.form-actions .spacer{flex:1}.fieldset{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.fieldset legend{color:var(--ink);margin-bottom:6px;padding:0;font-size:15px;font-weight:500}.fieldset .hint{color:var(--ink-muted);font-size:13px}.fieldset .segmented{align-self:flex-start}.form-grid.deliverables,.form-grid.fees{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.form-grid.deliverables input,.form-grid.fees input{width:100%;min-width:0}.form-grid.deliverables label,.form-grid.fees label{color:var(--ink-muted);font-size:13px}.steps{counter-reset:step;color:var(--ink-absent);gap:0;margin:16px 0 20px;padding:0;font-size:13px;list-style:none;display:flex}.steps li{border-bottom:2px solid var(--hairline);counter-increment:step;flex:1;padding:8px 0}.steps li:before{content:counter(step) ". "}.steps li[aria-current=step]{color:var(--ink);border-bottom-color:var(--report-teal);font-weight:700}.steps li.done{color:var(--ink);border-bottom-color:var(--rule-strong)}.pick{border-top:1px solid var(--hairline);flex-direction:column;display:flex}.pick label{min-height:var(--control-h);border-bottom:1px solid var(--hairline);flex-direction:row;align-items:center;gap:12px;padding:6px 0;font-weight:400}.pick input[type=radio],.pick input[type=checkbox]{width:18px;height:18px}.pick .sub{color:var(--ink-muted);margin-left:auto;font-size:13px}.clause{background:var(--sheet-foot);border:1px solid var(--rule);white-space:pre-wrap;margin:8px 0 0;padding:12px 16px;font-size:13px;line-height:1.8}.notice{background:var(--teal-tint);border:1px solid var(--teal-band);margin-bottom:16px;padding:12px 16px}.notice input{width:100%;margin:8px 0}.alert{background:var(--sheet);border:1px solid var(--alert);color:var(--alert);padding:12px 16px}.site-banner{text-align:center;border-width:0 0 1px;font-size:13px}.confirm{background:var(--sheet-foot);border:1px solid var(--rule-strong);flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;padding:12px 16px;display:flex}.confirm>span{flex:1;min-width:240px}.scroll{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:15px}.table th{text-align:left;color:var(--ink-muted);border-bottom:2px solid var(--ink);white-space:nowrap;padding:12px 8px 10px 0;font-size:13px;font-weight:500}.table td{border-bottom:1px solid var(--hairline);vertical-align:middle;padding:14px 8px 14px 0}.table .r,.table th.r{text-align:right}.table .name{font-weight:700;text-decoration:none}.actions{gap:8px;display:flex}.flag{border-radius:2px;padding:1px 6px;font-size:12px;font-weight:700}.flag.H{background:var(--flag-h-bg);color:var(--flag-h-ink)}.flag.L{background:var(--flag-l-bg);color:var(--flag-l-ink)}.cell-line{font-size:13px;line-height:1.5;display:block}.table td.metric{vertical-align:top}.table td.metric .value{font-weight:700}.eval-table td{vertical-align:top;white-space:nowrap}.table tfoot td{background:var(--sheet-foot);border-top:1px solid var(--rule);vertical-align:top;border-bottom:0}.node-picker{margin-top:12px}.node-picker select{min-width:220px}.cost-basis{margin-top:8px}.cost-basis .toggle-label{color:var(--ink-muted);font-size:13px}.cost-basis label{min-height:var(--control-h)}.cost-basis input[type=checkbox]{width:18px;height:18px;padding:0}.table td.metric .fallback{border-top:1px dashed var(--rule-strong);margin-top:6px;padding-top:6px;display:block}.basis-tag{border:1px solid var(--rule-strong);color:var(--ink-muted);border-radius:2px;margin-left:6px;padding:1px 6px;font-size:12px;font-weight:500;display:inline-block}.node-details{margin-top:16px}.node-details summary{min-height:var(--control-h);cursor:pointer;align-items:center;font-weight:500;display:flex}.report-summary th[scope=row]{border-bottom:1px solid var(--hairline);width:240px;color:var(--ink);white-space:normal;vertical-align:top;padding:12px 16px 12px 0;font-size:15px;font-weight:500}.report-summary td.metric{white-space:nowrap;width:200px}.report-summary td.sub{line-height:1.7}.report-table td{white-space:normal}.report-table td.metric{white-space:nowrap}.report-notes{min-width:240px}.top-list{text-align:left;margin:0;padding-left:20px}.report-provenance th[scope=row]{border-bottom:1px solid var(--hairline);color:var(--ink);white-space:normal;font-size:13px}.report-provenance td{vertical-align:top;font-size:13px;line-height:1.7}.flags{margin:8px 0 0;padding-left:20px}.disclaimer{color:var(--ink)}.definitions{color:var(--ink-muted);grid-template-columns:max-content 1fr;gap:4px 16px;margin:12px 0 0;font-size:13px;line-height:1.7;display:grid}.definitions dt{color:var(--ink);font-weight:500}.definitions dd{margin:0}.chart{min-width:0;margin:12px 0 0}.chart .plot{overflow-x:auto}.chart .plot svg{display:block}.chart .axis{fill:var(--ink-muted);font-size:13px}.legend{border-top:1px dashed var(--rule-strong);color:var(--ink-muted);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;margin:12px 0 0;padding-top:14px;font-size:13px;display:grid}.legend dt{color:var(--ink);align-items:center;gap:8px;display:flex}.legend dd{margin:2px 0 0 40px}.chart details summary{min-height:var(--control-h);cursor:pointer;align-items:center;display:flex}@media (max-width:720px){.legend{grid-template-columns:1fr}.shell{padding:16px}.sheet{padding:18px 16px}.app-header{gap:20px;padding:0 16px}.app-header .who span{display:none}.app-footer{padding:0 16px 24px}}@media print{.app-header,.app-footer,.noprint{display:none!important}body{background:#fff}.sheet{border:0}.scroll{overflow:visible}.report-table,.report-provenance{font-size:9px;min-width:0!important}.report-table td,.report-table th,.report-table td.metric{white-space:normal;padding:4px 4px 4px 0}.report-table .cell-line{font-size:8px}}
