/* Optional package: selectors never affect classic or global themes. */
body.theme-bulbasaur{--poke-side:#004D3D;--poke-nav:#ffffff;--poke-active:#177B56;--poke-on-active:#ffffff;--poke-accent:#188653;--poke-on-accent:#ffffff;--poke-bg:#e0f5e9;--poke-soft:#d4efdf;--poke-line:#b7ddc5;--poke-ink:#123e31;--poke-muted:#456e5c;--poke-surface:#f8fffa;--poke-x:-27px;--poke-y:-380px}
body.theme-charmander{--poke-side:#a62d00;--poke-nav:#ffffff;--poke-active:#c84000;--poke-on-active:#ffffff;--poke-accent:#c94000;--poke-on-accent:#ffffff;--poke-bg:#fff0dc;--poke-soft:#ffe6c6;--poke-line:#efcda8;--poke-ink:#72270b;--poke-muted:#83543b;--poke-surface:#fffaf3;--poke-x:-790px;--poke-y:-380px}
body.theme-squirtle{--poke-side:#053b53;--poke-nav:#ffffff;--poke-active:#007aa9;--poke-on-active:#ffffff;--poke-accent:#007cae;--poke-on-accent:#ffffff;--poke-bg:#dff4ff;--poke-soft:#ccecff;--poke-line:#afd8ec;--poke-ink:#123c52;--poke-muted:#456a7d;--poke-surface:#f7fcff;--poke-x:-27px;--poke-y:-852px}
body.theme-pikachu{--poke-side:#ffdc16;--poke-nav:#412910;--poke-active:#493016;--poke-on-active:#fff178;--poke-accent:#ffda00;--poke-on-accent:#412910;--poke-bg:#fff7cd;--poke-soft:#fff0a5;--poke-line:#e7d790;--poke-ink:#493016;--poke-muted:#715b30;--poke-surface:#fffdf0;--poke-x:-790px;--poke-y:-852px}
body.pokemon-theme{color-scheme:light;--bg:var(--poke-bg);--surface:var(--poke-surface);--field:var(--poke-surface);--soft:var(--poke-soft);--ink:var(--poke-ink);--muted:var(--poke-muted);--line:var(--poke-line);--red:var(--poke-accent);--navy:var(--poke-ink);--radius:12px;background:var(--bg);color:var(--ink)}
body.pokemon-theme :is(.sidebar,.topbar,.panel,.metric,dialog,.portal-shortcuts a,.welcome,.callout,.announcement,.schedule){background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:none;background-image:none}
body.pokemon-theme :is(h1,h2,h3,.metric>strong,.topbar strong,.empty h3){color:var(--ink)}
body.pokemon-theme :is(.workspace,.date-chip,.schedule,.avatar,.dialog-head button,th){background:var(--soft);color:var(--ink);border-color:var(--line)}
body.pokemon-theme :is(input,select,textarea){background:var(--field);color:var(--ink);border-color:var(--line)}
body.pokemon-theme :is(label,.muted,.metric-head,.metric>small,.announcement p,.schedule p,td small,.page-footer){color:var(--muted)}
body.pokemon-theme :is(td,.group-row){border-color:var(--line)}
body.pokemon-theme .btn{background:var(--poke-accent);color:var(--poke-on-accent);border:1px solid var(--poke-accent);box-shadow:none}
body.pokemon-theme .btn.secondary{background:var(--soft);color:var(--ink);border-color:var(--line)}
body.pokemon-theme .btn.danger{background:#b72d35;color:#fff;border-color:#b72d35}
body.pokemon-theme .btn:hover{filter:brightness(.94)}
body.pokemon-theme .welcome{background:var(--soft);border:1px solid var(--line);border-radius:12px}
body.pokemon-theme .welcome :is(h2,p,.eyebrow){color:var(--ink)}
body.pokemon-theme .welcome img{display:none}
body.pokemon-theme .welcome::after{font-size:54px;line-height:1;flex-shrink:0;margin-left:20px;color:var(--poke-accent)}
body.theme-bulbasaur .welcome::after{content:'❧'}body.theme-charmander .welcome::after{content:'♨'}body.theme-squirtle .welcome::after{content:'●'}body.theme-pikachu .welcome::after{content:'ϟ';font-size:70px}
body.pokemon-theme .metric{border:1px solid var(--line);border-radius:12px}
body.pokemon-theme .metric-head .icon{color:var(--poke-accent)}
body.pokemon-theme .chart-bar{fill:var(--poke-accent)}
body.pokemon-theme .chart-grid{stroke:var(--line)}
body.pokemon-theme .chart-label{fill:var(--muted)}body.pokemon-theme .chart-value{fill:var(--ink)}
body.pokemon-theme #sidebar{background:var(--poke-side);color:var(--poke-nav);border-color:var(--poke-side)}
body.pokemon-theme #sidebar :is(.nav-label,.workspace strong,.workspace small,.sidebar-bottom>small){color:var(--poke-nav)}
body.pokemon-theme #sidebar :is(.workspace,.avatar){background:var(--poke-active);color:var(--poke-on-active)}
body.pokemon-theme #sidebar .workspace :is(strong,small){color:var(--poke-on-active)}
body.pokemon-theme #sidebar .brand{padding:0 12px 20px;background:none;margin:0}
body.pokemon-theme #sidebar .brand img{display:none}
body.pokemon-theme #sidebar .brand::after{content:'Gestidaddy';font-size:24px;font-weight:800;color:var(--poke-nav)}
body.pokemon-theme #sidebar :is(nav a,.sidebar-bottom>a,.logout button){color:var(--poke-nav);box-shadow:none}
body.pokemon-theme #sidebar nav a:not([data-concept]):is(.selected,:hover,:focus-visible),body.pokemon-theme #sidebar :is(.sidebar-bottom>a,.logout button):hover{background:var(--poke-active);color:var(--poke-on-active)}
body.pokemon-theme #sidebar nav a.selected{outline:1px solid currentColor;outline-offset:-1px}
body.pokemon-theme #sidebar nav a[data-concept].selected{box-shadow:inset 0 0 0 2px currentColor}
body.pokemon-theme .pokemon-mascot{flex:0 0 150px;width:150px;height:150px;margin:18px auto 0;background-image:url('pokemon-concepts.png');background-repeat:no-repeat;background-size:1536px 1024px;background-position:var(--poke-x) var(--poke-y);pointer-events:none;border-radius:12px}
body.pokemon-theme #sidebar .sidebar-bottom{padding-top:14px}
body.pokemon-theme :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.pokemon-options{display:flex;flex-wrap:wrap;gap:10px}.pokemon-option{padding:10px 16px;border-radius:8px;font-weight:700}.pokemon-option-bulbasaur{background:#004d3d;color:#fff}.pokemon-option-charmander{background:#a62d00;color:#fff}.pokemon-option-squirtle{background:#053b53;color:#fff}.pokemon-option-pikachu{background:#ffdc16;color:#412910}
@media(max-height:740px){body.pokemon-theme #sidebar{padding-top:20px}body.pokemon-theme #sidebar nav a{padding-top:9px;padding-bottom:9px}}
@media(max-width:640px){body.pokemon-theme .welcome::after{font-size:38px}body.pokemon-theme .welcome{padding:20px}.pokemon-option{padding:8px 12px}}
/* Blend the approved artwork into a solid sidebar, without a visible image card. */
body.theme-bulbasaur{--poke-side:#07583f}
body.theme-charmander{--poke-side:#b53900}
body.theme-squirtle{--poke-side:#06455e}
body.theme-pikachu{--poke-side:#ffd200}
body.pokemon-theme #sidebar{isolation:isolate}
body.pokemon-theme .pokemon-mascot{mix-blend-mode:lighten;border-radius:0}
body.theme-pikachu .pokemon-mascot{mix-blend-mode:darken}
/* Flat elemental emblems for the welcome card. */
body.pokemon-theme .welcome::after{content:'';display:block;width:44px;height:54px;background:var(--poke-accent)}
body.theme-bulbasaur .welcome::after{height:44px;border-radius:100% 0 100% 0;transform:rotate(-12deg)}
body.theme-charmander .welcome::after{clip-path:polygon(50% 0,70% 28%,73% 52%,90% 34%,100% 72%,87% 93%,60% 100%,34% 98%,10% 85%,0 60%,25% 30%,24% 62%,44% 39%)}
body.theme-squirtle .welcome::after{width:40px;height:40px;border-radius:0 65% 65% 65%;transform:rotate(45deg)}
body.theme-pikachu .welcome::after{clip-path:polygon(55% 0,100% 0,65% 39%,96% 39%,12% 100%,38% 56%,0 56%)}
