:root{--color-bg:#f5f3ed;--color-surface:#fffefa;--color-text:#182b24;--color-text-muted:#526057;--color-primary:#1d4938;--color-primary-soft:#e5ede6;--color-divider:#d9ded4;--color-danger:#9f352d;--color-warning:#79510d;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-control:8px;--radius-panel:12px;--touch:44px;--font-sans:system-ui, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;--font-mono-num:ui-monospace, "SF Mono", Menlo, monospace;--focus-inner:#fffefa;--focus-outer:#1d4938;--motion-fast:.16s;--font-weight-regular:400;--font-weight-strong:600;--font-weight-title:700;--text-title:32px;--text-body:16px;--text-small:13px;--text-score:32px;--content-max:1200px;--form-max:720px;--sidebar:200px}@media (width<=879px){:root{--text-title:26px;--text-score:28px}}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0s}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ui-btn,.ui-password button,.ui-filter-options button,.account-menu summary,.ui-check{min-height:var(--touch);min-width:var(--touch)}.ui-btn,.ui-password button,.ui-filter-options button{transition-property:background-color,border-color,color;transition-duration:var(--motion-fast);transition-timing-function:ease}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-text-muted);background:var(--color-surface);color:var(--color-text);font-weight:var(--font-weight-strong);text-decoration:none;display:inline-flex}a.ui-btn{box-sizing:border-box}.ui-btn.is-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface)}.ui-btn.is-danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-surface)}.ui-btn:disabled{background:var(--color-primary-soft);color:var(--color-text-muted);border:1px dashed var(--color-text-muted);cursor:not-allowed}.ui-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.ui-field label,.ui-field>span{font-weight:var(--font-weight-strong)}.ui-field input,.ui-field select,.ui-field textarea{min-height:var(--touch);border:1px solid var(--color-text-muted);border-radius:var(--radius-control);background:var(--color-surface);width:100%;color:var(--color-text);padding:8px 12px}.ui-field textarea{resize:vertical;min-height:11rem}.ui-field-error{color:var(--color-danger);margin:0}.ui-hint,.ui-field p{color:var(--color-text-muted);font-size:var(--text-small);margin:0}.ui-password{gap:var(--space-2);align-items:stretch;display:flex}.ui-password input{flex:1;min-width:0}.ui-password button{padding:0 var(--space-3);border-radius:var(--radius-control);border:1px solid var(--color-text-muted);background:var(--color-surface);color:var(--color-text)}.ui-filter{gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap;align-items:end;display:flex}.ui-filter-options{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-filter-options button{padding:0 var(--space-3);border-radius:var(--radius-control);border:1px solid var(--color-text-muted);background:var(--color-surface);color:var(--color-text)}.ui-filter-options button.is-selected{background:var(--color-primary-soft);border-color:var(--color-primary);font-weight:var(--font-weight-strong)}.ui-filter-query{flex:180px}.ui-data{outline:none;max-width:100%;overflow-x:auto}.ui-table{border-collapse:collapse;table-layout:fixed;width:100%}.ui-table th,.ui-table td{border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:16px 8px}.ui-table th{font-size:var(--text-small);font-weight:var(--font-weight-strong);color:var(--color-text-muted)}.ui-table tr.is-self,.ui-card.is-self{background:var(--color-primary-soft)}.ui-cards{display:none}.ui-card{padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider)}.ui-card-top,.ui-card-meta{justify-content:space-between;gap:var(--space-3);min-width:0;display:flex}.ui-card-top strong,.matter{overflow-wrap:anywhere;min-width:0}.num{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1;font-family:var(--font-mono-num);white-space:nowrap;text-align:right}.ui-table td.num,.ui-table th.num{width:7.5rem}.ui-feedback,.ui-empty,.ui-error{padding:var(--space-4);border-radius:var(--radius-panel);background:var(--color-surface);border:1px solid var(--color-text-muted)}.ui-feedback{margin:var(--space-3) 0}.ui-feedback strong,.ui-empty h2,.ui-error h2{margin:0 0 var(--space-2);font-size:18px;display:block}.ui-feedback.is-danger,.ui-error{border-color:var(--color-danger)}.ui-feedback.is-danger strong,.ui-error h2,.is-danger{color:var(--color-danger)}.ui-feedback.is-warning{border-color:var(--color-warning)}.ui-feedback.is-warning strong,.is-warning{color:var(--color-warning)}.ui-feedback.is-ok strong,.is-ok{color:var(--color-primary)}.ui-skeleton{gap:var(--space-3);padding:var(--space-3) 0;display:grid}.ui-skeleton-line{background:var(--color-primary-soft);border-radius:var(--radius-control);height:16px;display:block}.ui-skeleton-line.is-short{width:42%}.ui-request{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.ui-request code{overflow-wrap:anywhere}.ui-dialog-backdrop{z-index:20;padding:var(--space-4);background:#182b2473;place-items:center;display:grid;position:fixed;inset:0}.ui-dialog{width:min(560px,100%);max-height:calc(100vh - 32px);padding:var(--space-5);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-text-muted);border-radius:var(--radius-panel);overflow:auto}.ui-dialog h2{margin:0 0 var(--space-3);font-size:22px}.ui-dialog-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.ui-check{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ui-check input{flex:none;width:20px;height:20px}@media (width<=879px){.ui-table{display:none}.ui-cards{display:block}.ui-data{overflow-x:visible}}.skip-link{left:var(--space-2);top:var(--space-2);z-index:30;min-height:var(--touch);padding:0 var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-primary);border-radius:var(--radius-control);align-items:center;display:inline-flex;position:absolute}.skip-link:not(:focus){clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden}.shell-side a,.shell-bottom a,.account-menu summary{transition-property:background-color,color;transition-duration:var(--motion-fast);transition-timing-function:ease}.shell{background:var(--color-bg);min-height:100vh;color:var(--color-text);flex-direction:column;display:flex}.impersonation-banner{z-index:25;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text);border-bottom:1px solid var(--color-warning);background:#fff4d6;flex-wrap:wrap;align-items:center;display:flex;position:sticky;top:0}.impersonation-banner p{margin:0}.shell-top{justify-content:space-between;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--color-divider);background:var(--color-bg);align-items:center;display:flex}.shell-brand{min-width:0}.shell-brand p,.login-brand p{margin:0}.eyebrow{color:var(--color-text-muted);font-size:var(--text-small);letter-spacing:.06em}.shell-identity{font-weight:var(--font-weight-strong);overflow-wrap:anywhere;margin-top:4px}.shell-body{flex:1;width:100%;min-width:0;display:flex}.shell-side{width:var(--sidebar);padding:var(--space-4) var(--space-3);border-right:1px solid var(--color-divider);flex:none}.shell-side a,.shell-bottom a{min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--color-text);align-items:center;text-decoration:none;display:flex}.shell-side a[aria-current=page],.shell-bottom a[aria-current=page]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:var(--font-weight-strong)}.shell-main{min-width:0;padding:var(--space-5) var(--space-5) var(--space-7);flex:1}.shell-main>*{max-width:var(--content-max)}.shell-foot{padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-small);border-top:1px solid var(--color-divider)}.shell-foot p{margin:0}.shell-bottom{display:none}.account-menu{position:relative}.account-menu summary{padding:0 var(--space-3);border:1px solid var(--color-text-muted);border-radius:var(--radius-control);background:var(--color-surface);align-items:center;list-style:none;display:inline-flex}.account-menu summary::-webkit-details-marker{display:none}.account-panel{z-index:5;min-width:220px;max-width:calc(100vw - 32px);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-text-muted);border-radius:var(--radius-control);position:absolute;top:calc(100% + 8px);right:0}.account-panel a{min-height:var(--touch);padding:0 var(--space-3);color:var(--color-text);align-items:center;text-decoration:none;display:flex}.page-head h1,.login-brand h1{font-size:var(--text-title);font-weight:var(--font-weight-title);margin:8px 0 0;line-height:1.25}.sample-flag{border:1px solid var(--color-primary);background:var(--color-primary-soft);min-height:28px;color:var(--color-primary);font-size:var(--text-small);font-weight:var(--font-weight-strong);border-radius:6px;align-items:center;margin:0;padding:0 8px;display:inline-flex}.lede,.score-note{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.score{margin:var(--space-3) 0 0;font-size:var(--text-score);font-weight:var(--font-weight-title);text-align:left;line-height:1.1}.form-panel{max-width:var(--form-max);margin-top:var(--space-4);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-panel)}.form-stack{gap:var(--space-4);display:grid}.login-page{max-width:760px;padding:var(--space-5) var(--space-4) var(--space-7);margin:0 auto}.login-top{justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-divider);align-items:flex-end;display:flex}.auth-status{margin:var(--space-4) 0 0;padding:var(--space-3);background:var(--color-primary-soft);color:var(--color-primary);border-radius:var(--radius-control)}.stages{gap:var(--space-2);margin:var(--space-4) 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.stages li{min-height:var(--touch);padding:0 var(--space-3);border:1px solid var(--color-text-muted);border-radius:var(--radius-control);background:var(--color-surface);align-items:center;display:inline-flex}.stages li[aria-current=step]{background:var(--color-primary-soft);border-color:var(--color-primary);font-weight:var(--font-weight-strong)}.grant-row{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-divider);flex-wrap:wrap;align-items:center;display:flex}.grant-row .who{overflow-wrap:anywhere;flex:180px;min-width:0}.grant-amount{width:140px;max-width:100%}.record-list{margin:var(--space-4) 0 0;padding:0;list-style:none}.record-list li{padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider)}.record-list li p{margin:4px 0 0}.product-tag{border:1px solid var(--color-primary);color:var(--color-primary);font-size:var(--text-small);font-weight:var(--font-weight-strong);border-radius:6px;align-items:center;margin-right:8px;padding:0 6px;display:inline-flex}.check-line{min-height:var(--touch);align-items:center;gap:8px;display:flex}.check-line input{width:1.25rem;height:1.25rem}.self-tag{border:1px solid var(--color-primary);color:var(--color-primary);font-size:var(--text-small);font-weight:var(--font-weight-strong);border-radius:6px;align-items:center;margin-left:8px;padding:0 6px;display:inline-flex}.page-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}details summary{min-height:var(--touch);cursor:pointer;align-items:center;display:flex}@media (width<=879px){.shell-side{display:none}.shell{padding-bottom:calc(var(--touch) + 8px)}.shell-bottom{z-index:4;background:var(--color-surface);border-top:1px solid var(--color-divider);display:flex;position:fixed;bottom:0;left:0;right:0}.shell-bottom a{text-align:center;flex:1;justify-content:center;padding:0 4px}.shell-main,.login-page{padding:var(--space-4) var(--space-4) var(--space-6)}.login-top,.shell-top{align-items:flex-start}.shell-top{flex-wrap:wrap}}@media (width<=360px){.login-top{flex-direction:column}}.rule-list{margin:0;padding-left:1.2rem}.rule-list li[data-met=no]{color:var(--color-danger)}.credential-facts{gap:var(--space-2) var(--space-3);margin:var(--space-3) 0 0;grid-template-columns:minmax(5.5rem,7rem) minmax(0,1fr);display:grid}.credential-facts dt,.credential-facts dd{margin:0}.credential-facts dt{color:var(--color-text-muted)}.secret-value{font-family:var(--font-mono-num);font-size:18px;font-weight:var(--font-weight-strong);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.choice-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.choice-list button{text-align:left;justify-content:flex-start;width:100%}.choice-list button[aria-pressed=true]{background:var(--color-primary-soft);border-color:var(--color-primary)}.choice-list{gap:var(--space-2);margin:var(--space-3) 0 0;border:0;min-width:0;padding:0;display:grid}.choice-list .ui-check{padding:var(--space-2) 0;border-bottom:1px solid var(--color-divider);align-items:flex-start}.meta-id,.meta-line{color:var(--color-text-muted);font-size:var(--text-small);overflow-wrap:anywhere;display:block}.amount-input{width:8.5rem;max-width:100%}.section-gap{margin-top:var(--space-5)}.work-links{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.work-links a{text-decoration:none}:root{color:var(--color-text);background:var(--color-bg);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--font-weight-regular);line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--color-bg);overflow-wrap:anywhere}a,a:visited{color:var(--color-primary)}button,input,select,textarea,summary{font:inherit}button,summary,[role=button]{cursor:pointer}a:focus,button:focus,input:focus,select:focus,textarea:focus,summary:focus,.ui-data:focus{outline:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.ui-data:focus-visible,.ui-dialog:focus-visible{outline:2px solid var(--focus-outer);outline-offset:2px;box-shadow:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1,h2,p{overflow-wrap:anywhere}
