/* Additional themes share the existing workflow contrast rules and status hues. */
html:is([data-theme=dark],[data-color-scheme=dark]){
  --theme-input:#152132;--theme-input-line:#52677f;--theme-selected:#304b69;
}
html[data-theme=gothic]{
  --ink:#efeeee;--muted:#c2babb;--line:#504247;--bg:#101113;
  --surface:#1b1b1d;--surface-raised:#272629;--blue-pale:#332b30;
  --theme-input:#141416;--theme-input-line:#766268;--theme-selected:#403035;
}
html[data-theme=dark-days]{
  --ink:#fff0eb;--muted:#d9bdb3;--line:#654039;--bg:#150e0d;
  --surface:#231613;--surface-raised:#30201c;--blue-pale:#44251f;
  --theme-input:#1a100e;--theme-input-line:#936055;--theme-selected:#4c2921;
}
.theme-setting select{width:auto;min-width:150px;max-width:100%;min-height:46px}

/* The circle shows the saved theme; its disclosure overlays the login without resizing it. */
.new-alba-auth{--picker-bg:#f7fbfff5;--picker-text:#183d69;--picker-border:#bbcee5;--picker-accent:#0062cf}
.new-alba-auth .auth-theme-picker{position:absolute;top:22px;right:22px;z-index:3;width:56px;height:56px;isolation:isolate}
.new-alba-auth .auth-theme-toggle{
  position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;
  margin:0;padding:4px;border:1px solid var(--picker-border);border-radius:50%;
  background:var(--picker-bg);color:var(--picker-text);box-shadow:0 4px 18px #0003;cursor:pointer;
}
.new-alba-auth .auth-theme-orb{
  display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #98a4ae;
  border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff,#d8e0e7);color:#18222c;
  box-shadow:inset 0 0 0 3px #ffffff0d,0 2px 5px #0004;
}
.new-alba-auth .auth-theme-orb svg{width:26px;height:26px}
.new-alba-auth [data-theme-swatch=dark]{color:#e7f3ff;border-color:#6984a2;background:radial-gradient(circle at 45% 60%,#123b91,#020e1b 75%)}
.new-alba-auth [data-theme-swatch=gothic]{color:#ef523c;border-color:#b44d3e;background:radial-gradient(circle at 45% 60%,#28201e,#080b0d 75%)}
.new-alba-auth [data-theme-swatch=dark-days]{color:#ff472b;border-color:#b55643;background:radial-gradient(circle at 45% 60%,#30150d,#100907 75%)}
.new-alba-auth .auth-theme-close{display:none;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.new-alba-auth .is-open .auth-theme-toggle>.auth-theme-orb{display:none}
.new-alba-auth .is-open .auth-theme-close{display:block}
.new-alba-auth .is-open .auth-theme-toggle{box-shadow:none;color:var(--picker-accent)}
.new-alba-auth .auth-theme-panel{
  position:absolute;top:-10px;right:-10px;display:flex;flex-direction:column;gap:6px;
  width:174px;padding:76px 12px 14px;border:1px solid var(--picker-border);border-radius:28px;
  background:var(--picker-bg);color:var(--picker-text);box-shadow:0 16px 36px #0005;backdrop-filter:blur(18px);transform-origin:top right;
}
.new-alba-auth .auth-theme-option{
  display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:52px;padding:4px;
  border:0;border-radius:24px;background:transparent;color:inherit;font:600 12px/1.4 var(--font);text-align:left;cursor:pointer;
}
.new-alba-auth .auth-theme-option[aria-pressed=true] .auth-theme-orb{outline:2px solid var(--picker-accent);outline-offset:3px}
.new-alba-auth .auth-theme-option:hover{background:color-mix(in srgb,var(--picker-text) 10%,transparent)}
.new-alba-auth :is(.auth-theme-toggle,.auth-theme-option):focus-visible{outline:3px solid var(--picker-accent);outline-offset:4px}
.new-alba-auth [hidden]{display:none!important}
.new-alba-auth .auth-theme-brand,.new-alba-auth .auth-theme-signature{display:none}

html[data-auth-theme=dark]{
  --auth-bg:#031222;--auth-panel:#021420f5;--auth-border:#28577a;--auth-accent:#1bc5f1;
  --auth-text:#f4f7ff;--auth-muted:#c9d9e9;--auth-scene-image:url('./assets/auth-dark.webp');
}
html[data-theme=auth][data-auth-theme=gothic]{
  --auth-bg:#0c0e10;--auth-panel:#080b0df5;--auth-border:#795048;--auth-accent:#ed5c47;
  --auth-text:#f7f3ef;--auth-muted:#d5cecb;--auth-scene-image:url('./assets/auth-gothic.webp');
}
html[data-theme=auth][data-auth-theme=dark-days]{
  --auth-bg:#160807;--auth-panel:#090504f5;--auth-border:#9e3022;--auth-accent:#ff4937;
  --auth-text:#fff5f0;--auth-muted:#e2d1cb;--auth-scene-image:url('./assets/auth-dark-days.webp');
}
html[data-theme=auth][data-auth-theme]:not([data-auth-theme=light]),
html[data-theme=auth][data-auth-theme]:not([data-auth-theme=light]) body{background:var(--auth-bg)!important;color-scheme:dark}
html[data-auth-theme]:not([data-auth-theme=light]) .new-alba-auth{
  --picker-bg:var(--auth-panel);--picker-text:var(--auth-text);--picker-border:var(--auth-border);--picker-accent:var(--auth-accent);
  background:radial-gradient(ellipse at 30% 0%,color-mix(in srgb,var(--auth-border) 25%,var(--auth-bg)),var(--auth-bg) 75%)!important;
  color:var(--auth-text);
}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-layout{
  position:relative;background:var(--auth-bg);border-color:var(--auth-border);
  border-radius:14px;box-shadow:0 24px 80px #0008;
}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene{background:var(--auth-bg)}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-photo{object-position:62% center}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene::after{
  background:linear-gradient(90deg,#0008,transparent 82%),linear-gradient(0deg,#0007,transparent 22%);
  mask-image:none;-webkit-mask-image:none;
}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-theme-brand{
  display:flex;flex-direction:column;align-items:center;position:absolute;top:7%;left:6.5%;
  width:clamp(140px,16vw,195px);color:var(--auth-text);text-shadow:0 2px 20px #0006;
}
html[data-theme=auth][data-auth-theme=dark] .auth-logo-frame{top:7%;width:clamp(140px,16vw,195px)}
html[data-theme=auth][data-auth-theme=dark] .new-alba-logo{filter:url(#alba-logo-white)}
.auth-theme-brand strong{font:800 clamp(42px,4.8vw,64px)/.92 Manrope,sans-serif;letter-spacing:-3px}
.auth-theme-brand>span{margin-top:7px;padding-bottom:4px;border-bottom:1px solid currentColor;font:700 clamp(10px,1vw,13px)/1.2 var(--font);letter-spacing:.2px;white-space:nowrap}
.auth-theme-brand small{margin-top:5px;font:700 11px/1.3 var(--font);letter-spacing:1px}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-copy{top:31%;max-width:64%}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-service-line{color:var(--auth-text);font-size:15px;letter-spacing:1.7px;text-shadow:0 2px 12px #000}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-service-line::before{background:var(--auth-accent)}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-benefits{gap:22px}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-benefits .icon{background:#0005;border-color:var(--auth-accent);color:var(--auth-text);width:48px;height:48px;flex-basis:48px;backdrop-filter:blur(3px)}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-benefits strong{color:var(--auth-text);letter-spacing:.8px}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-benefits span:not(.icon){color:var(--auth-muted);text-shadow:0 2px 8px #000}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-theme-signature{
  display:block;position:absolute;bottom:5%;left:6.5%;margin:0;color:var(--auth-text);
  font:800 14px/1.5 var(--font);letter-spacing:.8px;text-transform:uppercase;text-shadow:0 2px 12px #000;
}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-card{
  border-color:var(--auth-border);border-radius:14px;
  background:var(--auth-panel)!important;color:var(--auth-text)!important;box-shadow:0 0 30px #0005;
}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-kicker{visibility:hidden}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-card h1{font-family:Georgia,'Times New Roman',serif!important;font-weight:700!important;color:var(--auth-text)!important}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-intro{color:var(--auth-muted)!important}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-divider{background:var(--auth-accent);opacity:.7}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-secure{color:var(--auth-text)}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-access-note{color:var(--auth-muted)}
html[data-auth-theme]:not([data-auth-theme=light]) .auth-build{color:var(--auth-muted)}
html[data-auth-theme]:not([data-auth-theme=light]) #googleSignIn{color-scheme:light}
html[data-auth-theme]:not([data-auth-theme=light]) #googleSignIn:focus-visible{outline:3px solid var(--auth-accent);outline-offset:5px}

/* Fine corner tracery stays decorative; all branding and copy remain live text. */
html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-layout{border-radius:6px}
html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card{border-radius:5px;outline:1px solid color-mix(in srgb,var(--auth-border) 40%,transparent);outline-offset:-6px}
html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card::before,
html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card::after{
  content:'';position:absolute;left:9px;top:9px;width:48px;height:48px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%239e5141' stroke-width='.85'%3E%3Cpath d='M2 46V2h44M7 35V7h28M3 22c13 0 17-15 8-17-8-2-7 12 3 9s9-14 20-10M22 3c0 13-15 17-17 8-2-8 12-7 9 3S0 23 4 34M10 23c5 0 13-8 13-13M17 21l4 4 4-4-4-4z'/%3E%3C/svg%3E") center/contain no-repeat;
}
html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card::after{inset:auto 10px 5px auto;transform:rotate(180deg)}
html[data-theme=auth][data-auth-theme=gothic] .auth-theme-brand strong{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:3px}
html[data-theme=auth][data-auth-theme=gothic] .auth-theme-brand>span{font-family:Georgia,'Times New Roman',serif;font-weight:400}
html[data-theme=auth][data-auth-theme=gothic] .auth-theme-brand::after{content:'';width:100%;height:32px;margin-top:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 32' fill='none' stroke='%23ed5c47' stroke-width='1'%3E%3Cpath d='M2 8h28c12 0 22 19 34 10 9-7-8-16-10-6-2 8 20 12 36 0 16 12 38 8 36 0-2-10-19-1-10 6 12 9 22-10 34-10h28M25 4c-8 12 5 17 11 9m119-9c8 12-5 17-11 9M70 3l20 8 20-8M83 22l7 7 7-7-7-7zM90 0v16'/%3E%3C/svg%3E") center/contain no-repeat}
html[data-theme=auth][data-auth-theme=gothic] .auth-theme-signature{font:400 17px/1.3 Georgia,'Times New Roman',serif;letter-spacing:.2px}
html[data-theme=auth][data-auth-theme=dark-days] .auth-theme-brand{color:var(--auth-accent)}
html[data-theme=auth][data-auth-theme=dark-days] .auth-theme-brand strong{font-weight:800;letter-spacing:-2px;background:repeating-linear-gradient(168deg,#ff4937 0 4px,#bd281c 5px,#ff4937 6px 11px);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
html[data-theme=auth][data-auth-theme=dark-days] .auth-card h1{font-family:'Kalam',Caveat,cursive!important;font-weight:400!important;color:var(--auth-accent)!important}
html[data-theme=auth][data-auth-theme=dark-days] .auth-service-line{color:var(--auth-accent);font:700 24px/1.08 'Kalam',Caveat,cursive;letter-spacing:-.6px;transform:rotate(-4deg);transform-origin:left}
html[data-theme=auth][data-auth-theme=dark-days] .auth-theme-signature{color:var(--auth-accent);font:700 25px/1.08 'Kalam',Caveat,cursive;letter-spacing:-.7px;transform:rotate(-5deg);transform-origin:left}
html[data-theme=auth][data-auth-theme=dark-days] .auth-build{color:#ff7c69}

@media(min-width:761px) and (max-width:1050px){
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-copy{max-width:80%;top:35%}
}
@media(max-width:760px){
  .new-alba-auth .auth-theme-picker{position:relative;inset:auto;order:5;margin:24px auto 0;flex-shrink:0}
  .new-alba-auth .auth-theme-panel{top:auto;right:auto;bottom:-10px;left:50%;transform:translateX(-50%);transform-origin:bottom center;flex-direction:row;gap:4px;width:min(304px,calc(100vw - max(24px,var(--safe-area-left)) - max(24px,var(--safe-area-right))));padding:14px 10px 76px}
  .new-alba-auth .auth-theme-option{flex:1;flex-direction:column;gap:10px;min-height:76px;padding:4px 0;font-size:10px;text-align:center;white-space:nowrap;border-radius:22px 22px 10px 10px}
  .new-alba-auth .auth-heading{order:1}.new-alba-auth #googleSignIn{order:2;flex-shrink:0}
  .new-alba-auth .auth-error{order:3}.new-alba-auth .auth-divider{order:3}
  .new-alba-auth .auth-access-note{order:4}.new-alba-auth .auth-build{order:6}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-layout{
    min-height:100%;width:100%;border:0;border-radius:0;
    background:var(--auth-bg) var(--auth-scene-image) center top / auto max(100svh,780px) no-repeat;
  }
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene{background:transparent}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-photo{opacity:0}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene::after{background:linear-gradient(180deg,#0004,transparent 65%)}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-theme-brand{left:max(26px,var(--safe-area-left));top:calc(28px + var(--safe-area-top));width:112px}
  html[data-theme=auth][data-auth-theme=dark] .auth-logo-frame{left:max(26px,var(--safe-area-left));top:calc(28px + var(--safe-area-top));width:112px}
  .auth-theme-brand strong{font-size:38px;letter-spacing:-2px}.auth-theme-brand>span{font-size:8px;margin-top:5px;padding-bottom:3px}.auth-theme-brand small{font-size:8px;margin-top:4px}
  html[data-theme=auth][data-auth-theme=gothic] .auth-theme-brand strong{font-size:40px}
  html[data-theme=auth][data-auth-theme=gothic] .auth-theme-brand::after{height:24px;margin-top:3px}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-copy{top:calc(66px + var(--safe-area-top));right:max(26px,var(--safe-area-right));left:auto;bottom:auto;max-width:44%}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-service-line{font-size:12px;line-height:1.45;letter-spacing:1px}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-service-line::before{display:block;width:26px;margin-bottom:12px}
  html[data-theme=auth][data-auth-theme=dark-days] .auth-service-line{font-size:19px;line-height:1.06;letter-spacing:-.5px}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-theme-signature{display:none}
  html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card::before{top:10px;left:10px}
  html:is([data-auth-theme=gothic],[data-auth-theme=dark-days]) .auth-card::after{right:10px;bottom:10px}
}
@media(max-width:360px){
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-theme-brand{left:22px;width:100px}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-scene-copy{right:20px}
  html[data-auth-theme]:not([data-auth-theme=light]) .auth-service-line{font-size:10px}
  html[data-theme=auth][data-auth-theme=dark-days] .auth-service-line{font-size:17px}
}

/* Theme decoration never changes the shared frame, content width or text metrics. */
.new-alba-auth .auth-card{border:1px solid transparent}
@media(min-width:761px){
  .new-alba-auth .auth-card{padding-top:80px}
}
