:root,
html[data-theme="mist"]{
  --page-bg:#edf2ff;--page-bg-2:#fff1eb;--card-bg:rgba(255,255,255,.86);--card-bg-strong:#fff;
  --card-border:rgba(90,108,166,.20);--card-title:#1d2948;--card-text:#46536f;--card-muted:#7f8aa1;
  --card-accent:#4766c8;--card-accent-2:#7d8ed8;--card-accent-soft:#e9efff;--card-shadow:rgba(38,53,96,.18);
  --card-highlight:rgba(255,255,255,.88);--theme-warm:#ee846e;--danger:#d94c45;--success:#2f8b68;
  --page-mesh:radial-gradient(circle at 12% 8%,rgba(89,120,210,.28),transparent 34%),radial-gradient(circle at 90% 12%,rgba(241,143,111,.24),transparent 32%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="ocean"]{
  --page-bg:#091b35;--page-bg-2:#123b58;--card-bg:rgba(12,34,61,.82);--card-bg-strong:#122e4d;
  --card-border:rgba(121,216,231,.26);--card-title:#f2fbff;--card-text:#c9e1ea;--card-muted:#89a9b8;
  --card-accent:#41c4d8;--card-accent-2:#2d82c7;--card-accent-soft:rgba(65,196,216,.14);--card-shadow:rgba(0,9,24,.42);
  --card-highlight:rgba(167,236,244,.18);--theme-warm:#ff9d7b;--danger:#ff776f;--success:#53d6a1;
  --page-mesh:radial-gradient(circle at 15% 10%,rgba(45,130,199,.38),transparent 38%),radial-gradient(circle at 85% 25%,rgba(65,196,216,.19),transparent 36%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="sunset"]{
  --page-bg:#fff0e8;--page-bg-2:#f8d9d2;--card-bg:rgba(255,250,246,.88);--card-bg-strong:#fffaf6;
  --card-border:rgba(191,103,82,.20);--card-title:#5b302c;--card-text:#75534f;--card-muted:#9c7770;
  --card-accent:#dc765f;--card-accent-2:#e8a36f;--card-accent-soft:#ffebe4;--card-shadow:rgba(110,57,48,.17);
  --card-highlight:rgba(255,255,255,.92);--theme-warm:#c95753;--danger:#c64643;--success:#4d8d6a;
  --page-mesh:radial-gradient(circle at 12% 12%,rgba(244,166,120,.30),transparent 36%),radial-gradient(circle at 88% 16%,rgba(210,108,104,.22),transparent 34%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="verdant"]{
  --page-bg:#e9f5ef;--page-bg-2:#d9eee9;--card-bg:rgba(249,255,252,.88);--card-bg-strong:#fbfffd;
  --card-border:rgba(48,125,102,.21);--card-title:#183f37;--card-text:#42675f;--card-muted:#78958e;
  --card-accent:#2f9778;--card-accent-2:#69b49d;--card-accent-soft:#def4eb;--card-shadow:rgba(35,91,75,.16);
  --card-highlight:rgba(255,255,255,.92);--theme-warm:#df966d;--danger:#d85e56;--success:#258061;
  --page-mesh:radial-gradient(circle at 15% 12%,rgba(67,159,128,.27),transparent 36%),radial-gradient(circle at 88% 15%,rgba(222,180,103,.18),transparent 34%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="wisteria"]{
  --page-bg:#f1ebf8;--page-bg-2:#e5dcf1;--card-bg:rgba(253,250,255,.87);--card-bg-strong:#fefbff;
  --card-border:rgba(115,78,154,.21);--card-title:#3e2859;--card-text:#604c74;--card-muted:#8a789b;
  --card-accent:#7b55a6;--card-accent-2:#ad83ca;--card-accent-soft:#eee3f7;--card-shadow:rgba(75,48,103,.17);
  --card-highlight:rgba(255,255,255,.92);--theme-warm:#d9848b;--danger:#d45661;--success:#4c9271;
  --page-mesh:radial-gradient(circle at 12% 10%,rgba(126,91,170,.26),transparent 36%),radial-gradient(circle at 88% 18%,rgba(211,133,153,.19),transparent 34%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="aurum"]{
  --page-bg:#fbf2dc;--page-bg-2:#efe0bd;--card-bg:rgba(255,252,242,.89);--card-bg-strong:#fffdf7;
  --card-border:rgba(154,111,38,.23);--card-title:#513915;--card-text:#715b35;--card-muted:#988261;
  --card-accent:#b47a22;--card-accent-2:#d2a64c;--card-accent-soft:#f7e9c7;--card-shadow:rgba(96,68,20,.17);
  --card-highlight:rgba(255,255,255,.94);--theme-warm:#c96d43;--danger:#c64f42;--success:#598458;
  --page-mesh:radial-gradient(circle at 15% 10%,rgba(206,159,67,.28),transparent 36%),radial-gradient(circle at 85% 18%,rgba(191,102,55,.17),transparent 34%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}
html[data-theme="starlight"]{
  --page-bg:#101424;--page-bg-2:#252446;--card-bg:rgba(27,30,55,.84);--card-bg-strong:#222642;
  --card-border:rgba(189,192,235,.25);--card-title:#f6f4ff;--card-text:#d5d5eb;--card-muted:#9da1c2;
  --card-accent:#a8afe8;--card-accent-2:#777fc4;--card-accent-soft:rgba(168,175,232,.14);--card-shadow:rgba(4,5,15,.48);
  --card-highlight:rgba(220,222,255,.14);--theme-warm:#ef9a91;--danger:#ff777c;--success:#64d0a4;
  --page-mesh:radial-gradient(circle at 14% 8%,rgba(99,108,187,.37),transparent 38%),radial-gradient(circle at 86% 18%,rgba(186,117,157,.22),transparent 35%),linear-gradient(145deg,var(--page-bg),var(--page-bg-2));
}

html{background:var(--page-bg);color-scheme:light;transition:background-color .28s ease}
html[data-theme="ocean"],html[data-theme="starlight"]{color-scheme:dark}
body.theme-aware{background:var(--page-mesh)!important;color:var(--card-text)!important;transition:background .35s ease,color .25s ease}
body.theme-aware::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.16;background-image:radial-gradient(var(--card-highlight) .8px,transparent .8px);background-size:11px 11px}

body.theme-aware :is(.card,.paper-card,.paper-item,.float-card,.chart-card,.progress,.user-bar,.wrong-summary,.settings-drawer,.pet-profile-card,.question-ref-card,.timer-card,.login-card,.login-companion,.plan-summary-card,.edition-card,.plan-detail-card){
  background:var(--card-bg)!important;border-color:var(--card-border)!important;color:var(--card-text)!important;box-shadow:0 18px 48px var(--card-shadow)!important;
}
body.theme-aware :is(h1,h2,h3,h4,.card-title,.ptitle,.plan-title,.edition-title){color:var(--card-title)!important}
body.theme-aware :is(.sub,.meta,.muted,small,.setting-help,.plan-card-copy){color:var(--card-muted)!important}
body.theme-aware :is(.btn-primary,.settings-save,.btn-submit,.tab.active,.layout-option.active,.plan-open,.edition-enter){background:var(--card-accent)!important;color:#fff!important}
body.theme-aware :is(input,textarea,select){background:var(--card-bg-strong)!important;border-color:var(--card-border)!important;color:var(--card-text)!important}
body.theme-aware a{accent-color:var(--card-accent)}
body.theme-aware .progress .bar-fill,body.theme-aware .plan-progress-line i{background:linear-gradient(90deg,var(--card-accent),var(--theme-warm))!important}

.global-settings-trigger{position:fixed;z-index:11900;top:18px;right:18px;display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid var(--card-border);border-radius:999px;background:var(--card-bg);box-shadow:0 12px 30px var(--card-shadow);backdrop-filter:blur(18px);color:var(--card-title);font:800 12px/1 "Microsoft YaHei",sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}
.global-settings-trigger:hover{transform:translateY(-2px);box-shadow:0 16px 34px var(--card-shadow)}
.global-settings-trigger-inline{position:static;flex:none;margin-left:auto;transform:none!important}
.global-settings-overlay{position:fixed;inset:0;z-index:12000;display:grid;justify-items:end;background:rgba(16,22,42,.30);backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;transition:.28s}
.global-settings-overlay.open{opacity:1;visibility:visible;pointer-events:auto}
.global-settings-panel{width:min(440px,100vw);height:100%;overflow:auto;padding:28px;background:var(--card-bg-strong);border-left:1px solid var(--card-border);box-shadow:-24px 0 70px var(--card-shadow);transform:translateX(100%);transition:.32s cubic-bezier(.2,.8,.2,1);color:var(--card-text)}
.global-settings-overlay.open .global-settings-panel{transform:none}
.global-settings-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px}.global-settings-head h2{margin:0;color:var(--card-title);font:900 25px/1.2 SimSun,"Songti SC",serif}.global-settings-head p{margin:5px 0 0;color:var(--card-muted);font-size:11px}.global-settings-close{width:36px;height:36px;border:0;border-radius:50%;background:var(--card-accent-soft);color:var(--card-title);font-size:22px;cursor:pointer}
.global-setting-label{display:block;margin:17px 0 7px;color:var(--card-title);font-size:12px;font-weight:900}.global-setting-input{width:100%;padding:11px 13px;border:1px solid var(--card-border);border-radius:12px;font:600 13px/1.4 inherit}.global-setting-help{margin-top:5px;color:var(--card-muted);font-size:10px}
.theme-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.theme-tile{position:relative;min-height:90px;padding:11px;border:1px solid var(--card-border);border-radius:17px;background:var(--card-bg);text-align:left;cursor:pointer;overflow:hidden;transition:transform .2s,border-color .2s}.theme-tile:hover{transform:translateY(-2px)}.theme-tile.selected{border:2px solid var(--card-accent);box-shadow:0 8px 24px var(--card-shadow)}.theme-tile.locked{opacity:.72}.theme-tile input{position:absolute;opacity:0}.theme-preview{display:block;height:30px;margin-bottom:8px;border-radius:9px}.theme-tile strong{display:block;color:var(--card-title);font-size:12px}.theme-tile small{display:block;margin-top:2px;color:var(--card-muted);font-size:9px;line-height:1.35}.theme-lock{position:absolute;right:9px;top:9px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.82);font-size:11px}.theme-progress{height:4px;margin-top:7px;border-radius:5px;background:rgba(127,138,161,.18);overflow:hidden}.theme-progress i{display:block;height:100%;background:var(--card-accent);border-radius:inherit}
.preview-mist{background:linear-gradient(120deg,#adc0ec,#f0c4b4)}.preview-ocean{background:linear-gradient(120deg,#102c52,#42c4d7)}.preview-sunset{background:linear-gradient(120deg,#ffd6bd,#d86f67)}.preview-verdant{background:linear-gradient(120deg,#dff3e8,#2f9778)}.preview-wisteria{background:linear-gradient(120deg,#eadcf5,#7b55a6)}.preview-aurum{background:linear-gradient(120deg,#f8e6b7,#b47a22)}.preview-starlight{background:linear-gradient(120deg,#14182d,#a8afe8)}
.layout-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.layout-choice{position:relative}.layout-choice input{position:absolute;opacity:0}.layout-choice span{display:block;padding:10px 6px;border:1px solid var(--card-border);border-radius:11px;background:var(--card-bg);text-align:center;color:var(--card-muted);font-size:10px;font-weight:800;cursor:pointer}.layout-choice input:checked+span{border-color:var(--card-accent);background:var(--card-accent-soft);color:var(--card-accent)}
.global-setting-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:13px 0;border-top:1px solid var(--card-border)}.global-setting-row strong{display:block;color:var(--card-title);font-size:12px}.global-setting-row small{display:block;color:var(--card-muted);font-size:9px}.global-switch input{accent-color:var(--card-accent);width:20px;height:20px}.global-settings-actions{position:sticky;bottom:-28px;display:flex;gap:8px;margin:24px -28px -28px;padding:16px 28px 24px;background:linear-gradient(transparent,var(--card-bg-strong) 24%)}.global-settings-actions button,.global-settings-actions a{flex:1;padding:11px;border:0;border-radius:12px;text-align:center;text-decoration:none;font-size:11px;font-weight:900;cursor:pointer}.global-settings-save{background:var(--card-accent);color:#fff}.global-settings-more{background:var(--card-accent-soft);color:var(--card-accent)}.global-settings-status{min-height:18px;margin-top:10px;color:var(--success);font-size:10px;font-weight:800}

.theme-unlock-overlay{position:fixed;inset:0;z-index:12200;display:grid;place-items:center;padding:20px;background:rgba(17,23,42,.36);backdrop-filter:blur(9px);opacity:0;visibility:hidden;transition:.24s}.theme-unlock-overlay.show{opacity:1;visibility:visible}.theme-unlock-card{width:min(410px,100%);padding:28px;border:1px solid var(--card-border);border-radius:32px;background:var(--card-bg-strong);box-shadow:0 30px 80px var(--card-shadow);text-align:center;color:var(--card-text);transform:translateY(16px) scale(.96);transition:.3s cubic-bezier(.2,.8,.2,1)}.theme-unlock-overlay.show .theme-unlock-card{transform:none}.theme-unlock-card img{width:105px;height:140px;object-fit:contain}.theme-unlock-card h2{margin:8px 0;color:var(--card-title);font:900 25px/1.25 SimSun,"Songti SC",serif}.theme-unlock-card p{margin:0;color:var(--card-text);font:600 13px/1.8 SimSun,"Songti SC",serif}.theme-unlock-card button{margin-top:18px;padding:10px 24px;border:0;border-radius:999px;background:var(--card-accent);color:#fff;font-weight:900;cursor:pointer}

@media(max-width:600px){.global-settings-trigger{top:12px;right:12px;padding:9px 11px}.global-settings-panel{padding:22px 18px}.global-settings-actions{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.theme-picker{grid-template-columns:1fr 1fr}}
html[data-motion="off"] *{scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){.global-settings-trigger,.global-settings-panel,.theme-tile,.theme-unlock-card{transition:none!important}}
