/* ficus 个人皮肤。data-preview-theme让预览卡与真实界面共用同一组色值。 */
:root{--ink:#253b34;--muted:#596b62;--green:#245b4b;--accent:#397963;--solid:#245b4b;--solid-hover:#194333;--line:#d5e1d8;--paper:#ffffff;--bg:#f4f7f4;--soft:#eaf2eb;--sidebar:#f9fbf8;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="pine"],[data-preview-theme="pine"]{--ink:#253b34;--muted:#596b62;--green:#245b4b;--accent:#397963;--solid:#245b4b;--solid-hover:#194333;--line:#d5e1d8;--paper:#ffffff;--bg:#f4f7f4;--soft:#eaf2eb;--sidebar:#f9fbf8;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="ocean"],[data-preview-theme="ocean"]{--ink:#23374c;--muted:#53697d;--green:#245fa0;--accent:#3476b8;--solid:#245fa0;--solid-hover:#19477a;--line:#d3deea;--paper:#ffffff;--bg:#f3f6fa;--soft:#e8f0f9;--sidebar:#f8faff;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="cinnabar"],[data-preview-theme="cinnabar"]{--ink:#4a2f30;--muted:#785b5b;--green:#a34242;--accent:#b64c4c;--solid:#a34242;--solid-hover:#813232;--line:#e8d7d5;--paper:#ffffff;--bg:#faf5f4;--soft:#f7e9e6;--sidebar:#fdf9f7;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="wisteria"],[data-preview-theme="wisteria"]{--ink:#3b304d;--muted:#6a5e7b;--green:#70509b;--accent:#8261af;--solid:#70509b;--solid-hover:#583c7d;--line:#ded6e9;--paper:#ffffff;--bg:#f7f4fa;--soft:#efe9f6;--sidebar:#fcf9fe;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="amber"],[data-preview-theme="amber"]{--ink:#453721;--muted:#756345;--green:#896019;--accent:#986e24;--solid:#896019;--solid-hover:#68480f;--line:#e4dbc7;--paper:#ffffff;--bg:#faf7f0;--soft:#f3eddd;--sidebar:#fdfbf5;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="cloud"],[data-preview-theme="cloud"]{--ink:#303b45;--muted:#5f6b77;--green:#526473;--accent:#61798c;--solid:#526473;--solid-hover:#3d4e5c;--line:#d8dfe4;--paper:#ffffff;--bg:#f4f6f8;--soft:#e9eef2;--sidebar:#fafbfc;--on-solid:#ffffff;--danger:#ad3434;--danger-bg:#fff0ee;--danger-line:#e8bbb6;--warning:#87531b;--warning-bg:#fff4df;--warning-line:#e4c99a;--success:#246342;--success-bg:#e8f4eb;--success-line:#bbd7c2;--info:#2b6488;--info-bg:#eaf3fa;--info-line:#bfd5e7;--scrim:#14231f66;--shadow:#10251c20;}
[data-theme="midnight"],[data-preview-theme="midnight"]{--ink:#e1e9ed;--muted:#a7b7c1;--green:#9bdec9;--accent:#9bdec9;--solid:#286754;--solid-hover:#307b65;--line:#3b505e;--paper:#1b2a35;--bg:#111d26;--soft:#263b47;--sidebar:#16232d;--on-solid:#ffffff;--danger:#ffb4ac;--danger-bg:#462c31;--danger-line:#855154;--warning:#f1ce8a;--warning-bg:#403629;--warning-line:#766344;--success:#a3dfbb;--success-bg:#203c33;--success-line:#426858;--info:#a8d5f4;--info-bg:#243b4e;--info-line:#496b85;--scrim:#050c14a6;--shadow:#00000050;}

/* 界面中有语义的提示色不随品牌主色改变，错误/逾期始终带文字标识。 */
.pill.gray{color:var(--muted);background:var(--soft)}
.pill.blue,.notice.blue{color:var(--info);background:var(--info-bg);border-color:var(--info-line)}
.pill.orange,.mode-tag.readonly{color:var(--warning);background:var(--warning-bg);border-color:var(--warning-line)}
.pill.red,.notice.error{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-line)}
.stat.main .stat-label,.stat.main .stat-label svg,.stat.main small,.stat.main em,.auth-brand .eyebrow,.auth-brand p,.auth-brand .brand small{color:var(--on-solid)}
.stat .accent-line{background:var(--accent)}.stat.main .accent-line{background:var(--on-solid)}
button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input[type=checkbox],input[type=radio]{accent-color:var(--green)}
/* 独立dialog不重绘业务窗口，键盘焦点由浏览器约束在皮肤选择器中。 */
.theme-trigger{font-size:12px;white-space:nowrap;flex-shrink:0;padding:7px 10px}
.theme-dot{width:13px;height:13px;border-radius:50%;background:var(--solid);border:1px solid var(--accent);box-shadow:0 0 0 3px var(--soft)}
.auth-form-wrap{position:relative}.auth-theme{position:absolute;right:24px;top:20px}
.theme-dialog{padding:0;border:1px solid var(--line);border-radius:16px;width:min(790px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 48px);background:var(--paper);color:var(--ink);box-shadow:0 28px 90px var(--shadow);overflow:hidden}
.theme-dialog[open]{display:flex;flex-direction:column}.theme-dialog::backdrop{background:var(--scrim);backdrop-filter:blur(3px)}
.theme-header{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 28px 20px;border-bottom:1px solid var(--line);gap:12px}
.theme-header .eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:9px;color:var(--muted)}.theme-header h2{font-size:24px;letter-spacing:-.4px}
.theme-header p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:9px}.theme-close{font-size:25px;line-height:1;width:34px;height:34px;padding:0;flex-shrink:0}
.theme-body{padding:22px 28px;overflow:auto;min-height:0}.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.theme-card{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;text-align:left;gap:0;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);min-width:0;position:relative}
.theme-card:hover{background:var(--paper);border-color:var(--accent);transform:translateY(-2px)}
.theme-card[aria-pressed=true]{border:2px solid var(--accent);padding:9px;box-shadow:0 0 0 2px var(--soft)}
.theme-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.theme-preview{height:94px;display:flex;gap:0;background:var(--bg);border:1px solid var(--line);border-radius:6px;overflow:hidden;pointer-events:none}
.theme-mini-sidebar{width:28%;background:var(--sidebar);border-right:1px solid var(--line);padding:13px 7px;display:flex;flex-direction:column;gap:7px}
.theme-mini-sidebar i{background:var(--solid);width:12px;height:12px;border-radius:3px;margin-bottom:3px}.theme-mini-sidebar b{display:block;height:4px;border-radius:2px;background:var(--line)}.theme-mini-sidebar b:first-of-type{background:var(--accent)}
.theme-mini-page{padding:12px 9px;flex:1;min-width:0}.theme-mini-heading{display:block;background:var(--muted);width:40%;height:4px;border-radius:2px;margin-bottom:10px}
.theme-mini-stats{display:flex;gap:4px}.theme-mini-stats i{display:block;background:var(--paper);border:1px solid var(--line);height:20px;flex:1;border-radius:3px}.theme-mini-stats i:first-child{background:var(--solid);border-color:var(--solid)}
.theme-mini-table{display:flex;flex-direction:column;gap:5px;padding:8px 5px;background:var(--paper);margin-top:6px;border:1px solid var(--line);border-radius:3px}.theme-mini-table i{height:2px;background:var(--line)}
.theme-card-title{display:flex;justify-content:space-between;align-items:center;gap:5px;margin:12px 2px 5px}.theme-card-title strong{font-size:14px;font-weight:650}
.theme-check{font-size:10px;color:var(--muted)}.theme-card[aria-pressed=true] .theme-check{color:var(--green);font-weight:650}
.theme-card-note{font-size:10px;color:var(--muted);margin:0 2px;line-height:1.7}.theme-family{font-size:10px;color:var(--muted);margin:7px 2px 2px}
.theme-personal{padding:15px 17px;margin-top:20px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.theme-personal strong{font-size:12px}.theme-personal p{font-size:11px;color:var(--muted);line-height:1.8;margin-top:5px}
.theme-footer{border-top:1px solid var(--line);padding:17px 28px;display:flex;justify-content:space-between;gap:15px;align-items:center;background:var(--sidebar);font-size:12px}.theme-footer p{font-size:10px;color:var(--muted);line-height:1.6;margin-top:5px}.theme-footer-actions{display:flex;gap:8px;flex-shrink:0}.theme-footer button{font-size:12px}
@media(max-width:900px){.top-right .date{display:none}}
@media(max-width:760px){.topbar{height:auto;min-height:58px;flex-wrap:wrap;gap:8px;padding:10px 16px}.top-right{margin-left:auto;gap:7px}.theme-trigger{padding:6px 9px}.auth-form-wrap{padding-top:68px}.auth-theme{top:18px;right:24px}}
@media(max-width:540px){.theme-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:12px}.theme-header{padding:20px 17px 16px}.theme-header h2{font-size:21px}.theme-header .eyebrow{font-size:8px}.theme-body{padding:17px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.theme-preview{height:82px}.theme-card-title strong{font-size:13px}.theme-footer{padding:15px 17px;align-items:flex-start;flex-direction:column}.theme-footer-actions{width:100%;justify-content:flex-end}.theme-card-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){button,#toast{transition:none}.theme-card:hover{transform:none}}
