@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-600-normal-tIfxVoAe.woff2) format("woff2"),url(/assets/baloo-2-latin-600-normal-B4tNaogw.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2) format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/baloo-2-latin-ext-600-normal-DiVeaYrH.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-600-normal-CFaB2nBN.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-ext-700-normal-Mlh7kdab.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-700-normal-D6LeXASg.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-ext-800-normal-C_Iwmf1s.woff2) format("woff2"),url(/assets/baloo-2-latin-ext-800-normal-D-iCxxqE.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2) format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/nunito-latin-500-normal-EugFkASW.woff2) format("woff2"),url(/assets/nunito-latin-500-normal-B5klmw3Q.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2) format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2) format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2) format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/nunito-latin-ext-500-normal-DpF2BH_v.woff2) format("woff2"),url(/assets/nunito-latin-ext-500-normal-CVNQN0KE.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2) format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2) format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff) format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2) format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/orbitron-latin-700-normal-4jsRXGGJ.woff2) format("woff2"),url(/assets/orbitron-latin-700-normal-DmYOh-W9.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/orbitron-latin-900-normal-DrIi7unX.woff2) format("woff2"),url(/assets/orbitron-latin-900-normal-BbJatbhp.woff) format("woff")}@font-face{font-family:Chaloops Local;font-style:normal;font-display:swap;font-weight:400;src:local("Chaloops Regular"),local("Chaloops-Regular"),local("Chaloops")}@font-face{font-family:Chaloops Local;font-style:normal;font-display:swap;font-weight:500;src:local("Chaloops Medium"),local("Chaloops-Medium"),local("Chaloops")}@font-face{font-family:Chaloops Local;font-style:normal;font-display:swap;font-weight:700;src:local("Chaloops Bold"),local("Chaloops-Bold"),local("Chaloops")}:root{color-scheme:light;--palette-blue: #005dac;--palette-purple: #5f3f93;--palette-green: #50b848;--palette-pink: #e76b9e;--palette-orange: #f3bd44;--brand-blue: var(--palette-blue);--brand-purple: var(--palette-purple);--brand-green: var(--palette-green);--brand-pink: var(--palette-pink);--brand-orange: var(--palette-orange);--brand-lavender: #ede1fb;--brand-blue-rgb: 0, 93, 172;--brand-purple-rgb: 95, 63, 147;--brand-green-rgb: 80, 184, 72;--brand-pink-rgb: 231, 107, 158;--brand-orange-rgb: 243, 189, 68;--neutral-rgb: 25, 33, 49;--font-sans: "Nunito", "Segoe UI Variable", "Aptos", "Trebuchet MS", sans-serif;--font-display: "chaloops", "Chaloops Local", "Chaloops", "Chaloops Regular", "Baloo 2", "Nunito", "Segoe UI Variable", "Bahnschrift", "Aptos", sans-serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extra: 800;--font-weight-black: 900;--line-height-tight: 1.08;--line-height-title: 1.16;--line-height-body: 1.58;--tracking-label: .16em;--bg: #f6f8fc;--bg-strong: #eef3f8;--surface: #ffffff;--surface-strong: #fbfdff;--surface-raised: #ffffff;--surface-muted: #f0f4f9;--surface-glass: rgba(255, 255, 255, .9);--surface-deep: #192131;--ink: #192131;--muted: #657085;--line: rgba(var(--neutral-rgb), .1);--line-strong: rgba(var(--neutral-rgb), .16);--border-strong: rgba(var(--neutral-rgb), .14);--accent: var(--brand-blue);--accent-deep: var(--brand-purple);--primary: var(--brand-blue);--primary-haze: rgba(var(--brand-blue-rgb), .1);--secondary: var(--brand-purple);--secondary-haze: rgba(var(--brand-purple-rgb), .1);--tertiary: var(--brand-green);--tertiary-haze: rgba(var(--brand-green-rgb), .1);--rose: var(--brand-pink);--rose-haze: rgba(var(--brand-pink-rgb), .1);--brand-blue-soft: #dceefb;--brand-green-soft: #e0f4dc;--brand-pink-soft: #fde3ef;--brand-purple-soft: var(--brand-lavender);--brand-orange-soft: #fff1cc;--brand-blue-strong: var(--brand-blue);--brand-green-strong: var(--brand-green);--brand-pink-strong: var(--brand-pink);--brand-purple-strong: var(--brand-purple);--brand-orange-strong: #d98222;--neutral: var(--ink);--neutral-haze: rgba(var(--neutral-rgb), .06);--positive: #278b41;--negative: #c94473;--warning: #b66e00;--info: var(--brand-blue);--panel-border: rgba(255, 255, 255, .82);--nav-rail-bg: rgba(255, 255, 255, .86);--session-bg: #ffffff;--metric-bg: #ffffff;--input-bg: #ffffff;--hero-copy: var(--muted);--hero-start: #ffffff;--hero-mid: #f8fbff;--hero-end: #ffffff;--grid-line: rgba(var(--neutral-rgb), .035);--scrim: rgba(15, 23, 42, .28);--admin-primary: var(--brand-blue-strong);--teacher-primary: var(--brand-green-strong);--parent-primary: var(--brand-purple-strong);--warehouse-primary: var(--brand-orange-strong);--text-on-accent: #ffffff;--shadow-xs: 0 8px 18px rgba(15, 23, 42, .06);--shadow: 0 22px 54px rgba(15, 23, 42, .09);--shadow-strong: 0 30px 72px rgba(15, 23, 42, .14);--focus-ring: 0 0 0 4px rgba(var(--brand-blue-rgb), .16);--hover-lift-shadow: 0 18px 36px rgba(15, 23, 42, .12);--radius-lg: 26px;--radius-md: 20px;--radius-sm: 14px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px)}:root[data-theme=dark]{color-scheme:dark;--neon-palette-blue: #00dfff;--neon-palette-purple: #bf6cff;--neon-palette-green: #74ff68;--neon-palette-pink: #ff4fc8;--neon-palette-orange: #ffd35c;--brand-blue: var(--neon-palette-blue);--brand-purple: var(--neon-palette-purple);--brand-green: var(--neon-palette-green);--brand-pink: var(--neon-palette-pink);--brand-orange: var(--neon-palette-orange);--brand-lavender: rgba(var(--brand-purple-rgb), .18);--brand-blue-rgb: 0, 223, 255;--brand-purple-rgb: 191, 108, 255;--brand-green-rgb: 116, 255, 104;--brand-pink-rgb: 255, 79, 200;--brand-orange-rgb: 255, 211, 92;--neutral-rgb: 242, 245, 250;--neon-blue: var(--brand-blue);--neon-purple: var(--brand-purple);--neon-green: var(--brand-green);--neon-pink: var(--brand-pink);--neon-orange: var(--brand-orange);--neon-gradient: linear-gradient( 90deg, var(--neon-blue) 0%, var(--neon-green) 30%, var(--neon-orange) 52%, var(--neon-pink) 76%, var(--neon-purple) 100% );--neon-frame-line: linear-gradient( 90deg, var(--neon-blue) 0%, var(--neon-green) 38%, var(--neon-pink) 74%, var(--neon-purple) 100% );--neon-frame-border: rgba(var(--brand-blue-rgb), .72);--neon-frame-line-shadow: 0 0 12px rgba(var(--brand-blue-rgb), .74), 0 0 22px rgba(var(--brand-green-rgb), .28), 0 0 28px rgba(var(--brand-pink-rgb), .3);--neon-frame-shadow: 0 0 0 1px rgba(var(--brand-blue-rgb), .36), 0 0 20px rgba(var(--brand-blue-rgb), .34), 0 0 40px rgba(var(--brand-purple-rgb), .2), 0 24px 58px rgba(0, 0, 0, .46);--neon-button-shadow: 0 0 0 1px rgba(var(--brand-blue-rgb), .34), 0 0 18px rgba(var(--brand-blue-rgb), .36), 0 0 34px rgba(var(--brand-pink-rgb), .22), 0 18px 34px rgba(0, 0, 0, .38);--neon-button-hover-shadow: 0 0 0 1px rgba(var(--brand-green-rgb), .42), 0 0 24px rgba(var(--brand-blue-rgb), .48), 0 0 46px rgba(var(--brand-pink-rgb), .32), 0 22px 42px rgba(0, 0, 0, .42);--bg: #111116;--bg-strong: #0a0a0e;--surface: #191923;--surface-strong: #20212b;--surface-raised: #272936;--surface-muted: #14151c;--surface-glass: rgba(25, 25, 35, .92);--surface-deep: #f4f7fb;--ink: #f2f5fa;--muted: #b3bac8;--line: rgba(var(--brand-blue-rgb), .24);--line-strong: rgba(var(--brand-blue-rgb), .48);--border-strong: rgba(var(--brand-purple-rgb), .38);--accent: var(--brand-blue);--accent-deep: var(--brand-purple);--primary: var(--brand-blue);--primary-haze: rgba(var(--brand-blue-rgb), .18);--secondary: var(--brand-purple);--secondary-haze: rgba(var(--brand-purple-rgb), .18);--tertiary: var(--brand-green);--tertiary-haze: rgba(var(--brand-green-rgb), .18);--rose: var(--brand-pink);--rose-haze: rgba(var(--brand-pink-rgb), .18);--brand-blue-soft: rgba(var(--brand-blue-rgb), .16);--brand-green-soft: rgba(var(--brand-green-rgb), .16);--brand-pink-soft: rgba(var(--brand-pink-rgb), .16);--brand-purple-soft: rgba(var(--brand-purple-rgb), .16);--brand-orange-soft: rgba(var(--brand-orange-rgb), .16);--brand-blue-strong: var(--brand-blue);--brand-green-strong: var(--brand-green);--brand-pink-strong: var(--brand-pink);--brand-purple-strong: var(--brand-purple);--brand-orange-strong: var(--brand-orange);--neutral: var(--ink);--neutral-haze: rgba(255, 255, 255, .08);--positive: var(--brand-green);--negative: #ff8aa8;--warning: var(--brand-orange);--info: var(--brand-blue);--panel-border: rgba(var(--brand-blue-rgb), .24);--nav-rail-bg: rgba(17, 17, 22, .94);--session-bg: rgba(32, 33, 43, .88);--metric-bg: var(--surface-strong);--input-bg: #101117;--hero-copy: #c2c8d4;--hero-start: #191923;--hero-mid: #20212b;--hero-end: #191923;--grid-line: rgba(255, 255, 255, .055);--scrim: rgba(0, 0, 0, .62);--admin-primary: var(--brand-blue-strong);--teacher-primary: var(--brand-green-strong);--parent-primary: var(--brand-purple-strong);--warehouse-primary: var(--brand-orange-strong);--text-on-accent: #071019;--shadow-xs: 0 8px 18px rgba(0, 0, 0, .28);--shadow: 0 24px 58px rgba(0, 0, 0, .4);--shadow-strong: 0 34px 82px rgba(0, 0, 0, .52);--focus-ring: 0 0 0 3px rgba(var(--brand-blue-rgb), .24), 0 0 24px rgba(var(--brand-blue-rgb), .38);--hover-lift-shadow: var(--neon-button-hover-shadow)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{position:relative;margin:0;font-family:var(--font-sans);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--ink);padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);background:var(--bg)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:24px 24px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.24),transparent 82%);mask-image:linear-gradient(180deg,rgba(0,0,0,.24),transparent 82%);opacity:.38}body.drawer-open{overflow:hidden}::selection{background:var(--secondary);color:var(--text-on-accent)}a{color:inherit;text-decoration:none}button,a{font:inherit}.app-shell{display:grid;grid-template-columns:1fr;min-height:100vh}.menu-scrim{display:none}.mobile-shell-bar,.drawer-head,.drawer-close,.menu-toggle{display:grid}.pwa-install-banner{position:fixed;right:max(20px,calc(var(--safe-right) + 20px));bottom:max(20px,calc(var(--safe-bottom) + 20px));z-index:20;width:min(420px,calc(100vw - 32px));padding:20px;border-radius:28px;border:1px solid var(--line);background:var(--surface-glass);box-shadow:var(--shadow);color:var(--surface-deep);display:grid;gap:14px}.pwa-install-banner .eyebrow,.pwa-install-banner p{color:var(--muted)}.pwa-install-copy{display:grid;gap:8px}.pwa-install-copy strong{font-size:1.05rem}.pwa-install-copy p{margin:0;line-height:1.6}.pwa-install-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pwa-install-actions .primary-button{background:var(--primary);color:var(--text-on-accent)}.pwa-install-platform{min-height:44px;align-self:flex-start;border:1px solid var(--line)}.nav-rail{--font-display: "chaloops", "Chaloops Local", "Chaloops", "Chaloops Regular", "Baloo 2", "Nunito", "Segoe UI Variable", "Bahnschrift", "Aptos", sans-serif;--drawer-hidden-x: calc(-100% - 24px) ;position:fixed;top:0;bottom:0;left:0;z-index:40;width:min(380px,calc(100vw - 12px));max-width:380px;height:auto;padding:18px 20px 24px;border-right:1px solid var(--line);background:var(--nav-rail-bg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);font-family:var(--font-display);display:flex;flex-direction:column;gap:22px;overflow-y:auto;transform:translate(var(--drawer-hidden-x));transition:transform .28s cubic-bezier(.22,1,.36,1);will-change:transform}.nav-rail.open{transform:translate(0);animation:drawer-slide-bounce .52s cubic-bezier(.34,1.56,.64,1)}.menu-scrim.visible{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:34;border:0;background:var(--scrim);cursor:pointer}.drawer-brand{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px}.drawer-brand>div,.nav-section-head>div,.utility-panel-head>div{display:grid;gap:2px;min-width:0}.nav-section-head strong,.utility-panel-head strong{color:var(--surface-deep);font-family:var(--font-display);font-size:1.05rem;font-weight:800;letter-spacing:0;line-height:1.1}.drawer-brand-mark,.session-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:var(--text-on-accent);background:var(--brand-blue-strong);box-shadow:0 12px 22px #0c5ba638}.drawer-brand strong{color:var(--surface-deep);font-family:var(--font-display);font-size:1.02rem;font-weight:700;letter-spacing:0;line-height:1.25}.drawer-brand .eyebrow,.nav-section-head .eyebrow,.utility-panel-head .eyebrow{margin-bottom:0}.drawer-brand-logo,.app-shell.role-admin .drawer-brand-logo,.app-shell.role-teacher .drawer-brand-logo{width:46px;height:46px;border-radius:50%;background:transparent;box-shadow:none;overflow:visible}.drawer-brand-logo img{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(15,23,42,.18))}.session-avatar.with-photo,.mobile-shell-avatar.with-photo,.app-shell.role-teacher .session-avatar.with-photo,.app-shell.role-teacher .mobile-shell-avatar.with-photo{box-sizing:border-box;flex:0 0 42px;padding:2px;overflow:hidden;background:var(--surface);color:transparent;border:1px solid var(--line);border-radius:50%;box-shadow:0 12px 22px #0f172a1f}.session-avatar.with-photo img,.mobile-shell-avatar.with-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;border-radius:inherit}.drawer-head{align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:12px}.drawer-close{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;cursor:pointer;background:var(--surface-glass);color:var(--surface-deep);font-weight:800;place-items:center;font-size:1.4rem;line-height:1}.drawer-session-copy strong{color:var(--surface-deep);font-weight:900;line-height:1.3}.brand-block h1,.hero-card h1,.spotlight h2,.panel h2,.panel h3{margin:0;font-family:var(--font-display);letter-spacing:0;line-height:var(--line-height-title)}.brand-block p,.panel p,.lead,.module-card p,.module-card strong,.hero-banner p{color:var(--muted);line-height:1.62}.eyebrow{display:inline-flex;margin-bottom:10px;font-size:.72rem;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--accent-deep)}.nav-links{display:grid;gap:0}.nav-role-group{display:grid;gap:0;min-width:0}.drawer-accordion-stack{display:grid;gap:8px}.drawer-accordion-panel{display:grid;grid-template-rows:0fr;min-width:0;opacity:0;overflow:hidden;transform:translateY(-6px);transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),opacity .24s ease,transform .36s cubic-bezier(.34,1.56,.64,1)}.accordion-open>.drawer-accordion-panel{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.drawer-accordion-inner{display:grid;gap:10px;min-height:0;min-width:0;overflow:hidden;transform-origin:top center;will-change:transform}.accordion-open>.drawer-accordion-panel>.drawer-accordion-inner{padding-top:10px;animation:drawer-accordion-bounce .46s cubic-bezier(.34,1.56,.64,1)}.drawer-nested-accordion{display:grid;gap:0;min-width:0}.drawer-accordion-panel-nested{margin-inline:8px}.drawer-nested-accordion.accordion-open>.drawer-accordion-panel-nested>.drawer-accordion-inner{padding-top:9px;animation-duration:.42s}@keyframes drawer-slide-bounce{0%{transform:translate(var(--drawer-hidden-x))}68%{transform:translate(8px)}84%{transform:translate(-3px)}to{transform:translate(0)}}@keyframes drawer-accordion-bounce{0%{transform:translateY(-10px) scaleY(.94)}62%{transform:translateY(4px) scaleY(1.035)}82%{transform:translateY(-2px) scaleY(.99)}to{transform:translateY(0) scaleY(1)}}@media(prefers-reduced-motion:reduce){.nav-rail.open,.accordion-open>.drawer-accordion-panel>.drawer-accordion-inner{animation:none}.nav-rail,.drawer-accordion-panel{transition-duration:1ms}}.drawer-drill-stack{display:grid;gap:0;overflow:hidden}.drawer-drill-view{grid-area:1 / 1;display:grid;gap:0;align-content:start;min-width:0;transform-origin:left center;will-change:opacity,transform;transition:opacity .12s ease,transform .22s cubic-bezier(.16,1,.3,1),visibility 0ms linear .22s}.drawer-drill-detail-view{gap:14px;background:var(--surface-glass)}.drawer-drill-root .drawer-drill-root-view{opacity:1;pointer-events:auto;transform:translate(0) scale(1);visibility:visible;transition-delay:0ms,0ms,0ms}.drawer-drill-root .drawer-drill-detail-view{opacity:0;pointer-events:none;transform:translate(104%) scale(1);visibility:hidden}.drawer-drill-admin .drawer-drill-root-view,.drawer-drill-adminGroups .drawer-drill-root-view,.drawer-drill-teacher .drawer-drill-root-view{opacity:0;pointer-events:none;transform:translate(-26%) scale(.94);visibility:hidden}.drawer-drill-admin .drawer-drill-detail-view,.drawer-drill-adminGroups .drawer-drill-detail-view,.drawer-drill-teacher .drawer-drill-detail-view{opacity:0;pointer-events:none;transform:translate(104%) scale(1);visibility:hidden}.drawer-drill-admin .drawer-drill-admin-view,.drawer-drill-adminGroups .drawer-drill-admin-groups-view,.drawer-drill-teacher .drawer-drill-teacher-view{opacity:1;pointer-events:auto;transform:translate(0) scale(1);visibility:visible;transition-delay:0ms,0ms,0ms}.drawer-back-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:8px;padding:10px 4px;border:0;background:transparent;color:var(--surface-deep);cursor:pointer;font-weight:800;text-align:left}.drawer-back-button span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--neutral-haze)}.drawer-drill-title{display:grid;gap:3px;min-width:0;padding:4px 4px 8px}.drawer-drill-title .eyebrow{margin-bottom:0}.drawer-drill-title strong{color:var(--surface-deep);font-family:var(--font-display);font-size:1.8rem;font-weight:700;letter-spacing:0;line-height:1}.nav-section,.utility-panel{display:grid;gap:10px}.drawer-session{padding:18px;border-radius:24px;background:var(--session-bg);border:1px solid var(--line)}.drawer-session{display:flex;align-items:center;justify-content:space-between;gap:14px}.drawer-session-copy{display:grid;gap:6px;min-width:0}.drawer-session-copy p{margin:0;color:var(--muted);line-height:1.45}.nav-section-head,.utility-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.nav-link{--role-link-rgb: var(--neutral-rgb);--role-link-color: var(--surface-deep);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-morado.svg);--role-link-motif-size: 300px 150px;--role-link-motif-position: right -52px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:100%;display:grid;gap:0;min-height:54px;padding:13px 44px 13px 16px;border-radius:8px;border:0;border-bottom:1px solid rgba(var(--role-link-rgb),.28);background:linear-gradient(90deg,#ffffffd6 0,#ffffffd6,#ffffff80 72%,#ffffff2e),var(--role-link-pattern) right -32px center / 250px auto no-repeat,var(--role-link-pattern) 58% center / 190px auto no-repeat,linear-gradient(90deg,rgba(var(--role-link-rgb),.2),rgba(var(--role-link-rgb),.1));box-shadow:none;color:var(--role-link-color);cursor:pointer;text-align:left;overflow:hidden;transition:transform .14s ease,background .18s ease,color .14s ease,border-color .14s ease}.nav-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:rgb(var(--role-link-rgb));opacity:.2;-webkit-mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) var(--role-link-motif-position) / var(--role-link-motif-size) no-repeat;mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) var(--role-link-motif-position) / var(--role-link-motif-size) no-repeat}.nav-link:after{content:"";position:absolute;top:50%;right:14px;width:18px;height:18px;background:currentColor;opacity:.38;z-index:2;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9H13.5M10 5L14 9L10 13' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;mask:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9H13.5M10 5L14 9L10 13' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;transition:transform .14s ease,color .14s ease}.nav-link:hover,.nav-link.active{transform:translate(4px);border-color:rgba(var(--role-link-rgb),.48);background:linear-gradient(90deg,#ffffffc7 0,#ffffffc7 34%,#ffffff6b 70%,#ffffff1a),var(--role-link-pattern) right -26px center / 270px auto no-repeat,var(--role-link-pattern) 58% center / 210px auto no-repeat,linear-gradient(90deg,rgba(var(--role-link-rgb),.26),rgba(var(--role-link-rgb),.14))}.nav-link:hover:before,.nav-link.active:before{opacity:.28}.nav-link:hover:after,.nav-link.active:after{opacity:.72;transform:translate(3px,-50%)}.nav-role-group.accordion-open>.nav-link:after{opacity:.72;transform:translateY(-50%) rotate(90deg)}.nav-link span{position:relative;z-index:1;font-family:var(--font-display);font-weight:800;color:var(--role-link-color);font-size:1.36rem;letter-spacing:0;line-height:1.1;text-shadow:0 10px 22px rgba(var(--role-link-rgb),.14)}.utility-panel .primary-link,.utility-panel .ghost-button{width:100%;margin-top:0;font-family:var(--font-display);font-size:1.06rem;font-weight:800;letter-spacing:0}.drawer-logout{justify-content:center}.theme-mode-toggle{display:grid;gap:8px;width:max-content;max-width:100%;min-width:0}.theme-mode-label{color:var(--muted);font-size:.72rem;font-weight:var(--font-weight-black);letter-spacing:var(--tracking-label);text-transform:uppercase}.theme-mode-options{display:grid;grid-template-columns:repeat(2,38px);gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);width:max-content}.theme-mode-option{width:38px;min-height:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:var(--font-weight-black);opacity:.72;transition:background .14s ease,color .14s ease,box-shadow .14s ease,opacity .14s ease,transform .14s ease}.theme-mode-option.active{opacity:1}.theme-mode-option:hover{opacity:1;transform:translateY(-1px)}.theme-mode-option-light{background:#fff;color:var(--brand-orange-strong);box-shadow:0 0 0 1px rgba(var(--brand-orange-rgb),.18),0 8px 16px #0f172a14}.theme-mode-option-light.active{border-color:rgba(var(--brand-orange-rgb),.34);box-shadow:0 0 0 1px rgba(var(--brand-orange-rgb),.22),0 10px 18px #0f172a1f}.theme-mode-option-dark{background:linear-gradient(90deg,#00dfff,#74ff68 30%,#ffd35c 52%,#ff4fc8,#bf6cff);color:#071019;box-shadow:0 0 0 1px #00dfff42,0 0 14px #00dfff3d}.theme-mode-option-dark.active{border-color:rgba(var(--brand-blue-rgb),.56);box-shadow:var(--neon-button-shadow, 0 0 18px rgba(0, 223, 255, .34))}.theme-mode-icon{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.theme-mode-icon circle{fill:currentColor;stroke:none}.theme-mode-option-dark .theme-mode-icon{fill:currentColor;stroke-width:1.8}.theme-mode-option:focus-visible{outline:none;box-shadow:var(--focus-ring)}.login-theme-toggle{position:absolute;top:18px;right:18px;z-index:8;width:max-content;pointer-events:auto}.login-theme-toggle .theme-mode-label{display:none}.nav-link-admin{--role-link-rgb: var(--brand-blue-rgb);--role-link-color: var(--brand-blue-strong);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg);--role-link-motif-position: right -50px center;width:100%;min-height:54px;margin-inline:0;padding:13px 44px 13px 16px;border-radius:8px;border:0;border-bottom:1px solid rgba(var(--brand-blue-rgb),.18)}.nav-link-admin:after{right:14px;color:var(--brand-blue-strong)}.nav-link-admin:hover,.nav-link-admin.active{border-color:rgba(var(--brand-blue-rgb),.58);box-shadow:none}.nav-link-admin:hover span,.nav-link-admin.active span{color:var(--brand-blue-strong)}.nav-link-admin:hover:after,.nav-link-admin.active:after{color:var(--brand-blue-strong)}.nav-link-teacher{--role-link-rgb: var(--brand-green-rgb);--role-link-color: var(--brand-green-strong);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg);--role-link-motif-size: 320px 160px;--role-link-motif-position: right -38px center;width:100%;min-height:54px;margin-inline:0;padding:13px 44px 13px 16px;border-radius:8px;border:0;border-bottom:1px solid rgba(var(--brand-green-rgb),.34);background:linear-gradient(90deg,#ffffffc7 0,#ffffffc7 30%,#effbecad 62%,rgba(var(--brand-green-rgb),.08)),var(--role-link-pattern) right -28px center / 285px auto no-repeat,url(/brand/stock/seeds/club-siete-semilla-mano-verde.svg) right 48px center / 92px 92px no-repeat,linear-gradient(90deg,rgba(var(--brand-green-rgb),.26),rgba(var(--brand-green-rgb),.14))}.nav-link-teacher:after{right:14px;color:var(--brand-green-strong)}.nav-link-teacher:hover,.nav-link-teacher.active{border-color:rgba(var(--brand-green-rgb),.68);background:linear-gradient(90deg,#ffffffb8 0,#ffffffb8 28%,#e8f9e494 64%,rgba(var(--brand-green-rgb),.12)),var(--role-link-pattern) right -22px center / 305px auto no-repeat,url(/brand/stock/seeds/club-siete-semilla-mano-verde.svg) right 42px center / 98px 98px no-repeat,linear-gradient(90deg,rgba(var(--brand-green-rgb),.32),rgba(var(--brand-green-rgb),.18));box-shadow:none}.nav-link-teacher:hover span,.nav-link-teacher.active span{color:var(--brand-green-strong)}.nav-link-teacher span{color:var(--brand-green-strong);font-size:1.36rem;font-weight:800}.nav-link-teacher:hover:after,.nav-link-teacher.active:after{color:var(--brand-green-strong)}.nav-link-parent:after{display:none}.nav-link-parent{--role-link-rgb: var(--brand-purple-rgb);--role-link-color: var(--brand-purple-strong);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-morado.svg);--role-link-motif-position: right -42px center}.nav-link-child{--role-link-rgb: var(--brand-pink-rgb);--role-link-color: var(--brand-pink-strong);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-rosa.svg);--role-link-motif-position: right -38px center}.nav-link-warehouse{--role-link-rgb: var(--brand-orange-rgb);--role-link-color: var(--brand-orange-strong);--role-link-pattern: url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg);--role-link-motif-position: right -34px center}.drawer-submenu,.teacher-submenu{display:grid;gap:9px;padding:0 0 8px}.teacher-submenu.teacher-submenu-root{padding:8px 0 12px}.drawer-submenu-link,.teacher-submenu-link{--teacher-submenu-rgb: 215, 82, 153;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:100%;min-width:0;min-height:56px;display:flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:2px;border:1px solid rgba(var(--teacher-submenu-rgb),.18);background:rgb(var(--teacher-submenu-rgb));color:#fff;cursor:pointer;font:inherit;box-shadow:0 8px 16px #0f172a14;text-align:center;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.drawer-submenu-link:after,.teacher-submenu-link:after{display:none}.drawer-submenu-link span,.teacher-submenu-link span{min-width:0;overflow-wrap:anywhere;color:inherit;font-family:var(--font-display);font-size:1.32rem;font-weight:700;letter-spacing:0;line-height:1.05}.drawer-submenu-link:hover,.drawer-submenu-link.active,.teacher-submenu-link:hover,.teacher-submenu-link.active{border-color:rgba(var(--teacher-submenu-rgb),.34);background:rgb(var(--teacher-submenu-rgb));color:#fff;transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1f}.drawer-submenu-link:hover:after,.drawer-submenu-link.active:after,.teacher-submenu-link:hover:after,.teacher-submenu-link.active:after{opacity:.72;transform:translate(3px,-50%)}.drawer-submenu-accordion-trigger{padding-right:42px}.drawer-submenu-accordion-trigger:after{content:"";position:absolute;top:50%;right:16px;display:block;width:18px;height:18px;background:currentColor;opacity:.78;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9H13.5M10 5L14 9L10 13' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;mask:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9H13.5M10 5L14 9L10 13' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;transition:opacity .14s ease,transform .18s ease}.drawer-nested-accordion.accordion-open>.drawer-submenu-accordion-trigger:after{transform:translateY(-50%) rotate(90deg)}.drawer-submenu-link-2,.teacher-submenu-link-2{--teacher-submenu-rgb: 92, 172, 72}.drawer-submenu-link-3,.teacher-submenu-link-3{--teacher-submenu-rgb: 229, 131, 39}.drawer-submenu-link-4,.teacher-submenu-link-4{--teacher-submenu-rgb: 95, 63, 147}.drawer-submenu-link-5,.teacher-submenu-link-5{--teacher-submenu-rgb: 31, 91, 166}.drawer-submenu-link-6,.teacher-submenu-link-6{--teacher-submenu-rgb: 11, 91, 166}.drawer-submenu-link-7,.teacher-submenu-link-7{--teacher-submenu-rgb: 88, 152, 72}.drawer-submenu-link-8,.teacher-submenu-link-8{--teacher-submenu-rgb: 95, 63, 147}.teacher-submenu-link-6{min-height:62px;border-color:rgba(var(--brand-blue-rgb),.12);background:linear-gradient(#ffffff1a,#ffffff1a),url(/brand/stock/badge-patterns/club-siete-wallet-fondo-blanco-multicolor-denso.svg) center / cover no-repeat,#fff;color:var(--brand-blue-strong)}.teacher-submenu-link-6:hover,.teacher-submenu-link-6.active{border-color:rgba(var(--brand-blue-rgb),.18);background:linear-gradient(#ffffff0a,#ffffff0a),url(/brand/stock/badge-patterns/club-siete-wallet-fondo-blanco-multicolor-denso.svg) center / cover no-repeat,#fff;color:var(--brand-blue-strong)}.session-card,.meta-panel,.panel,.hero-card,.hero-banner,.module-card,.metric-card{min-width:0;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.meta-panel,.panel,.hero-card,.module-card,.metric-card{border-radius:var(--radius-lg)}.meta-panel{padding:18px;margin-top:auto}.session-card{padding:18px;display:grid;gap:14px;background:var(--session-bg);border-radius:var(--radius-lg);border:1px solid var(--line)}.session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.session-identity{display:flex;align-items:center;gap:12px}.role-chip-row{display:flex;flex-wrap:wrap;gap:8px}.content-shell{padding:18px;display:grid;gap:20px;align-content:start;width:100%;min-width:0}.mobile-shell-bar{position:sticky;top:12px;z-index:24;min-width:0;align-items:center;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:12px 14px;border-radius:22px;background:var(--surface-glass);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-shell-copy{display:grid;gap:5px;min-width:0}.mobile-shell-copy-top{display:flex;align-items:center;gap:8px;min-width:0}.mobile-shell-copy .eyebrow{margin-bottom:0;font-size:.68rem;letter-spacing:.16em}.mobile-shell-brand{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;border:1px solid rgba(var(--brand-blue-rgb),.16);background:var(--brand-blue-soft);color:var(--brand-blue-strong);font-size:.72rem;font-weight:800;white-space:nowrap}.mobile-shell-divider{width:6px;height:6px;border-radius:50%;background:rgba(var(--brand-purple-rgb),.28);flex:none}.mobile-shell-copy strong{color:var(--surface-deep);font-family:var(--font-display);font-size:1rem;line-height:1.1}.mobile-shell-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--brand-blue-strong);color:var(--text-on-accent);font-weight:800;box-shadow:0 12px 22px #0c5ba638}.menu-toggle{display:grid;width:46px;height:46px;padding:0;border:1px solid var(--line);border-radius:16px;cursor:pointer;background:var(--surface-glass);box-shadow:var(--shadow);place-items:center;gap:5px;transition:transform .16s ease,box-shadow .16s ease}.menu-toggle span{width:18px;height:2px;border-radius:999px;background:var(--surface-deep);display:block;transform-origin:center;transition:transform .16s ease,opacity .16s ease}.menu-toggle:hover{transform:translateY(-1px);box-shadow:var(--hover-lift-shadow)}.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero-banner,.hero-card,.panel,.spotlight{padding:24px}.hero-banner{position:relative;min-width:0;overflow:hidden;display:flex;justify-content:space-between;gap:24px;border-radius:30px;background:var(--surface);color:var(--surface-deep);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none}.hero-banner>*{position:relative;z-index:1}.route-hero{align-items:center;padding-block:20px}.route-hero h2{margin:0;max-width:16ch;line-height:1}.route-hero p{margin:0;max-width:34ch;font-size:.96rem}.hero-banner p,.hero-banner .eyebrow{color:var(--hero-copy)}.login-scene{min-height:100vh;padding:clamp(16px,4vw,34px);display:grid;place-items:center}.login-stage{position:relative;--login-glow-x: 50%;--login-glow-y: 34%;--login-glow-opacity: 0;width:min(100%,1120px);min-height:min(100vh - 32px,760px);padding:clamp(20px,4vw,42px);border-radius:36px;overflow:hidden;display:grid;justify-items:stretch;align-content:start;gap:clamp(18px,2.5vw,28px);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.login-stage-seed-flow{width:min(100%,680px);min-height:min(100vh - 32px,820px)}.login-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:26px 26px;opacity:.24;pointer-events:none}.login-stage:after{content:"";position:absolute;top:-14%;right:-14%;bottom:-14%;left:-14%;z-index:0;background:radial-gradient(circle 180px at var(--login-glow-x) var(--login-glow-y),rgba(0,93,172,.26),transparent 52%),radial-gradient(circle 160px at calc(var(--login-glow-x) + 6%) calc(var(--login-glow-y) - 4%),rgba(80,184,72,.16),transparent 54%),radial-gradient(circle 170px at calc(var(--login-glow-x) - 8%) calc(var(--login-glow-y) + 3%),rgba(231,107,158,.18),transparent 55%),radial-gradient(circle 220px at calc(var(--login-glow-x) + 10%) calc(var(--login-glow-y) + 8%),rgba(95,63,147,.18),transparent 58%);opacity:var(--login-glow-opacity);filter:blur(22px) saturate(1.18);transition:opacity .16s ease;pointer-events:none}.login-stage>*{position:relative;z-index:1}.login-stage-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:grid;grid-template-columns:repeat(var(--login-grid-columns),minmax(0,1fr));grid-auto-rows:1fr;overflow:hidden;pointer-events:none}.login-stage-grid:before,.login-stage-grid:after{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;pointer-events:none}.login-stage-grid:before{background:linear-gradient(180deg,transparent 0%,rgba(var(--brand-blue-rgb),.08) 42%,transparent 78%);opacity:.18;animation:login-grid-rain-drift 20s linear infinite;will-change:transform,opacity}.login-stage-grid:after{background:linear-gradient(180deg,transparent 0%,rgba(var(--brand-pink-rgb),.07) 34%,transparent 70%);opacity:.14;animation:login-grid-rain-drift 26s linear infinite reverse;will-change:transform,opacity}.login-stage-grid-cell{position:relative;z-index:1;isolation:isolate;overflow:hidden;border-right:1px solid rgba(19,21,29,.04);border-bottom:1px solid rgba(19,21,29,.04);background:transparent;transition:background-color .18s ease,box-shadow .18s ease,opacity .18s ease,transform .18s ease}.login-stage-grid-cell:nth-child(11n+3),.login-stage-grid-cell:nth-child(17n+5),.login-stage-grid-cell:nth-child(23n+7),.login-stage-grid-cell:nth-child(29n+11){animation:login-grid-rain-cell 8.4s ease-in-out infinite;will-change:background-color,box-shadow,opacity,transform}.login-stage-grid-cell:nth-child(17n+5){animation-delay:-2.2s;animation-duration:9.6s}.login-stage-grid-cell:nth-child(23n+7){animation-delay:-4.8s;animation-duration:10.8s}.login-stage-grid-cell:nth-child(29n+11){animation-delay:-6.4s;animation-duration:12s}.login-stage-grid-cell.is-soft,.login-stage-grid-cell.is-near,.login-stage-grid-cell.is-active{animation:none}@keyframes login-grid-rain-drift{0%{transform:translate3d(0,-12%,0)}to{transform:translate3d(0,12%,0)}}@keyframes login-grid-rain-cell{0%,10%,to{background:transparent;box-shadow:0 0 rgba(var(--login-grid-rgb),0),0 0 rgba(var(--login-grid-rgb),0);opacity:1;transform:scale(1)}16%{background:rgba(var(--login-grid-rgb),.28);box-shadow:0 0 18px rgba(var(--login-grid-rgb),.24),0 0 38px rgba(var(--login-grid-rgb),.12);transform:scale(.98)}32%{background:rgba(var(--login-grid-rgb),.12);box-shadow:0 0 26px rgba(var(--login-grid-rgb),.18),0 0 52px rgba(var(--login-grid-rgb),.09);transform:scale(1.02)}48%{background:transparent;box-shadow:0 0 36px rgba(var(--login-grid-rgb),0),0 0 64px rgba(var(--login-grid-rgb),0);transform:scale(1.06)}}.login-stage-grid-cell[data-tone=blue]{--login-grid-rgb: 11, 91, 166}.login-stage-grid-cell[data-tone=green]{--login-grid-rgb: 88, 152, 72}.login-stage-grid-cell[data-tone=rose]{--login-grid-rgb: 215, 95, 157}.login-stage-grid-cell[data-tone=purple]{--login-grid-rgb: 95, 63, 147}.login-stage-grid-cell.is-soft{background:rgba(var(--login-grid-rgb),.08);box-shadow:0 0 18px rgba(var(--login-grid-rgb),.12),0 0 34px rgba(var(--login-grid-rgb),.05)}.login-stage-grid-cell.is-near{background:rgba(var(--login-grid-rgb),.16);box-shadow:0 0 24px rgba(var(--login-grid-rgb),.2),0 0 52px rgba(var(--login-grid-rgb),.12)}.login-stage-grid-cell.is-active{background:rgba(var(--login-grid-rgb),.24);box-shadow:0 0 32px rgba(var(--login-grid-rgb),.3),0 0 68px rgba(var(--login-grid-rgb),.18)}.login-stage-brand{margin-top:0;display:grid;justify-items:start;gap:14px;text-align:left;color:var(--surface-deep)}.login-stage-brand h1{margin:0;font-family:var(--font-display);font-size:clamp(2rem,3vw,3.2rem);line-height:.96;font-weight:700;text-wrap:balance;max-width:10ch}.login-stage-layout{display:grid;grid-template-columns:minmax(320px,460px) minmax(360px,1fr);align-items:start;gap:clamp(24px,4vw,56px)}.login-stage-primary{display:grid;align-content:start;gap:clamp(18px,2.5vw,28px)}.login-stage-layout-mobile{grid-template-columns:minmax(0,1fr);justify-items:center;gap:clamp(20px,3vw,28px)}.login-stage-layout-mobile .login-stage-primary{width:min(100%,420px);justify-items:center}.login-stage-layout-mobile .login-stage-brand{justify-items:center;text-align:center}.login-stage-layout-mobile .seed-orb-card{margin-top:14px}.login-stage-layout-mobile .credential-form-shell{width:min(100%,460px)}.login-stage-layout-mobile .credential-form-heading{grid-template-columns:1fr;display:grid}.login-stage-layout-desktop{grid-template-columns:minmax(360px,1fr) minmax(360px,1fr);align-items:center}.login-stage-layout-desktop .login-stage-primary{min-height:100%;align-content:center;justify-items:center}.login-stage-layout-desktop .login-stage-brand{justify-items:center;text-align:center}.login-stage-layout-desktop .credential-form-shell{max-width:560px;align-self:center;width:100%;display:grid;align-content:center}.login-stage-layout-desktop .credential-form-panel{min-height:clamp(372px,48vh,452px);padding-top:clamp(24px,3vw,34px);padding-bottom:clamp(20px,2.6vw,30px);align-content:center}.login-stage-layout-desktop .credential-form-heading{margin-bottom:clamp(12px,2vh,18px)}.login-stage-layout-desktop .credential-auth-form{align-content:center}.club-seven-wordmark{width:min(230px,58vw);height:auto;display:block;object-fit:contain}.seed-orb-card{width:min(100%,420px)}.seed-orb-trigger{padding:0;border:0;background:transparent;cursor:pointer;text-align:inherit}.seed-orb-trigger:hover{transform:translateY(-1px)}.seed-orb-trigger:focus-visible{outline:3px solid rgba(0,93,172,.28);outline-offset:6px}.seed-orb-trigger .helper-banner,.seed-orb-trigger .error-banner{pointer-events:none}.seed-orb-shape{position:relative;min-height:clamp(220px,28vw,280px);display:grid;place-items:center;padding:28px 30px;border-radius:32px;overflow:hidden;isolation:isolate}.seed-orb-shape:before{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;z-index:0;border-radius:24px;background:linear-gradient(#ffffff14,#ffffff14),url(/brand/stock/badge-patterns/club-siete-wallet-fondo-blanco-multicolor-denso.svg) center / cover no-repeat,#fff;border:1px solid rgba(0,93,172,.14);box-shadow:0 24px 46px #0f172a1a,0 0 0 1px #ffffffdb inset}.seed-orb-shape:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:32px;border:18px solid rgba(255,255,255,.42);box-shadow:0 0 0 1px #005dac1a inset,0 14px 30px #005dac1f inset;pointer-events:none}.seed-orb-shape-camera-open:before{background:#06101f;box-shadow:0 20px 38px #0f172a1f,0 0 24px #005dac42}.seed-orb-outline{position:absolute;top:30px;right:30px;bottom:30px;left:30px;z-index:2;border:1.5px dashed rgba(0,0,0,.88);border-radius:16px;box-shadow:0 0 10px #00000052,0 0 18px #0000002e inset;transform:none}.seed-orb-copy{position:relative;z-index:2;display:grid;justify-items:center;gap:14px;text-align:center;color:var(--brand-blue-strong)}.seed-orb-copy-hidden{opacity:0}.seed-orb-copy h2{margin:0;font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1;font-weight:800}.seed-orb-copy p{margin:0;max-width:24ch;font-size:clamp(.96rem,1.2vw,1.06rem);line-height:1.35;color:#ffffffe6}.seed-orb-icon{width:clamp(60px,8vw,74px);height:clamp(60px,8vw,74px)}.seed-orb-camera-stage{position:absolute;top:30px;right:30px;bottom:30px;left:30px;z-index:2;overflow:hidden;border-radius:16px;background:#06101f;opacity:0;transition:opacity .16s ease;pointer-events:none}.seed-orb-camera-stage.open{opacity:1}.seed-orb-camera-feed{display:block;width:100%;height:100%;object-fit:cover}.seed-orb-camera-status{position:absolute;top:30px;right:30px;bottom:30px;left:30px;z-index:3;display:grid;place-items:center;padding:24px;text-align:center;border-radius:16px;color:#fff;background:#06101fc7}.login-action-stack{width:min(100%,420px);display:grid;gap:16px;justify-items:center}.login-action-stack .helper-banner,.login-action-stack .error-banner{width:100%}.seed-access-button,.login-switch-button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:800;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.seed-access-button:hover,.login-switch-button:hover,.credential-demo-card:hover{transform:translateY(-1px)}.login-password-reset-link,.login-inline-link-button{border:0;background:transparent;color:var(--surface-deep);cursor:pointer;font-weight:800;text-decoration:underline;text-underline-offset:4px}.login-password-reset-link:hover,.login-password-reset-link:focus-visible,.login-inline-link-button:hover,.login-inline-link-button:focus-visible{color:var(--primary)}.seed-orb-close-button{width:min(100%,420px)}.seed-access-button{min-width:min(100%,320px);padding:16px 26px;border-radius:999px;background:var(--tertiary);color:#fff;box-shadow:0 0 0 1px #50b84824,0 18px 32px #50b84838,0 0 34px #50b84824}.login-switch-shell{width:min(100%,420px);padding:8px;border-radius:999px;background:#ffffffdb;border:1px solid rgba(19,21,29,.08);box-shadow:inset 0 1px #ffffffc2}.login-switch-button{width:100%;min-height:64px;padding:16px 24px;border-radius:999px;background:var(--surface);color:var(--surface-deep);box-shadow:0 10px 24px #0f172a0f}.login-install-hint{width:min(100%,420px);display:grid;gap:8px}.login-install-button{width:100%;min-height:48px;padding:12px 18px;border:1px solid rgba(19,21,29,.08);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#ffffffb8;color:var(--surface-deep);cursor:pointer;font-weight:800;box-shadow:0 10px 24px #0f172a0f;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.login-install-button:hover,.login-install-button:focus-visible{transform:translateY(-1px);border-color:#005dac38}.login-install-guide{padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:#ffffffd1;color:var(--muted);font-size:.88rem;font-weight:700;line-height:1.45;text-align:center}.action-icon{width:22px;height:22px;flex:none}.credential-form-shell{width:100%;display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(-8px);transition:grid-template-rows .22s ease,opacity .22s ease,transform .22s ease}.credential-form-shell-open{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.credential-form-shell>*{min-height:0;overflow:hidden}.credential-form-panel{min-height:100%;padding:clamp(20px,3vw,26px);border-radius:30px;background:#ffffffd1;border:1px solid rgba(19,21,29,.06);box-shadow:0 20px 42px #0f172a14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;gap:18px}.credential-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.credential-form-heading h2{margin:0;color:var(--surface-deep);font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.8rem);line-height:1}.credential-auth-form{gap:16px}.login-wallet-camera-shell{display:grid;gap:12px}.login-wallet-camera-stage{position:relative;min-height:188px;overflow:hidden;border-radius:24px;border:1px solid rgba(19,21,29,.08);background:linear-gradient(180deg,#ffffffd1,#f7f9fceb);box-shadow:inset 0 1px #ffffffb3,0 16px 32px #0f172a0f}.login-wallet-camera-stage.open{background:#06101f}.login-wallet-camera-feed{display:block;width:100%;min-height:188px;height:100%;object-fit:cover}.login-wallet-camera-placeholder{min-height:188px;padding:24px;display:grid;place-items:center;gap:12px;text-align:center;color:var(--surface-deep)}.login-wallet-camera-placeholder .seed-orb-icon{width:48px;height:48px;color:var(--primary)}.login-wallet-camera-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.credential-form-panel .field span{color:var(--surface-deep)}.credential-form-panel .field input{border-radius:18px;padding:16px 18px;border-color:#13151d14;background:#ffffffb8}.primary-button.credential-submit-button{position:relative;isolation:isolate;min-height:54px;margin-top:22px;background:linear-gradient(135deg,#5f3193,#8b5cf6 58%,#5f3193);border:1px solid rgba(139,92,246,.82);color:#fff;text-shadow:0 0 12px rgba(255,255,255,.58);box-shadow:0 0 0 1px #5f319338,0 12px 28px #5f31934d,0 0 26px #8b5cf670,0 0 56px #8b5cf642}.login-stage-layout-desktop .primary-button.credential-submit-button{width:88%;max-width:452px;justify-self:center;margin-top:20px}.primary-button.credential-submit-button:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;z-index:-1;border-radius:inherit;background:radial-gradient(circle at 30% 50%,rgba(139,92,246,.56),transparent 58%),radial-gradient(circle at 72% 50%,rgba(95,49,147,.5),transparent 62%);filter:blur(18px);opacity:.86;transition:opacity .18s ease,transform .18s ease,filter .18s ease}.primary-button.credential-submit-button:hover,.primary-button.credential-submit-button:focus-visible{box-shadow:0 0 0 1px #8b5cf657,0 14px 32px #5f319357,0 0 36px #8b5cf680,0 0 72px #8b5cf657}.primary-button.credential-submit-button:hover:before,.primary-button.credential-submit-button:focus-visible:before{opacity:1;transform:scale(1.02);filter:blur(22px)}.helper-banner{border-radius:18px;padding:12px 14px;background:#50b8481f;color:#288b2e;font-weight:700}.credential-demo-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.credential-demo-card{min-height:86px;border-radius:18px;background:var(--surface-glass);border-color:#13151d0f;color:var(--surface-deep)}.credential-demo-card strong{font-size:1rem}.credential-demo-card span{color:var(--muted)}.login-shell,.panel-stack{display:grid;gap:22px;min-width:0}.login-shell{min-height:100vh;padding:28px;grid-template-columns:1.15fr .85fr;align-items:start}.hero-card{display:grid;gap:24px}.panel,.hero-card,.auth-hero{position:relative;overflow:hidden}.auth-hero:after{content:"";position:absolute;inset:auto -10% -18% auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,var(--secondary-haze),transparent 70%);pointer-events:none}.auth-hero-copy{display:grid;gap:12px}.lead{font-size:1.05rem;max-width:72ch}.banner-grid,.module-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-card,.module-card{position:relative;overflow:hidden;padding:20px}.metric-card{display:grid;gap:8px;background:var(--metric-bg)}.metric-card:before,.module-card:before,.panel:before,.hero-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--primary);opacity:.78}.metric-value{font-family:var(--font-display);font-size:2rem;color:var(--surface-deep)}.metric-label{color:var(--muted)}.section-header,.module-header,.timeline-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.module-card h3{margin:14px 0 8px}.primary-link{display:inline-flex;align-items:center;justify-content:center;margin-top:16px;min-height:50px;padding:12px 18px;border-radius:999px;background:#fff;border:1px solid rgba(0,93,172,.18);color:var(--primary);font-weight:700;box-shadow:0 12px 24px #0f172a0f}.primary-link.secondary{background:var(--surface-glass);border:1px solid rgba(95,63,147,.14);color:var(--surface-deep);box-shadow:none}.primary-button,.ghost-button{border:1px solid transparent;cursor:pointer;transition:transform .14s ease,opacity .14s ease,background .14s ease,box-shadow .14s ease,border-color .14s ease}.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 18px;border-radius:999px;background:var(--primary);color:var(--text-on-accent);font-weight:800;box-shadow:0 14px 28px #005dac2e}.ghost-button{min-height:44px;padding:10px 14px;border-radius:999px;background:#ffffffeb;color:var(--surface-deep);border-color:var(--line);box-shadow:0 10px 24px #0f172a0f}.ghost-button.danger{background:#d34f7c0f;border-color:#d34f7c38;color:var(--negative)}.ghost-button.active{background:#005dac0f;border-color:#005dac2e;color:var(--primary)}.primary-button:hover,.ghost-button:hover,.quick-fill-card:hover{transform:translateY(-1px)}.primary-button:disabled,.ghost-button:disabled{opacity:.72;cursor:wait}.primary-button:disabled:hover,.ghost-button:disabled:hover{transform:none}.app-shell.role-admin .primary-button{background:var(--brand-blue-strong);box-shadow:0 14px 28px #0c5ba63d}.app-shell.role-admin .primary-button:hover{box-shadow:0 18px 32px #0c5ba647}.app-shell.role-admin .ghost-button.active{background:#0c5ba614;border-color:#0c5ba633;color:var(--brand-blue-strong)}.app-shell.role-teacher .primary-button{background:var(--brand-green-strong);box-shadow:0 14px 28px #6bb6573d}.app-shell.role-teacher .primary-button:hover{box-shadow:0 18px 32px #6bb65747}.app-shell.role-teacher .ghost-button.active{background:#6bb65714;border-color:#6bb65733;color:var(--brand-green-strong)}.auth-panel{display:grid;gap:18px}.auth-form{display:grid;gap:14px}.field{display:grid;gap:9px}.field span{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:800}.field input{width:100%;border:1px solid var(--line);min-height:54px;border-radius:18px;padding:14px 16px;background:var(--input-bg);color:var(--ink);outline:none;box-shadow:inset 0 1px 0 var(--panel-border);transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:18px;padding:14px 16px;background:var(--input-bg);color:var(--ink);outline:none;font:inherit;box-shadow:inset 0 1px 0 var(--panel-border);transition:border-color .14s ease,box-shadow .14s ease}.field textarea{min-height:112px;resize:vertical}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-haze)}.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-haze)}.error-banner{border-radius:16px;padding:12px 14px;background:var(--secondary-haze);color:var(--negative);font-weight:700}.field-error{margin:0;color:var(--negative);font-size:.86rem;font-weight:700;line-height:1.45}.helper-copy{margin:0;color:var(--muted)}.warehouse-inline-button{min-height:38px;padding:8px 12px}.warehouse-action-row{display:flex;flex-wrap:wrap;gap:10px}.warehouse-line-list{display:grid;gap:10px}.warehouse-line-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.warehouse-line-summary p{margin:0}.warehouse-line-summary:last-child{border-bottom:0;padding-bottom:0}.warehouse-qty-input{width:min(120px,100%);min-height:44px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:var(--input-bg);color:var(--ink);outline:none;font:inherit;box-shadow:inset 0 1px #ffffffd1}.warehouse-qty-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-haze)}.warehouse-rail-list{display:grid;gap:18px}.warehouse-rail{display:grid;gap:14px;padding:18px;border:1px solid rgba(19,21,29,.08);border-radius:24px;background:linear-gradient(180deg,#fffffff0,#f4f8ffeb),linear-gradient(90deg,#005dac0a,#50b84808)}.warehouse-rail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.warehouse-rail-label{font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.warehouse-pallet-track{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end}.warehouse-pallet{display:grid;gap:12px;align-content:start;min-height:100%;padding:16px;border:1px solid rgba(19,21,29,.08);border-radius:24px;background:#ffffffe6;color:var(--ink);cursor:pointer;text-align:left;box-shadow:0 12px 24px #0f172a0f;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.warehouse-pallet:hover{transform:translateY(-2px);box-shadow:0 18px 32px #0f172a1a}.warehouse-pallet.selected{border-color:#005dac5c;box-shadow:0 18px 32px #005dac1f,0 0 0 4px #005dac14}.warehouse-pallet-stack{position:relative;display:grid;align-content:end;gap:10px;min-height:160px;padding:16px 14px 12px;border-radius:18px;background:linear-gradient(180deg,#ffffffe0,#e8f0fce0),radial-gradient(circle at top,rgba(0,93,172,.12),transparent 58%);overflow:hidden}.warehouse-pallet-stack.detail{min-height:280px;padding:24px 20px 16px;border-radius:24px;background:linear-gradient(180deg,#ffffffeb,#e8f0fcf0),radial-gradient(circle at top,rgba(0,93,172,.16),transparent 62%)}.warehouse-box-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-content:end;min-height:118px;pointer-events:none}.warehouse-box-grid.detail{gap:12px;min-height:210px}.warehouse-box{aspect-ratio:1 / .84;border-radius:10px;border:1px solid rgba(19,21,29,.08);box-shadow:inset 0 1px #ffffff6b,0 6px 12px #0f172a14}.warehouse-box-consumable{background:linear-gradient(180deg,#7fc5ff,#3a90d8)}.warehouse-box-reusable{background:linear-gradient(180deg,#8fd681,#50b848)}.warehouse-box-reserved{filter:saturate(.5) brightness(.92);opacity:.82}.warehouse-pallet-overflow{position:absolute;top:12px;right:12px;border-radius:999px;padding:4px 8px;background:#13151dc7;color:#fff;font-size:.78rem;font-weight:700}.warehouse-pallet-base{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;pointer-events:none}.warehouse-pallet-base span{display:block;height:12px;border-radius:999px;background:linear-gradient(180deg,#b78351,#8e6038);box-shadow:inset 0 1px #fff3}.warehouse-pallet-name{display:block;font-size:1rem}.warehouse-pallet-meta{color:var(--muted);font-size:.92rem}.warehouse-map-hint{margin-top:18px}.warehouse-pallet-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.warehouse-pallet-modal{width:min(980px,100%);max-height:min(88vh,900px);overflow:auto;display:grid;gap:18px;padding:24px;border:1px solid rgba(255,255,255,.18);border-radius:30px;background:linear-gradient(180deg,#fffffffa,#f4f8fff5),linear-gradient(135deg,#005dac0a,#5f3f930a);box-shadow:0 28px 64px #0f172a33}.warehouse-pallet-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.warehouse-pallet-modal-close{flex-shrink:0}.warehouse-pallet-modal-body{display:grid;gap:18px;grid-template-columns:minmax(300px,1.1fr) minmax(260px,.9fr);align-items:start}.warehouse-pallet-modal-visual{padding:14px;border:1px solid rgba(19,21,29,.06);border-radius:28px;background:linear-gradient(180deg,#f3f8fff0,#fffffff5)}.warehouse-pallet-detail{display:grid;gap:12px;padding:18px;border:1px solid rgba(0,93,172,.12);border-radius:22px;background:linear-gradient(180deg,#ffffffeb,#edf5ffe6)}.warehouse-pallet-detail h3{margin-bottom:6px}.warehouse-pallet-detail-meta{display:flex;flex-wrap:wrap;gap:10px}.warehouse-pallet-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-item-row-selected{background:#005dac14}@media(max-width:900px){.warehouse-pallet-modal-backdrop{padding:14px}.warehouse-pallet-modal{padding:18px;border-radius:24px}.warehouse-pallet-modal-header,.warehouse-pallet-modal-body,.warehouse-pallet-summary-grid{grid-template-columns:1fr}}.profile-photo-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.profile-photo-field{align-content:start;justify-items:start}.profile-photo-note{margin-top:-2px}.profile-photo-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-photo-actions .ghost-button{min-height:42px;padding-inline:14px}.profile-photo-card{display:flex;align-items:center;justify-content:center;width:min(172px,100%);aspect-ratio:1;min-height:0;border:1px dashed rgba(19,21,29,.12);border-radius:28px;background:#ffffffb8;overflow:hidden}.profile-photo-preview{display:block;width:100%;height:100%;object-fit:cover}.profile-photo-empty{padding:1.25rem;text-align:center;color:var(--muted);font-size:.95rem}.profile-photo-pending{margin:0;color:var(--brand-green-strong);font-size:.88rem;font-weight:800;line-height:1.4}.profile-camera-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:56;display:grid;place-items:center;padding:20px;background:#0f172a47;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-camera-dialog{width:min(460px,100%);max-height:min(90vh,760px);overflow:auto;display:grid;gap:16px;padding:22px;border:1px solid rgba(19,21,29,.07);border-radius:28px;background:#fffffffa;box-shadow:0 30px 64px #0f172a2e}.profile-camera-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.profile-camera-header h3{margin:4px 0 0}.profile-camera-frame{position:relative;aspect-ratio:1;min-height:0;overflow:hidden;border:1px solid rgba(19,21,29,.1);border-radius:24px;background:#111827;cursor:crosshair;touch-action:manipulation}.profile-camera-video{display:block;width:100%;height:100%;object-fit:cover;background:#111827}.profile-camera-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;color:#fff;text-align:center;font-weight:900;background:#111827b8}.profile-camera-placeholder-error{background:#111827db}.profile-camera-placeholder p,.profile-camera-copy{margin:0}.profile-camera-focus-ring{position:absolute;z-index:2;width:74px;height:74px;border:2px solid rgba(255,255,255,.95);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 0 1px #13151d38,0 0 28px #ffffff5c}.profile-camera-focus-status{position:absolute;left:14px;bottom:14px;z-index:2;max-width:calc(100% - 28px);padding:8px 12px;border-radius:999px;background:#ffffffe6;color:var(--surface-deep);font-size:.82rem;font-weight:900;box-shadow:0 10px 18px #0f172a29}.profile-camera-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.teacher-profile-progress-card{display:grid;gap:14px;padding:18px;border-radius:24px;border:1px solid rgba(19,21,29,.06);background:#ffffffeb;box-shadow:0 14px 28px #0f172a0d}.teacher-profile-progress-card.pending{border-color:#ffd16647;background:linear-gradient(180deg,#fffcf5fa,#fffffff0)}.teacher-profile-progress-card.complete{border-color:#50b84838;background:linear-gradient(180deg,#f7fff7fa,#fffffff0)}.teacher-profile-progress-track{width:100%;height:10px;border-radius:999px;background:#13151d14;overflow:hidden}.teacher-profile-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--secondary))}.teacher-profile-checklist{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.teacher-profile-check-item{display:grid;gap:6px;padding:14px;border-radius:18px;border:1px solid rgba(19,21,29,.06);background:#ffffffd1}.teacher-profile-check-item.complete{border-color:#50b8482e;background:#f7fff7fa}.teacher-profile-check-item span{color:var(--muted);font-size:.85rem}.quick-fill-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.quick-fill-card{text-align:left;padding:16px;border-radius:18px;border:1px solid rgba(19,21,29,.06);background:#fffffff0;cursor:pointer;display:grid;gap:8px;box-shadow:0 12px 28px #0f172a0f}.route-loading-blank{min-height:1px}.status-chip{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;font-size:.8rem;font-weight:700}.status-chip.live{background:#005dac1f;color:var(--primary)}.status-chip.neutral{background:#13151d0f;color:var(--surface-deep)}.status-chip.warning{background:#ffd16638;color:#9f6200}.status-chip.negative{background:var(--secondary-haze);color:var(--negative)}.status-chip.outline{border:1px solid var(--line);color:var(--muted)}.app-shell.role-admin .status-chip.outline{border-color:#0c5ba62e;background:#9cc8eb6b;color:var(--brand-blue-strong)}.app-shell.role-teacher .drawer-brand-mark,.app-shell.role-teacher .session-avatar,.app-shell.role-teacher .mobile-shell-avatar{background:var(--brand-green-strong);box-shadow:0 12px 22px #6bb65738}.app-shell.role-teacher .mobile-shell-brand{border-color:#6bb65724;background:var(--brand-green-soft);color:var(--brand-green-strong)}.app-shell.role-teacher .status-chip.outline{border-color:#6bb6572e;background:#bbd2536b;color:var(--brand-green-strong)}.dashboard-link-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.admin-dashboard{--admin-blue-soft: var(--brand-blue-soft);--admin-green-soft: var(--brand-green-soft);--admin-pink-soft: var(--brand-pink-soft);--admin-purple-soft: var(--brand-purple-soft);--admin-orange-soft: var(--brand-orange-soft);--admin-blue-strong: var(--brand-blue-strong);--admin-green-strong: var(--brand-green-strong);--admin-pink-strong: var(--brand-pink-strong);--admin-purple-strong: var(--brand-purple-strong);--admin-orange-strong: var(--brand-orange-strong);gap:20px}.admin-hero{position:relative;display:grid;gap:20px;grid-template-columns:minmax(0,1fr);padding:26px;border-radius:34px;background:linear-gradient(135deg,#9cc8eb57,#fffffff5 28%,#bbd25338 58%,#edbad23d 80%,#b891bd42);border:1px solid rgba(12,91,166,.08);box-shadow:0 30px 80px #0f172a1a,inset 0 1px #fffc;overflow:hidden}.admin-hero:before{content:"";position:absolute;inset:auto -70px -120px auto;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(229,131,59,.18),transparent 58%),radial-gradient(circle at 30% 35%,rgba(95,63,147,.14),transparent 70%);filter:blur(14px);pointer-events:none}.admin-hero:after{content:"";position:absolute;inset:18px auto auto -48px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(12,91,166,.16),transparent 54%),radial-gradient(circle at 65% 40%,rgba(214,95,156,.14),transparent 66%);filter:blur(14px);pointer-events:none}.admin-hero-copy{position:relative;z-index:1}.admin-hero-copy{display:grid;gap:18px;align-content:start}.admin-hero-copy h1{max-width:11ch;margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:.96;letter-spacing:-.05em;color:var(--surface-deep)}.admin-hero-copy .lead{max-width:64ch;margin:0;color:var(--hero-copy)}.admin-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.admin-ghost-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-color:#0c5ba629;background:#ffffffd1;color:var(--admin-blue-strong);box-shadow:0 10px 24px #0c5ba614}.admin-stat-strip{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-stat-card{--frame-accent: var(--admin-blue-strong);padding:18px 18px 16px;border-radius:24px;background:linear-gradient(180deg,#9cc8eb57,#ffffffeb);border:1px solid rgba(12,91,166,.14);box-shadow:0 18px 38px #0f172a0f;display:grid;gap:8px}.admin-stat-card:nth-child(2){--frame-accent: var(--admin-green-strong);background:linear-gradient(180deg,#bbd25357,#ffffffeb);border-color:#6bb6572e}.admin-stat-card:nth-child(3){--frame-accent: var(--admin-purple-strong);background:linear-gradient(180deg,#b891bd57,#ffffffeb);border-color:#5f3f932e}.admin-stat-card span{font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:800}.admin-stat-card strong{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1;color:var(--surface-deep)}.admin-stat-card p{margin:0;color:var(--muted)}.admin-signal-card,.admin-quick-card,.admin-feature-card{position:relative;overflow:hidden;padding:22px;border-radius:28px;border:1px solid rgba(19,21,29,.06);box-shadow:0 22px 48px #0f172a14}.admin-signal-card{--frame-accent: var(--primary);display:grid;gap:14px;color:var(--surface-deep);background:#fff;border-color:#005dac1f;box-shadow:inset 0 3px 0 0 var(--primary),0 22px 48px #0f172a14}.admin-signal-card p,.admin-signal-card span{color:var(--muted)}.admin-signal-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.admin-signal-card strong{font-size:1.6rem;line-height:1.1}.admin-signal-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-signal-grid div{--frame-accent: var(--primary);padding:14px;border-radius:20px;background:#fffffff5;border:1px solid rgba(19,21,29,.06);display:grid;gap:6px}.admin-signal-grid div:nth-child(1){--frame-accent: var(--primary);background:#005dac0f;border-color:#005dac24}.admin-signal-grid div:nth-child(2){--frame-accent: var(--tertiary);background:#50b84814;border-color:#50b84824}.admin-signal-grid div:nth-child(3){--frame-accent: var(--rose);background:#e76b9e14;border-color:#e76b9e24}.admin-signal-grid div:nth-child(4){--frame-accent: var(--secondary);background:#5f3f9314;border-color:#5f3f9324}.admin-signal-grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.admin-signal-grid strong{font-size:1.2rem;color:var(--surface-deep)}.admin-quick-card{display:grid;gap:14px;background:linear-gradient(180deg,#fffffff5,#f8fafff5),linear-gradient(135deg,#9cc8eb33,#b891bd1f);border-color:#0c5ba61a}.admin-quick-list{display:grid;gap:12px}.admin-quick-link{--frame-accent: var(--admin-blue-strong);display:grid;gap:6px;padding:16px 18px;border-radius:22px;text-decoration:none;background:linear-gradient(180deg,#9cc8eb47,#fffffff5);border:1px solid rgba(12,91,166,.16);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.admin-quick-link:nth-child(2){--frame-accent: var(--admin-purple-strong);background:linear-gradient(180deg,#b891bd47,#fffffff5);border-color:#5f3f9329}.admin-quick-link:nth-child(3){--frame-accent: var(--admin-pink-strong);background:linear-gradient(180deg,#edbad257,#fffffff5);border-color:#d65f9c29}.admin-quick-link:nth-child(4){--frame-accent: var(--admin-green-strong);background:linear-gradient(180deg,#bbd25357,#fffffff5);border-color:#6bb65729}.admin-quick-link:nth-child(5){--frame-accent: var(--admin-orange-strong);background:linear-gradient(180deg,#f3bd4457,#fffffff5);border-color:#e5833b29}.admin-quick-link:nth-child(6){--frame-accent: var(--admin-blue-strong);background:linear-gradient(180deg,#9cc8eb5c,#fffffff5);border-color:#0c5ba62e}.admin-quick-link:hover{transform:translateY(-1px);border-color:var(--frame-accent);box-shadow:0 16px 30px #0f172a14}.admin-quick-link strong{color:var(--surface-deep)}.admin-quick-link span{color:var(--muted)}.admin-feature-grid,.admin-group-grid{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-feature-card{--admin-accent: var(--admin-blue-strong);--frame-accent: var(--admin-blue-strong);display:grid;gap:10px;min-height:164px;background:linear-gradient(180deg,#fffffff0,#f8fafff0);border-color:#13151d0f}.admin-feature-card:before{display:block;top:auto;bottom:0;height:8px;opacity:1}.admin-feature-card .eyebrow{color:var(--admin-accent)}.admin-feature-card p{margin:0}.admin-feature-card-blue{--admin-accent: var(--admin-blue-strong);--frame-accent: var(--admin-blue-strong);background:linear-gradient(180deg,#9cc8eb6b,#fffffff5);border-color:#0c5ba624}.admin-feature-card-purple{--admin-accent: var(--admin-purple-strong);--frame-accent: var(--admin-purple-strong);background:linear-gradient(180deg,#b891bd6b,#fffffff5);border-color:#5f3f9324}.admin-feature-card-green{--admin-accent: var(--admin-green-strong);--frame-accent: var(--admin-green-strong);background:linear-gradient(180deg,#bbd2536b,#fffffff5);border-color:#6bb65729}.admin-feature-card-pink{--admin-accent: var(--admin-pink-strong);--frame-accent: var(--admin-pink-strong);background:linear-gradient(180deg,#edbad270,#fffffff5);border-color:#d65f9c29}.admin-kpi-grid{margin-top:16px}.admin-group-card{--frame-accent: var(--admin-purple-strong);min-height:152px;background:linear-gradient(180deg,#b891bd38,#fffffff5);border-color:#5f3f9329}.admin-attendance-page{gap:18px}.admin-attendance-banner{min-height:132px;display:grid;place-items:center;padding:28px 24px;border-radius:24px;background:var(--brand-purple-strong);color:#fff;box-shadow:0 20px 44px rgba(var(--brand-purple-rgb),.18)}.admin-attendance-banner h2{margin:0;font-family:var(--font-display);font-size:clamp(2rem,5vw,3.6rem);font-weight:700;line-height:.98;text-align:center;letter-spacing:0}.admin-attendance-group-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.admin-attendance-group-card{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-11y12.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-11y12.jpg);display:grid;align-content:space-between;gap:12px;min-height:232px;padding:22px;border-radius:22px;border:1px solid rgba(17,24,39,.12);background-color:#fff;background-image:var(--admin-attendance-card-desktop);background-position:center;background-repeat:no-repeat;background-size:cover;color:#111827;box-shadow:0 18px 38px #0f172a1f;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.admin-attendance-group-card:hover{transform:translateY(-2px);border-color:rgba(var(--brand-purple-rgb),.32);box-shadow:0 22px 46px #0f172a29}.admin-attendance-texture-6y7{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-6y7.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-6y7.jpg)}.admin-attendance-texture-8{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-8.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-8.jpg)}.admin-attendance-texture-9{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-9.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-9.jpg)}.admin-attendance-texture-10{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-10.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-10.jpg)}.admin-attendance-texture-11y12{--admin-attendance-card-desktop: url(/brand/textures/attendance-banner-desktop-11y12.jpg);--admin-attendance-card-mobile: url(/brand/textures/attendance-banner-mobile-11y12.jpg)}.admin-attendance-card-label,.admin-attendance-card-range,.admin-attendance-card-action{font-weight:900;text-shadow:0 1px 0 rgba(255,255,255,.48)}.admin-attendance-card-label{justify-self:start;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.admin-attendance-group-card h3{margin:0;max-width:10ch;font-family:var(--font-display);font-size:clamp(1.85rem,4vw,2.8rem);line-height:.92;letter-spacing:0;text-shadow:0 2px 0 rgba(255,255,255,.5)}.admin-attendance-card-count{display:grid;gap:2px;justify-items:start}.admin-attendance-card-count strong{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,3.5rem);line-height:.9;letter-spacing:0}.admin-attendance-card-count span,.admin-attendance-card-range{font-size:.98rem}.admin-attendance-card-action{justify-self:start;padding-bottom:2px;border-bottom:2px solid currentColor}.admin-constellation-panel{display:grid;gap:18px;color:#f7fbff;border-color:#7ebaf642;background:radial-gradient(circle at 20% 18%,rgba(var(--brand-blue-rgb),.34),transparent 26%),radial-gradient(circle at 78% 28%,rgba(var(--brand-green-rgb),.2),transparent 24%),radial-gradient(circle at 44% 88%,rgba(var(--brand-purple-rgb),.24),transparent 30%),linear-gradient(135deg,#10182b,#131629 52%,#0d1527);box-shadow:inset 0 0 0 1px #ffffff0a,0 28px 68px #0f172a2e}.admin-constellation-panel:before{background:linear-gradient(90deg,rgba(var(--brand-blue-rgb),.9),rgba(var(--brand-green-rgb),.72),rgba(var(--brand-orange-rgb),.82),rgba(var(--brand-pink-rgb),.72),rgba(var(--brand-purple-rgb),.86));opacity:1}.admin-constellation-header{position:relative;z-index:2;align-items:center}.admin-constellation-panel h2,.admin-constellation-panel h3,.admin-constellation-panel strong{color:#fff}.admin-constellation-panel .eyebrow,.admin-constellation-panel .helper-copy{color:#eef6ffad}.admin-constellation-legend{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:8px 12px;border-radius:999px;border:1px solid rgba(var(--brand-orange-rgb),.42);background:#fff4cc1a;color:#fff4d4;font-size:.86rem;font-weight:800}.admin-global-legend-mark,.admin-global-node-mark{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:9px;background:linear-gradient(180deg,#ffe29a,#d69a2d);color:#27190a;font-size:.76rem;font-weight:900;box-shadow:0 0 0 2px #ffe29a2e,0 0 18px #ffc54d47}.admin-constellation-summary{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-constellation-summary article{display:grid;gap:4px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:#ffffff0e}.admin-constellation-summary span{color:#eef6ffa3;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-constellation-summary strong{font-family:var(--font-display);font-size:1.6rem;line-height:1}.admin-global-manager{position:relative;z-index:2;display:grid;gap:14px;padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(var(--brand-blue-rgb),.22),rgba(var(--brand-purple-rgb),.14)),#ffffff0f;box-shadow:inset 0 1px #ffffff14}.admin-global-manager-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.admin-global-manager-head h3,.admin-global-manager-head p{margin:0}.admin-global-manager-head p{max-width:64ch;color:#eef6ffb8}.admin-global-editor{display:grid;gap:14px;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);align-items:start}.admin-global-form,.admin-global-list{display:grid;gap:12px}.admin-global-form{padding:14px;border-radius:20px;border:1px solid rgba(255,255,255,.12);background:#ffffff14}.admin-global-form .field span{color:#eef6ffbd}.admin-global-form input,.admin-global-form select{border-color:#ffffff29;background:#fffffff0}.admin-global-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px;border-radius:18px;border:1px solid rgba(255,214,122,.22);background:#ffffff13}.admin-global-row.is-principal{border-color:rgba(var(--brand-green-rgb),.58);background:linear-gradient(135deg,rgba(var(--brand-green-rgb),.16),rgba(var(--brand-blue-rgb),.08)),#ffffff16}.admin-global-row-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;color:#27190a;background:linear-gradient(180deg,#ffe7a8,#d99d32);font-family:var(--font-display);font-weight:900}.admin-global-row div:not(.admin-global-row-avatar){display:grid;gap:3px;min-width:0}.admin-global-row span,.admin-global-row small{color:#eef6ffad;overflow-wrap:anywhere}.admin-global-row small{font-weight:800}.admin-principal-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:7px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#eef6ffd1;font-size:.82rem;font-weight:900}.admin-principal-toggle input{width:18px;height:18px;margin:0;accent-color:var(--brand-green-strong)}.admin-principal-toggle:has(input:checked){border-color:rgba(var(--brand-green-rgb),.62);background:rgba(var(--brand-green-rgb),.18);color:#1f1606}.admin-principal-toggle:has(input:disabled:not(:checked)){opacity:.58}.admin-constellation-map{position:relative;min-height:640px;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 8% 18%,rgba(255,255,255,.16) 0 1px,transparent 1.5px),radial-gradient(circle at 22% 74%,rgba(255,255,255,.12) 0 1px,transparent 1.5px),radial-gradient(circle at 43% 30%,rgba(var(--brand-pink-rgb),.18) 0 1px,transparent 1.6px),radial-gradient(circle at 63% 12%,rgba(255,255,255,.16) 0 1px,transparent 1.5px),radial-gradient(circle at 87% 68%,rgba(var(--brand-green-rgb),.18) 0 1px,transparent 1.6px),radial-gradient(circle at 52% 92%,rgba(255,255,255,.12) 0 1px,transparent 1.5px),linear-gradient(180deg,#ffffff09,#ffffff03)}.admin-constellation-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.admin-constellation-global-line{stroke:#ffd67a8c;stroke-width:.34;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 8px rgba(255,214,122,.28))}.admin-constellation-admins{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.admin-constellation-admin-node,.admin-constellation-group-node{position:absolute;left:var(--node-x);top:var(--node-y);transform:translate(-50%,-50%)}.admin-constellation-admin-node{width:min(184px,26vw);display:grid;justify-items:center;gap:8px;padding:15px 14px 14px;border-radius:26px;border:1px solid rgba(255,214,122,.58);background:radial-gradient(circle at 50% 24%,rgba(255,226,154,.22),transparent 52%),#141b30e6;text-align:center;box-shadow:0 0 0 5px #ffd67a14,0 0 0 12px #ffd67a09,0 22px 48px #00000042;pointer-events:auto}.admin-constellation-admin-node.is-placeholder{opacity:.72}.admin-global-node-mark{position:absolute;top:-14px;right:18px}.admin-principal-node-check{position:absolute;top:17px;left:18px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(180deg,#7be06f,#2f9e45);box-shadow:0 0 0 3px #7be06f2e,0 10px 20px #2f9e4547}.admin-principal-node-check:after{content:"";width:10px;height:6px;border-left:3px solid #ffffff;border-bottom:3px solid #ffffff;transform:rotate(-45deg) translate(1px,-1px)}.admin-constellation-avatar{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;color:#27190a;background:linear-gradient(180deg,#fff2bf,#dba642);font-family:var(--font-display);font-size:1.24rem;font-weight:900;box-shadow:inset 0 1px #ffffff94,0 0 24px #ffd67a4d}.admin-constellation-admin-node div:not(.admin-constellation-avatar){display:grid;gap:3px;min-width:0}.admin-constellation-admin-node span:not(.admin-global-badge):not(.admin-global-node-mark){color:#eef6ffad;font-size:.82rem;overflow-wrap:anywhere}.admin-global-badge{display:inline-flex;min-height:28px;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;background:#ffe29a24;color:#ffe6a4;font-size:.78rem;font-weight:900}.admin-constellation-group-node{--constellation-rgb: var(--brand-blue-rgb);z-index:1;width:clamp(210px,24vw,260px);display:grid;gap:12px;padding:16px;border-radius:24px;border:1px solid rgba(var(--constellation-rgb),.42);background:radial-gradient(circle at 18% 18%,rgba(var(--constellation-rgb),.2),transparent 46%),#11192ddb;box-shadow:0 20px 42px #0000003d,0 0 28px rgba(var(--constellation-rgb),.1)}.admin-constellation-group-node.tone-blue{--constellation-rgb: var(--brand-blue-rgb)}.admin-constellation-group-node.tone-green{--constellation-rgb: var(--brand-green-rgb)}.admin-constellation-group-node.tone-orange{--constellation-rgb: var(--brand-orange-rgb)}.admin-constellation-group-node.tone-purple{--constellation-rgb: var(--brand-purple-rgb)}.admin-constellation-group-node.tone-rose{--constellation-rgb: var(--brand-pink-rgb)}.admin-constellation-group-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.admin-constellation-group-head h3{margin:2px 0 0;font-size:1.18rem;line-height:1.08}.admin-constellation-group-head .status-chip{background:#ffffff14;border-color:rgba(var(--constellation-rgb),.34);color:#eef6ffd1;white-space:nowrap}.admin-constellation-teacher-list{display:grid;gap:8px}.admin-constellation-teacher-node{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;min-height:46px;padding:7px 8px;border-radius:16px;background:#ffffff10;border:1px dashed rgba(255,255,255,.14)}.admin-constellation-teacher-node.is-primary{border-style:solid;border-color:rgba(var(--constellation-rgb),.44);background:rgba(var(--constellation-rgb),.12)}.admin-constellation-teacher-node>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(var(--constellation-rgb),.22);color:#fff;font-size:.78rem;font-weight:900}.admin-constellation-teacher-node div{display:grid;gap:2px;min-width:0}.admin-constellation-teacher-node strong,.admin-constellation-teacher-node small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-constellation-teacher-node strong{font-size:.88rem}.admin-constellation-teacher-node small{color:#eef6ff9e;font-size:.76rem}.admin-constellation-more{justify-self:start;display:inline-flex;padding:5px 9px;border-radius:999px;background:#ffffff14;color:#eef6ffb8;font-size:.78rem;font-weight:800}.admin-ops-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}.admin-list-panel{display:grid;gap:18px}.admin-list-stack{display:grid;gap:12px}.admin-list-row{--frame-accent: var(--admin-blue-strong);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:22px;background:linear-gradient(180deg,#9cc8eb2e,#fffffff5);border:1px solid rgba(12,91,166,.12);box-shadow:inset 0 1px #0c5ba60d}.admin-list-panel:last-child .admin-list-row{--frame-accent: var(--admin-purple-strong);background:linear-gradient(180deg,#b891bd2e,#fffffff5);border-color:#5f3f9329}.admin-stat-card,.admin-signal-card,.admin-signal-grid div{position:relative;overflow:hidden}.admin-stat-card:before,.admin-signal-card:before,.admin-signal-grid div:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid transparent;border-top-color:var(--frame-accent);border-left-color:var(--frame-accent);border-right-color:var(--frame-accent);clip-path:inset(0 0 62% 0 round 24px 24px 0 0);pointer-events:none}.admin-list-row strong{color:var(--surface-deep)}.admin-list-row p{margin:4px 0 0;color:var(--muted)}.admin-dashboard .metric-card:nth-child(1){background:linear-gradient(180deg,#9cc8eb4d,#fffffff5)}.admin-dashboard .metric-card:nth-child(1):before{background:var(--admin-blue-strong)}.admin-dashboard .metric-card:nth-child(2){background:linear-gradient(180deg,#bbd2534d,#fffffff5)}.admin-dashboard .metric-card:nth-child(2):before{background:var(--admin-green-strong)}.admin-dashboard .metric-card:nth-child(3){background:linear-gradient(180deg,#edbad257,#fffffff5)}.admin-dashboard .metric-card:nth-child(3):before{background:var(--admin-pink-strong)}.admin-dashboard .metric-card:nth-child(4){background:linear-gradient(180deg,#f3bd4457,#fffffff5)}.admin-dashboard .metric-card:nth-child(4):before{background:var(--admin-orange-strong)}.admin-dashboard .primary-link{border-color:#0c5ba629;color:var(--admin-blue-strong)}.admin-dashboard .primary-link.secondary{border-color:#5f3f9324;color:var(--surface-deep);background:#ffffffe0}.teacher-dashboard{--teacher-blue-soft: var(--brand-blue-soft);--teacher-green-soft: var(--brand-green-soft);--teacher-pink-soft: var(--brand-pink-soft);--teacher-purple-soft: var(--brand-purple-soft);--teacher-orange-soft: var(--brand-orange-soft);--teacher-blue-strong: var(--brand-blue-strong);--teacher-green-strong: var(--brand-green-strong);--teacher-pink-strong: var(--brand-pink-strong);--teacher-purple-strong: var(--brand-purple-strong);--teacher-orange-strong: var(--brand-orange-strong);gap:20px}.teacher-hero{position:relative;display:grid;gap:20px;grid-template-columns:minmax(0,1fr);padding:26px;border-radius:34px;background:linear-gradient(135deg,#bbd25357,#fffffff5 26%,#9cc8eb33 56%,#edbad22e 78%,#b891bd38);border:1px solid rgba(107,182,87,.1);box-shadow:0 30px 80px #0f172a1a,inset 0 1px #fffc;overflow:hidden}.teacher-hero:before{content:"";position:absolute;inset:auto -70px -120px auto;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(107,182,87,.18),transparent 56%),radial-gradient(circle at 36% 36%,rgba(12,91,166,.12),transparent 70%);filter:blur(14px);pointer-events:none}.teacher-hero:after{content:"";position:absolute;inset:18px auto auto -48px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(107,182,87,.16),transparent 52%),radial-gradient(circle at 65% 40%,rgba(229,131,59,.12),transparent 66%);filter:blur(14px);pointer-events:none}.teacher-hero-copy,.teacher-hero-visual{position:relative;z-index:1}.teacher-hero-copy{display:grid;gap:18px;align-content:start}.teacher-hero-copy h1{max-width:11ch;margin:0;font-size:clamp(2.2rem,5vw,4rem);line-height:.96;letter-spacing:-.05em;color:var(--surface-deep)}.teacher-hero-copy .lead{max-width:62ch;margin:0;color:var(--hero-copy)}.teacher-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.teacher-ghost-link{border-color:#6bb65724;color:var(--teacher-green-strong);box-shadow:0 10px 24px #6bb65714}.teacher-stat-strip{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-stat-card{--frame-accent: var(--teacher-green-strong);padding:18px 18px 16px;border-radius:24px;background:linear-gradient(180deg,#bbd25352,#ffffffeb);border:1px solid rgba(107,182,87,.16);box-shadow:0 18px 38px #0f172a0f;display:grid;gap:8px;position:relative;overflow:hidden}.teacher-stat-card:nth-child(2){--frame-accent: var(--teacher-blue-strong);background:linear-gradient(180deg,#9cc8eb52,#ffffffeb);border-color:#0c5ba629}.teacher-stat-card:nth-child(3){--frame-accent: var(--teacher-purple-strong);background:linear-gradient(180deg,#b891bd4d,#ffffffeb);border-color:#5f3f9329}.teacher-stat-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid transparent;border-top-color:var(--frame-accent);border-left-color:var(--frame-accent);border-right-color:var(--frame-accent);clip-path:inset(0 0 62% 0 round 24px 24px 0 0);pointer-events:none}.teacher-stat-card span{font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:800}.teacher-stat-card strong{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.3rem);line-height:1;color:var(--surface-deep)}.teacher-hero-visual{display:none;gap:16px;align-content:start}.teacher-quick-card{display:grid;gap:14px;padding:22px;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#f8fafff5),linear-gradient(135deg,#bbd2532e,#9cc8eb1f);border:1px solid rgba(107,182,87,.12);box-shadow:0 22px 48px #0f172a14}.teacher-quick-list{display:grid;gap:12px}.teacher-quick-link{--frame-accent: var(--teacher-green-strong);display:grid;gap:6px;padding:16px 18px;border-radius:22px;text-decoration:none;background:linear-gradient(180deg,#bbd25347,#fffffff5);border:1px solid rgba(107,182,87,.16);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.teacher-quick-link:nth-child(2){--frame-accent: var(--teacher-blue-strong);background:linear-gradient(180deg,#9cc8eb47,#fffffff5);border-color:#0c5ba629}.teacher-quick-link:nth-child(3){--frame-accent: var(--teacher-purple-strong);background:linear-gradient(180deg,#b891bd47,#fffffff5);border-color:#5f3f9329}.teacher-quick-link:nth-child(4){--frame-accent: var(--teacher-orange-strong);background:linear-gradient(180deg,#f3bd444d,#fffffff5);border-color:#e5833b29}.teacher-quick-link:nth-child(5){--frame-accent: var(--teacher-green-strong);background:linear-gradient(180deg,#bbd25357,#fffffff5)}.teacher-quick-link:nth-child(6){--frame-accent: var(--teacher-pink-strong);background:linear-gradient(180deg,#edbad257,#fffffff5);border-color:#d65f9c29}.teacher-quick-link:hover{transform:translateY(-1px);border-color:var(--frame-accent);box-shadow:0 16px 30px #0f172a14}.teacher-quick-link strong{color:var(--surface-deep)}.teacher-summary-panel .metric-card:nth-child(1){background:linear-gradient(180deg,#bbd2534d,#fffffff5)}.teacher-summary-panel .metric-card:nth-child(1):before{background:var(--teacher-green-strong)}.teacher-summary-panel .metric-card:nth-child(2){background:linear-gradient(180deg,#9cc8eb4d,#fffffff5)}.teacher-summary-panel .metric-card:nth-child(2):before{background:var(--teacher-blue-strong)}.teacher-summary-panel .metric-card:nth-child(3){background:linear-gradient(180deg,#f3bd444d,#fffffff5)}.teacher-summary-panel .metric-card:nth-child(3):before{background:var(--teacher-orange-strong)}.teacher-summary-panel .metric-card:nth-child(4){background:linear-gradient(180deg,#b891bd4d,#fffffff5)}.teacher-summary-panel .metric-card:nth-child(4):before{background:var(--teacher-purple-strong)}.teacher-dashboard .primary-link{border-color:#6bb65729;color:var(--teacher-green-strong)}.teacher-dashboard .primary-link.secondary{border-color:#0c5ba624;color:var(--surface-deep);background:#ffffffe0}.teacher-group-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-group-card{--frame-accent: var(--teacher-green-strong);min-height:164px;background:linear-gradient(180deg,#bbd2533d,#fffffff5);border-color:#6bb65729}.teacher-ops-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.teacher-list-panel{display:grid;gap:18px}.teacher-child-enrollment-page{max-width:920px;margin-inline:auto}.teacher-child-form{display:grid;gap:18px}.teacher-child-success{display:block}.family-registration-page{--family-blue: var(--brand-blue-strong);--family-purple: var(--brand-purple-strong);--family-green: var(--brand-green-strong);--family-pink: var(--brand-pink-strong);--family-orange: var(--brand-orange);--family-ink: #192131;min-height:100vh;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,var(--family-blue) 0 38%,var(--family-purple) 38% 63%,var(--family-pink) 63% 82%,var(--family-orange) 82% 100%);background-color:var(--family-blue);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal;color:var(--family-ink);font-family:var(--font-sans)}.family-registration-shell{width:min(100%,1180px);margin-inline:auto;display:grid;grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);gap:20px;align-items:start}.family-registration-hero,.family-registration-form-panel{border:0;border-radius:28px;box-shadow:0 24px 56px #0f172a33}.family-registration-hero{position:sticky;top:24px;display:grid;gap:22px;padding:28px;overflow:hidden;background:linear-gradient(180deg,#00000005,#00000024),var(--family-blue);color:#fff}.family-registration-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-naranja.svg);background-size:720px;background-position:center bottom;opacity:.34;mix-blend-mode:screen;pointer-events:none}.family-registration-hero:after{content:"";position:absolute;inset:auto 0 0;height:12px;background:linear-gradient(90deg,var(--family-green) 0 28%,var(--family-orange) 28% 52%,var(--family-pink) 52% 76%,var(--family-purple) 76% 100%);pointer-events:none}.family-registration-hero>*{position:relative}.family-registration-logo{width:min(180px,56vw);height:auto;display:block;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.family-registration-hero h1{margin:6px 0 10px;font-family:var(--font-display);font-size:clamp(2rem,5vw,3.6rem);line-height:.96;color:#fff;letter-spacing:0}.family-registration-hero .eyebrow,.family-registration-hero .lead{color:#ffffffe6}.family-registration-hero .primary-link,.family-registration-hero .primary-link.secondary{width:fit-content;background:#fff;border:0;color:var(--family-blue);box-shadow:0 16px 32px #0f172a2e}.family-registration-summary,.family-result-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.family-registration-summary article{position:relative;overflow:hidden;min-width:0;padding:14px;border-radius:18px;background:#fffffff0;border:0;box-shadow:0 12px 26px #0f172a24}.family-registration-summary article:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--family-green)}.family-registration-summary article:nth-child(2):before{background:var(--family-pink)}.family-registration-summary article:nth-child(3):before{background:var(--family-orange)}.family-registration-summary strong{display:block;font-family:var(--font-display);font-size:2rem;line-height:1;color:var(--family-ink)}.family-registration-summary span{display:block;margin-top:6px;color:#465367;font-size:.82rem;font-weight:var(--font-weight-black);line-height:1.2}.family-registration-form-panel{padding:clamp(18px,3vw,28px);background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--family-ink)}.family-registration-form,.family-form-section,.family-card-grid,.family-child-list{display:grid;gap:18px}.family-form-section{padding-top:4px}.family-registration-page .section-header h2{margin:2px 0 0;font-family:var(--font-display);color:var(--family-purple);letter-spacing:0}.family-registration-page .eyebrow{color:var(--family-blue);font-weight:var(--font-weight-black)}.family-registration-page .family-registration-hero .eyebrow{color:#ffffffe6}.family-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.family-form-card,.family-result-card{--family-card-accent: var(--family-blue);position:relative;overflow:hidden;min-width:0;padding:18px;border-radius:22px;border:2px solid rgba(19,21,29,.06);background:#fff;box-shadow:0 16px 34px #0f172a1a}.family-form-card:before,.family-result-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--family-card-accent)}.family-form-card{display:grid;gap:16px}.family-card-grid .family-form-card:nth-child(1){--family-card-accent: var(--family-pink)}.family-card-grid .family-form-card:nth-child(2){--family-card-accent: var(--family-purple)}.family-child-card{--family-card-accent: var(--family-green);background:#fff}.family-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.family-card-head h3,.family-result-card h3{margin:4px 0 0;color:var(--family-ink);overflow-wrap:anywhere}.radio-chip,.toggle-row{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--family-ink);font-weight:800}.radio-chip{padding:8px 12px;border-radius:999px;border:2px solid rgba(var(--brand-purple-rgb),.22);background:var(--brand-purple-soft);white-space:nowrap}.toggle-row{align-self:end;padding:12px 0}.radio-chip input,.toggle-row input{width:18px;height:18px;accent-color:var(--family-pink)}.family-group-preview{display:grid;gap:4px;min-height:88px;padding:14px;border-radius:18px;border:0;background:var(--family-green);color:#fff;align-content:center;box-shadow:0 14px 28px rgba(var(--brand-green-rgb),.2)}.family-group-preview.warning{background:var(--family-orange);color:var(--family-ink);box-shadow:0 14px 28px rgba(var(--brand-orange-rgb),.2)}.family-group-preview span,.family-group-preview small{color:#ffffffe6;font-weight:800}.family-group-preview strong{color:#fff;overflow-wrap:anywhere}.family-group-preview.warning span,.family-group-preview.warning small,.family-group-preview.warning strong{color:var(--family-ink)}.family-registration-actions{display:flex;justify-content:flex-end}.family-registration-actions .primary-button{min-width:min(100%,240px);background:var(--family-purple);box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.26)}.family-registration-page .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.18);background:#fff;color:var(--family-blue);font-weight:var(--font-weight-black)}.family-registration-page .ghost-button.danger{border-color:rgba(var(--brand-pink-rgb),.26);background:var(--brand-pink-soft);color:#a9215b}.status-banner{padding:14px 16px;border-radius:18px;border:0;background:var(--family-blue);color:#fff;font-weight:800}.family-registration-done{grid-template-columns:minmax(280px,.5fr) minmax(0,1fr)}.family-registration-done .family-registration-form-panel{display:grid;gap:18px}.family-result-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.family-result-card{display:grid;gap:12px}.family-result-card:nth-child(4n+1){--family-card-accent: var(--family-blue)}.family-result-card:nth-child(4n+2){--family-card-accent: var(--family-green)}.family-result-card:nth-child(4n+3){--family-card-accent: var(--family-pink)}.family-result-card:nth-child(4n+4){--family-card-accent: var(--family-orange)}.credential-list{display:grid;gap:10px;margin:0}.credential-list div{display:grid;gap:2px}.credential-list dt{color:#59667a;font-size:.84rem;font-weight:var(--font-weight-bold)}.credential-list dd{margin:0;color:var(--family-ink);font-weight:900;overflow-wrap:anywhere}.family-registration-page .field span,.family-registration-page .helper-copy{color:#566278}.family-registration-page .field input,.family-registration-page .field select,.family-registration-page .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff}.family-registration-page .field input:focus,.family-registration-page .field select:focus,.family-registration-page .field textarea:focus{border-color:var(--family-pink);box-shadow:0 0 0 4px rgba(var(--brand-pink-rgb),.14)}.congress-registration-page{--congress-space: #070817;--congress-space-2: #10104a;--congress-space-3: #33146c;--congress-cyan: #00dfff;--congress-gold: #ffd35c;--congress-orange: #f36f2d;--congress-purple: #8b4dff;--congress-pink: #ff4fc8;--congress-paper: #fbfdff;--congress-ink: #121526;min-height:100vh;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:radial-gradient(circle at 12% 18%,rgba(255,211,92,.9) 0 2px,transparent 3px),radial-gradient(circle at 28% 62%,rgba(0,223,255,.78) 0 1px,transparent 2px),radial-gradient(circle at 72% 14%,rgba(255,79,200,.72) 0 2px,transparent 3px),radial-gradient(circle at 84% 76%,rgba(255,255,255,.74) 0 1px,transparent 2px),linear-gradient(135deg,var(--congress-space) 0%,var(--congress-space-2) 42%,var(--congress-space-3) 72%,#0a0713 100%);background-size:220px 220px,180px 180px,260px 260px,210px 210px,auto;color:#f8fbff;font-family:var(--font-sans)}.congress-registration-shell{width:min(100%,1200px);margin-inline:auto;display:grid;grid-template-columns:minmax(340px,.5fr) minmax(0,1fr);gap:20px;align-items:start}.congress-registration-hero,.congress-registration-panel,.congress-mission-card,.congress-traveler-card,.congress-ticket-card,.congress-boarding-ticket{border-radius:8px}.congress-registration-hero{position:sticky;top:24px;min-height:calc(100vh - 48px);display:grid;align-content:space-between;gap:24px;padding:clamp(22px,3vw,32px);overflow:hidden;border:1px solid rgba(0,223,255,.36);background:radial-gradient(circle at 78% 18%,#70d8ff 0 18px,#7558ff 19px 38px,transparent 39px),radial-gradient(circle at 22% 76%,#f36f2d 0 16px,#9d44ff 17px 48px,transparent 49px),linear-gradient(155deg,#090a1ff0,#12134ce6 48%,#351368e6);box-shadow:inset 0 0 0 1px #ffffff0f,0 28px 70px #00000061,0 0 42px #00dfff24}.congress-registration-hero:before{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid rgba(255,255,255,.26);background:linear-gradient(90deg,rgba(0,223,255,.42),transparent 28%,transparent 72%,rgba(255,211,92,.42)) top / 100% 2px no-repeat,linear-gradient(90deg,rgba(255,79,200,.32),transparent 24%,transparent 76%,rgba(0,223,255,.32)) bottom / 100% 2px no-repeat,repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 28px);pointer-events:none}.congress-registration-hero:after{content:"";position:absolute;right:-60px;bottom:14%;width:210px;height:210px;border-radius:50%;background:repeating-linear-gradient(145deg,rgba(255,255,255,.18) 0 7px,transparent 7px 18px),radial-gradient(circle,#7adfff 0,#7adfff 32%,#5666ff 33%,#5666ff 64%,#1a1d55 65%,#1a1d55);box-shadow:0 0 46px #00dfff4d,-36px -90px 0 -72px var(--congress-gold);opacity:.95;pointer-events:none}.congress-registration-hero>*{position:relative;z-index:1}.congress-registration-logo-link{width:fit-content}.congress-registration-logo{width:min(164px,52vw);height:auto;display:block;filter:drop-shadow(0 14px 24px rgba(0,0,0,.26))}.congress-flight-strip{display:block;width:fit-content;max-width:100%;padding:8px 10px;border:1px solid rgba(255,211,92,.58);background:#0708179e;color:var(--congress-gold);font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.72rem;font-weight:var(--font-weight-black);letter-spacing:.08em;line-height:1.35;overflow-wrap:anywhere;text-transform:uppercase}.congress-registration-hero h1{margin:8px 0 10px;width:min(100%,10.8ch);color:#fff;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(2.1rem,4.1vw,3.45rem);font-weight:var(--font-weight-black);letter-spacing:0;line-height:1.08;overflow-wrap:normal;text-transform:uppercase;word-break:normal}.congress-registration-hero .eyebrow{color:var(--congress-gold)}.congress-registration-hero .lead{max-width:34ch;color:#ffffffe6;font-size:1.04rem;font-weight:var(--font-weight-bold)}.congress-registration-hero .primary-link{width:fit-content;border:1px solid rgba(255,211,92,.7);background:linear-gradient(135deg,#ffd35c,#f36f2d);color:#111116;box-shadow:0 18px 34px #f36f2d52,0 0 24px #ffd35c3d}.congress-registration-hero .primary-link.secondary{background:#ffffff1a;color:#fff;box-shadow:none}.congress-registration-summary{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.congress-registration-summary article{min-width:0;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#070817a8}.congress-registration-summary strong{display:block;color:var(--congress-gold);font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:1.55rem;line-height:1}.congress-registration-summary span{display:block;margin-top:6px;color:#ffffffd1;font-size:.8rem;font-weight:var(--font-weight-black);line-height:1.2}.congress-registration-panel{display:grid;gap:18px;min-width:0;padding:clamp(18px,3vw,28px);border:1px solid rgba(0,223,255,.42);background:radial-gradient(circle at 8% 12%,rgba(255,211,92,.95) 0 2px,transparent 3px),radial-gradient(circle at 22% 78%,rgba(0,223,255,.74) 0 1px,transparent 2px),radial-gradient(circle at 82% 18%,rgba(255,255,255,.8) 0 1px,transparent 2px),radial-gradient(circle at 92% 72%,rgba(255,79,200,.72) 0 2px,transparent 3px),repeating-linear-gradient(90deg,rgba(0,223,255,.08) 0 1px,transparent 1px 34px),linear-gradient(155deg,#06091afa,#0c103af5,#2b115cf5);background-size:180px 180px,220px 220px,170px 170px,260px 260px,auto,auto;color:#f8fbff;box-shadow:inset 0 0 0 1px #ffffff0f,0 28px 70px #0000005c,0 0 42px #00dfff29}.congress-registration-form,.congress-traveler-list,.congress-boarding-ticket-list{display:grid;gap:18px}.congress-registration-page .section-header h2{margin:2px 0 0;color:var(--congress-space-2);font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(1.22rem,2vw,1.7rem);letter-spacing:0;text-transform:uppercase}.congress-registration-page .eyebrow{color:var(--congress-purple);font-weight:var(--font-weight-black)}.congress-registration-panel>.section-header h2{color:#fff}.congress-registration-panel>.section-header .eyebrow{color:var(--congress-gold)}.congress-form-orbit-deck{position:relative;display:grid;gap:14px;grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr);padding:14px;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 34%),radial-gradient(circle at 18% 20%,rgba(0,223,255,.28),transparent 34%),linear-gradient(135deg,#080b1ff5,#0d1740f0 46%,#210e4cf0);box-shadow:inset 0 0 0 1px #00dfff29,0 18px 34px #00000038}.congress-form-orbit-deck:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(255,255,255,.18);pointer-events:none}.congress-form-orbit-deck:after{content:"";position:absolute;right:22px;top:18px;width:72px;height:72px;border-radius:50%;background:repeating-linear-gradient(145deg,rgba(255,255,255,.18) 0 4px,transparent 4px 12px),radial-gradient(circle,#7adfff 0 32%,#6d55ff 33% 66%,transparent 67%);opacity:.72;pointer-events:none}.congress-id-preview-card,.congress-id-scan-card{position:relative;z-index:1;min-width:0;overflow:hidden;border-radius:8px;border:1px solid rgba(221,230,244,.6);background:linear-gradient(180deg,#fffffff0,#e1e9f6e6),repeating-linear-gradient(90deg,rgba(0,93,172,.08) 0 1px,transparent 1px 18px);color:var(--congress-ink);box-shadow:inset 0 0 0 3px #08234e14,0 14px 28px #0000003d}.congress-id-preview-card{display:grid;grid-template-columns:minmax(116px,.34fr) minmax(0,1fr) 48px;gap:14px;align-items:stretch;padding:14px}.congress-id-preview-card:before,.congress-id-scan-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#08234e 0 12%,transparent 12% 88%,#08234e 88% 100%),linear-gradient(90deg,rgba(0,93,172,.24),transparent 42%,rgba(0,223,255,.18));opacity:.9;pointer-events:none}.congress-id-window{position:relative;z-index:1;display:grid;place-items:center;min-height:142px;border:5px solid rgba(235,240,248,.96);border-radius:50%;background:radial-gradient(circle at 50% 44%,rgba(255,255,255,.94) 0 20%,rgba(210,232,255,.82) 21% 34%,transparent 35%),radial-gradient(circle at 48% 44%,rgba(0,223,255,.42) 0 34%,rgba(9,19,54,.76) 35% 62%,transparent 63%),linear-gradient(135deg,#081a3c,#122b6b 48%,#0a0c21);box-shadow:inset 0 0 0 7px #ffffff70,inset 0 0 28px #00dfff57,0 0 24px #00dfff29}.congress-id-window:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;border:2px solid rgba(255,255,255,.56);background:linear-gradient(120deg,transparent 0 44%,rgba(255,255,255,.72) 45% 51%,transparent 52%)}.congress-id-window span{position:relative;z-index:1;color:#fff;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(1.65rem,4vw,2.55rem);font-weight:var(--font-weight-black);letter-spacing:.02em;text-shadow:0 0 18px rgba(0,223,255,.58)}.congress-id-copy{position:relative;z-index:1;display:grid;align-content:center;gap:10px;min-width:0}.congress-id-copy>span,.congress-id-scan-card>span{color:#0a3470;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.76rem;font-weight:var(--font-weight-black);letter-spacing:.09em;text-transform:uppercase}.congress-id-copy strong{color:#08234e;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(1.45rem,3.5vw,2.65rem);font-weight:var(--font-weight-black);line-height:.95;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;text-wrap:balance;word-break:normal}.congress-id-copy dl{display:grid;gap:8px;margin:0}.congress-id-copy div{display:grid;gap:2px;grid-template-columns:minmax(110px,.42fr) minmax(0,1fr);align-items:baseline;border-top:1px dashed rgba(8,35,78,.28);padding-top:7px}.congress-id-copy dt,.congress-id-copy dd{margin:0;overflow-wrap:anywhere}.congress-id-copy dt{color:#5a667d;font-size:.78rem;font-weight:var(--font-weight-black);letter-spacing:.04em;text-transform:uppercase}.congress-id-copy dd{color:#0b3d82;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.9rem;font-weight:var(--font-weight-black)}.congress-id-barcode{position:relative;z-index:1;align-self:end;width:100%;min-height:104px;border-radius:4px;background:repeating-linear-gradient(90deg,#111116 0 3px,transparent 3px 7px,#111116 7px 9px,transparent 9px 14px,#111116 14px 18px,transparent 18px 23px)}.congress-id-scan-card{display:grid;place-items:center;gap:9px;padding:16px;text-align:center}.congress-id-mini-qr{position:relative;z-index:1;width:min(132px,70%);aspect-ratio:1;border:8px solid #ffffff;border-radius:8px;background:linear-gradient(90deg,#111116 16px,transparent 16px) 10px 10px / 36px 36px no-repeat,linear-gradient(#111116 16px,transparent 16px) 10px 10px / 36px 36px no-repeat,linear-gradient(90deg,#111116 16px,transparent 16px) right 10px top 10px / 36px 36px no-repeat,linear-gradient(#111116 16px,transparent 16px) right 10px top 10px / 36px 36px no-repeat,linear-gradient(90deg,#111116 16px,transparent 16px) left 10px bottom 10px / 36px 36px no-repeat,linear-gradient(#111116 16px,transparent 16px) left 10px bottom 10px / 36px 36px no-repeat,repeating-linear-gradient(90deg,#111116 0 7px,transparent 7px 14px),repeating-linear-gradient(0deg,transparent 0 8px,rgba(17,17,22,.84) 8px 14px);background-color:#fff;box-shadow:0 12px 22px #0f172a33}.congress-id-scan-card strong{position:relative;z-index:1;color:#08234e;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:1.05rem;font-weight:var(--font-weight-black);letter-spacing:.04em}.congress-id-scan-card small{position:relative;z-index:1;color:#5a667d;font-weight:var(--font-weight-black)}.congress-mission-card,.congress-traveler-card,.congress-ticket-card{position:relative;overflow:hidden;padding:18px;border:2px solid #dbe4ee;background:radial-gradient(circle at 21px 21px,#ffffff 0 2px,#8490a2 3px 5px,#30394a 6px 7px,transparent 8px),radial-gradient(circle at calc(100% - 21px) 21px,#ffffff 0 2px,#8490a2 3px 5px,#30394a 6px 7px,transparent 8px),radial-gradient(circle at 21px calc(100% - 21px),#ffffff 0 2px,#8490a2 3px 5px,#30394a 6px 7px,transparent 8px),radial-gradient(circle at calc(100% - 21px) calc(100% - 21px),#ffffff 0 2px,#8490a2 3px 5px,#30394a 6px 7px,transparent 8px),linear-gradient(118deg,rgba(255,255,255,.82) 0 10%,transparent 11% 36%,rgba(255,255,255,.52) 45%,transparent 54% 78%,rgba(46,57,74,.2) 100%),repeating-linear-gradient(170deg,rgba(255,255,255,.24) 0 1px,rgba(80,93,112,.07) 1px 2px,transparent 2px 8px),repeating-linear-gradient(90deg,#ffffff42 0,#ffffff42 2px,#fff0 2px,#fff0 26px,#39465a29 26px,#39465a29 30px,#ffffff29 30px,#ffffff29 36px),linear-gradient(180deg,#fbfdff,#c5ceda 18%,#eef3f8 34%,#9faab9 52%,#f8fbff 68%,#b1bdca);background-blend-mode:normal,normal,normal,normal,screen,overlay,multiply,normal;box-shadow:inset 0 2px #fffffff2,inset 0 -2px #404c5e7a,inset 0 0 0 5px #2a374a1f,inset 16px 0 34px #ffffff47,inset -16px 0 36px #2d394c38,0 2px #ffffff52,0 20px 42px #00000057;clip-path:polygon(0 18px,18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,18px 100%,0 calc(100% - 18px))}.congress-mission-card:before,.congress-traveler-card:before,.congress-ticket-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#7c8796,#f5f8fb 48%,#6f7b8c)}.congress-mission-card:after,.congress-traveler-card:after,.congress-ticket-card:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(47,59,77,.32);background:linear-gradient(120deg,transparent 0 26%,rgba(255,255,255,.42) 33%,transparent 42% 76%,rgba(20,31,48,.16) 100%),repeating-linear-gradient(0deg,transparent 0 10px,rgba(28,39,56,.055) 10px 11px),repeating-linear-gradient(90deg,transparent 0 34px,rgba(255,255,255,.12) 34px 35px,rgba(43,55,74,.1) 35px 37px);box-shadow:inset 0 0 0 1px #ffffff94,inset 0 0 34px #1824371f;pointer-events:none}.congress-mission-card>*,.congress-traveler-card>*,.congress-ticket-card>*{position:relative;z-index:1}.congress-registration-page .field span,.congress-registration-page .helper-copy{color:#4f5d76;font-weight:var(--font-weight-black)}.congress-registration-page .field input,.congress-registration-page .field select,.congress-registration-page .field textarea{border:2px solid rgba(120,144,174,.32);background:linear-gradient(180deg,#fffffffa,#ebf0f7f5);color:var(--congress-ink);box-shadow:inset 0 2px 6px #08234e1a,inset 0 -1px #ffffffd1,0 1px #ffffffa3}.congress-registration-page .field input:focus,.congress-registration-page .field select:focus,.congress-registration-page .field textarea:focus{border-color:var(--congress-orange);box-shadow:0 0 0 4px #f36f2d29}.congress-registration-page .toggle-row{color:var(--congress-ink)}.congress-registration-page .toggle-row input{accent-color:var(--congress-orange)}.congress-registration-page .ghost-button{border:2px solid rgba(142,160,184,.46);background:linear-gradient(180deg,#fffffff5,#d8e2f0f0),repeating-linear-gradient(90deg,rgba(8,35,78,.06) 0 1px,transparent 1px 10px);color:var(--congress-space-2);font-weight:var(--font-weight-black);box-shadow:inset 0 1px #ffffffe0,inset 0 -2px #7890ae2e,0 8px 18px #08234e1f}.congress-registration-page .ghost-button.danger{border-color:#ff4fc847;background:#ff4fc81a;color:#9b125f}.congress-traveler-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.congress-traveler-head h3,.congress-ticket-card h3,.congress-boarding-ticket h3{margin:4px 0 0;color:var(--congress-ink);overflow-wrap:anywhere}.congress-cabin-preview{display:grid;gap:4px;min-height:88px;padding:14px;border-radius:8px;border:1px solid rgba(255,255,255,.62);background:repeating-linear-gradient(90deg,rgba(255,255,255,.16) 0 5px,transparent 5px 13px),linear-gradient(135deg,#00dfff47,#8b4dff33),linear-gradient(180deg,#141a58,#0d123f);color:#fff;align-content:center;box-shadow:inset 0 1px #ffffff75,inset 0 -10px 18px #00000029,0 8px 18px #08234e24}.congress-cabin-preview.warning{border-color:#ffffffad;background:repeating-linear-gradient(90deg,rgba(255,255,255,.18) 0 6px,transparent 6px 14px),linear-gradient(135deg,#ffd35ceb,#f36f2de0);color:#18110a}.congress-cabin-preview span,.congress-cabin-preview small{color:inherit;font-weight:var(--font-weight-black)}.congress-cabin-preview strong{color:inherit;overflow-wrap:anywhere}.congress-registration-actions{display:flex;justify-content:flex-end}.congress-registration-actions .primary-button,.congress-print-actions .primary-button{min-width:min(100%,260px);border:1px solid rgba(255,211,92,.78);background:linear-gradient(90deg,rgba(0,223,255,.26),transparent 32%),linear-gradient(135deg,#ffd35c,#f36f2d);color:#111116;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-weight:var(--font-weight-black);text-transform:uppercase;box-shadow:0 18px 34px #f36f2d3d,0 0 28px #00dfff2e}.congress-print-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(0,223,255,.2);border-radius:8px;background:#10104a0f}.congress-registration-indicator{display:inline-flex;align-items:center;min-height:34px;width:fit-content;max-width:100%;padding:7px 10px;border:1px solid rgba(0,223,255,.34);border-radius:999px;background:linear-gradient(135deg,#00dfff2e,#ffd35c3d);color:var(--congress-space-2);font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.74rem;font-weight:var(--font-weight-black);letter-spacing:.04em;line-height:1.2;overflow-wrap:anywhere;text-transform:uppercase}.congress-ticket-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.congress-ticket-card{display:grid;gap:12px}.congress-boarding-ticket{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.32fr);min-height:230px;overflow:hidden;border:1px solid rgba(0,223,255,.48);background:radial-gradient(circle at 16% 18%,#71dfff 0 26px,#5b66ff 27px 54px,transparent 55px),radial-gradient(circle at 88% 72%,#f36f2d 0 18px,#ffd35c 19px 26px,transparent 27px),linear-gradient(135deg,#0a0922,#15155c 46%,#42127b);color:#fff;box-shadow:0 22px 44px #00000038,0 0 34px #00dfff29;break-inside:avoid}.congress-boarding-ticket:before{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border:1px solid rgba(255,255,255,.28);background:linear-gradient(135deg,transparent 0 46%,rgba(0,223,255,.38) 47% 48%,transparent 49%),repeating-linear-gradient(0deg,rgba(255,255,255,.07) 0 1px,transparent 1px 20px);pointer-events:none}.congress-boarding-ticket:after{content:"";position:absolute;top:18px;right:min(32%,196px);bottom:18px;border-left:2px dashed rgba(255,255,255,.46);pointer-events:none}.congress-boarding-ticket-main,.congress-boarding-ticket-side{position:relative;z-index:1}.congress-boarding-ticket-main{display:grid;align-content:space-between;gap:14px;padding:clamp(18px,3vw,28px)}.congress-boarding-ticket-main .eyebrow{color:var(--congress-gold)}.congress-boarding-ticket h3{color:#fff;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(1.35rem,3vw,2.15rem);line-height:1.05;text-transform:uppercase}.congress-ticket-details{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.congress-ticket-details div{min-width:0}.congress-ticket-details dt{color:#ffffffa3;font-size:.72rem;font-weight:var(--font-weight-black);letter-spacing:.08em;text-transform:uppercase}.congress-ticket-details dd{margin:0;color:#fff;font-weight:var(--font-weight-black);overflow-wrap:anywhere}.congress-boarding-ticket .congress-registration-indicator{background:linear-gradient(135deg,#00dfffe6,#ffd35ceb);color:#111116}.congress-boarding-ticket-side{display:grid;place-items:center;gap:8px;padding:18px;background:linear-gradient(180deg,#fffffff5,#e7eefff0),repeating-linear-gradient(90deg,rgba(0,93,172,.08) 0 1px,transparent 1px 12px);color:var(--congress-ink);text-align:center}.congress-boarding-ticket-side span{font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.72rem;font-weight:var(--font-weight-black);letter-spacing:.08em}.congress-boarding-ticket-side img{width:min(150px,100%);height:auto;border:6px solid #ffffff;border-radius:8px;box-shadow:0 10px 24px #0f172a2e}.congress-boarding-ticket-side strong{max-width:100%;font-size:.82rem;overflow-wrap:anywhere}.congress-ticket-qr-placeholder{display:grid;place-items:center;width:min(150px,100%);aspect-ratio:1;border:2px dashed rgba(0,93,172,.28);border-radius:8px;background:#fff;color:#59667a;font-weight:var(--font-weight-black);text-align:center}@media(max-width:980px){.congress-registration-shell,.congress-registration-done{grid-template-columns:1fr}.congress-registration-hero{position:relative;top:auto;min-height:auto}}@media(max-width:700px){.congress-registration-page{padding:0}.congress-registration-shell{gap:0}.congress-registration-hero,.congress-registration-panel{border-radius:0;border-left:0;border-right:0}.congress-registration-summary,.congress-ticket-details,.congress-form-orbit-deck,.congress-id-preview-card{grid-template-columns:1fr}.congress-id-preview-card{gap:12px}.congress-id-window{width:min(180px,62vw);min-height:auto;aspect-ratio:1;justify-self:center}.congress-id-copy div{grid-template-columns:1fr}.congress-id-barcode{min-height:44px}.congress-traveler-head,.congress-registration-actions{align-items:stretch;flex-direction:column}.congress-boarding-ticket{grid-template-columns:1fr}.congress-boarding-ticket:after{display:none}.congress-boarding-ticket-side{border-top:2px dashed rgba(16,16,74,.28)}.congress-registration-actions .primary-button,.congress-print-actions .primary-button{width:100%}}@media print{body:before,.pwa-install-banner,.congress-registration-page .congress-registration-hero,.congress-registration-page .congress-print-actions,.congress-registration-page .congress-ticket-grid,.congress-registration-page .congress-registration-panel>.section-header:first-of-type{display:none}.congress-registration-page{min-height:auto;padding:0;background:#fff;color:#000}.congress-registration-shell,.congress-registration-done{display:block;width:100%;margin:0}.congress-registration-panel{display:block;padding:0;border:0;border-radius:0;background:#fff;box-shadow:none}.congress-registration-panel>.section-header{margin:0 0 8mm}.congress-registration-panel>.section-header .eyebrow{color:#000}.congress-registration-panel>.section-header h2{color:#000}.congress-boarding-ticket-list{gap:8mm}.congress-boarding-ticket{min-height:72mm;border:1px solid #111111;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.congress-boarding-ticket-side img{width:34mm;border-width:2mm;box-shadow:none}}.account-activation-shell{width:min(100%,960px);min-height:calc(100vh - 48px);align-items:center}.account-activation-panel{display:grid;gap:18px}.account-preview-card{--family-card-accent: var(--family-green)}.account-activation-login-link{width:fit-content;background:var(--family-purple);border:0;color:#fff;box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.24)}@media(max-width:980px){.family-registration-shell,.family-registration-done{grid-template-columns:1fr}.family-registration-hero{position:relative;top:auto}.family-card-grid{grid-template-columns:1fr}}@media(max-width:620px){.family-registration-page{padding:0}.family-registration-shell{gap:0}.family-registration-hero,.family-registration-form-panel{border-radius:0;border-left:0;border-right:0}.family-registration-summary{grid-template-columns:1fr}.family-card-head,.family-registration-actions{align-items:stretch;flex-direction:column}.radio-chip{white-space:normal}.family-registration-actions .primary-button{width:100%}}.app-shell .metric-card.warning{border-color:#e5833b47}.action-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.split-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout{display:grid;gap:18px;grid-template-columns:minmax(280px,340px) minmax(0,1fr);min-width:0}.split-side,.split-main{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-content:start;min-width:0}.groups-page-layout{display:grid;gap:18px;min-width:0}.groups-page-layout-create-only{width:min(100%,720px);margin-inline:auto}.groups-directory-panel,.groups-editor-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-content:start;min-width:0}.stack-list{display:grid;gap:12px}.selection-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}.selection-list.compact{gap:10px}.group-directory-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));align-items:stretch}.group-directory-grid .selection-card{min-height:150px;align-content:space-between}.selection-card{width:100%;min-width:0;padding:18px;border-radius:20px;border:1px solid rgba(19,21,29,.06);background:#fffffff0;display:grid;gap:12px;text-align:left;box-shadow:0 14px 28px #0f172a0f}button.selection-card{cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease}button.selection-card:hover{transform:translateY(-1px)}.selection-card.active{border-color:var(--primary);background:linear-gradient(180deg,#f8fbfffa,#fffffff5);box-shadow:0 18px 32px #005dac14}.selection-card.pending{border-style:dashed}.selection-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.selection-card-title p,.selection-card p{margin:0;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.selection-card-meta{display:flex;flex-wrap:wrap;gap:8px}.selection-meta{display:grid;justify-items:end;gap:8px}.admin-teacher-directory-search{margin-bottom:12px}.admin-teacher-directory-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-teacher-directory-main{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-width:0}.admin-teacher-directory-photo{position:relative;width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border-radius:50%;border:1px solid var(--line);background:var(--surface-muted);color:var(--surface-deep);font-weight:900;box-shadow:var(--shadow-xs)}.admin-teacher-directory-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center}.admin-teacher-directory-copy{min-width:0}.admin-teacher-directory-copy strong,.admin-teacher-directory-copy p{overflow-wrap:anywhere}.empty-state-inline{padding:18px;border-radius:20px;border:1px dashed var(--line);background:#ffffffb8}:root[data-theme=dark] .app-shell .empty-state-inline{background:var(--surface);border-color:var(--neon-frame-border);box-shadow:var(--neon-frame-shadow)}.option-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.option-card{padding:14px;border-radius:18px;border:1px solid rgba(19,21,29,.06);background:#fffffff0;display:grid;gap:6px;text-align:left;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}.option-card:hover{transform:translateY(-1px)}.option-card.active{border-color:#5f3f932e;background:linear-gradient(180deg,#faf7fffa,#fffffff5);box-shadow:0 14px 28px #5f3f9314}.option-card strong,.selection-card strong{color:var(--surface-deep);overflow-wrap:anywhere}.form-grid{display:grid;gap:14px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-field-row{display:grid;gap:10px;grid-template-columns:minmax(120px,160px) minmax(140px,1fr)}.teacher-password-row{grid-template-columns:minmax(0,1fr) auto}.teacher-password-row .ghost-button{min-height:48px;padding-inline:16px}.teacher-invite-card{display:grid;gap:14px;padding:16px;border:1px solid rgba(19,21,29,.06);border-radius:22px;background:#fffffff0}.teacher-invite-card textarea[readonly]{min-height:190px;resize:vertical;background:#f7f9fce6}.responsible-teachers-page{gap:18px}.responsible-teachers-page>.panel{display:grid;gap:18px;align-content:start}.responsible-teachers-page>.panel:first-child{grid-template-columns:minmax(260px,.72fr) minmax(240px,.42fr) minmax(360px,.86fr);align-items:end}.responsible-teachers-page>.panel:first-child .section-header,.responsible-teachers-page>.panel:first-child>.field,.responsible-teachers-page>.panel:first-child .admin-kpi-grid{min-width:0}.responsible-teachers-page .admin-kpi-grid{margin-top:2px;grid-template-columns:repeat(3,minmax(0,1fr))}.responsible-teachers-page .success-banner,.responsible-teachers-page .error-banner{grid-column:1 / -1}.responsible-teachers-grid{gap:18px;grid-template-columns:minmax(360px,.94fr) minmax(480px,1.06fr);align-items:start}.responsible-teachers-create-panel,.responsible-teachers-manage-panel{display:grid;gap:18px;align-content:start;min-width:0}.responsible-teachers-page .teacher-invite-card{position:relative;overflow:hidden;gap:16px;padding:18px;border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-xs)}.responsible-teachers-page .teacher-invite-card .section-header,.responsible-teachers-page .teacher-invite-card .form-grid{align-items:start}.responsible-teachers-page .selection-list.compact{gap:12px}.responsible-teachers-page .selection-card{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-xs)}.responsible-teachers-page .action-row{justify-content:flex-start}.responsible-teachers-page .teacher-password-row{grid-template-columns:minmax(0,1fr) auto}.responsible-teachers-page textarea{min-height:108px}.responsible-teachers-page .teacher-invite-card textarea[readonly]{min-height:150px;background:var(--surface-muted)}:root[data-theme=dark] .app-shell .responsible-teachers-page .teacher-invite-card{background:var(--surface);border-color:var(--neon-frame-border);box-shadow:var(--neon-frame-shadow)}:root[data-theme=dark] .app-shell .responsible-teachers-page .teacher-invite-card:before{content:"";position:absolute;inset:0 0 auto;width:100%;height:4px;border-top-left-radius:inherit;border-top-right-radius:inherit;background:var(--neon-frame-line);box-shadow:var(--neon-frame-line-shadow);pointer-events:none}@media(max-width:980px){.responsible-teachers-page>.panel:first-child,.responsible-teachers-grid{grid-template-columns:1fr}}@media(max-width:680px){.responsible-teachers-page .section-header,.responsible-teachers-page .selection-card-title{display:grid;grid-template-columns:1fr}.responsible-teachers-page .teacher-password-row{grid-template-columns:1fr}}@media(max-width:680px){.admin-activation-email-controls,.admin-family-report-controls{grid-template-columns:1fr}}.change-password-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#fff}.change-password-panel{width:min(520px,100%)}.toggle-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.toggle-card{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;border:1px solid rgba(19,21,29,.06);background:#fffffff0;cursor:pointer}.toggle-card input{margin:0}.section-block{display:grid;gap:14px;padding-top:8px}.nested-panel{padding:18px;background:linear-gradient(180deg,#fbfcff,#fff);border:1px solid rgba(19,21,29,.05);box-shadow:0 14px 28px #0f172a0d}.assignment-row{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:stretch}.group-editor-form{display:grid;gap:18px;min-width:0}.groups-editor-panel-create-only .form-grid-2{grid-template-columns:minmax(0,1fr)}.groups-editor-panel-create-only .group-active-toggle{align-self:stretch}.group-create-description{max-width:620px;margin:0;color:var(--muted);font-size:1rem;font-weight:700;line-height:1.55}.group-form-section{gap:16px}.group-active-toggle{min-height:54px;align-self:end}.group-assignment-row{padding:14px;border:1px solid rgba(19,21,29,.06);border-radius:18px;background:#ffffffe6}.success-banner{border-radius:16px;padding:12px 14px;background:#50b84824;color:#1f6f2a;font-weight:700}.roster-card{gap:16px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-shell{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:14px 12px;text-align:left;border-bottom:1px solid var(--line)}.admin-activation-email-toolbar{gap:18px}.admin-activation-email-controls{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,240px);gap:14px}.admin-activation-email-table .data-table{min-width:980px}.admin-activation-email-table th:first-child,.admin-activation-email-table td:first-child{width:48px}.admin-activation-email-person,.admin-activation-email-family{display:grid;gap:6px}.admin-activation-email-person strong{font-size:.98rem;line-height:1.3}.admin-activation-email-person span,.admin-activation-email-error{color:var(--muted);font-size:.88rem;line-height:1.35}.admin-activation-email-family{min-width:220px;align-items:start}.admin-activation-email-family .status-chip{width:fit-content;max-width:320px;white-space:normal;line-height:1.25}.admin-activation-email-result-errors{display:grid;gap:6px;margin-top:8px}.admin-activation-email-result-errors p{margin:0;font-size:.9rem;line-height:1.35}.admin-family-report-toolbar{gap:18px}.admin-family-report-controls{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,240px) minmax(200px,260px);gap:14px;align-items:end}.admin-family-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.admin-family-group-card{display:grid;gap:8px;min-height:132px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}.admin-family-group-card.active,.admin-family-group-card:hover{border-color:var(--primary);box-shadow:0 12px 28px #2237501a}.admin-family-group-card strong{font-size:1rem;line-height:1.25}.admin-family-group-card>span:not(.status-chip):last-of-type{color:var(--muted);font-weight:700}.admin-family-report-table .data-table{min-width:1180px}.admin-family-report-stack,.admin-family-report-guardians,.admin-family-report-family-state{display:grid;gap:7px}.admin-family-report-stack{min-width:150px}.admin-family-report-stack strong,.admin-family-report-guardian strong{font-size:.96rem;line-height:1.3}.admin-family-report-stack span,.admin-family-report-guardian span{color:var(--muted);font-size:.87rem;line-height:1.35}.admin-family-report-guardians{min-width:230px}.admin-family-report-guardian{display:grid;gap:4px;padding-bottom:8px;border-bottom:1px solid rgba(19,21,29,.06)}.admin-family-report-guardian:last-child{padding-bottom:0;border-bottom:0}.admin-family-report-guardian .status-chip,.admin-family-report-family-state .status-chip{width:fit-content}.admin-family-report-address{min-width:260px}.timeline{display:grid;gap:14px}.timeline-item{padding:14px 0;border-bottom:1px solid var(--line)}.timeline-badge{width:12px;height:12px;border-radius:50%;margin-top:6px;flex:none}.timeline-badge.positive,.points-pill.positive{background:var(--tertiary-haze);color:var(--positive)}.timeline-badge.negative,.points-pill.negative{background:var(--secondary-haze);color:var(--negative)}.points-pill{padding:8px 10px;border-radius:999px;font-weight:700}.attendance-page-shell{display:grid;gap:18px}.attendance-tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;border-radius:8px 8px 0 0;border:1px solid rgba(var(--brand-green-rgb),.44);background:var(--brand-green-strong);box-shadow:0 16px 30px #0f172a1f,inset 0 1px #ffffff3d;overflow:visible}.attendance-tab-button{position:relative;min-width:0;min-height:54px;padding:12px 14px;border:0;border-right:1px solid rgba(255,255,255,.28);border-radius:0;--attendance-tab-solid: var(--brand-green-strong);background:var(--attendance-tab-solid);color:#111827;cursor:pointer;font-family:var(--font-display);font-size:clamp(1.08rem,2.2vw,1.34rem);font-weight:700;letter-spacing:0;line-height:1.02;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,.1);transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease,filter .16s ease}.attendance-tab-button:first-child{border-radius:7px 0 0}.attendance-tab-button:last-child{border-right:0;border-radius:0 7px 0 0;--attendance-tab-solid: var(--brand-purple-strong)}.attendance-tab-button:hover{color:#111827;filter:saturate(1.08)}.attendance-tab-button.active{background:var(--attendance-tab-solid);color:#111827;box-shadow:inset 0 -3px #00000014}.attendance-tab-button.active:after{content:"";position:absolute;left:50%;bottom:-11px;width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:12px solid var(--attendance-tab-solid);transform:translate(-50%);filter:drop-shadow(0 5px 6px rgba(15,23,42,.12))}.attendance-tab-panel{min-width:0;display:grid}.attendance-tab-panel[hidden]{display:none}.attendance-layout-grid{display:grid;gap:22px;align-items:start}.attendance-report-grid{grid-template-columns:minmax(0,1fr)}.attendance-summary-column,.attendance-main-column{min-width:0;display:grid;gap:18px}.attendance-title-panel,.attendance-overview-panel,.attendance-action-panel,.attendance-toolbar-card,.attendance-roster-panel{padding:20px;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#f8faffeb);border:1px solid rgba(19,21,29,.06);box-shadow:0 20px 36px #0f172a14}.attendance-title-panel,.attendance-toolbar-card,.attendance-roster-panel,.attendance-action-panel{display:grid;gap:14px}.attendance-title-heading{display:grid;gap:16px}.attendance-summary-teacher{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:22px;background:#f5f7fbf5;border:1px solid rgba(19,21,29,.05)}.attendance-summary-teacher-copy{display:grid;gap:3px;min-width:0}.attendance-summary-teacher-copy strong{color:var(--surface-deep);font-size:.98rem;line-height:1.1}.attendance-summary-teacher-copy span{color:var(--muted);font-size:.8rem;font-weight:700}.attendance-title-meta{display:flex;flex-wrap:wrap;gap:8px}.attendance-action-note,.attendance-admin-group-link{width:100%;justify-content:center}.attendance-toolbar-header{display:flex;align-items:end;justify-content:space-between;gap:14px}.attendance-toolbar-header h2{margin:4px 0 0;color:var(--surface-deep);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.06}.attendance-toolbar-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.attendance-filter-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-filter-chip{--attendance-filter-rgb: var(--brand-blue-rgb);--attendance-filter-color: var(--brand-blue-strong);min-width:0;min-height:42px;padding:9px 10px;border-radius:999px;border:1px solid rgba(var(--attendance-filter-rgb),.34);background:rgba(var(--attendance-filter-rgb),.1);color:var(--attendance-filter-color);font-weight:800;line-height:1;overflow:hidden;text-align:center;white-space:nowrap;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease}.attendance-filter-chip:hover{transform:translateY(-1px);border-color:rgba(var(--attendance-filter-rgb),.52);background:rgba(var(--attendance-filter-rgb),.16)}.attendance-filter-chip.active{border-color:rgba(var(--attendance-filter-rgb),.72);background:rgb(var(--attendance-filter-rgb));color:#fff;box-shadow:0 10px 18px rgba(var(--attendance-filter-rgb),.18)}.attendance-filter-chip.all{--attendance-filter-rgb: var(--brand-blue-rgb);--attendance-filter-color: var(--brand-blue-strong)}.attendance-filter-chip.pending{--attendance-filter-rgb: var(--brand-orange-rgb);--attendance-filter-color: var(--brand-orange-strong)}.attendance-filter-chip.present{--attendance-filter-rgb: var(--brand-green-rgb);--attendance-filter-color: var(--brand-green-strong)}.attendance-roster-panel{min-width:0}.attendance-mobile-shell{display:grid;place-items:center}.attendance-mobile-screen{width:min(100%,385px);min-height:780px;padding:16px 14px 18px;border-radius:32px;background:radial-gradient(circle at top left,rgba(0,93,172,.08),transparent 34%),radial-gradient(circle at top right,rgba(95,63,147,.08),transparent 28%),linear-gradient(180deg,#fffffff5,#f6f8fcfa);border:1px solid rgba(19,21,29,.06);box-shadow:0 28px 64px #0f172a1f}.attendance-mobile-screen-expanded{display:grid;gap:18px}.attendance-mobile-screen svg{width:18px;height:18px;display:block}.attendance-mobile-topbar,.attendance-teacher-block,.attendance-toolbar,.attendance-student-card,.attendance-student-actions,.attendance-mobile-footer{display:flex;align-items:center}.attendance-mobile-topbar,.attendance-toolbar,.attendance-mobile-footer{justify-content:space-between}.attendance-mobile-topbar{gap:12px;margin-bottom:2px;padding-top:2px}.attendance-icon-button{width:46px;height:46px;border:1px solid rgba(19,21,29,.08);border-radius:999px;cursor:pointer;display:grid;place-items:center;background:#ffffffeb;color:var(--primary);box-shadow:0 12px 24px #0f172a14}.attendance-icon-button.active{background:linear-gradient(135deg,var(--neutral),var(--primary));color:var(--text-on-accent)}.attendance-club-label{flex:1;color:var(--secondary);font-family:var(--font-display);font-weight:800;text-align:center}.attendance-wordmark{flex:1;display:grid;justify-items:center;line-height:.86;color:var(--surface-deep);font-family:var(--font-display);font-weight:900;font-size:1.02rem;letter-spacing:-.03em;text-shadow:none}.attendance-wordmark span:last-child{color:var(--primary)}.attendance-teacher-block{gap:10px;padding:6px 7px 6px 14px;border-radius:999px;color:var(--primary);font-size:.95rem;font-weight:800;background:#fffffff0;border:1px solid rgba(19,21,29,.06);box-shadow:0 12px 24px #0f172a0f}.attendance-teacher-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--text-on-accent);font-size:.72rem;font-weight:800;background:linear-gradient(135deg,var(--neutral),var(--primary))}.attendance-title-card,.attendance-summary-card{padding:18px;border-radius:24px;background:#fffffff0;border:1px solid rgba(19,21,29,.06);box-shadow:0 16px 28px #0f172a0f}.attendance-title-card .eyebrow{margin-bottom:10px;color:var(--primary);letter-spacing:.26em}.attendance-title-card h1{margin:0;color:var(--surface-deep);font-size:clamp(1.95rem,6.6vw,2.5rem);line-height:.96}.attendance-title-card p{margin:6px 0 0;color:var(--primary);font-family:var(--font-display);font-size:clamp(1.35rem,5vw,1.72rem);font-style:normal;font-weight:800}.attendance-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.attendance-stat-grid-card{margin-bottom:14px;gap:14px}.attendance-summary-bubble{min-height:108px;padding:16px 16px 14px;border-radius:20px;display:grid;align-content:center;justify-items:start;border:1px solid rgba(19,21,29,.05);box-shadow:inset 0 1px #fffc}.attendance-summary-bubble.present{background:linear-gradient(180deg,#f0fbf0f5,#e7f7e5eb);color:var(--positive)}.attendance-summary-bubble.absent{background:linear-gradient(180deg,#fff3f7f5,#fceaf1eb);color:var(--negative)}.attendance-summary-dot{width:10px;height:10px;border-radius:50%;background:currentColor}.attendance-summary-bubble strong{display:block;margin-top:10px;font-family:var(--font-display);font-size:2.15rem;line-height:1}.attendance-summary-bubble span:last-child{font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.attendance-summary-pills{display:flex;flex-wrap:wrap;gap:8px}.attendance-summary-pill{border:1px solid rgba(19,21,29,.05);border-radius:999px;min-height:38px;padding:9px 14px;display:inline-flex;align-items:center;gap:7px;font-weight:800;cursor:pointer;box-shadow:0 10px 18px #0f172a0a}.attendance-summary-pill.blue{background:#edf6ff;color:#1b67b7}.attendance-summary-pill.green{background:#e3f7de;color:#4aad43}.attendance-summary-pill.purple{background:#efe3fa;color:#7a58b3}.attendance-toolbar{gap:12px;margin-bottom:4px;align-items:center;justify-content:flex-start}.attendance-search{flex:1;height:58px;padding:0 16px;display:flex;align-items:center;gap:10px;border-radius:18px;background:#fffffff5;border:1px solid rgba(19,21,29,.06);box-shadow:0 10px 22px #0f172a0d;color:var(--muted)}.attendance-search svg,.attendance-summary-pill svg,.attendance-save-pill svg,.attendance-submit-icon svg,.attendance-action-note svg{width:18px;height:18px;flex:none}.attendance-search svg{color:var(--brand-blue-strong)}.attendance-search input{width:100%;border:0;background:transparent;color:var(--ink);font:inherit;outline:none}.attendance-search input::placeholder{color:var(--muted)}.attendance-student-list{display:grid;gap:12px;grid-template-columns:1fr}.attendance-student-list::-webkit-scrollbar{width:6px}.attendance-student-list::-webkit-scrollbar-thumb{background:#13151d2e;border-radius:999px}.attendance-student-card{gap:12px;padding:14px;border-radius:22px;background:#fffffff5;border:1px solid rgba(19,21,29,.06);position:relative;cursor:pointer;box-shadow:0 14px 28px #0f172a0f}.attendance-student-card-rich{display:grid;grid-template-columns:5px 56px minmax(0,1fr) 96px;align-items:center;column-gap:10px}.attendance-student-accent{width:5px;height:92px;border-radius:999px;background:#13151d1f}.attendance-student-accent.present{background:#4aad43}.attendance-student-accent.absent{background:#f06c9e}.attendance-student-accent.late{background:#f3aa34}.attendance-student-accent.excused{background:#7a58b3}.attendance-student-avatar{width:54px;height:54px;flex:none;border-radius:50%;display:grid;place-items:center;color:var(--text-on-accent);font-size:.78rem;font-weight:800;box-shadow:0 12px 24px #2959af2e}.attendance-student-avatar.sunrise{background:linear-gradient(135deg,#ff9867,#e76b9e)}.attendance-student-avatar.mist{background:linear-gradient(135deg,#9a9ab3,#6f7086)}.attendance-student-avatar.lagoon{background:linear-gradient(135deg,#2ab8ff,#005dac)}.attendance-student-avatar.plum{background:linear-gradient(135deg,#7d59c6,#3d2473)}.attendance-student-avatar.graphite{background:linear-gradient(135deg,#9494ab,#5c6073)}.attendance-student-avatar.rose{background:linear-gradient(135deg,#f8a06d,#e76b9e)}.attendance-student-copy{display:grid;gap:6px;min-width:0}.attendance-student-copy strong{display:block;color:var(--surface-deep);font-size:1.02rem;line-height:1.08}.attendance-card-menu{position:absolute;left:60px;top:54px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#13151de0;color:#fff;border:2px solid rgba(255,255,255,.96);box-shadow:0 8px 14px #0f172a24}.attendance-card-menu svg{width:12px;height:12px}.attendance-student-meta-row{display:flex;flex-wrap:wrap;gap:6px}.attendance-student-points,.attendance-student-hint{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:999px;font-size:.76rem;font-weight:800}.attendance-student-points{background:#edf6fff5;color:#4b69ae}.attendance-student-hint{background:#f5f7fbfa;color:var(--muted)}.attendance-student-hint.present{background:#e2f7dceb;color:#4aad43}.attendance-student-hint.absent{background:#ffe7eeeb;color:#f06c9e}.attendance-student-hint.late{background:#fff1d4f5;color:#d18b17}.attendance-student-hint.excused{background:#efe3faeb;color:#7a58b3}.attendance-student-note{width:100%;display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border-radius:14px;color:var(--muted);font-size:.74rem;font-weight:700;background:#f8fafdf5;border:1px solid rgba(19,21,29,.05)}.attendance-student-note svg{flex:none;width:14px;height:14px}.attendance-student-note span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-student-side{min-height:102px;padding:10px 8px;border-radius:18px;display:grid;justify-items:center;gap:10px;background:#f5f7fbfa;border:1px solid rgba(19,21,29,.05)}.attendance-student-side.present{background:#e2f7dce0}.attendance-student-side.absent{background:#ffe7eee6}.attendance-student-side.late{background:#fff1d4f5}.attendance-student-side.excused{background:#efe3fae6}.attendance-status-pill{padding:6px 10px;border-radius:999px;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.attendance-status-pill.present,.attendance-status-pill.live{background:#d7f7d5eb;color:#2e9f28}.attendance-status-pill.absent{background:#ffdde8eb;color:#df5f92}.attendance-status-pill.pending{background:#f5f7fbfa;color:var(--muted)}.attendance-status-pill.late{background:#fff1d4f5;color:#c98212}.attendance-status-pill.excused{background:#efe3faf5;color:#7a58b3}.attendance-toggle{width:56px;height:30px;padding:3px;border:0;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;transition:background .14s ease;box-shadow:inset 0 0 0 1px #13151d14}.attendance-toggle span{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 4px 10px #0f172a1f;transition:transform .14s ease}.attendance-toggle.on{background:#50b848e6}.attendance-toggle.on span{transform:translate(26px)}.attendance-toggle.off{background:#dce1eaf5}.attendance-empty-state{padding:22px;border-radius:24px;text-align:center;color:var(--muted);background:#ffffffe6;border:1px solid rgba(19,21,29,.05)}.attendance-mobile-footer{margin-top:2px;width:100%;flex-direction:column;justify-content:flex-start;gap:10px}.attendance-save-pill{width:100%;padding:14px 16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--primary);font-weight:800;background:#f5f7fbfa;border:1px solid rgba(19,21,29,.06)}.attendance-submit-button{border:1px solid transparent;cursor:pointer;width:100%;height:58px;padding:0 22px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(135deg,var(--neutral),var(--primary));color:var(--text-on-accent);font-size:1rem;font-weight:800;box-shadow:0 18px 30px #0f172a24}.attendance-submit-button:disabled{opacity:.72;cursor:not-allowed}.attendance-submit-button.ready{background:linear-gradient(135deg,var(--neutral),var(--primary))}.attendance-submit-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ffffff2e}.attendance-footer-note{margin:0;color:var(--muted);font-size:.8rem;font-weight:600;text-align:center}.attendance-filter-button{position:relative;width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--neutral),var(--primary));color:#fff;box-shadow:0 14px 28px #0f172a1f}.attendance-filter-badge{position:absolute;right:3px;bottom:3px;min-width:19px;padding:2px 5px;border-radius:999px;background:#f06c9e;color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.08em}.attendance-filter-badge.all{background:#f16c9d}.attendance-filter-badge.pending{background:#a48dcf}.attendance-filter-badge.present{background:#4aad43}.attendance-filter-badge.absent{background:#f06c9e}.attendance-filter-badge.late{background:#e39b1f}.attendance-filter-badge.excused{background:#7a58b3}.attendance-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:20px;background:#0f172a42}.attendance-modal{width:min(460px,100%);padding:20px;border-radius:24px;background:#fffffffa;border:1px solid rgba(19,21,29,.06);box-shadow:0 28px 54px #0f172a24;display:grid;gap:16px}.attendance-status-choice-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-status-choice{padding:14px 12px;border:1px solid rgba(19,21,29,.06);border-radius:18px;background:#fffffff5;color:var(--surface-deep);font-weight:800;cursor:pointer}.attendance-status-choice.active{border-color:var(--primary);background:#edf6fff5;color:var(--primary)}.attendance-report-dashboard{display:grid;gap:18px}.attendance-report-controls-card,.attendance-report-panel,.attendance-report-loading{padding:20px;border-radius:28px;background:#fffffff5;border:1px solid rgba(19,21,29,.06);box-shadow:0 20px 36px #0f172a14}.attendance-report-controls-card{display:grid;gap:18px}.attendance-report-heading,.attendance-report-panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.attendance-report-heading h2,.attendance-report-panel-header h3{margin:0;color:var(--surface-deep);line-height:1.05}.attendance-report-heading h2{font-size:clamp(1.45rem,3vw,2.1rem)}.attendance-report-heading p{margin:6px 0 0;color:var(--brand-blue-strong);font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.65rem);font-weight:700;line-height:1}.attendance-report-panel-header h3{font-size:clamp(1.12rem,2vw,1.45rem)}.attendance-report-period-chip{min-height:42px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#edf6ff;color:var(--brand-blue-strong);font-weight:900}.attendance-report-period-chip svg,.attendance-report-loading svg{width:18px;height:18px}.attendance-report-controls{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr)) auto;gap:12px;align-items:end}.attendance-report-date-field{display:grid;gap:7px;min-width:0}.attendance-report-date-field span{color:var(--muted);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.attendance-report-date-field input{width:100%;min-height:50px;padding:0 14px;border-radius:16px;border:1px solid rgba(19,21,29,.08);background:#f5f7fbfa;color:var(--surface-deep);font-weight:800}.attendance-report-refresh{min-height:50px;padding-inline:20px;white-space:nowrap}.attendance-report-loading{min-height:116px;display:grid;place-items:center;gap:10px;color:var(--brand-blue-strong);font-weight:900}.attendance-report-kpi-grid,.attendance-report-chart-grid,.attendance-report-table-grid{display:grid;gap:14px}.attendance-report-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-report-chart-grid,.attendance-report-table-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-report-kpi{min-height:132px;padding:18px;display:grid;align-content:space-between;gap:8px;border-radius:24px;border:1px solid rgba(var(--report-kpi-rgb),.2);background:rgba(var(--report-kpi-rgb),.1);color:var(--report-kpi-color)}.attendance-report-kpi.blue{--report-kpi-rgb: var(--brand-blue-rgb);--report-kpi-color: var(--brand-blue-strong)}.attendance-report-kpi.green{--report-kpi-rgb: var(--brand-green-rgb);--report-kpi-color: var(--brand-green-strong)}.attendance-report-kpi.purple{--report-kpi-rgb: var(--brand-purple-rgb);--report-kpi-color: var(--brand-purple-strong)}.attendance-report-kpi.orange{--report-kpi-rgb: var(--brand-orange-rgb);--report-kpi-color: var(--brand-orange-strong)}.attendance-report-kpi span{font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.attendance-report-kpi strong{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);line-height:.9;letter-spacing:0}.attendance-report-kpi p{margin:0;color:var(--surface-deep);font-size:.88rem;font-weight:800}.attendance-report-panel{display:grid;gap:16px;min-width:0}.attendance-report-status-list{display:grid;gap:12px}.attendance-report-line-chart{display:grid;gap:12px;min-width:0}.attendance-report-line-chart svg{width:100%;min-height:280px;overflow:visible}.attendance-report-chart-grid-line{stroke:#13151d14;stroke-width:1.5}.attendance-report-chart-axis-label{fill:var(--muted);font-size:.78rem;font-weight:900}.attendance-report-chart-date-label{font-size:.74rem}.attendance-report-chart-area{fill:url(#attendance-report-area-fill)}.attendance-report-chart-line{fill:none;stroke:var(--brand-blue-strong);stroke-linecap:round;stroke-linejoin:round;stroke-width:5;filter:drop-shadow(0 10px 14px rgba(var(--brand-blue-rgb),.22))}.attendance-report-chart-point{fill:#fff;stroke:var(--brand-blue-strong);stroke-width:3}.attendance-report-chart-point.empty{fill:#ffffffeb;stroke:#13151d38;stroke-width:2}.attendance-report-chart-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:var(--surface-deep);font-size:.88rem;font-weight:800}.attendance-report-chart-footer strong{color:var(--brand-blue-strong);font-weight:950}.attendance-report-line-empty{min-height:280px;display:grid;place-items:center;border-radius:20px;background:#13151d0a;color:var(--surface-deep);font-weight:900;text-align:center}.attendance-report-status-track{height:13px;border-radius:999px;overflow:hidden;background:#13151d14}.attendance-report-status-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-green-strong),var(--brand-blue-strong))}.attendance-report-status-row{display:grid;gap:7px}.attendance-report-status-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--surface-deep);font-weight:900}.attendance-report-status-row.green{--report-status-color: var(--brand-green-strong)}.attendance-report-status-row.orange{--report-status-color: var(--brand-orange-strong)}.attendance-report-status-row.pink{--report-status-color: var(--brand-pink-strong)}.attendance-report-status-row.purple{--report-status-color: var(--brand-purple-strong)}.attendance-report-status-row .attendance-report-status-track span{background:var(--report-status-color)}.attendance-report-table{border-radius:18px}.attendance-report-table .data-table{min-width:520px}.attendance-report-wide-table .data-table{min-width:820px}.historical-attendance-page{gap:18px}.historical-attendance-toolbar .attendance-report-date-field select{width:100%;min-height:50px;padding:0 14px;border:1px solid rgba(19,21,29,.08);border-radius:16px;background:#f5f7fbfa;color:var(--surface-deep);font-weight:800}.historical-attendance-control-picker{min-width:min(100%,420px)}.historical-attendance-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:16px;align-items:start}.historical-attendance-sheet-panel,.historical-attendance-summary-panel{min-width:0}.historical-attendance-legend{display:flex;flex-wrap:wrap;gap:8px}.historical-attendance-legend span{min-height:34px;padding:7px 10px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(19,21,29,.08);border-radius:999px;background:#f5f7fbe0;color:var(--surface-deep);font-size:.82rem;font-weight:800}.historical-attendance-legend strong{color:var(--brand-blue-strong);font-weight:950}.historical-attendance-table-shell{max-height:min(72vh,720px);overflow:auto;border-radius:18px}.historical-attendance-table{min-width:1080px;border-collapse:separate;border-spacing:0}.historical-attendance-table th,.historical-attendance-table td{min-width:48px;padding:9px 8px;text-align:center;white-space:nowrap}.historical-attendance-table thead th{position:sticky;top:0;z-index:5;background:#f8fbff}.historical-attendance-table thead tr:nth-child(2) th{top:39px}.historical-attendance-month{color:var(--brand-blue-strong);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.historical-attendance-date{color:var(--surface-deep);font-weight:950}.historical-attendance-table .sticky-column{position:sticky;z-index:6;background:#fff;box-shadow:1px 0 #13151d14}.historical-attendance-table thead .sticky-column{z-index:8;background:#f8fbff}.sticky-column-guard{left:0;width:76px;min-width:76px}.sticky-column-name{left:76px;width:188px;min-width:188px;text-align:left}.historical-attendance-guard-cell{color:var(--brand-purple-strong);font-weight:950}.historical-attendance-name-cell{color:var(--surface-deep);font-weight:900;text-align:left}.historical-attendance-code-cell span{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:999px;font-size:.82rem;font-weight:950}.historical-attendance-code-cell.present span{background:rgba(var(--brand-green-rgb),.16);color:var(--brand-green-strong)}.historical-attendance-code-cell.late span{background:rgba(var(--brand-orange-rgb),.18);color:var(--brand-orange-strong)}.historical-attendance-code-cell.absent span{background:rgba(var(--brand-pink-rgb),.16);color:var(--brand-pink-strong)}.historical-attendance-code-cell.excused span{background:rgba(var(--brand-blue-rgb),.14);color:var(--brand-blue-strong)}.historical-attendance-monthly-shell{display:grid;gap:14px;overflow:visible}.historical-attendance-monthly-table{min-width:320px}.historical-attendance-monthly-table th,.historical-attendance-monthly-table td{text-align:right}.historical-attendance-monthly-table th:first-child,.historical-attendance-monthly-table td:first-child{text-align:left}@media(min-width:980px){.attendance-layout-grid{grid-template-columns:minmax(320px,360px) minmax(0,1fr)}.attendance-today-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px)}.attendance-report-grid{grid-template-columns:minmax(0,1fr)}.attendance-report-grid .attendance-summary-column{grid-template-columns:minmax(320px,420px) minmax(0,1fr);position:static}.attendance-summary-column{position:sticky;top:104px}.attendance-title-heading{grid-template-columns:minmax(0,1fr)}}.wallet-entry-shell{width:min(100%,1180px);margin:0 auto}.wallet-entry-screen{display:grid;gap:24px}.wallet-entry-topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;border-radius:28px;background:#ffffffe6;border:1px solid rgba(19,21,29,.06);box-shadow:0 18px 40px #0f172a14}.wallet-entry-topbar h1{margin:0;font-family:var(--font-display);font-size:clamp(1.5rem,2.2vw,2rem);line-height:1;color:var(--surface-deep)}.wallet-entry-back{width:46px;height:46px;border:0;border-radius:18px;display:grid;place-items:center;cursor:pointer;background:#0c5ba61a;color:var(--brand-blue-strong);box-shadow:inset 0 1px #ffffff9e;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.wallet-entry-back.ghost{background:#6bb6571f;color:var(--brand-green-strong)}.wallet-entry-back:hover,.wallet-entry-back:focus-visible{transform:translateY(-1px);box-shadow:0 12px 24px #0f172a1f}.wallet-entry-back svg{width:20px;height:20px;flex:none}.wallet-hero-card{position:relative;isolation:isolate;overflow:hidden;display:grid;gap:18px;padding:clamp(22px,3vw,30px);border-radius:34px;background:linear-gradient(135deg,#fffffff5,#ffffffe0),linear-gradient(135deg,#9cc8eb42,#bbd2532e 36%,#edbad233 70%,#b891bd29);border:1px solid rgba(19,21,29,.06);box-shadow:0 24px 54px #0f172a14}.wallet-hero-card:before,.wallet-hero-card:after{content:"";position:absolute;z-index:0;pointer-events:none;border-radius:999px;filter:blur(10px)}.wallet-hero-card:before{top:-44px;left:-32px;width:180px;height:180px;background:radial-gradient(circle,rgba(12,91,166,.15),transparent 72%)}.wallet-hero-card:after{right:-28px;bottom:-60px;width:220px;height:220px;background:radial-gradient(circle,rgba(214,95,156,.14),transparent 70%)}.wallet-hero-card>*{position:relative;z-index:1}.wallet-hero-orb{position:absolute;top:18px;right:18px;z-index:0;width:132px;height:132px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(107,182,87,.34),transparent 58%),radial-gradient(circle at 68% 62%,rgba(12,91,166,.28),transparent 56%)}.wallet-hero-card h2{margin:0;max-width:13ch;font-family:var(--font-display);font-size:clamp(2rem,4.6vw,3.1rem);line-height:.94;color:var(--surface-deep)}.wallet-hero-copy{display:grid;gap:10px}.wallet-hero-copy p{max-width:52ch;margin:0;color:var(--muted);line-height:1.45}.wallet-hero-pills{display:flex;flex-wrap:wrap;gap:10px}.wallet-metric-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;font-size:.94rem;font-weight:800}.wallet-metric-pill svg{width:18px;height:18px;flex:none}.wallet-metric-pill.mint{background:#6bb65724;color:#267239}.wallet-metric-pill.rose{background:#d65f9c24;color:#9d3d73}.wallet-tab-shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px;border-radius:26px;background:#ffffffd1;border:1px solid rgba(19,21,29,.06);box-shadow:0 16px 32px #0f172a0f}.wallet-tab-button{min-height:58px;border:0;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;background:transparent;color:var(--muted);font-size:.98rem;font-weight:800;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.wallet-tab-button:hover,.wallet-tab-button:focus-visible{transform:translateY(-1px)}.wallet-tab-button.active{background:linear-gradient(135deg,var(--brand-green-strong),var(--brand-blue-strong));color:#fff;box-shadow:0 16px 28px #0c5ba62e}.wallet-tab-button svg{width:20px;height:20px;flex:none}.wallet-tab-panel{display:grid;gap:18px;padding:clamp(18px,3vw,26px);border-radius:32px;background:#ffffffdb;border:1px solid rgba(19,21,29,.06);box-shadow:0 24px 48px #0f172a14}.wallet-tab-panel>h3{margin:0;font-family:var(--font-display);font-size:clamp(1.3rem,2vw,1.65rem);color:var(--surface-deep)}.wallet-panel-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px}.wallet-panel-kicker{font-size:.74rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#726684}.wallet-panel-head h3{margin:6px 0 0;font-family:var(--font-display);font-size:clamp(1.3rem,2vw,1.65rem);color:var(--surface-deep)}.wallet-panel-head p{max-width:58ch;margin:8px 0 0;color:var(--muted);line-height:1.45}.wallet-scan-layout{display:grid;gap:16px}.wallet-scan-panel{display:grid;gap:16px;align-content:start}.wallet-scan-stage{position:relative;isolation:isolate;min-height:320px;padding:24px;border-radius:30px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(180deg,#fffffff5,#f8faffeb),linear-gradient(145deg,#0c5ba614,#6bb65714 48%,#d65f9c14);border:1px dashed rgba(95,63,147,.18)}.wallet-scan-stage.camera-open{background:#0f172a;border-style:solid;border-color:#ffffff24}.wallet-camera-feed,.wallet-camera-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.wallet-camera-feed{width:100%;height:100%;object-fit:cover;z-index:0}.wallet-camera-scrim{z-index:0;background:linear-gradient(180deg,#0f172a1f,#0f172a57),radial-gradient(circle at center,transparent 34%,rgba(15,23,42,.42) 72%)}.wallet-corner{position:absolute;width:26px;height:26px}.wallet-corner.tl{top:18px;left:18px;border-top:3px solid var(--brand-pink-strong);border-left:3px solid var(--brand-pink-strong);border-radius:14px 0 0}.wallet-corner.tr{top:18px;right:18px;border-top:3px solid var(--brand-blue-strong);border-right:3px solid var(--brand-blue-strong);border-radius:0 14px 0 0}.wallet-corner.bl{bottom:18px;left:18px;border-bottom:3px solid var(--brand-green-strong);border-left:3px solid var(--brand-green-strong);border-radius:0 0 0 14px}.wallet-corner.br{right:18px;bottom:18px;border-right:3px solid var(--brand-purple-strong);border-bottom:3px solid var(--brand-purple-strong);border-radius:0 0 14px}.wallet-pass-card{width:min(100%,226px);padding:18px 18px 16px;border-radius:26px;display:grid;justify-items:center;gap:14px;background:linear-gradient(180deg,#fff,#f7f2ff);border:1px solid rgba(19,21,29,.05);box-shadow:0 24px 40px #0f172a1f}.wallet-scan-stage.camera-open .wallet-pass-card{background:#ffffffeb;box-shadow:0 24px 48px #0f172a47}.wallet-pass-handle{width:36px;height:8px;border-radius:999px;border:1px solid rgba(19,21,29,.14);background:#ffffffe6}.wallet-pass-qr{position:relative;width:136px;height:136px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(180deg,#f8f9fd,#eef3fc);border:1px solid rgba(19,21,29,.06)}.wallet-pass-frame{position:absolute;top:14px;right:14px;bottom:14px;left:14px;border-radius:18px;border:2px dashed rgba(12,91,166,.18)}.wallet-pass-qr svg{width:74px;height:74px;color:var(--brand-blue-strong)}.wallet-pass-card strong{font-size:.94rem;font-weight:900;letter-spacing:.16em;color:var(--surface-deep)}.wallet-scan-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#ffffffeb;border:1px solid rgba(19,21,29,.06);color:#6b5f88;font-size:.72rem;font-weight:900;letter-spacing:.14em}.wallet-scan-badge.ready{background:#6bb65724;color:#25743a;border-color:#6bb65738}.wallet-scan-badge svg{width:18px;height:18px;flex:none}.wallet-scan-input{display:flex;align-items:center;gap:12px;min-height:64px;padding:0 16px;border-radius:24px;background:#fffffff5;border:1px solid rgba(19,21,29,.06);box-shadow:0 12px 30px #0f172a0f}.wallet-scan-input svg{width:20px;height:20px;flex:none;color:var(--brand-green-strong)}.wallet-scan-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--surface-deep);font:inherit}.wallet-scan-input input::placeholder{color:var(--muted)}.wallet-scan-clear{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:#d65f9c24;color:var(--brand-pink-strong)}.wallet-scan-clear svg{width:16px;height:16px}.wallet-scan-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.wallet-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.wallet-section-heading strong{font-size:.8rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#726684}.wallet-results-panel{display:grid;gap:14px;align-content:start}.wallet-empty-card{padding:20px;border-radius:24px;border:1px dashed rgba(95,63,147,.18);background:#ffffffd6;color:var(--muted);font-weight:700}.wallet-match-list,.wallet-list-grid{display:grid;gap:14px}.wallet-match-card,.wallet-list-card{width:100%;border-radius:24px;border:1px solid rgba(19,21,29,.06);background:#fffffff5;color:inherit;cursor:pointer;text-align:left;box-shadow:0 14px 30px #0f172a0f;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.wallet-match-card:hover,.wallet-match-card:focus-visible,.wallet-list-card:hover,.wallet-list-card:focus-visible{transform:translateY(-1px);box-shadow:0 20px 34px #0f172a17}.wallet-match-card.active,.wallet-list-card.active{border-color:#6bb65757;box-shadow:0 20px 40px #0f172a1a,0 0 0 4px #6bb6571f}.wallet-match-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px}.wallet-avatar{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;color:#fff;font-size:1rem;font-weight:900;letter-spacing:.06em;box-shadow:inset 0 1px #ffffff3d}.wallet-avatar.sunrise{background:linear-gradient(135deg,var(--brand-orange-strong),var(--brand-pink-strong))}.wallet-avatar.lagoon{background:linear-gradient(135deg,var(--brand-blue-strong),var(--brand-green-strong))}.wallet-avatar.plum{background:linear-gradient(135deg,var(--brand-purple-strong),var(--brand-pink-strong))}.wallet-avatar.mint{background:linear-gradient(135deg,var(--brand-green-strong),var(--brand-blue-strong))}.wallet-match-copy,.wallet-list-copy{display:grid;gap:4px;min-width:0}.wallet-match-copy strong,.wallet-list-copy strong{font-size:1.02rem;color:var(--surface-deep)}.wallet-match-copy span,.wallet-list-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.92rem}.wallet-match-side{display:grid;justify-items:end;gap:4px}.wallet-match-side strong{color:var(--brand-blue-strong);font-size:.98rem}.wallet-match-side span{color:var(--muted);font-size:.82rem;font-weight:700}.wallet-list-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.wallet-list-card{display:grid;gap:16px;padding:18px}.wallet-list-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px}.wallet-list-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.wallet-list-action{color:var(--brand-green-strong);font-size:.92rem;font-weight:900}.wallet-award-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;display:grid;place-items:center;padding:20px;background:#0f172a42}.wallet-award-dialog{width:min(760px,100%);max-height:min(88vh,820px);overflow:auto;display:grid;gap:18px;padding:24px;border-radius:30px;background:#fffffffa;border:1px solid rgba(19,21,29,.06);box-shadow:0 30px 60px #0f172a2e}.wallet-dialog-header{align-items:center}.wallet-dialog-summary{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:14px 16px;border-radius:22px;background:linear-gradient(180deg,#edf6ffe0,#fffffff0);border:1px solid rgba(12,91,166,.1)}.wallet-dialog-summary .wallet-avatar{width:52px;height:52px;border-radius:18px}.wallet-dialog-copy{display:grid;gap:4px;min-width:0}.wallet-dialog-copy strong{color:var(--surface-deep);font-size:.98rem}.wallet-dialog-copy span{color:var(--brand-blue-strong);font-size:.92rem;font-weight:800}.wallet-award-form{gap:18px}.wallet-award-form-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)}.wallet-award-stack{display:grid;gap:14px;align-content:start}.wallet-concept-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.wallet-concept-card{display:grid;gap:6px;padding:16px;border-radius:20px;border:1px solid rgba(19,21,29,.06);background:#fffffff0;color:var(--surface-deep);cursor:pointer;text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.wallet-concept-card:hover,.wallet-concept-card:focus-visible{transform:translateY(-1px)}.wallet-concept-card strong{font-size:.96rem}.wallet-concept-card span{color:var(--muted);font-size:.86rem;font-weight:700}.wallet-concept-card.active{border-color:#6bb65757;background:linear-gradient(180deg,#e4f7e1d1,#fffffff5);box-shadow:0 14px 26px #0f172a14}.wallet-award-dialog .field input[readonly]{background:#0c5ba60f;color:var(--brand-blue-strong);font-weight:800}.wallet-dialog-close{width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:#efe3fadb;color:var(--accent-deep)}.wallet-dialog-close svg{width:18px;height:18px}.wallet-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.wallet-primary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px}.wallet-primary-action svg{width:18px;height:18px;flex:none}.materials-oca-page{gap:18px}.materials-oca-hero .section-header{align-items:flex-start}.materials-oca-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.materials-oca-layout{display:grid;grid-template-columns:minmax(320px,500px) minmax(0,1fr);gap:18px;align-items:start}.materials-oca-config,.materials-oca-game-panel{min-width:0}.materials-oca-config{display:grid;gap:18px}.materials-prompt-editor{display:grid;gap:12px}.materials-prompt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.materials-prompt-head h4,.materials-prompt-head p{margin:0}.materials-prompt-head h4{color:var(--surface-deep);font-family:var(--font-display);font-size:1.15rem;font-weight:800}.materials-prompt-head p{color:var(--muted);font-size:.9rem;font-weight:700}.materials-prompt-list{display:grid;gap:12px}.materials-prompt-item{padding:14px;border:1px solid var(--line);border-radius:18px;background:#ffffff8a}.materials-prompt-item .ghost-button{justify-self:flex-start;min-height:38px;padding:0 14px}.materials-prompt-item .ghost-button.danger{color:var(--negative);border-color:#d942733d;background:#d9427314}.materials-oca-game-panel{display:grid;gap:14px}.materials-oca-game-frame{width:100%;min-height:min(860px,calc(100vh - 220px));border:0;border-radius:18px;background:#000;box-shadow:inset 0 0 0 1px var(--panel-border)}@media(max-width:1080px){.materials-oca-layout{grid-template-columns:1fr}.materials-oca-game-frame{min-height:720px}}@media(max-width:720px){.materials-oca-hero-actions,.materials-prompt-head{flex-direction:column;align-items:stretch}.materials-oca-game-frame{min-height:620px}}.wallet-spin-icon{animation:wallet-spin .9s linear infinite}@keyframes wallet-spin{to{transform:rotate(360deg)}}@media(min-width:960px){.wallet-scan-layout{grid-template-columns:minmax(320px,360px) minmax(0,1fr);align-items:start}.wallet-scan-stage{min-height:100%}.wallet-scan-panel{position:sticky;top:104px}}@media(max-width:980px){.wallet-award-form-grid{grid-template-columns:1fr}.wallet-list-grid,.wallet-concept-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.wallet-entry-screen{gap:18px}.wallet-entry-topbar{padding:16px;border-radius:24px}.wallet-hero-card,.wallet-tab-panel,.wallet-award-dialog{padding:18px;border-radius:26px}.wallet-panel-head,.wallet-list-grid,.wallet-concept-grid{grid-template-columns:1fr}.wallet-match-card{grid-template-columns:auto minmax(0,1fr)}.wallet-match-side{grid-column:2;justify-items:start}.wallet-list-foot,.wallet-scan-actions{flex-direction:column;align-items:stretch}.wallet-dialog-summary{grid-template-columns:1fr;justify-items:start}}@media(max-width:520px){.wallet-entry-topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.wallet-entry-topbar h1{font-size:1.22rem}.wallet-tab-shell{gap:8px;padding:6px}.wallet-tab-button{min-height:54px;font-size:.92rem}.wallet-pass-card{width:100%}.wallet-scan-stage{min-height:280px;padding:18px}.wallet-match-card,.wallet-list-card{padding:16px}.wallet-avatar{width:52px;height:52px;border-radius:18px}}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.menu-scrim.visible,.mobile-shell-bar,.drawer-head,.drawer-close,.menu-toggle{display:grid}.menu-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:34;border:0;background:#0f172a3d;cursor:pointer}.login-stage{width:min(100%,680px);min-height:min(100vh - 24px,820px)}.login-stage-layout{grid-template-columns:1fr;gap:24px}.login-stage-primary{gap:18px}.pwa-install-banner{left:max(16px,calc(var(--safe-left) + 16px));right:max(16px,calc(var(--safe-right) + 16px));width:auto}.login-shell{grid-template-columns:1fr;padding:18px}.nav-rail{--drawer-hidden-x: calc(-100% - 18px) ;position:fixed;top:0;bottom:0;left:0;z-index:40;width:min(360px,calc(100vw - 10px));max-width:360px;padding:16px 18px 22px;border-right:1px solid var(--line);border-bottom:0;box-shadow:0 26px 48px #1f214d33;overflow-y:auto;transform:translate(var(--drawer-hidden-x));transition:transform .28s cubic-bezier(.22,1,.36,1)}.nav-rail.open{transform:translate(0)}.drawer-head{align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:4px}.drawer-close{width:40px;height:40px;border:1px solid rgba(19,21,29,.08);border-radius:50%;cursor:pointer;background:#fffffff0;color:var(--surface-deep);font-weight:800;place-items:center;font-size:1.4rem;line-height:1}.hero-banner,.section-header,.module-header,.timeline-item,.session-head,.selection-card-title,.warehouse-line-summary{flex-direction:column}.content-shell{padding:14px;gap:16px}.mobile-shell-bar{position:sticky;top:12px;z-index:24}.split-grid,.compact-grid,.split-layout,.form-grid-2,.assignment-row,.inline-field-row,.admin-teacher-directory-card{grid-template-columns:1fr}.admin-teacher-directory-main{grid-template-columns:46px minmax(0,1fr)}.admin-teacher-directory-photo{width:46px;height:46px}.admin-teacher-directory-card .selection-meta{justify-items:start}.admin-hero,.admin-ops-grid{grid-template-columns:1fr}.admin-stat-strip,.admin-feature-grid,.admin-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-mobile-screen{width:100%;min-height:auto}.attendance-student-list{max-height:none}.brand-block{gap:10px}.brand-block p{margin:0}.nav-links{grid-template-columns:1fr}.nav-link{min-height:auto}.meta-panel{margin-top:0}.route-hero{padding:16px 18px;border-radius:26px;gap:12px}.route-hero h2{max-width:18ch;font-size:clamp(1.5rem,4vw,2rem)}.route-hero p{max-width:none}}@media(max-width:720px){.login-scene{padding:0}.login-stage{width:100%;min-height:100vh;padding-top:max(92px,calc(var(--safe-top) + 92px));border-width:0;border-radius:0;box-shadow:none}.login-stage-layout{gap:20px}.credential-form-heading{grid-template-columns:1fr;display:grid}.login-stage-layout-mobile .login-stage-primary{justify-items:center}.login-stage-layout-mobile .login-stage-brand{justify-items:center;text-align:center}.login-stage-layout-mobile .seed-orb-card{margin-top:14px}.login-stage-brand h1{font-size:clamp(1.7rem,9vw,2.4rem);max-width:12ch;text-align:center;margin-inline:auto}.seed-orb-shape{min-height:220px;padding:24px}.seed-orb-copy h2{font-size:clamp(1.45rem,8vw,2rem)}.seed-orb-close-button,.seed-access-button,.login-switch-shell,.credential-form-shell{width:100%}.login-wallet-camera-stage,.login-wallet-camera-feed,.login-wallet-camera-placeholder{min-height:164px}.login-wallet-camera-actions{align-items:stretch}.login-wallet-camera-actions .ghost-button{width:100%}.credential-demo-grid{grid-template-columns:1fr}.content-shell,.hero-banner,.hero-card,.panel,.spotlight{padding:18px}.banner-grid,.module-grid,.admin-stat-strip,.admin-constellation-summary,.admin-feature-grid,.admin-group-grid,.admin-ops-grid,.teacher-stat-strip,.teacher-group-grid,.teacher-ops-grid,.quick-fill-grid{grid-template-columns:1fr}.admin-hero,.admin-constellation-panel,.teacher-hero{padding:18px;border-radius:28px}.admin-constellation-header{display:grid;align-items:start}.admin-global-manager-head,.admin-global-editor,.admin-global-row{grid-template-columns:1fr}.admin-global-manager-head{display:grid}.admin-global-row{justify-items:start}.admin-constellation-legend{width:100%;justify-content:flex-start;border-radius:18px}.admin-constellation-map{min-height:auto;display:grid;gap:14px;padding:14px}.admin-constellation-lines{display:none}.admin-constellation-admins{position:static;display:grid;gap:12px;grid-template-columns:1fr;pointer-events:auto}.admin-constellation-admin-node,.admin-constellation-group-node{position:relative;left:auto;top:auto;width:100%;transform:none}.admin-constellation-group-head{grid-template-columns:minmax(0,1fr)}.admin-hero-copy h1,.teacher-hero-copy h1{max-width:none}.admin-feature-card,.admin-group-card,.admin-attendance-group-card,.teacher-group-card{min-height:auto}.admin-attendance-banner{min-height:112px;padding:22px 18px;border-radius:22px}.admin-attendance-group-grid{grid-template-columns:1fr}.admin-attendance-group-card{min-height:208px;padding:18px;background-image:var(--admin-attendance-card-mobile)}.admin-signal-grid{grid-template-columns:1fr 1fr}.mobile-shell-bar{padding:10px;border-radius:20px;gap:10px}.mobile-shell-copy-top{gap:6px}.mobile-shell-brand{padding:4px 8px;font-size:.68rem}.mobile-shell-avatar{width:38px;height:38px;font-size:.82rem}.route-hero h2{max-width:none;font-size:clamp(1.35rem,7vw,1.74rem)}.route-hero p{font-size:.9rem}.section-header p{margin:0}.attendance-layout-grid{gap:16px}.attendance-tabs{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:8px 8px 0 0}.attendance-tab-button{min-height:50px;padding-inline:10px;font-size:clamp(.98rem,5vw,1.14rem)}.attendance-filter-strip{gap:6px}.attendance-filter-chip{min-height:40px;padding:8px 5px;font-size:clamp(.68rem,3.3vw,.86rem)}.attendance-report-controls,.attendance-report-kpi-grid,.attendance-report-chart-grid,.attendance-report-table-grid,.historical-attendance-layout{grid-template-columns:1fr}.attendance-report-heading,.attendance-report-panel-header{align-items:flex-start;flex-direction:column}.attendance-report-controls-card,.attendance-report-panel,.attendance-report-loading{padding:16px;border-radius:24px}.attendance-report-line-chart svg,.attendance-report-line-empty{min-height:220px}.historical-attendance-table-shell{max-height:68vh}.historical-attendance-table{min-width:940px}.sticky-column-guard{width:64px;min-width:64px}.sticky-column-name{left:64px;width:148px;min-width:148px}.attendance-title-panel,.attendance-overview-panel,.attendance-action-panel,.attendance-toolbar-card,.attendance-roster-panel{padding:16px;border-radius:24px}.attendance-title-heading,.attendance-toolbar-header{grid-template-columns:1fr;display:grid;align-items:start}.attendance-summary-teacher,.attendance-toolbar-meta{width:100%;justify-content:flex-start}.attendance-toolbar{align-items:stretch}.attendance-student-card-rich{grid-template-columns:1fr;row-gap:12px}.attendance-card-menu{left:54px;top:50px}.attendance-filter-strip{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.attendance-filter-chip{flex:0 0 auto}.attendance-student-accent{display:none}.attendance-student-side{width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch}.attendance-status-choice-grid{grid-template-columns:1fr}.pwa-install-actions{flex-direction:column}.admin-hero-actions,.teacher-hero-actions,.admin-list-row{align-items:stretch}.admin-list-row{flex-direction:column}}.app-shell.role-teacher .route-hero,.teacher-dashboard .teacher-hero,.teacher-dashboard .teacher-stat-card,.teacher-dashboard .teacher-quick-card,.teacher-dashboard .teacher-quick-link,.teacher-dashboard .teacher-summary-panel,.teacher-dashboard .teacher-summary-panel .metric-card,.teacher-dashboard .teacher-group-card,.teacher-dashboard .teacher-list-panel,.teacher-dashboard .metric-card,.teacher-dashboard .module-card,.teacher-dashboard .selection-card,.teacher-dashboard .warehouse-line-summary,.teacher-dashboard .primary-link.secondary,.teacher-dashboard .field input,.teacher-dashboard .field select,.teacher-dashboard .field textarea{background:var(--surface)}.teacher-dashboard .teacher-hero:before,.teacher-dashboard .teacher-hero:after{display:none}.role-selection-shell{background:var(--bg)}.role-selection-stage{width:min(100%,680px);min-height:min(100vh - 32px,820px);align-content:center;justify-items:center;padding:clamp(28px,6vw,54px)}.role-selection-panel{width:min(420px,100%);display:grid;justify-items:center;text-align:center;color:var(--surface-deep)}.role-selection-head{display:grid;justify-items:center;gap:18px}.role-selection-head h2{margin:0;font-family:var(--font-display);font-size:clamp(1.9rem,7vw,2.8rem);font-weight:900;letter-spacing:0;line-height:.98}.role-selection-logo{width:min(230px,58vw);height:auto;display:block;object-fit:contain}.role-selection-list{display:grid;gap:12px;list-style:none;width:100%;margin:28px auto 0;padding:0}.role-selection-option{width:100%;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border-strong);border-radius:999px;padding:16px 22px;color:var(--ink);font:inherit;font-weight:var(--font-weight-extra);text-align:left;cursor:pointer;background:var(--surface);box-shadow:var(--shadow-xs);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.role-selection-option:hover,.role-selection-option:focus-visible{border-color:var(--admin-primary);box-shadow:var(--hover-lift-shadow);transform:translateY(-1px);outline:none}.role-selection-option span:last-child{color:var(--admin-primary);font-size:1.5rem;line-height:1}body,.app-shell,.content-shell,.login-shell,.role-selection-shell{background:var(--bg)}body:before{display:none}.app-shell .route-hero,.app-shell .hero-banner,.app-shell .hero-card,.app-shell .panel,.app-shell .spotlight,.app-shell .module-card,.app-shell .metric-card,.app-shell .selection-card,.app-shell .option-card,.app-shell .toggle-card,.app-shell .nested-panel,.app-shell .session-card,.app-shell .meta-panel,.app-shell .mobile-shell-bar,.app-shell .admin-hero,.app-shell .admin-stat-card,.app-shell .admin-signal-card,.app-shell .admin-signal-grid div,.app-shell .admin-quick-card,.app-shell .admin-quick-link,.app-shell .admin-feature-card,.app-shell .admin-group-card,.app-shell .admin-list-panel,.app-shell .admin-list-row,.app-shell .admin-dashboard .metric-card,.app-shell .teacher-hero,.app-shell .teacher-stat-card,.app-shell .teacher-quick-card,.app-shell .teacher-quick-link,.app-shell .teacher-summary-panel,.app-shell .teacher-summary-panel .metric-card,.app-shell .teacher-group-card,.app-shell .teacher-list-panel,.app-shell .teacher-dashboard .metric-card,.app-shell .groups-directory-panel,.app-shell .groups-editor-panel,.app-shell .group-assignment-row,.app-shell .attendance-title-panel,.app-shell .attendance-overview-panel,.app-shell .attendance-action-panel,.app-shell .attendance-toolbar-card,.app-shell .attendance-roster-panel,.app-shell .attendance-mobile-screen,.app-shell .attendance-title-card,.app-shell .attendance-summary-card,.app-shell .attendance-summary-teacher,.app-shell .attendance-search,.app-shell .attendance-student-card,.app-shell .attendance-empty-state,.app-shell .wallet-entry-topbar,.app-shell .wallet-hero-card,.app-shell .wallet-tab-shell,.app-shell .wallet-tab-panel,.app-shell .wallet-scan-stage:not(.camera-open),.app-shell .wallet-pass-card,.app-shell .wallet-pass-qr,.app-shell .wallet-scan-input,.app-shell .wallet-empty-card,.app-shell .wallet-match-card,.app-shell .wallet-list-card,.app-shell .wallet-award-dialog,.app-shell .wallet-dialog-summary,.app-shell .wallet-concept-card,.app-shell .warehouse-rail,.app-shell .warehouse-pallet,.app-shell .warehouse-pallet-stack,.app-shell .warehouse-pallet-stack.detail,.app-shell .warehouse-pallet-modal,.app-shell .warehouse-pallet-modal-visual,.app-shell .warehouse-pallet-detail,.app-shell .field input,.app-shell .field select,.app-shell .field textarea,.app-shell .warehouse-qty-input,.role-selection-option{background:var(--surface)}.app-shell .admin-hero:before,.app-shell .admin-hero:after,.app-shell .teacher-hero:before,.app-shell .teacher-hero:after,.app-shell .wallet-hero-card:before,.app-shell .wallet-hero-card:after,.app-shell .wallet-hero-orb,.auth-hero:after{display:none}.app-shell .route-hero,.app-shell .hero-banner,.app-shell .hero-card,.app-shell .panel,.app-shell .module-card,.app-shell .metric-card,.app-shell .selection-card,.app-shell .option-card,.app-shell .toggle-card,.app-shell .admin-hero,.app-shell .teacher-hero,.app-shell .admin-stat-card,.app-shell .teacher-stat-card,.app-shell .admin-quick-card,.app-shell .teacher-quick-card,.app-shell .admin-quick-link,.app-shell .teacher-quick-link,.app-shell .admin-list-row,.app-shell .attendance-title-panel,.app-shell .attendance-overview-panel,.app-shell .attendance-action-panel,.app-shell .attendance-toolbar-card,.app-shell .attendance-roster-panel,.app-shell .wallet-entry-topbar,.app-shell .wallet-hero-card,.app-shell .wallet-tab-shell,.app-shell .wallet-tab-panel{border-color:var(--line);box-shadow:var(--shadow)}:root[data-theme=dark] .nav-rail,:root[data-theme=dark] .drawer-drill-detail-view,:root[data-theme=dark] .drawer-close,:root[data-theme=dark] .menu-toggle,:root[data-theme=dark] .mobile-shell-bar,:root[data-theme=dark] .pwa-install-banner,:root[data-theme=dark] .login-stage,:root[data-theme=dark] .login-switch-shell,:root[data-theme=dark] .credential-form-shell,:root[data-theme=dark] .credential-form-panel,:root[data-theme=dark] .seed-orb-card,:root[data-theme=dark] .seed-orb-shape,:root[data-theme=dark] .seed-orb-camera-stage,:root[data-theme=dark] .role-selection-option,:root[data-theme=dark] .app-shell .route-hero,:root[data-theme=dark] .app-shell .hero-banner,:root[data-theme=dark] .app-shell .hero-card,:root[data-theme=dark] .app-shell .panel,:root[data-theme=dark] .app-shell .spotlight,:root[data-theme=dark] .app-shell .module-card,:root[data-theme=dark] .app-shell .metric-card,:root[data-theme=dark] .app-shell .selection-card,:root[data-theme=dark] .app-shell .option-card,:root[data-theme=dark] .app-shell .toggle-card,:root[data-theme=dark] .app-shell .nested-panel,:root[data-theme=dark] .app-shell .session-card,:root[data-theme=dark] .app-shell .meta-panel,:root[data-theme=dark] .app-shell .admin-hero,:root[data-theme=dark] .app-shell .admin-stat-card,:root[data-theme=dark] .app-shell .admin-signal-card,:root[data-theme=dark] .app-shell .admin-signal-grid div,:root[data-theme=dark] .app-shell .admin-quick-card,:root[data-theme=dark] .app-shell .admin-quick-link,:root[data-theme=dark] .app-shell .admin-feature-card,:root[data-theme=dark] .app-shell .admin-group-card,:root[data-theme=dark] .app-shell .admin-list-panel,:root[data-theme=dark] .app-shell .admin-list-row,:root[data-theme=dark] .app-shell .teacher-hero,:root[data-theme=dark] .app-shell .teacher-stat-card,:root[data-theme=dark] .app-shell .teacher-quick-card,:root[data-theme=dark] .app-shell .teacher-quick-link,:root[data-theme=dark] .app-shell .teacher-summary-panel,:root[data-theme=dark] .app-shell .teacher-group-card,:root[data-theme=dark] .app-shell .teacher-list-panel,:root[data-theme=dark] .app-shell .groups-directory-panel,:root[data-theme=dark] .app-shell .groups-editor-panel,:root[data-theme=dark] .app-shell .group-assignment-row,:root[data-theme=dark] .app-shell .attendance-title-panel,:root[data-theme=dark] .app-shell .attendance-overview-panel,:root[data-theme=dark] .app-shell .attendance-action-panel,:root[data-theme=dark] .app-shell .attendance-toolbar-card,:root[data-theme=dark] .app-shell .attendance-roster-panel,:root[data-theme=dark] .app-shell .attendance-mobile-screen,:root[data-theme=dark] .app-shell .attendance-title-card,:root[data-theme=dark] .app-shell .attendance-summary-card,:root[data-theme=dark] .app-shell .attendance-summary-teacher,:root[data-theme=dark] .app-shell .attendance-search,:root[data-theme=dark] .app-shell .attendance-student-card,:root[data-theme=dark] .app-shell .attendance-empty-state,:root[data-theme=dark] .app-shell .attendance-report-controls-card,:root[data-theme=dark] .app-shell .attendance-report-panel,:root[data-theme=dark] .app-shell .attendance-report-loading,:root[data-theme=dark] .app-shell .wallet-entry-topbar,:root[data-theme=dark] .app-shell .wallet-hero-card,:root[data-theme=dark] .app-shell .wallet-tab-shell,:root[data-theme=dark] .app-shell .wallet-tab-panel,:root[data-theme=dark] .app-shell .wallet-scan-stage:not(.camera-open),:root[data-theme=dark] .app-shell .wallet-pass-card,:root[data-theme=dark] .app-shell .wallet-pass-qr,:root[data-theme=dark] .app-shell .wallet-scan-input,:root[data-theme=dark] .app-shell .wallet-empty-card,:root[data-theme=dark] .app-shell .wallet-match-card,:root[data-theme=dark] .app-shell .wallet-list-card,:root[data-theme=dark] .app-shell .wallet-award-dialog,:root[data-theme=dark] .app-shell .wallet-dialog-summary,:root[data-theme=dark] .app-shell .wallet-concept-card,:root[data-theme=dark] .app-shell .warehouse-rail,:root[data-theme=dark] .app-shell .warehouse-pallet,:root[data-theme=dark] .app-shell .warehouse-pallet-stack,:root[data-theme=dark] .app-shell .warehouse-pallet-stack.detail,:root[data-theme=dark] .app-shell .warehouse-pallet-modal,:root[data-theme=dark] .app-shell .warehouse-pallet-modal-visual,:root[data-theme=dark] .app-shell .warehouse-pallet-detail,:root[data-theme=dark] .app-shell .field input,:root[data-theme=dark] .app-shell .field select,:root[data-theme=dark] .app-shell .field textarea,:root[data-theme=dark] .app-shell .warehouse-qty-input{background:var(--surface);border-color:var(--line);color:var(--ink);box-shadow:var(--shadow)}:root[data-theme=dark] .theme-mode-options,:root[data-theme=dark] .drawer-session,:root[data-theme=dark] .primary-link.secondary,:root[data-theme=dark] .ghost-button,:root[data-theme=dark] .field input,:root[data-theme=dark] .field select,:root[data-theme=dark] .field textarea,:root[data-theme=dark] .app-shell .attendance-report-date-field input,:root[data-theme=dark] .app-shell .historical-attendance-toolbar .attendance-report-date-field select,:root[data-theme=dark] .warehouse-qty-input,:root[data-theme=dark] .data-table,:root[data-theme=dark] .table-shell{background:var(--surface-muted);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .historical-attendance-table thead th,:root[data-theme=dark] .historical-attendance-table thead .sticky-column{background:var(--surface-raised)}:root[data-theme=dark] .historical-attendance-table .sticky-column,:root[data-theme=dark] .historical-attendance-legend span{background:var(--surface);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .primary-link{background:var(--surface-raised);border-color:var(--line-strong);color:var(--surface-deep)}:root[data-theme=dark] .theme-mode-option-light{background:#fff;color:var(--brand-orange)}:root[data-theme=dark] .theme-mode-option-dark{background:var(--neon-gradient);color:var(--text-on-accent)}:root[data-theme=dark] .login-install-button,:root[data-theme=dark] .login-install-guide{background:var(--surface-muted);border-color:rgba(var(--brand-purple-rgb),.46);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(var(--brand-blue-rgb),.08),0 0 16px rgba(var(--brand-purple-rgb),.14)}:root[data-theme=dark] .login-install-button:hover,:root[data-theme=dark] .login-install-button:focus-visible{border-color:rgba(var(--brand-green-rgb),.72);box-shadow:var(--neon-button-hover-shadow)}:root[data-theme=dark] .primary-link:not(.secondary){background:var(--neon-gradient);border-color:rgba(var(--brand-blue-rgb),.72);color:var(--text-on-accent);box-shadow:var(--neon-button-shadow)}:root[data-theme=dark] .nav-rail,:root[data-theme=dark] .mobile-shell-bar,:root[data-theme=dark] .pwa-install-banner,:root[data-theme=dark] .login-stage,:root[data-theme=dark] .login-switch-shell,:root[data-theme=dark] .credential-form-shell,:root[data-theme=dark] .credential-form-panel,:root[data-theme=dark] .seed-orb-card,:root[data-theme=dark] .seed-orb-shape,:root[data-theme=dark] .seed-orb-camera-stage,:root[data-theme=dark] .role-selection-option,:root[data-theme=dark] .app-shell .route-hero,:root[data-theme=dark] .app-shell .hero-banner,:root[data-theme=dark] .app-shell .hero-card,:root[data-theme=dark] .app-shell .panel,:root[data-theme=dark] .app-shell .spotlight,:root[data-theme=dark] .app-shell .module-card,:root[data-theme=dark] .app-shell .metric-card,:root[data-theme=dark] .app-shell .selection-card,:root[data-theme=dark] .app-shell .option-card,:root[data-theme=dark] .app-shell .toggle-card,:root[data-theme=dark] .app-shell .nested-panel,:root[data-theme=dark] .app-shell .session-card,:root[data-theme=dark] .app-shell .meta-panel,:root[data-theme=dark] .app-shell .admin-hero,:root[data-theme=dark] .app-shell .admin-stat-card,:root[data-theme=dark] .app-shell .admin-signal-card,:root[data-theme=dark] .app-shell .admin-signal-grid div,:root[data-theme=dark] .app-shell .admin-quick-card,:root[data-theme=dark] .app-shell .admin-quick-link,:root[data-theme=dark] .app-shell .admin-feature-card,:root[data-theme=dark] .app-shell .admin-group-card,:root[data-theme=dark] .app-shell .admin-list-panel,:root[data-theme=dark] .app-shell .admin-list-row,:root[data-theme=dark] .app-shell .teacher-hero,:root[data-theme=dark] .app-shell .teacher-stat-card,:root[data-theme=dark] .app-shell .teacher-quick-card,:root[data-theme=dark] .app-shell .teacher-quick-link,:root[data-theme=dark] .app-shell .teacher-summary-panel,:root[data-theme=dark] .app-shell .teacher-group-card,:root[data-theme=dark] .app-shell .teacher-list-panel,:root[data-theme=dark] .app-shell .groups-directory-panel,:root[data-theme=dark] .app-shell .groups-editor-panel,:root[data-theme=dark] .app-shell .group-assignment-row,:root[data-theme=dark] .app-shell .attendance-title-panel,:root[data-theme=dark] .app-shell .attendance-overview-panel,:root[data-theme=dark] .app-shell .attendance-action-panel,:root[data-theme=dark] .app-shell .attendance-toolbar-card,:root[data-theme=dark] .app-shell .attendance-roster-panel,:root[data-theme=dark] .app-shell .attendance-mobile-screen,:root[data-theme=dark] .app-shell .attendance-title-card,:root[data-theme=dark] .app-shell .attendance-summary-card,:root[data-theme=dark] .app-shell .attendance-summary-teacher,:root[data-theme=dark] .app-shell .attendance-search,:root[data-theme=dark] .app-shell .attendance-student-card,:root[data-theme=dark] .app-shell .attendance-empty-state,:root[data-theme=dark] .app-shell .attendance-report-controls-card,:root[data-theme=dark] .app-shell .attendance-report-panel,:root[data-theme=dark] .app-shell .attendance-report-loading,:root[data-theme=dark] .app-shell .wallet-entry-topbar,:root[data-theme=dark] .app-shell .wallet-hero-card,:root[data-theme=dark] .app-shell .wallet-tab-shell,:root[data-theme=dark] .app-shell .wallet-tab-panel,:root[data-theme=dark] .app-shell .wallet-scan-stage:not(.camera-open),:root[data-theme=dark] .app-shell .wallet-pass-card,:root[data-theme=dark] .app-shell .wallet-pass-qr,:root[data-theme=dark] .app-shell .wallet-scan-input,:root[data-theme=dark] .app-shell .wallet-empty-card,:root[data-theme=dark] .app-shell .wallet-match-card,:root[data-theme=dark] .app-shell .wallet-list-card,:root[data-theme=dark] .app-shell .wallet-award-dialog,:root[data-theme=dark] .app-shell .wallet-dialog-summary,:root[data-theme=dark] .app-shell .wallet-concept-card,:root[data-theme=dark] .app-shell .warehouse-rail,:root[data-theme=dark] .app-shell .warehouse-pallet,:root[data-theme=dark] .app-shell .warehouse-pallet-stack,:root[data-theme=dark] .app-shell .warehouse-pallet-stack.detail,:root[data-theme=dark] .app-shell .warehouse-pallet-modal,:root[data-theme=dark] .app-shell .warehouse-pallet-modal-visual,:root[data-theme=dark] .app-shell .warehouse-pallet-detail{border-color:var(--neon-frame-border);box-shadow:var(--neon-frame-shadow)}:root[data-theme=dark] .login-stage .seed-orb-card,:root[data-theme=dark] .login-stage .credential-form-shell{background:transparent;border-color:transparent;box-shadow:none}:root[data-theme=dark] .metric-card:before,:root[data-theme=dark] .module-card:before,:root[data-theme=dark] .panel:before,:root[data-theme=dark] .hero-card:before,:root[data-theme=dark] .admin-stat-card:before,:root[data-theme=dark] .admin-signal-card:before,:root[data-theme=dark] .admin-signal-grid div:before,:root[data-theme=dark] .teacher-stat-card:before{content:"";position:absolute;inset:0 0 auto;width:100%;height:4px;border:0;border-radius:0;border-top-left-radius:inherit;border-top-right-radius:inherit;background:var(--neon-frame-line);clip-path:none;opacity:1;box-shadow:var(--neon-frame-line-shadow);pointer-events:none}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .primary-link:not(.secondary),:root[data-theme=dark] .attendance-submit-button.ready,:root[data-theme=dark] .wallet-tab-button.active{background:var(--neon-gradient);border-color:rgba(var(--brand-blue-rgb),.72);color:var(--text-on-accent);box-shadow:var(--neon-button-shadow)}:root[data-theme=dark] .primary-button:hover,:root[data-theme=dark] .primary-link:not(.secondary):hover,:root[data-theme=dark] .ghost-button:hover,:root[data-theme=dark] .attendance-submit-button.ready:hover,:root[data-theme=dark] .wallet-tab-button:hover,:root[data-theme=dark] .wallet-tab-button:focus-visible{border-color:rgba(var(--brand-green-rgb),.8);box-shadow:var(--neon-button-hover-shadow)}:root[data-theme=dark] .primary-link.secondary,:root[data-theme=dark] .ghost-button,:root[data-theme=dark] .theme-mode-options,:root[data-theme=dark] .field input,:root[data-theme=dark] .field select,:root[data-theme=dark] .field textarea,:root[data-theme=dark] .warehouse-qty-input{border-color:rgba(var(--brand-purple-rgb),.46);box-shadow:inset 0 0 0 1px rgba(var(--brand-blue-rgb),.08),0 0 16px rgba(var(--brand-purple-rgb),.14)}:root[data-theme=dark] .nav-link:hover,:root[data-theme=dark] .nav-link.active,:root[data-theme=dark] .nav-link-admin:hover,:root[data-theme=dark] .nav-link-admin.active,:root[data-theme=dark] .nav-link-teacher:hover,:root[data-theme=dark] .nav-link-teacher.active,:root[data-theme=dark] .drawer-submenu-link:hover,:root[data-theme=dark] .drawer-submenu-link.active,:root[data-theme=dark] .teacher-submenu-link:hover,:root[data-theme=dark] .teacher-submenu-link.active{border-color:rgba(var(--brand-green-rgb),.72);color:var(--neon-green);text-shadow:0 0 14px rgba(var(--brand-green-rgb),.38)}:root[data-theme=dark] .drawer-accordion-stack>.nav-role-group>.nav-link{border-color:rgba(var(--role-link-rgb),.34);background:linear-gradient(90deg,rgba(var(--role-link-rgb),.2),rgba(var(--role-link-rgb),.08) 58%,transparent),var(--role-link-pattern) right center / 230px auto no-repeat,transparent;color:var(--role-link-color);box-shadow:inset 0 0 0 1px rgba(var(--role-link-rgb),.08),0 0 18px rgba(var(--role-link-rgb),.08);text-shadow:none}:root[data-theme=dark] .drawer-accordion-stack>.nav-role-group>.nav-link:hover,:root[data-theme=dark] .drawer-accordion-stack>.nav-role-group>.nav-link.active{border-color:rgba(var(--role-link-rgb),.62);background:linear-gradient(90deg,rgba(var(--role-link-rgb),.28),rgba(var(--role-link-rgb),.12) 62%,transparent),var(--role-link-pattern) right center / 250px auto no-repeat,transparent;color:var(--role-link-color);box-shadow:inset 0 0 0 1px rgba(var(--role-link-rgb),.12),0 0 22px rgba(var(--role-link-rgb),.14);text-shadow:none}:root[data-theme=dark] .drawer-accordion-stack>.nav-role-group>.nav-link span{color:var(--role-link-color);text-shadow:0 0 16px rgba(var(--role-link-rgb),.26)}:root[data-theme=dark] .drawer-accordion-stack>.nav-role-group>.nav-link:after{color:var(--role-link-color)}:root[data-theme=dark] .drawer-submenu-link:hover,:root[data-theme=dark] .drawer-submenu-link.active,:root[data-theme=dark] .teacher-submenu-link:hover,:root[data-theme=dark] .teacher-submenu-link.active{color:#fff;text-shadow:none}:root[data-theme=dark] .teacher-submenu-link-6,:root[data-theme=dark] .teacher-submenu-link-6:hover,:root[data-theme=dark] .teacher-submenu-link-6.active{color:var(--brand-blue-strong);text-shadow:none}:root[data-theme=dark] .login-stage:before{opacity:.16}:root[data-theme=dark] .login-stage:after{opacity:.7}:root[data-theme=dark] .login-stage-grid-cell{border-color:#ffffff0a}:root[data-theme=dark] .seed-orb-shape,:root[data-theme=dark] .credential-form-panel,:root[data-theme=dark] .wallet-pass-card{background:linear-gradient(180deg,rgba(255,255,255,.045),transparent),var(--surface)}:root[data-theme=dark] .drawer-brand-logo img,:root[data-theme=dark] .role-selection-logo,:root[data-theme=dark] .club-seven-wordmark{filter:drop-shadow(0 12px 20px rgba(0,0,0,.34))}:root[data-theme=dark] .session-avatar.with-photo,:root[data-theme=dark] .mobile-shell-avatar.with-photo{background:var(--surface-raised);border-color:var(--line)}:root[data-theme=dark] .nav-link,:root[data-theme=dark] .nav-link-admin,:root[data-theme=dark] .nav-link-teacher,:root[data-theme=dark] .data-table th,:root[data-theme=dark] .data-table td{border-color:var(--line)}:root[data-theme=dark] .app-shell .attendance-report-chart-grid-line{stroke:#ffffff1f}:root[data-theme=dark] .app-shell .attendance-report-chart-point{fill:var(--surface)}:root[data-theme=dark] .app-shell .attendance-report-chart-point.empty{fill:var(--surface-muted);stroke:#ffffff38}:root[data-theme=dark] .app-shell .attendance-report-line-empty{background:#ffffff0f;color:var(--ink)}:root[data-theme=dark] .success-banner{background:#8fd27d24;color:var(--positive)}:root[data-theme=dark] .error-banner{background:#ff8aa824;color:var(--negative)}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#eef3f875}.family-registration-page .field input,.family-registration-page .field select,.family-registration-page .field textarea,:root[data-theme=dark] .family-registration-page .field input,:root[data-theme=dark] .family-registration-page .field select,:root[data-theme=dark] .family-registration-page .field textarea{background:#fff;border-color:rgba(var(--brand-blue-rgb),.18);color:var(--family-ink);box-shadow:none}.family-registration-page .field input::placeholder,.family-registration-page .field textarea::placeholder,:root[data-theme=dark] .family-registration-page .field input::placeholder,:root[data-theme=dark] .family-registration-page .field textarea::placeholder{color:#7a8596}:root[data-theme=dark] .menu-scrim,:root[data-theme=dark] .menu-scrim.visible,:root[data-theme=dark] .wallet-award-backdrop,:root[data-theme=dark] .warehouse-pallet-modal-backdrop{background:var(--scrim)}.app-shell .admin-constellation-panel,:root[data-theme=dark] .app-shell .admin-constellation-panel{background:radial-gradient(circle at 20% 18%,rgba(var(--brand-blue-rgb),.34),transparent 26%),radial-gradient(circle at 78% 28%,rgba(var(--brand-green-rgb),.2),transparent 24%),radial-gradient(circle at 44% 88%,rgba(var(--brand-purple-rgb),.24),transparent 30%),linear-gradient(135deg,#10182b,#131629 52%,#0d1527);border-color:#7ebaf642;color:#f7fbff;box-shadow:inset 0 0 0 1px #ffffff0a,0 28px 68px #0f172a2e}.app-shell .admin-dashboard{--admin-solid-blue: var(--palette-blue);--admin-solid-purple: var(--palette-purple);--admin-solid-green: var(--palette-green);--admin-solid-pink: var(--palette-pink);--admin-solid-orange: var(--palette-orange);--admin-solid-ink: #162032;--admin-pattern-white: rgba(255, 255, 255, .16);--admin-pattern-dark: rgba(22, 32, 50, .14)}.app-shell .admin-dashboard .admin-hero{color:#fff;border:0;background-color:var(--admin-solid-blue);background-image:linear-gradient(90deg,var(--admin-solid-blue) 0 48%,var(--admin-solid-purple) 48% 76%,var(--admin-solid-orange) 76% 100%);box-shadow:0 26px 58px #005dac3d}.app-shell .admin-dashboard .admin-hero-copy h1{color:#fff;letter-spacing:0;text-shadow:0 3px 0 rgba(0,0,0,.16)}.app-shell .admin-dashboard .admin-hero-copy .lead{color:#ffffffe6}.app-shell .admin-dashboard .admin-stat-card{--admin-card-solid: var(--admin-solid-blue);color:#fff;border:0;background-color:var(--admin-card-solid);background-image:radial-gradient(circle at 88% 18%,rgba(255,255,255,.22) 0 9px,transparent 10px);box-shadow:0 18px 36px #1620322e}.app-shell .admin-dashboard .admin-stat-card:nth-child(2){--admin-card-solid: var(--admin-solid-green)}.app-shell .admin-dashboard .admin-stat-card:nth-child(3){--admin-card-solid: var(--admin-solid-purple)}.app-shell .admin-dashboard .admin-stat-card:before,.app-shell .admin-dashboard .metric-card:before,.app-shell .admin-dashboard .admin-signal-card:before,.app-shell .admin-dashboard .admin-signal-grid div:before{display:none}.app-shell .admin-dashboard .admin-stat-card span,.app-shell .admin-dashboard .admin-stat-card strong,.app-shell .admin-dashboard .admin-stat-card p{color:#fff}.app-shell .admin-dashboard>.panel:not(.admin-constellation-panel),.app-shell .admin-dashboard .admin-list-panel{border:2px solid var(--admin-solid-blue);background-color:#fff;background-image:radial-gradient(circle at 18px 18px,rgba(0,93,172,.08) 0 3px,transparent 4px),radial-gradient(circle at 58px 42px,rgba(95,63,147,.08) 0 3px,transparent 4px);background-size:82px 82px;box-shadow:0 22px 48px #1620321f}.app-shell .admin-dashboard .admin-kpi-grid .metric-card{--admin-card-solid: var(--admin-solid-blue);color:#fff;border:0;background-color:var(--admin-card-solid);box-shadow:0 16px 32px #16203229}.app-shell .admin-dashboard .admin-kpi-grid .metric-card:nth-child(2){--admin-card-solid: var(--admin-solid-green)}.app-shell .admin-dashboard .admin-kpi-grid .metric-card:nth-child(3){--admin-card-solid: var(--admin-solid-pink)}.app-shell .admin-dashboard .admin-kpi-grid .metric-card:nth-child(4){--admin-card-solid: var(--admin-solid-orange);color:var(--admin-solid-ink)}.app-shell .admin-dashboard .admin-kpi-grid .metric-card span,.app-shell .admin-dashboard .admin-kpi-grid .metric-card strong,.app-shell .admin-dashboard .admin-kpi-grid .metric-card p{color:inherit}.app-shell .admin-dashboard .admin-group-card{--admin-card-solid: var(--admin-solid-purple);color:#fff;border:0;background-color:var(--admin-card-solid);background-image:radial-gradient(circle at 88% 18%,rgba(255,255,255,.22) 0 12px,transparent 13px);box-shadow:0 18px 38px #16203229}.app-shell .admin-dashboard .admin-group-card:nth-child(5n+1){--admin-card-solid: var(--admin-solid-blue)}.app-shell .admin-dashboard .admin-group-card:nth-child(5n+2){--admin-card-solid: var(--admin-solid-green)}.app-shell .admin-dashboard .admin-group-card:nth-child(5n+3){--admin-card-solid: var(--admin-solid-orange);color:var(--admin-solid-ink)}.app-shell .admin-dashboard .admin-group-card:nth-child(5n+4){--admin-card-solid: var(--admin-solid-pink)}.app-shell .admin-dashboard .admin-group-card h3,.app-shell .admin-dashboard .admin-group-card .module-header,.app-shell .admin-dashboard .admin-group-card .status-chip{color:inherit}.app-shell .admin-dashboard .admin-group-card .status-chip{border-color:#ffffff57;background:#ffffff29}.app-shell .admin-dashboard .admin-group-card .primary-link{border-color:#ffffff6b;background:#ffffff2e;color:inherit}.app-shell .admin-dashboard .admin-list-row{color:#fff;border:0;background-color:var(--admin-solid-blue);box-shadow:0 12px 24px #16203224}.app-shell .admin-dashboard .admin-list-row:nth-child(2n){background-color:var(--admin-solid-purple)}.app-shell .admin-dashboard .admin-list-row strong,.app-shell .admin-dashboard .admin-list-row p,.app-shell .admin-dashboard .admin-list-row .status-chip{color:#fff}.app-shell .admin-dashboard .admin-list-row .status-chip{border-color:#ffffff52;background:#ffffff24}.app-shell .admin-dashboard .primary-link{border-color:var(--admin-solid-blue);color:var(--admin-solid-blue);background:#fff}.app-shell .admin-dashboard .primary-link.secondary{border-color:var(--admin-solid-purple);color:var(--admin-solid-purple);background:#fff}.app-shell .admin-dashboard .admin-constellation-panel,:root[data-theme=dark] .app-shell .admin-dashboard .admin-constellation-panel{border:0;background-color:var(--admin-solid-purple);background-image:linear-gradient(90deg,var(--admin-solid-blue) 0 34%,var(--admin-solid-purple) 34% 68%,var(--admin-solid-orange) 68% 100%);box-shadow:0 28px 68px #16203238}.app-shell .admin-dashboard .admin-constellation-panel:before{background:linear-gradient(90deg,var(--admin-solid-blue),var(--admin-solid-green),var(--admin-solid-orange),var(--admin-solid-pink),var(--admin-solid-purple))}.app-shell .admin-dashboard .admin-constellation-summary article,.app-shell .admin-dashboard .admin-global-manager,.app-shell .admin-dashboard .admin-global-form,.app-shell .admin-dashboard .admin-global-row{border-color:#ffffff47;background-color:#162032b8}.app-shell .admin-dashboard .admin-global-row.is-principal{border-color:var(--admin-solid-green);background-color:#50b848db}.app-shell .admin-dashboard .admin-global-row-avatar,.app-shell .admin-dashboard .admin-constellation-avatar,.app-shell .admin-dashboard .admin-global-legend-mark,.app-shell .admin-dashboard .admin-global-node-mark{color:var(--admin-solid-ink);background:var(--admin-solid-orange)}.app-shell .admin-dashboard .admin-constellation-map{border:2px solid rgba(255,255,255,.16);background-color:var(--admin-solid-ink);background-image:radial-gradient(circle at 18px 18px,rgba(255,255,255,.12) 0 2px,transparent 3px),radial-gradient(circle at 58px 44px,rgba(255,255,255,.1) 0 2px,transparent 3px),linear-gradient(90deg,#005dac47,#5f3f9333);background-size:76px 76px,76px 76px,auto}.app-shell .admin-dashboard .admin-constellation-group-node{background-color:rgb(var(--constellation-rgb));border:0;box-shadow:0 20px 42px #0000003d}.app-shell .admin-dashboard .admin-constellation-admin-node{border-color:var(--admin-solid-orange);background-color:var(--admin-solid-ink)}@media(max-width:720px){.login-theme-toggle{position:absolute;top:max(12px,calc(var(--safe-top) + 12px));left:max(12px,calc(var(--safe-left) + 12px));right:auto;justify-self:start;width:max-content}}.app-shell .route-hero.route-hero-attendance,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance{--attendance-banner-blue: var(--palette-blue);--attendance-banner-blue-rgb: 0, 93, 172;--attendance-banner-title-color: var(--brand-orange-strong);--attendance-banner-action-color: #111827;--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-11y12.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-11y12.jpg);--attendance-banner-image: var(--attendance-banner-desktop);min-height:178px;align-items:center;justify-content:center;padding:30px 46px;border-radius:28px;border-color:rgba(var(--attendance-banner-blue-rgb),.64);background:var(--attendance-banner-image) center / cover no-repeat,#fff;color:var(--surface-deep);box-shadow:inset 0 0 0 1px rgba(var(--attendance-banner-blue-rgb),.16),0 0 0 1px rgba(var(--attendance-banner-blue-rgb),.12),0 24px 52px rgba(var(--attendance-banner-blue-rgb),.14)}.app-shell .route-hero.route-hero-attendance.attendance-banner-6y7,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance.attendance-banner-6y7{--attendance-banner-blue: var(--brand-purple-strong);--attendance-banner-blue-rgb: var(--brand-purple-rgb);--attendance-banner-title-color: var(--brand-purple-strong);--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-6y7.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-6y7.jpg)}.app-shell .route-hero.route-hero-attendance.attendance-banner-8,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance.attendance-banner-8{--attendance-banner-blue: var(--brand-purple-strong);--attendance-banner-blue-rgb: var(--brand-purple-rgb);--attendance-banner-title-color: var(--brand-purple-strong);--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-8.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-8.jpg)}.app-shell .route-hero.route-hero-attendance.attendance-banner-9,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance.attendance-banner-9{--attendance-banner-blue: var(--brand-blue-strong);--attendance-banner-blue-rgb: var(--brand-blue-rgb);--attendance-banner-title-color: var(--brand-blue-strong);--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-9.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-9.jpg)}.app-shell .route-hero.route-hero-attendance.attendance-banner-10,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance.attendance-banner-10{--attendance-banner-blue: var(--brand-orange-strong);--attendance-banner-blue-rgb: var(--brand-orange-rgb);--attendance-banner-title-color: var(--brand-orange-strong);--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-10.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-10.jpg)}.app-shell .route-hero.route-hero-attendance.attendance-banner-11y12,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance.attendance-banner-11y12{--attendance-banner-blue: var(--brand-orange-strong);--attendance-banner-blue-rgb: var(--brand-orange-rgb);--attendance-banner-title-color: var(--brand-orange-strong);--attendance-banner-desktop: url(/brand/textures/attendance-banner-desktop-11y12.jpg);--attendance-banner-mobile: url(/brand/textures/attendance-banner-mobile-11y12.jpg)}.app-shell .route-hero.route-hero-attendance:before{display:none}.app-shell .route-hero.route-hero-attendance:after{display:none}.app-shell .route-hero.route-hero-attendance>div{width:100%}.app-shell .route-hero.route-hero-attendance .attendance-hero-copy{display:grid;justify-items:center;gap:14px}.app-shell .route-hero.route-hero-attendance h2{max-width:none;display:grid;justify-items:center;gap:4px;font-family:var(--font-display);font-size:clamp(1.9rem,4.6vw,3.15rem);font-weight:700;letter-spacing:0;line-height:.94;text-align:center;color:var(--attendance-banner-title-color);text-shadow:0 2px 0 rgba(255,255,255,.54),0 8px 20px rgba(17,24,39,.14)}.app-shell .route-hero.route-hero-attendance .attendance-hero-group,.app-shell .route-hero.route-hero-attendance .attendance-hero-action{display:block}.app-shell .route-hero.route-hero-attendance .attendance-hero-action{font-size:clamp(1.45rem,3.3vw,2.35rem);color:var(--attendance-banner-action-color)}.app-shell .route-hero.route-hero-attendance p{max-width:35ch;color:#f9fbffd1}.app-shell .route-hero.route-hero-attendance .eyebrow{color:#f9fbffa8}@media(max-width:720px){.app-shell .route-hero.route-hero-attendance,:root[data-theme=dark] .app-shell .route-hero.route-hero-attendance{--attendance-banner-image: var(--attendance-banner-mobile);min-height:156px;align-items:center;flex-direction:column;justify-content:center;gap:14px;padding:22px 20px;border-radius:22px;background:var(--attendance-banner-image) center / cover no-repeat,#fff}.app-shell .route-hero.route-hero-attendance:before{display:none}.app-shell .route-hero.route-hero-attendance h2{font-size:clamp(1.9rem,11vw,2.85rem)}.app-shell .route-hero.route-hero-attendance .attendance-hero-action{font-size:clamp(1.35rem,8vw,2.1rem)}.app-shell .route-hero.route-hero-attendance p{max-width:30ch;font-size:.92rem}}.quarterly-program-page{gap:22px}.quarterly-program-setup{display:grid;gap:18px}.quarterly-program-controls{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.quarterly-program-save-state{min-height:86px}.quarterly-program-save-state .metric-value{font-size:1rem;line-height:1.25}.quarterly-program-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:22px;align-items:start}.quarterly-calendar-panel,.quarterly-assignment-panel{display:grid;gap:18px}.quarterly-calendar-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.quarterly-legend-item{display:inline-flex;align-items:center;min-height:32px;padding:7px 10px;border-radius:999px;border:1px solid var(--line);font-size:.82rem;font-weight:800}.quarterly-legend-item.guard-a{background:rgba(var(--brand-blue-rgb),.12);border-color:rgba(var(--brand-blue-rgb),.22);color:var(--brand-blue-strong)}.quarterly-legend-item.guard-b{background:rgba(var(--brand-green-rgb),.14);border-color:rgba(var(--brand-green-rgb),.24);color:var(--brand-green-strong)}.quarterly-legend-item.manual{background:rgba(var(--brand-orange-rgb),.14);border-color:rgba(var(--brand-orange-rgb),.28);color:var(--brand-orange-strong)}.quarterly-month-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(282px,1fr));gap:16px}.quarterly-month{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#ffffffd1}.quarterly-month h4{margin:0;font-family:var(--font-display);color:var(--surface-deep);text-transform:capitalize}.quarterly-weekdays,.quarterly-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.quarterly-weekdays span{min-height:24px;display:grid;place-items:center;color:var(--muted);font-size:.72rem;font-weight:800}.quarterly-day{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid rgba(19,21,29,.08);border-radius:8px;background:#ffffffbd;color:var(--surface-deep);cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,background .14s ease}.quarterly-day:hover{transform:translateY(-1px);box-shadow:0 10px 20px #0f172a14}.quarterly-day:disabled{cursor:default}.quarterly-day:disabled:hover{transform:none;box-shadow:none}.quarterly-day.outside-month,.quarterly-day.outside-period{opacity:.34}.quarterly-day.sunday{cursor:default}.quarterly-day.assigned.guard-a{background:rgba(var(--brand-blue-rgb),.15);border-color:rgba(var(--brand-blue-rgb),.34);color:var(--brand-blue-strong)}.quarterly-day.assigned.guard-b{background:rgba(var(--brand-green-rgb),.18);border-color:rgba(var(--brand-green-rgb),.34);color:var(--brand-green-strong)}.quarterly-day.assigned.manual{box-shadow:inset 0 0 0 2px rgba(var(--brand-orange-rgb),.72)}.quarterly-day.selected{border-color:var(--brand-orange-strong);box-shadow:inset 0 0 0 2px rgba(var(--brand-orange-rgb),.66),0 12px 26px rgba(var(--brand-orange-rgb),.18)}.quarterly-day-number{align-self:start;justify-self:start;padding:6px 0 0 7px;font-size:.82rem;font-weight:800}.quarterly-day-guard{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#ffffffd6;color:currentColor;font-size:.78rem;font-weight:900}.quarterly-guard-a:before{background:var(--brand-blue-strong)}.quarterly-guard-b:before{background:var(--brand-green-strong)}.quarterly-assignment-form{display:grid;gap:14px}.quarterly-manual-list{margin-top:4px}.teacher-guard-page{gap:22px}.teacher-guard-setup{display:grid;gap:18px}.teacher-guard-controls{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.8fr));align-items:end}.teacher-guard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,420px);gap:22px;align-items:start}.teacher-guard-calendar,.teacher-guard-assignment-panel,.teacher-guard-roster-panel{display:grid;gap:18px}.teacher-guard-calendar .quarterly-day-guard{width:auto;min-width:30px;padding:0 6px}.teacher-guard-assignment-list{display:grid;gap:12px}.teacher-guard-activity-row{display:grid;grid-template-columns:minmax(128px,.9fr) minmax(160px,1fr) minmax(130px,.9fr);gap:12px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:8px;background:#ffffffdb}.teacher-guard-activity-name{display:grid;gap:8px;align-self:center}.teacher-guard-activity-name strong{color:var(--surface-deep);line-height:1.12}.teacher-guard-table-scroll{width:100%;overflow-x:auto}.teacher-guard-table{width:100%;min-width:820px;border-collapse:separate;border-spacing:0 8px}.teacher-guard-table th,.teacher-guard-table td{padding:12px 14px;text-align:center;font-size:.9rem;font-weight:800}.teacher-guard-table th{color:var(--surface-deep);border-radius:8px}.teacher-guard-table td{color:var(--muted);background:#ffffffdb;border-top:1px solid rgba(19,21,29,.06);border-bottom:1px solid rgba(19,21,29,.06)}.teacher-guard-table td>span{display:block}.teacher-guard-table td .status-chip{width:max-content;margin:6px auto 0}.teacher-guard-table tbody tr{cursor:pointer}.teacher-guard-table tbody tr.selected td{border-color:rgba(var(--brand-orange-rgb),.48);box-shadow:inset 0 0 0 1px rgba(var(--brand-orange-rgb),.24)}.teacher-guard-table tbody tr td:first-child{border-left:1px solid rgba(19,21,29,.06);border-top-left-radius:8px;border-bottom-left-radius:8px}.teacher-guard-table tbody tr td:last-child{border-right:1px solid rgba(19,21,29,.06);border-top-right-radius:8px;border-bottom-right-radius:8px}.teacher-guard-date-button{border:0;border-radius:8px;min-height:38px;width:100%;padding:8px 10px;cursor:pointer;color:#fff;background:#6f9faa;font:inherit}.teacher-guard-activity-row.tone-1,.teacher-guard-table th.tone-1,.teacher-guard-table td.tone-1{background:#c1e2b8d1}.teacher-guard-activity-row.tone-2,.teacher-guard-table th.tone-2,.teacher-guard-table td.tone-2{background:#e3c3c2c7}.teacher-guard-activity-row.tone-3,.teacher-guard-table th.tone-3,.teacher-guard-table td.tone-3{background:#d4b8d8c7}.teacher-guard-activity-row.tone-4,.teacher-guard-table th.tone-4,.teacher-guard-table td.tone-4{background:#ebda9fcc}.teacher-guard-activity-row.tone-5,.teacher-guard-table th.tone-5,.teacher-guard-table td.tone-5{background:#c4e0e8d1}.teacher-guard-activity-row.tone-6,.teacher-guard-table th.tone-6,.teacher-guard-table td.tone-6{background:#709fa9db;color:#fff}:root[data-theme=dark] .quarterly-month,:root[data-theme=dark] .quarterly-day{background:#121928c7;border-color:#eef3f81a}:root[data-theme=dark] .teacher-guard-activity-row,:root[data-theme=dark] .teacher-guard-table td{border-color:#eef3f81a}:root[data-theme=dark] .teacher-guard-activity-name strong,:root[data-theme=dark] .teacher-guard-table th{color:#f7fbff}:root[data-theme=dark] .quarterly-day.assigned.guard-a{background:rgba(var(--brand-blue-rgb),.22)}:root[data-theme=dark] .quarterly-day.assigned.guard-b{background:rgba(var(--brand-green-rgb),.2)}@media(max-width:980px){.quarterly-program-layout,.teacher-guard-layout{grid-template-columns:1fr}.teacher-guard-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.quarterly-program-controls{grid-template-columns:1fr}.quarterly-calendar-legend{justify-content:flex-start}.quarterly-month-grid{grid-template-columns:1fr}.quarterly-month{padding:12px}.quarterly-weekdays,.quarterly-days{gap:4px}.quarterly-day-number{padding:5px 0 0 6px}.quarterly-day-guard{width:22px;height:22px;right:5px;bottom:5px}.teacher-guard-controls,.teacher-guard-activity-row{grid-template-columns:1fr}.teacher-guard-table{min-width:720px}}.quarterly-program-page,.teacher-guard-page,.admin-configuration-page{--kids-blue-soft-rgb: 222, 238, 251;--kids-green-soft-rgb: 224, 244, 220;--kids-pink-soft-rgb: 253, 227, 239;--kids-purple-soft-rgb: 237, 225, 251;--kids-orange-soft-rgb: 255, 241, 204;--kids-texture-mix: url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg);--kids-texture-blue: url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg);--kids-texture-pink: url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);--kids-texture-orange: url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg);--kids-texture-purple: url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-morado.svg);--kids-texture-card: url(/brand/stock/badge-patterns/club-siete-credencial-fondo-blanco-multicolor-suave.svg)}.quarterly-program-page .panel,.quarterly-program-page .metric-card,.teacher-guard-page .panel,.teacher-guard-page .metric-card,.admin-configuration-page .panel,.admin-configuration-page .metric-card,.admin-configuration-page .selection-card,.admin-configuration-page .toggle-card{border-radius:8px;border-color:rgba(var(--brand-blue-rgb),.14);box-shadow:0 16px 32px #0f172a14,inset 0 0 0 1px #ffffff6b}.quarterly-program-page>.spotlight,.teacher-guard-page>.spotlight,.admin-configuration-page>.spotlight{min-height:168px;align-content:center;padding:clamp(22px,4vw,34px);border-color:rgba(var(--brand-green-rgb),.32);background:linear-gradient(90deg,#fffffff2 0,#fffffff2 44%,#ffffffad 76%,#ffffff57),var(--kids-texture-card) right -40px center / min(520px,58%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-green-rgb),.26),rgba(var(--brand-orange-rgb),.18) 44%,rgba(var(--brand-pink-rgb),.18))}.quarterly-program-page>.spotlight{border-color:rgba(var(--brand-orange-rgb),.42);background:linear-gradient(90deg,#fffffff5 0,#fffffff5 42%,#ffffffa8 74%,#ffffff47),var(--kids-texture-orange) right -50px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-orange-rgb),.28),rgba(var(--brand-blue-rgb),.16) 46%,rgba(var(--brand-green-rgb),.18))}.teacher-guard-page>.spotlight{border-color:rgba(var(--brand-green-rgb),.42);background:linear-gradient(90deg,#fffffff5 0,#fffffff5 42%,#ffffffa8 74%,#ffffff47),var(--kids-texture-mix) right -46px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-green-rgb),.28),rgba(var(--brand-pink-rgb),.17) 48%,rgba(var(--brand-blue-rgb),.16))}.admin-configuration-page>.spotlight{border-color:rgba(var(--brand-purple-rgb),.38);background:linear-gradient(90deg,#fffffff5 0,#fffffff5 42%,#ffffffa8 74%,#ffffff47),var(--kids-texture-purple) right -46px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-purple-rgb),.24),rgba(var(--brand-pink-rgb),.18) 48%,rgba(var(--brand-orange-rgb),.17))}.quarterly-program-page>.spotlight:before,.teacher-guard-page>.spotlight:before,.admin-configuration-page>.spotlight:before{height:7px;background:linear-gradient(90deg,var(--brand-blue-strong),var(--brand-green-strong) 28%,var(--brand-orange-strong) 52%,var(--brand-pink-strong) 76%,var(--brand-purple-strong));opacity:1}.quarterly-program-page>.spotlight:after,.teacher-guard-page>.spotlight:after,.admin-configuration-page>.spotlight:after{content:"";position:absolute;right:clamp(18px,4vw,46px);bottom:10px;width:min(210px,30vw);height:min(118px,18vw);pointer-events:none;background:currentColor;color:rgba(var(--brand-purple-rgb),.2);-webkit-mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) center / contain no-repeat;mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) center / contain no-repeat}.quarterly-program-page>.spotlight>*,.teacher-guard-page>.spotlight>*,.admin-configuration-page>.spotlight>*{position:relative;z-index:1}.quarterly-program-page>.spotlight h2,.teacher-guard-page>.spotlight h2,.admin-configuration-page>.spotlight h2{color:var(--surface-deep);font-size:clamp(2rem,5vw,3.6rem);line-height:.95}.quarterly-program-page>.spotlight .helper-copy,.teacher-guard-page>.spotlight .helper-copy{max-width:56ch;color:#3f5068;font-weight:800}.quarterly-program-page .metric-card,.teacher-guard-page .metric-card{min-height:112px;background:linear-gradient(180deg,#ffffffeb,#ffffffc7),var(--kids-texture-card) right -86px center / 280px auto no-repeat,#fff}.quarterly-program-page .metric-card:before,.teacher-guard-page .metric-card:before,.admin-configuration-page .metric-card:before{height:5px;background:linear-gradient(90deg,var(--brand-blue-strong),var(--brand-green-strong),var(--brand-orange-strong))}.quarterly-program-page .metric-card:nth-child(2):before,.teacher-guard-page .metric-card:nth-child(2):before{background:linear-gradient(90deg,var(--brand-green-strong),var(--brand-pink-strong))}.quarterly-program-page .metric-card:nth-child(3):before,.teacher-guard-page .metric-card:nth-child(3):before{background:linear-gradient(90deg,var(--brand-blue-strong),var(--brand-purple-strong))}.quarterly-program-page .metric-card:nth-child(4):before,.teacher-guard-page .metric-card:nth-child(4):before{background:linear-gradient(90deg,var(--brand-orange-strong),var(--brand-pink-strong))}.quarterly-program-page .metric-value,.teacher-guard-page .metric-value,.admin-configuration-page .metric-value{color:var(--surface-deep)}.quarterly-calendar-panel,.teacher-guard-calendar,.teacher-guard-roster-panel,.quarterly-assignment-panel,.admin-configuration-page .split-side,.admin-configuration-page .split-main{background:linear-gradient(180deg,#fffffff0,#ffffffe0),var(--kids-texture-card) right -110px top -92px / 360px auto no-repeat,#fff}.quarterly-month{border-color:rgba(var(--brand-blue-rgb),.16);background:linear-gradient(180deg,#ffffffe6,#ffffffc7),var(--kids-texture-blue) right -72px top -42px / 230px auto no-repeat,rgba(var(--brand-blue-rgb),.055);box-shadow:inset 0 0 0 1px #ffffff6b}.quarterly-month h4{display:inline-flex;width:max-content;max-width:100%;min-height:34px;align-items:center;padding:4px 12px;border-radius:8px;background:rgba(var(--brand-blue-rgb),.1);color:var(--brand-blue-strong)}.quarterly-weekdays span{border-radius:8px;background:rgba(var(--brand-purple-rgb),.08);color:var(--brand-purple-strong)}.quarterly-day{font-family:var(--font-display);font-weight:900;border-color:rgba(var(--brand-blue-rgb),.1);background:linear-gradient(180deg,#fffffff5,#ffffffd1),#fffc}.quarterly-day.assigned.guard-a{background:linear-gradient(180deg,#ffffffb3,rgba(var(--brand-blue-rgb),.16)),url(/brand/stock/seeds/club-siete-semilla-mano-azul.svg) right 7px bottom 7px / 32px 32px no-repeat,rgba(var(--brand-blue-rgb),.22);border-color:rgba(var(--brand-blue-rgb),.48);color:var(--brand-blue-strong)}.quarterly-day.assigned.guard-b{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-green-rgb),.18)),url(/brand/stock/seeds/club-siete-semilla-hoja-verde.svg) right 7px bottom 7px / 32px 32px no-repeat,rgba(var(--brand-green-rgb),.24);border-color:rgba(var(--brand-green-rgb),.5);color:var(--brand-green-strong)}.quarterly-day.assigned.manual{box-shadow:inset 0 0 0 2px rgba(var(--brand-orange-rgb),.82),0 10px 20px rgba(var(--brand-orange-rgb),.15)}.quarterly-day.selected{transform:translateY(-2px);border-color:var(--brand-pink-strong);box-shadow:inset 0 0 0 2px rgba(var(--brand-pink-rgb),.72),0 16px 30px rgba(var(--brand-pink-rgb),.2)}.quarterly-day-guard{border:1px solid rgba(255,255,255,.72);box-shadow:0 8px 16px #0f172a1a}.quarterly-assignment-panel .selection-card,.admin-configuration-page .selection-card,.teacher-guard-page .selection-card{border-radius:8px;background:linear-gradient(90deg,#fffffff0,#ffffffc7),var(--kids-texture-card) right -130px center / 300px auto no-repeat,#fff}.quarterly-assignment-panel .selection-card.active,.admin-configuration-page .selection-card.active{border-color:rgba(var(--brand-pink-rgb),.42);background:linear-gradient(90deg,#ffffffeb,rgba(var(--brand-pink-rgb),.12)),var(--kids-texture-pink) right -84px center / 260px auto no-repeat,#fff}.admin-configuration-page .split-side .selection-card:nth-child(1){border-color:rgba(var(--brand-green-rgb),.26);background:linear-gradient(90deg,#fffffff0,rgba(var(--brand-green-rgb),.13)),var(--kids-texture-mix) right -70px center / 250px auto no-repeat,#fff}.admin-configuration-page .split-side .selection-card:nth-child(2){border-color:rgba(var(--brand-orange-rgb),.3);background:linear-gradient(90deg,#fffffff0,rgba(var(--brand-orange-rgb),.16)),var(--kids-texture-orange) right -70px center / 250px auto no-repeat,#fff}.admin-configuration-page .split-main .selection-card:nth-child(6n+1){border-color:rgba(var(--brand-green-rgb),.22)}.admin-configuration-page .split-main .selection-card:nth-child(6n+2){border-color:rgba(var(--brand-pink-rgb),.22)}.admin-configuration-page .split-main .selection-card:nth-child(6n+3){border-color:rgba(var(--brand-purple-rgb),.22)}.admin-configuration-page .split-main .selection-card:nth-child(6n+4){border-color:rgba(var(--brand-orange-rgb),.26)}.admin-configuration-page .split-main .selection-card:nth-child(6n+5){border-color:rgba(var(--brand-blue-rgb),.22)}.admin-configuration-page .toggle-card{background:linear-gradient(90deg,#fffffff2,rgba(var(--brand-green-rgb),.1)),#fff}.teacher-guard-activity-row{position:relative;overflow:hidden;border-color:rgba(var(--brand-blue-rgb),.14);box-shadow:inset 0 0 0 1px #ffffff6b}.teacher-guard-activity-row:after{content:"";position:absolute;inset:8px 8px auto auto;width:68px;height:48px;pointer-events:none;background:currentColor;opacity:.14;-webkit-mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) center / contain no-repeat;mask:url(/brand/stock/seeds/club-siete-semillas-motivos.svg) center / contain no-repeat}.teacher-guard-activity-row>*{position:relative;z-index:1}.teacher-guard-activity-row.tone-1,.teacher-guard-table th.tone-1,.teacher-guard-table td.tone-1{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-green-rgb),.18)),var(--kids-texture-mix) right -92px center / 240px auto no-repeat,rgba(var(--brand-green-rgb),.24)}.teacher-guard-activity-row.tone-2,.teacher-guard-table th.tone-2,.teacher-guard-table td.tone-2{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-pink-rgb),.15)),var(--kids-texture-pink) right -92px center / 240px auto no-repeat,rgba(var(--brand-pink-rgb),.22)}.teacher-guard-activity-row.tone-3,.teacher-guard-table th.tone-3,.teacher-guard-table td.tone-3{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-purple-rgb),.15)),var(--kids-texture-purple) right -92px center / 240px auto no-repeat,rgba(var(--brand-purple-rgb),.2)}.teacher-guard-activity-row.tone-4,.teacher-guard-table th.tone-4,.teacher-guard-table td.tone-4{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-orange-rgb),.18)),var(--kids-texture-orange) right -92px center / 240px auto no-repeat,rgba(var(--brand-orange-rgb),.24)}.teacher-guard-activity-row.tone-5,.teacher-guard-table th.tone-5,.teacher-guard-table td.tone-5{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-blue-rgb),.14)),var(--kids-texture-blue) right -92px center / 240px auto no-repeat,rgba(var(--brand-blue-rgb),.2)}.teacher-guard-activity-row.tone-6,.teacher-guard-table th.tone-6,.teacher-guard-table td.tone-6{background:linear-gradient(180deg,#ffffff9e,#709fa933),url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-azul.svg) right -92px center / 240px auto no-repeat,#709fa942;color:var(--surface-deep)}.teacher-guard-date-button{background:linear-gradient(90deg,var(--brand-blue-strong),var(--brand-purple-strong));box-shadow:0 10px 18px rgba(var(--brand-blue-rgb),.18)}:root[data-theme=dark] .quarterly-program-page .panel,:root[data-theme=dark] .quarterly-program-page .metric-card,:root[data-theme=dark] .teacher-guard-page .panel,:root[data-theme=dark] .teacher-guard-page .metric-card,:root[data-theme=dark] .admin-configuration-page .panel,:root[data-theme=dark] .admin-configuration-page .metric-card,:root[data-theme=dark] .admin-configuration-page .selection-card,:root[data-theme=dark] .admin-configuration-page .toggle-card{border-color:rgba(var(--brand-blue-rgb),.28);box-shadow:0 20px 40px #00000057,inset 0 0 0 1px #ffffff09}:root[data-theme=dark] .quarterly-program-page>.spotlight,:root[data-theme=dark] .teacher-guard-page>.spotlight,:root[data-theme=dark] .admin-configuration-page>.spotlight,:root[data-theme=dark] .quarterly-calendar-panel,:root[data-theme=dark] .teacher-guard-calendar,:root[data-theme=dark] .teacher-guard-roster-panel,:root[data-theme=dark] .quarterly-assignment-panel,:root[data-theme=dark] .admin-configuration-page .split-side,:root[data-theme=dark] .admin-configuration-page .split-main,:root[data-theme=dark] .quarterly-program-page .metric-card,:root[data-theme=dark] .teacher-guard-page .metric-card,:root[data-theme=dark] .quarterly-month,:root[data-theme=dark] .quarterly-assignment-panel .selection-card,:root[data-theme=dark] .admin-configuration-page .selection-card,:root[data-theme=dark] .teacher-guard-page .selection-card,:root[data-theme=dark] .admin-configuration-page .toggle-card{background-color:var(--surface);background-blend-mode:normal}:root[data-theme=dark] .quarterly-program-page>.spotlight h2,:root[data-theme=dark] .teacher-guard-page>.spotlight h2,:root[data-theme=dark] .admin-configuration-page>.spotlight h2,:root[data-theme=dark] .quarterly-program-page>.spotlight .helper-copy,:root[data-theme=dark] .teacher-guard-page>.spotlight .helper-copy{color:var(--ink)}:root[data-theme=dark] .quarterly-day,:root[data-theme=dark] .quarterly-day.assigned.guard-a,:root[data-theme=dark] .quarterly-day.assigned.guard-b,:root[data-theme=dark] .teacher-guard-activity-row,:root[data-theme=dark] .teacher-guard-table th,:root[data-theme=dark] .teacher-guard-table td{color:var(--ink)}:root[data-theme=dark] .quarterly-program-page>.spotlight,:root[data-theme=dark] .teacher-guard-page>.spotlight,:root[data-theme=dark] .admin-configuration-page>.spotlight{background:linear-gradient(90deg,#191923f5 0,#191923f5 44%,#191923bd 76%,#1919236b),var(--kids-texture-card) right -40px center / min(520px,58%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-green-rgb),.2),rgba(var(--brand-orange-rgb),.14) 44%,rgba(var(--brand-pink-rgb),.14))}:root[data-theme=dark] .quarterly-program-page>.spotlight{background:linear-gradient(90deg,#191923f5 0,#191923f5 42%,#191923b8 74%,#19192361),var(--kids-texture-orange) right -50px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-orange-rgb),.2),rgba(var(--brand-blue-rgb),.12) 46%,rgba(var(--brand-green-rgb),.13))}:root[data-theme=dark] .teacher-guard-page>.spotlight{background:linear-gradient(90deg,#191923f5 0,#191923f5 42%,#191923b8 74%,#19192361),var(--kids-texture-mix) right -46px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-green-rgb),.18),rgba(var(--brand-pink-rgb),.12) 48%,rgba(var(--brand-blue-rgb),.12))}:root[data-theme=dark] .admin-configuration-page>.spotlight{background:linear-gradient(90deg,#191923f5 0,#191923f5 42%,#191923b8 74%,#19192361),var(--kids-texture-purple) right -46px center / min(560px,60%) auto no-repeat,linear-gradient(120deg,rgba(var(--brand-purple-rgb),.16),rgba(var(--brand-pink-rgb),.12) 48%,rgba(var(--brand-orange-rgb),.12))}:root[data-theme=dark] .quarterly-program-page .metric-card,:root[data-theme=dark] .teacher-guard-page .metric-card,:root[data-theme=dark] .quarterly-calendar-panel,:root[data-theme=dark] .teacher-guard-calendar,:root[data-theme=dark] .teacher-guard-roster-panel,:root[data-theme=dark] .quarterly-assignment-panel,:root[data-theme=dark] .admin-configuration-page .split-side,:root[data-theme=dark] .admin-configuration-page .split-main,:root[data-theme=dark] .quarterly-assignment-panel .selection-card,:root[data-theme=dark] .admin-configuration-page .selection-card,:root[data-theme=dark] .teacher-guard-page .selection-card,:root[data-theme=dark] .admin-configuration-page .toggle-card{background:linear-gradient(180deg,#20212bf0,#191923e0),var(--kids-texture-card) right -110px top -92px / 360px auto no-repeat,var(--surface)}:root[data-theme=dark] .quarterly-month{background:linear-gradient(180deg,#20212be6,#191923d1),var(--kids-texture-blue) right -72px top -42px / 230px auto no-repeat,var(--surface)}:root[data-theme=dark] .quarterly-day{background:linear-gradient(180deg,#20212bf5,#191923e6),var(--surface)}:root[data-theme=dark] .quarterly-day.assigned.guard-a{background:linear-gradient(180deg,rgba(var(--brand-blue-rgb),.2),rgba(var(--brand-blue-rgb),.1)),url(/brand/stock/seeds/club-siete-semilla-mano-azul.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--surface)}:root[data-theme=dark] .quarterly-day.assigned.guard-b{background:linear-gradient(180deg,rgba(var(--brand-green-rgb),.18),rgba(var(--brand-green-rgb),.1)),url(/brand/stock/seeds/club-siete-semilla-hoja-verde.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-1,:root[data-theme=dark] .teacher-guard-table th.tone-1,:root[data-theme=dark] .teacher-guard-table td.tone-1{background:linear-gradient(180deg,rgba(var(--brand-green-rgb),.18),rgba(var(--brand-green-rgb),.08)),var(--kids-texture-mix) right -92px center / 240px auto no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-2,:root[data-theme=dark] .teacher-guard-table th.tone-2,:root[data-theme=dark] .teacher-guard-table td.tone-2{background:linear-gradient(180deg,rgba(var(--brand-pink-rgb),.16),rgba(var(--brand-pink-rgb),.08)),var(--kids-texture-pink) right -92px center / 240px auto no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-3,:root[data-theme=dark] .teacher-guard-table th.tone-3,:root[data-theme=dark] .teacher-guard-table td.tone-3{background:linear-gradient(180deg,rgba(var(--brand-purple-rgb),.16),rgba(var(--brand-purple-rgb),.08)),var(--kids-texture-purple) right -92px center / 240px auto no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-4,:root[data-theme=dark] .teacher-guard-table th.tone-4,:root[data-theme=dark] .teacher-guard-table td.tone-4{background:linear-gradient(180deg,rgba(var(--brand-orange-rgb),.17),rgba(var(--brand-orange-rgb),.08)),var(--kids-texture-orange) right -92px center / 240px auto no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-5,:root[data-theme=dark] .teacher-guard-table th.tone-5,:root[data-theme=dark] .teacher-guard-table td.tone-5{background:linear-gradient(180deg,rgba(var(--brand-blue-rgb),.16),rgba(var(--brand-blue-rgb),.08)),var(--kids-texture-blue) right -92px center / 240px auto no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-activity-row.tone-6,:root[data-theme=dark] .teacher-guard-table th.tone-6,:root[data-theme=dark] .teacher-guard-table td.tone-6{background:linear-gradient(180deg,rgba(var(--brand-blue-rgb),.12),rgba(var(--brand-green-rgb),.08)),url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-azul.svg) right -92px center / 240px auto no-repeat,var(--surface)}@media(max-width:720px){.quarterly-program-page>.spotlight,.teacher-guard-page>.spotlight,.admin-configuration-page>.spotlight{min-height:auto;padding:22px 18px;background-size:auto,360px auto,auto}.quarterly-program-page>.spotlight:after,.teacher-guard-page>.spotlight:after,.admin-configuration-page>.spotlight:after{width:118px;height:72px;opacity:.18}.quarterly-program-page .metric-card,.teacher-guard-page .metric-card{min-height:96px}.quarterly-month h4{width:100%}}.quarterly-program-page{--quarterly-family-blue: var(--brand-blue-strong);--quarterly-family-purple: var(--brand-purple-strong);--quarterly-family-green: var(--brand-green-strong);--quarterly-family-pink: var(--brand-pink-strong);--quarterly-family-orange: var(--brand-orange);--quarterly-family-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,var(--quarterly-family-blue) 0 38%,var(--quarterly-family-purple) 38% 63%,var(--quarterly-family-pink) 63% 82%,var(--quarterly-family-orange) 82% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.quarterly-program-page .quarterly-program-setup{position:relative;gap:20px;min-height:0;padding:clamp(20px,3vw,28px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--quarterly-family-blue);color:#fff;box-shadow:0 24px 56px #0f172a33}.quarterly-program-page .quarterly-program-setup:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;height:auto;background-image:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-naranja.svg);background-size:720px;background-position:center bottom;opacity:.34;mix-blend-mode:screen;pointer-events:none}.quarterly-program-page .quarterly-program-setup:after{content:"";position:absolute;inset:auto 0 0;width:auto;height:12px;background:linear-gradient(90deg,var(--quarterly-family-green) 0 28%,var(--quarterly-family-orange) 28% 52%,var(--quarterly-family-pink) 52% 76%,var(--quarterly-family-purple) 76% 100%);color:inherit;-webkit-mask:none;mask:none;opacity:1;pointer-events:none}.quarterly-program-page .quarterly-program-setup>*{position:relative;z-index:1}.quarterly-program-hero-copy{align-items:center}.quarterly-program-logo{width:min(180px,46vw);height:auto;display:block;margin-bottom:16px;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.quarterly-program-page .quarterly-program-setup h2{margin:6px 0 10px;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:.96}.quarterly-program-page .quarterly-program-setup .eyebrow,.quarterly-program-page .quarterly-program-setup .helper-copy{color:#ffffffe6}.quarterly-program-page .quarterly-program-setup .helper-copy{font-weight:var(--font-weight-bold)}.quarterly-program-page .quarterly-program-setup .ghost-button,.quarterly-program-page .quarterly-program-setup .primary-button{border:0;background:#fff;color:var(--quarterly-family-blue);box-shadow:0 16px 32px #0f172a2e}.quarterly-program-page .quarterly-program-setup .primary-button{color:#fff;background:var(--quarterly-family-purple);box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.26)}.quarterly-program-control-card{padding:clamp(16px,2.4vw,22px);border-radius:24px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--quarterly-family-ink);box-shadow:0 18px 38px #0f172a2e}.quarterly-program-page .quarterly-program-control-card .field span,.quarterly-program-page .quarterly-program-control-card .metric-label{color:#566278}.quarterly-program-page .quarterly-program-control-card .field input,.quarterly-program-page .quarterly-program-control-card .field select,.quarterly-program-page .quarterly-program-control-card .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--quarterly-family-ink)}.quarterly-program-page .quarterly-program-control-card .field input:focus,.quarterly-program-page .quarterly-program-control-card .field select:focus,.quarterly-program-page .quarterly-program-control-card .field textarea:focus{border-color:var(--quarterly-family-pink);box-shadow:0 0 0 4px rgba(var(--brand-pink-rgb),.14)}.quarterly-program-page .quarterly-program-save-state{border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;box-shadow:0 16px 34px #0f172a1a}.quarterly-program-page .admin-kpi-grid .metric-card{border:0;border-radius:22px;background:#fffffff0;box-shadow:0 16px 34px #0f172a24}.quarterly-program-page .admin-kpi-grid .metric-card:before{height:7px}.quarterly-program-page .admin-kpi-grid .metric-card:nth-child(1):before{background:var(--quarterly-family-green)}.quarterly-program-page .admin-kpi-grid .metric-card:nth-child(2):before{background:var(--quarterly-family-pink)}.quarterly-program-page .admin-kpi-grid .metric-card:nth-child(3):before{background:var(--quarterly-family-purple)}.quarterly-program-page .admin-kpi-grid .metric-card:nth-child(4):before{background:var(--quarterly-family-orange)}.quarterly-program-page .quarterly-calendar-panel,.quarterly-program-page .quarterly-assignment-panel{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--quarterly-family-ink);box-shadow:0 24px 56px #0f172a2e}.quarterly-program-page .quarterly-calendar-panel h3,.quarterly-program-page .quarterly-assignment-panel h3{color:var(--quarterly-family-purple)}.quarterly-program-page .quarterly-month{border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;box-shadow:0 16px 34px #0f172a1a}.quarterly-program-page .quarterly-month:before{content:"";display:block;height:7px;margin:-14px -14px 2px;border-radius:22px 22px 0 0;background:var(--quarterly-family-blue)}.quarterly-program-page .quarterly-month:nth-child(4n+1):before{background:var(--quarterly-family-pink)}.quarterly-program-page .quarterly-month:nth-child(4n+2):before{background:var(--quarterly-family-purple)}.quarterly-program-page .quarterly-month:nth-child(4n+3):before{background:var(--quarterly-family-green)}.quarterly-program-page .quarterly-month:nth-child(4n+4):before{background:var(--quarterly-family-orange)}.quarterly-program-page .quarterly-month h4{background:transparent;color:var(--quarterly-family-ink);padding:0}.quarterly-program-page .quarterly-weekdays span{min-height:28px;border-radius:999px;background:var(--brand-purple-soft);color:var(--quarterly-family-purple)}.quarterly-program-page .quarterly-day{border:2px solid rgba(var(--brand-blue-rgb),.12);background:#fff;color:var(--quarterly-family-ink)}.quarterly-program-page .quarterly-day.assigned.guard-a{border-color:rgba(var(--brand-blue-rgb),.36);background:var(--brand-blue-soft);color:var(--quarterly-family-blue)}.quarterly-program-page .quarterly-day.assigned.guard-b{border-color:rgba(var(--brand-green-rgb),.36);background:var(--brand-green-soft);color:var(--quarterly-family-green)}.quarterly-program-page .quarterly-day.assigned.manual{box-shadow:inset 0 0 0 2px rgba(var(--brand-orange-rgb),.72),0 12px 24px rgba(var(--brand-orange-rgb),.2)}.quarterly-program-page .quarterly-day.selected{border-color:var(--quarterly-family-pink);box-shadow:inset 0 0 0 2px rgba(var(--brand-pink-rgb),.74),0 14px 28px rgba(var(--brand-pink-rgb),.2)}.quarterly-program-page .quarterly-day-guard{background:#fff}.quarterly-program-page .quarterly-assignment-panel .field span,.quarterly-program-page .quarterly-assignment-panel .helper-copy{color:#566278}.quarterly-program-page .quarterly-assignment-panel .field input,.quarterly-program-page .quarterly-assignment-panel .field select,.quarterly-program-page .quarterly-assignment-panel .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--quarterly-family-ink)}.quarterly-program-page .quarterly-assignment-panel .field input:focus,.quarterly-program-page .quarterly-assignment-panel .field select:focus,.quarterly-program-page .quarterly-assignment-panel .field textarea:focus{border-color:var(--quarterly-family-pink);box-shadow:0 0 0 4px rgba(var(--brand-pink-rgb),.14)}.quarterly-program-page .quarterly-assignment-panel .selection-card{border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;box-shadow:0 16px 34px #0f172a14}.quarterly-program-page .quarterly-assignment-panel .selection-card.active{border-color:rgba(var(--brand-pink-rgb),.36);background:var(--brand-pink-soft)}:root[data-theme=dark] .quarterly-program-page{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,rgba(var(--brand-blue-rgb),.3) 0,rgba(var(--brand-blue-rgb),.3) 38%,rgba(var(--brand-purple-rgb),.3) 38%,rgba(var(--brand-purple-rgb),.3) 63%,rgba(var(--brand-pink-rgb),.24) 63%,rgba(var(--brand-pink-rgb),.24) 82%,rgba(var(--brand-orange-rgb),.26) 82%,rgba(var(--brand-orange-rgb),.26))}:root[data-theme=dark] .quarterly-program-page .quarterly-program-setup,:root[data-theme=dark] .quarterly-program-page .quarterly-calendar-panel,:root[data-theme=dark] .quarterly-program-page .quarterly-assignment-panel,:root[data-theme=dark] .quarterly-program-page .quarterly-program-control-card,:root[data-theme=dark] .quarterly-program-page .quarterly-month,:root[data-theme=dark] .quarterly-program-page .admin-kpi-grid .metric-card,:root[data-theme=dark] .quarterly-program-page .quarterly-assignment-panel .selection-card,:root[data-theme=dark] .quarterly-program-page .quarterly-program-save-state{background-color:var(--surface);color:var(--ink)}:root[data-theme=dark] .quarterly-program-page .quarterly-program-setup{background:linear-gradient(180deg,#00000005,#00000047),rgba(var(--brand-blue-rgb),.24)}:root[data-theme=dark] .quarterly-program-page .quarterly-program-control-card,:root[data-theme=dark] .quarterly-program-page .quarterly-calendar-panel,:root[data-theme=dark] .quarterly-program-page .quarterly-assignment-panel{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg)}:root[data-theme=dark] .quarterly-program-page .quarterly-month,:root[data-theme=dark] .quarterly-program-page .admin-kpi-grid .metric-card,:root[data-theme=dark] .quarterly-program-page .quarterly-assignment-panel .selection-card,:root[data-theme=dark] .quarterly-program-page .quarterly-program-save-state,:root[data-theme=dark] .quarterly-program-page .quarterly-day{background:var(--surface-strong);color:var(--ink)}:root[data-theme=dark] .quarterly-program-page .quarterly-month h4,:root[data-theme=dark] .quarterly-program-page .quarterly-calendar-panel h3,:root[data-theme=dark] .quarterly-program-page .quarterly-assignment-panel h3,:root[data-theme=dark] .quarterly-program-page .metric-value{color:var(--ink)}.admin-configuration-page{--configuration-family-blue: var(--brand-blue-strong);--configuration-family-purple: var(--brand-purple-strong);--configuration-family-green: var(--brand-green-strong);--configuration-family-pink: var(--brand-pink-strong);--configuration-family-orange: var(--brand-orange);--configuration-family-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-morado.svg),linear-gradient(90deg,var(--configuration-family-blue) 0 34%,var(--configuration-family-purple) 34% 60%,var(--configuration-family-pink) 60% 80%,var(--configuration-family-orange) 80% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.admin-configuration-page>.admin-configuration-hero{position:relative;display:grid;gap:20px;min-height:0;padding:clamp(20px,3vw,28px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--configuration-family-purple);color:#fff;box-shadow:0 24px 56px #0f172a33}.admin-configuration-page>.admin-configuration-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;height:auto;background-image:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-azul.svg);background-size:740px;background-position:center bottom;opacity:.34;mix-blend-mode:screen;pointer-events:none}.admin-configuration-page>.admin-configuration-hero:after{content:"";position:absolute;inset:auto 0 0;width:auto;height:12px;background:linear-gradient(90deg,var(--configuration-family-green) 0 28%,var(--configuration-family-orange) 28% 52%,var(--configuration-family-pink) 52% 76%,var(--configuration-family-blue) 76% 100%);color:inherit;-webkit-mask:none;mask:none;opacity:1;pointer-events:none}.admin-configuration-page>.admin-configuration-hero>*{position:relative;z-index:1}.admin-configuration-hero-copy{align-items:center}.admin-configuration-logo{width:min(180px,46vw);height:auto;display:block;margin-bottom:16px;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.admin-configuration-page>.admin-configuration-hero h2{margin:6px 0 10px;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:.96}.admin-configuration-page>.admin-configuration-hero .eyebrow,.admin-configuration-page>.admin-configuration-hero .helper-copy{color:#ffffffe6}.admin-configuration-page>.admin-configuration-hero .helper-copy{max-width:56ch;font-weight:var(--font-weight-bold)}.admin-configuration-page>.admin-configuration-hero .ghost-button{border:0;background:#fff;color:var(--configuration-family-purple);box-shadow:0 16px 32px #0f172a2e}.admin-configuration-summary{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-configuration-summary article{position:relative;overflow:hidden;min-width:0;padding:14px;border-radius:18px;background:#fffffff0;border:0;color:var(--configuration-family-ink);box-shadow:0 12px 26px #0f172a24}.admin-configuration-summary article:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--configuration-family-green)}.admin-configuration-summary article:nth-child(2):before{background:var(--configuration-family-pink)}.admin-configuration-summary article:nth-child(3):before{background:var(--configuration-family-orange)}.admin-configuration-summary strong{display:block;font-family:var(--font-display);font-size:2rem;line-height:1;color:var(--configuration-family-ink)}.admin-configuration-summary span{display:block;margin-top:6px;color:#465367;font-size:.82rem;font-weight:var(--font-weight-black);line-height:1.2}.admin-configuration-layout{align-items:start}.admin-configuration-page .admin-configuration-catalog-panel,.admin-configuration-page .admin-configuration-editor-panel{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--configuration-family-ink);box-shadow:0 24px 56px #0f172a2e}.admin-configuration-page .admin-configuration-catalog-panel h3,.admin-configuration-page .admin-configuration-editor-panel h3{color:var(--configuration-family-purple)}.admin-configuration-page .section-block{gap:18px}.admin-configuration-page .selection-card,.admin-configuration-page .toggle-card{position:relative;overflow:hidden;border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;color:var(--configuration-family-ink);box-shadow:0 16px 34px #0f172a14}.admin-configuration-page .selection-card{padding-top:20px}.admin-configuration-page .selection-card:before,.admin-configuration-page .toggle-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--configuration-family-blue)}.admin-configuration-page .selection-card>*,.admin-configuration-page .toggle-card>*{position:relative;z-index:1}.admin-configuration-page .selection-card strong{color:var(--configuration-family-ink)}.admin-configuration-page .selection-card p{color:#566278}.admin-configuration-page .selection-card.active{border-color:rgba(var(--brand-pink-rgb),.36);background:linear-gradient(90deg,#ffffffeb,rgba(var(--brand-pink-rgb),.12)),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg) right -84px center / 260px auto no-repeat,#fff}.admin-configuration-page .selection-card.active:before{background:var(--configuration-family-pink)}.admin-configuration-page .admin-configuration-catalog-panel .selection-card:nth-child(1){border-color:rgba(var(--brand-green-rgb),.28);background:linear-gradient(90deg,#fffffff0,rgba(var(--brand-green-rgb),.13)),url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg) right -70px center / 250px auto no-repeat,#fff}.admin-configuration-page .admin-configuration-catalog-panel .selection-card:nth-child(1):before{background:var(--configuration-family-green)}.admin-configuration-page .admin-configuration-catalog-panel .selection-card:nth-child(2){border-color:rgba(var(--brand-orange-rgb),.3);background:linear-gradient(90deg,#fffffff0,rgba(var(--brand-orange-rgb),.16)),url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg) right -70px center / 250px auto no-repeat,#fff}.admin-configuration-page .admin-configuration-catalog-panel .selection-card:nth-child(2):before{background:var(--configuration-family-orange)}.admin-configuration-page .admin-configuration-editor-panel .selection-card:nth-child(6n+1):before{background:var(--configuration-family-green)}.admin-configuration-page .admin-configuration-editor-panel .selection-card:nth-child(6n+2):before{background:var(--configuration-family-pink)}.admin-configuration-page .admin-configuration-editor-panel .selection-card:nth-child(6n+3):before{background:var(--configuration-family-purple)}.admin-configuration-page .admin-configuration-editor-panel .selection-card:nth-child(6n+4):before{background:var(--configuration-family-orange)}.admin-configuration-page .admin-configuration-editor-panel .selection-card:nth-child(6n+5):before{background:var(--configuration-family-blue)}.admin-configuration-page .toggle-card{align-items:center;padding-top:18px}.admin-configuration-page .toggle-card:before{background:var(--configuration-family-green)}.admin-configuration-page .toggle-card input{width:18px;height:18px;accent-color:var(--configuration-family-pink)}.admin-configuration-page .field span,.admin-configuration-page .helper-copy{color:#566278}.admin-configuration-page .field input,.admin-configuration-page .field select,.admin-configuration-page .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--configuration-family-ink)}.admin-configuration-page .field input:focus,.admin-configuration-page .field select:focus,.admin-configuration-page .field textarea:focus{border-color:var(--configuration-family-pink);box-shadow:0 0 0 4px rgba(var(--brand-pink-rgb),.14)}.admin-configuration-page .primary-button{background:var(--configuration-family-purple);box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.26)}.admin-configuration-page .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.18);background:#fff;color:var(--configuration-family-blue);font-weight:var(--font-weight-black)}.admin-configuration-page .status-chip.live{background:var(--brand-green-soft);color:var(--configuration-family-green)}.admin-configuration-page .status-chip.neutral,.admin-configuration-page .status-chip.outline{border-color:rgba(var(--brand-purple-rgb),.18);background:var(--brand-purple-soft);color:var(--configuration-family-purple)}:root[data-theme=dark] .admin-configuration-page{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-morado.svg),linear-gradient(90deg,rgba(var(--brand-blue-rgb),.3) 0,rgba(var(--brand-blue-rgb),.3) 34%,rgba(var(--brand-purple-rgb),.3) 34%,rgba(var(--brand-purple-rgb),.3) 60%,rgba(var(--brand-pink-rgb),.24) 60%,rgba(var(--brand-pink-rgb),.24) 80%,rgba(var(--brand-orange-rgb),.26) 80%,rgba(var(--brand-orange-rgb),.26))}:root[data-theme=dark] .admin-configuration-page>.admin-configuration-hero{background:linear-gradient(180deg,#00000005,#00000047),rgba(var(--brand-purple-rgb),.26)}:root[data-theme=dark] .admin-configuration-page .admin-configuration-catalog-panel,:root[data-theme=dark] .admin-configuration-page .admin-configuration-editor-panel,:root[data-theme=dark] .admin-configuration-page .selection-card,:root[data-theme=dark] .admin-configuration-page .toggle-card,:root[data-theme=dark] .admin-configuration-summary article{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg);color:var(--ink)}:root[data-theme=dark] .admin-configuration-page .admin-configuration-catalog-panel h3,:root[data-theme=dark] .admin-configuration-page .admin-configuration-editor-panel h3,:root[data-theme=dark] .admin-configuration-page .selection-card strong,:root[data-theme=dark] .admin-configuration-summary strong{color:var(--ink)}:root[data-theme=dark] .admin-configuration-page .selection-card p,:root[data-theme=dark] .admin-configuration-summary span,:root[data-theme=dark] .admin-configuration-page .field span{color:var(--muted)}:root[data-theme=dark] .admin-configuration-page .field input,:root[data-theme=dark] .admin-configuration-page .field select,:root[data-theme=dark] .admin-configuration-page .field textarea{background:var(--surface-strong);color:var(--ink)}@media(max-width:980px){.admin-configuration-layout,.admin-configuration-summary{grid-template-columns:1fr}}@media(max-width:620px){.admin-configuration-page{padding:0;border-radius:0}.admin-configuration-page>.admin-configuration-hero,.admin-configuration-page .admin-configuration-catalog-panel,.admin-configuration-page .admin-configuration-editor-panel{border-radius:0}.admin-configuration-hero-copy{align-items:stretch}}.admin-password-reset-page{--password-reset-blue: var(--brand-blue-strong);--password-reset-purple: var(--brand-purple-strong);--password-reset-green: var(--brand-green-strong);--password-reset-pink: var(--brand-pink-strong);--password-reset-orange: var(--brand-orange);--password-reset-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,var(--password-reset-blue) 0 34%,var(--password-reset-green) 34% 56%,var(--password-reset-purple) 56% 78%,var(--password-reset-orange) 78% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.admin-password-reset-hero{position:relative;overflow:hidden;display:grid;gap:20px;padding:clamp(20px,3vw,28px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--password-reset-blue);color:#fff;box-shadow:0 24px 56px #0f172a33}.admin-password-reset-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-naranja-azul-sellos.svg) right -80px center / min(620px,70%) auto no-repeat,url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg) left -90px bottom -90px / 360px auto no-repeat;opacity:.38;mix-blend-mode:screen;pointer-events:none}.admin-password-reset-hero:after{content:"";position:absolute;inset:auto 0 0;height:12px;background:linear-gradient(90deg,var(--password-reset-green) 0 28%,var(--password-reset-orange) 28% 52%,var(--password-reset-pink) 52% 76%,var(--password-reset-purple) 76% 100%);pointer-events:none}.admin-password-reset-hero>*{position:relative;z-index:1}.admin-password-reset-hero-copy{align-items:center}.admin-password-reset-logo{width:min(178px,46vw);height:auto;display:block;margin-bottom:16px;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.admin-password-reset-hero h2{margin:6px 0 10px;color:#fff;font-size:clamp(2rem,5vw,3.5rem);line-height:.96}.admin-password-reset-hero .eyebrow,.admin-password-reset-hero .helper-copy{color:#ffffffe6}.admin-password-reset-hero .helper-copy{max-width:58ch;font-weight:var(--font-weight-bold)}.admin-password-reset-hero .ghost-button{border:0;background:#fff;color:var(--password-reset-blue);box-shadow:0 16px 32px #0f172a2e}.admin-password-reset-summary{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-password-reset-summary article{position:relative;overflow:hidden;min-width:0;padding:14px;border-radius:18px;background:#fffffff0;color:var(--password-reset-ink);box-shadow:0 12px 26px #0f172a24}.admin-password-reset-summary article:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--password-reset-green)}.admin-password-reset-summary article:nth-child(2):before{background:var(--password-reset-pink)}.admin-password-reset-summary article:nth-child(3):before{background:var(--password-reset-orange)}.admin-password-reset-summary strong{display:block;color:var(--password-reset-ink);font-family:var(--font-display);font-size:2rem;line-height:1}.admin-password-reset-summary span{display:block;margin-top:6px;color:#465367;font-size:.82rem;font-weight:var(--font-weight-black);line-height:1.2}.admin-password-reset-layout{align-items:start}.admin-password-reset-list-panel,.admin-password-reset-editor-panel{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--password-reset-ink);box-shadow:0 24px 56px #0f172a2e}.admin-password-reset-list-panel h3,.admin-password-reset-editor-panel h3{color:var(--password-reset-purple)}.admin-password-reset-filters{display:grid;gap:12px}.admin-password-reset-page .selection-card,.admin-password-reset-page .toggle-card,.admin-password-reset-page .metric-card{position:relative;overflow:hidden;border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;color:var(--password-reset-ink);box-shadow:0 16px 34px #0f172a14}.admin-password-reset-page .selection-card{padding-top:20px}.admin-password-reset-page .selection-card:before,.admin-password-reset-page .toggle-card:before,.admin-password-reset-page .metric-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--password-reset-blue)}.admin-password-reset-page .selection-card>*,.admin-password-reset-page .toggle-card>*,.admin-password-reset-page .metric-card>*{position:relative;z-index:1}.admin-password-reset-page .selection-card:nth-child(5n+1):before,.admin-password-reset-page .metric-card:nth-child(3n+1):before{background:var(--password-reset-green)}.admin-password-reset-page .selection-card:nth-child(5n+2):before,.admin-password-reset-page .metric-card:nth-child(3n+2):before{background:var(--password-reset-pink)}.admin-password-reset-page .selection-card:nth-child(5n+3):before,.admin-password-reset-page .metric-card:nth-child(3n+3):before{background:var(--password-reset-orange)}.admin-password-reset-page .selection-card strong,.admin-password-reset-page .metric-value{color:var(--password-reset-ink)}.admin-password-reset-page .selection-card p,.admin-password-reset-page .helper-copy,.admin-password-reset-page .field span,.admin-password-reset-page .metric-card p{color:#566278}.admin-password-reset-page .selection-card.active{border-color:rgba(var(--brand-pink-rgb),.36);background:linear-gradient(90deg,#ffffffeb,rgba(var(--brand-pink-rgb),.12)),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg) right -84px center / 260px auto no-repeat,#fff}.admin-password-reset-page .selection-card.active:before{background:var(--password-reset-pink)}.admin-password-reset-page .field input,.admin-password-reset-page .field select,.admin-password-reset-page .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--password-reset-ink)}.admin-password-reset-page .field input:focus,.admin-password-reset-page .field select:focus,.admin-password-reset-page .field textarea:focus{border-color:var(--password-reset-pink);box-shadow:0 0 0 4px rgba(var(--brand-pink-rgb),.14)}.admin-password-reset-page .primary-button{background:var(--password-reset-purple);box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.26)}.admin-password-reset-page .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.18);background:#fff;color:var(--password-reset-blue);font-weight:var(--font-weight-black)}.admin-password-reset-page .toggle-card{align-items:center;padding-top:18px}.admin-password-reset-page .toggle-card:before{background:var(--password-reset-green)}.admin-password-reset-page .toggle-card input{width:18px;height:18px;accent-color:var(--password-reset-pink)}.admin-password-reset-page .status-chip.live{background:var(--brand-green-soft);color:var(--password-reset-green)}.admin-password-reset-page .status-chip.neutral,.admin-password-reset-page .status-chip.outline{border-color:rgba(var(--brand-purple-rgb),.18);background:var(--brand-purple-soft);color:var(--password-reset-purple)}:root[data-theme=dark] .admin-password-reset-page{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,rgba(var(--brand-blue-rgb),.3) 0,rgba(var(--brand-blue-rgb),.3) 34%,rgba(var(--brand-green-rgb),.28) 34%,rgba(var(--brand-green-rgb),.28) 56%,rgba(var(--brand-purple-rgb),.3) 56%,rgba(var(--brand-purple-rgb),.3) 78%,rgba(var(--brand-orange-rgb),.26) 78%,rgba(var(--brand-orange-rgb),.26))}:root[data-theme=dark] .admin-password-reset-hero{background:linear-gradient(180deg,#00000005,#00000047),rgba(var(--brand-blue-rgb),.26)}:root[data-theme=dark] .admin-password-reset-list-panel,:root[data-theme=dark] .admin-password-reset-editor-panel,:root[data-theme=dark] .admin-password-reset-page .selection-card,:root[data-theme=dark] .admin-password-reset-page .toggle-card,:root[data-theme=dark] .admin-password-reset-page .metric-card,:root[data-theme=dark] .admin-password-reset-summary article{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg);color:var(--ink)}:root[data-theme=dark] .admin-password-reset-list-panel h3,:root[data-theme=dark] .admin-password-reset-editor-panel h3,:root[data-theme=dark] .admin-password-reset-page .selection-card strong,:root[data-theme=dark] .admin-password-reset-page .metric-value,:root[data-theme=dark] .admin-password-reset-summary strong{color:var(--ink)}:root[data-theme=dark] .admin-password-reset-page .selection-card p,:root[data-theme=dark] .admin-password-reset-page .helper-copy,:root[data-theme=dark] .admin-password-reset-summary span,:root[data-theme=dark] .admin-password-reset-page .field span{color:var(--muted)}:root[data-theme=dark] .admin-password-reset-page .field input,:root[data-theme=dark] .admin-password-reset-page .field select,:root[data-theme=dark] .admin-password-reset-page .field textarea{background:var(--surface-strong);color:var(--ink)}@media(max-width:980px){.admin-password-reset-layout,.admin-password-reset-summary{grid-template-columns:1fr}}@media(max-width:620px){.admin-password-reset-page{padding:0;border-radius:0}.admin-password-reset-hero,.admin-password-reset-list-panel,.admin-password-reset-editor-panel{border-radius:0}.admin-password-reset-hero-copy{align-items:stretch}}.role-selection-shell{--role-family-blue: var(--brand-blue-strong);--role-family-purple: var(--brand-purple-strong);--role-family-green: var(--brand-green-strong);--role-family-pink: var(--brand-pink-strong);--role-family-orange: var(--brand-orange);--role-family-ink: #192131;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,var(--role-family-blue) 0 36%,var(--role-family-purple) 36% 62%,var(--role-family-pink) 62% 82%,var(--role-family-orange) 82% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.role-selection-stage{position:relative;width:min(100%,720px);min-height:min(100vh - 48px,760px);align-content:center;justify-items:center;padding:clamp(24px,5vw,46px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--role-family-purple);color:#fff;box-shadow:0 24px 56px #0f172a33}.role-selection-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-naranja.svg);background-size:720px;background-position:center bottom;opacity:.34;mix-blend-mode:screen;pointer-events:none}.role-selection-stage:after{content:"";position:absolute;inset:auto 0 0;width:auto;height:12px;background:linear-gradient(90deg,var(--role-family-green) 0 28%,var(--role-family-orange) 28% 52%,var(--role-family-pink) 52% 76%,var(--role-family-blue) 76% 100%);filter:none;opacity:1;pointer-events:none}.role-selection-panel{width:min(500px,100%);gap:22px;color:#fff}.role-selection-head{gap:12px}.role-selection-head .eyebrow,.role-selection-head p{margin:0;color:#ffffffe6}.role-selection-head .eyebrow{font-weight:var(--font-weight-black)}.role-selection-head p{max-width:38ch;font-weight:var(--font-weight-bold);line-height:1.45}.role-selection-head h2{margin-top:2px;color:#fff;font-size:clamp(2rem,6vw,3.3rem)}.role-selection-logo{width:min(190px,54vw);filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.role-selection-list{gap:12px;margin-top:6px}.role-selection-option{--role-option-accent: var(--role-family-blue);position:relative;overflow:hidden;min-height:82px;padding:16px 18px;border:0;border-radius:22px;background:linear-gradient(90deg,#fffffff5,#ffffffdb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg) right -90px center / 260px auto no-repeat,#fff;color:var(--role-family-ink);box-shadow:0 16px 34px #0f172a24}.role-selection-option:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--role-option-accent)}.role-selection-option>span{position:relative;z-index:1}.role-selection-option>span:first-child{display:grid;gap:3px;min-width:0}.role-selection-option strong{color:var(--role-family-ink);font-family:var(--font-display);font-size:1.2rem;line-height:1;overflow-wrap:anywhere}.role-selection-option small{color:#566278;font-size:.82rem;font-weight:var(--font-weight-bold);line-height:1.25;overflow-wrap:anywhere}.role-selection-option>span:last-child{width:34px;height:34px;display:grid;flex:0 0 auto;place-items:center;border-radius:999px;background:var(--role-option-accent);color:#fff;font-size:1.35rem;box-shadow:0 10px 18px #0f172a1f}.role-selection-list li:nth-child(1) .role-selection-option{--role-option-accent: var(--role-family-green)}.role-selection-list li:nth-child(2) .role-selection-option{--role-option-accent: var(--role-family-pink)}.role-selection-list li:nth-child(3) .role-selection-option{--role-option-accent: var(--role-family-purple)}.role-selection-list li:nth-child(4) .role-selection-option{--role-option-accent: var(--role-family-orange)}.role-selection-list li:nth-child(5) .role-selection-option{--role-option-accent: var(--role-family-blue)}.role-selection-option:hover,.role-selection-option:focus-visible{border-color:transparent;box-shadow:0 20px 40px #0f172a33;transform:translateY(-2px)}:root[data-theme=dark] .role-selection-shell{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,rgba(var(--brand-blue-rgb),.3) 0,rgba(var(--brand-blue-rgb),.3) 36%,rgba(var(--brand-purple-rgb),.3) 36%,rgba(var(--brand-purple-rgb),.3) 62%,rgba(var(--brand-pink-rgb),.24) 62%,rgba(var(--brand-pink-rgb),.24) 82%,rgba(var(--brand-orange-rgb),.26) 82%,rgba(var(--brand-orange-rgb),.26))}:root[data-theme=dark] .role-selection-stage{background:linear-gradient(180deg,#00000005,#00000047),rgba(var(--brand-purple-rgb),.26)}:root[data-theme=dark] .role-selection-option{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg) right -90px center / 260px auto no-repeat,var(--surface);color:var(--ink)}:root[data-theme=dark] .role-selection-option strong{color:var(--ink)}:root[data-theme=dark] .role-selection-option small{color:var(--muted)}@media(max-width:620px){.role-selection-shell{padding:0}.role-selection-stage{min-height:100vh;border-radius:0}.role-selection-option{min-height:78px;border-radius:18px}}.teacher-dashboard{--teacher-family-green: var(--brand-green-strong);--teacher-family-blue: var(--brand-blue-strong);--teacher-family-orange: var(--brand-orange);--teacher-family-purple: var(--brand-purple-strong);--teacher-family-pink: var(--brand-pink-strong);--teacher-family-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-verde.svg),linear-gradient(90deg,var(--teacher-family-green) 0 34%,var(--teacher-family-blue) 34% 60%,var(--teacher-family-orange) 60% 80%,var(--teacher-family-pink) 80% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.teacher-dashboard .teacher-hero{position:relative;display:grid;gap:20px;min-height:0;padding:clamp(20px,3vw,28px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--teacher-family-green);color:#fff;box-shadow:0 24px 56px #0f172a33}.teacher-dashboard .teacher-hero:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:auto;height:auto;border-radius:0;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-verde-azul-hojas.svg) right -80px center / min(620px,70%) auto no-repeat,url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-azul.svg) left -90px bottom -90px / 360px auto no-repeat;filter:none;opacity:.38;mix-blend-mode:screen;pointer-events:none}.teacher-dashboard .teacher-hero:after{content:"";display:block;position:absolute;inset:auto 0 0;width:auto;height:12px;border-radius:0;background:linear-gradient(90deg,var(--teacher-family-blue) 0 28%,var(--teacher-family-orange) 28% 52%,var(--teacher-family-pink) 52% 76%,var(--teacher-family-purple) 76% 100%);filter:none;opacity:1;pointer-events:none}.teacher-dashboard .teacher-hero-copy{position:relative;z-index:1;gap:16px}.teacher-dashboard-logo{width:min(180px,46vw);height:auto;display:block;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.teacher-dashboard .teacher-hero .eyebrow,.teacher-dashboard .teacher-hero .lead{color:#ffffffe6}.teacher-dashboard .teacher-hero .eyebrow{font-weight:var(--font-weight-black)}.teacher-dashboard .teacher-hero-copy h1{max-width:none;margin:0;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:.96;letter-spacing:0}.teacher-dashboard .teacher-hero-copy .lead{max-width:62ch;font-weight:var(--font-weight-bold)}.teacher-dashboard .teacher-hero-actions .primary-button,.teacher-dashboard .teacher-hero-actions .primary-link.secondary{border:0;background:#fff;color:var(--teacher-family-green);box-shadow:0 16px 32px #0f172a2e}.teacher-dashboard .teacher-hero-actions .primary-link.secondary{color:var(--teacher-family-blue)}.teacher-dashboard .teacher-stat-strip{gap:12px}.teacher-dashboard .teacher-stat-card{position:relative;overflow:hidden;min-width:0;padding:16px;border:0;border-radius:18px;background:#fffffff0;color:var(--teacher-family-ink);box-shadow:0 12px 26px #0f172a24}.teacher-dashboard .teacher-stat-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;border:0;clip-path:none;background:var(--teacher-family-blue)}.teacher-dashboard .teacher-stat-card:nth-child(1):before{background:var(--teacher-family-blue)}.teacher-dashboard .teacher-stat-card:nth-child(2):before{background:var(--teacher-family-orange)}.teacher-dashboard .teacher-stat-card:nth-child(3):before{background:var(--teacher-family-pink)}.teacher-dashboard .teacher-stat-card span{color:#465367;letter-spacing:0;text-transform:none}.teacher-dashboard .teacher-stat-card strong{color:var(--teacher-family-ink)}.teacher-dashboard .teacher-summary-panel,.teacher-dashboard .teacher-list-panel{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-verde.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--teacher-family-ink);box-shadow:0 24px 56px #0f172a2e}.teacher-dashboard .teacher-summary-panel h2,.teacher-dashboard .teacher-list-panel h3{color:var(--teacher-family-green)}.teacher-dashboard .teacher-summary-panel .helper-copy,.teacher-dashboard .teacher-list-panel .helper-copy,.teacher-dashboard .field span,.teacher-dashboard .selection-card p{color:#566278}.teacher-dashboard .teacher-summary-panel .metric-card,.teacher-dashboard .teacher-list-panel .metric-card,.teacher-dashboard .teacher-group-card,.teacher-dashboard .selection-card,.teacher-dashboard .warehouse-line-summary{position:relative;overflow:hidden;border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;color:var(--teacher-family-ink);box-shadow:0 16px 34px #0f172a14}.teacher-dashboard .teacher-summary-panel .metric-card:before,.teacher-dashboard .teacher-group-card:before,.teacher-dashboard .selection-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--teacher-family-green)}.teacher-dashboard .teacher-summary-panel .metric-card>*,.teacher-dashboard .teacher-group-card>*,.teacher-dashboard .selection-card>*{position:relative;z-index:1}.teacher-dashboard .teacher-summary-panel .metric-card:nth-child(1):before,.teacher-dashboard .teacher-group-card:nth-child(5n+1):before,.teacher-dashboard .selection-card:nth-child(5n+1):before{background:var(--teacher-family-green)}.teacher-dashboard .teacher-summary-panel .metric-card:nth-child(2):before,.teacher-dashboard .teacher-group-card:nth-child(5n+2):before,.teacher-dashboard .selection-card:nth-child(5n+2):before{background:var(--teacher-family-blue)}.teacher-dashboard .teacher-summary-panel .metric-card:nth-child(3):before,.teacher-dashboard .teacher-group-card:nth-child(5n+3):before,.teacher-dashboard .selection-card:nth-child(5n+3):before{background:var(--teacher-family-orange)}.teacher-dashboard .teacher-summary-panel .metric-card:nth-child(4):before,.teacher-dashboard .teacher-group-card:nth-child(5n+4):before,.teacher-dashboard .selection-card:nth-child(5n+4):before{background:var(--teacher-family-purple)}.teacher-dashboard .teacher-group-card{min-height:172px;padding-top:22px;background:linear-gradient(180deg,#fffffff5,#ffffffe6),url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg) right -80px center / 260px auto no-repeat,#fff}.teacher-dashboard .teacher-group-card h3,.teacher-dashboard .selection-card strong,.teacher-dashboard .warehouse-line-summary strong,.teacher-dashboard .metric-value{color:var(--teacher-family-ink)}.teacher-dashboard .teacher-kpi-grid .metric-card{min-height:132px;padding-top:22px}.teacher-dashboard .primary-link{border:2px solid rgba(var(--brand-green-rgb),.18);background:var(--brand-green-soft);color:var(--teacher-family-green);font-weight:var(--font-weight-black)}.teacher-dashboard .primary-link.secondary,.teacher-dashboard .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.16);background:#fff;color:var(--teacher-family-blue);font-weight:var(--font-weight-black)}.teacher-dashboard .primary-button{background:var(--teacher-family-green);box-shadow:0 16px 32px rgba(var(--brand-green-rgb),.24)}.teacher-dashboard .field input,.teacher-dashboard .field select,.teacher-dashboard .field textarea{border:2px solid rgba(var(--brand-green-rgb),.16);background:#fff;color:var(--teacher-family-ink)}.teacher-dashboard .field input:focus,.teacher-dashboard .field select:focus,.teacher-dashboard .field textarea:focus{border-color:var(--teacher-family-orange);box-shadow:0 0 0 4px rgba(var(--brand-orange-rgb),.14)}.teacher-dashboard .selection-card{padding-top:22px;background:linear-gradient(90deg,#fffffff5,#ffffffdb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg) right -100px center / 280px auto no-repeat,#fff}.teacher-dashboard .warehouse-line-summary{background:linear-gradient(90deg,#fffffff5,rgba(var(--brand-green-rgb),.08)),url(/brand/stock/seeds/club-siete-semilla-hoja-verde.svg) right 14px center / 54px auto no-repeat,#fff}.teacher-dashboard .status-chip.live{background:var(--brand-green-soft);color:var(--teacher-family-green)}.teacher-dashboard .status-chip.neutral{background:var(--brand-blue-soft);color:var(--teacher-family-blue)}.teacher-dashboard .status-chip.warning{background:var(--brand-orange-soft);color:#996016}.teacher-dashboard .status-chip.outline{border-color:rgba(var(--brand-purple-rgb),.18);background:var(--brand-purple-soft);color:var(--teacher-family-purple)}.teacher-dashboard.admin-attendance-page .admin-attendance-group-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.teacher-dashboard.admin-attendance-page .admin-attendance-group-card{min-height:230px;text-decoration:none;background:linear-gradient(90deg,#fffffffa 0,#fffffffa 44%,#ffffffa8 72%,#ffffff38),var(--admin-attendance-card-desktop) right center / cover no-repeat,#fff}.teacher-dashboard.admin-attendance-page .admin-attendance-group-card h3{max-width:12ch;color:var(--teacher-family-ink);text-shadow:none}.teacher-dashboard.admin-attendance-page .admin-attendance-card-count strong{color:var(--teacher-family-green);text-shadow:none}.teacher-dashboard.admin-attendance-page .admin-attendance-card-count span{color:#566278;font-weight:var(--font-weight-black)}.teacher-dashboard.admin-attendance-page .admin-attendance-card-action.primary-link{width:max-content;max-width:100%;justify-self:start;border-bottom:0;text-shadow:none}.teacher-dashboard.attendance-children-detail-page .attendance-tabs{border:0;border-radius:22px;padding:8px;background:#fffffff0;box-shadow:0 18px 34px #0f172a1f}.teacher-dashboard.attendance-children-detail-page .attendance-tab-button{min-height:48px;border:0;border-radius:16px;background:transparent;color:var(--teacher-family-blue);font-size:1rem;font-weight:var(--font-weight-black);text-shadow:none}.teacher-dashboard.attendance-children-detail-page .attendance-tab-button:first-child,.teacher-dashboard.attendance-children-detail-page .attendance-tab-button:last-child{border-radius:16px}.teacher-dashboard.attendance-children-detail-page .attendance-tab-button.active{background:var(--brand-green-soft);color:var(--teacher-family-green);box-shadow:inset 0 0 0 2px rgba(var(--brand-green-rgb),.16)}.teacher-dashboard.attendance-children-detail-page .attendance-tab-button.active:after{display:none}.teacher-dashboard.attendance-children-detail-page .attendance-toolbar-card,.teacher-dashboard.attendance-children-detail-page .attendance-roster-panel,.teacher-dashboard.attendance-children-detail-page .attendance-action-panel,.teacher-dashboard.attendance-children-detail-page .attendance-report-controls-card,.teacher-dashboard.attendance-children-detail-page .attendance-report-panel,.teacher-dashboard.attendance-children-detail-page .attendance-report-loading{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-verde.svg) right top / 680px auto no-repeat;color:var(--teacher-family-ink);box-shadow:0 24px 56px #0f172a2e}.teacher-dashboard.attendance-children-detail-page .attendance-report-heading h2,.teacher-dashboard.attendance-children-detail-page .attendance-toolbar-header h2{color:var(--teacher-family-green)}.teacher-dashboard.attendance-children-detail-page .attendance-report-heading p,.teacher-dashboard.attendance-children-detail-page .attendance-report-kpi p,.teacher-dashboard.attendance-children-detail-page .attendance-report-date-field span{color:#566278}.teacher-dashboard.attendance-children-detail-page .attendance-report-date-field input,.teacher-dashboard.attendance-children-detail-page .attendance-search input,.teacher-dashboard.attendance-children-detail-page .attendance-student-card input,.teacher-dashboard.attendance-children-detail-page .attendance-student-card select{border:2px solid rgba(var(--brand-green-rgb),.16);background:#fff;color:var(--teacher-family-ink)}.teacher-dashboard.attendance-children-detail-page .attendance-report-kpi{position:relative;overflow:hidden;border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;color:var(--teacher-family-ink);box-shadow:0 16px 34px #0f172a14}.teacher-dashboard.attendance-children-detail-page .attendance-report-kpi:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--report-kpi-color)}.teacher-dashboard.attendance-children-detail-page .attendance-report-kpi>*{position:relative;z-index:1}.teacher-dashboard.attendance-children-detail-page .attendance-report-kpi strong{color:var(--teacher-family-ink)}.teacher-dashboard.attendance-children-detail-page .attendance-report-table{overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 16px 34px #0f172a14}:root[data-theme=dark] .teacher-dashboard{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-verde.svg),linear-gradient(90deg,rgba(var(--brand-green-rgb),.3) 0,rgba(var(--brand-green-rgb),.3) 34%,rgba(var(--brand-blue-rgb),.3) 34%,rgba(var(--brand-blue-rgb),.3) 60%,rgba(var(--brand-orange-rgb),.26) 60%,rgba(var(--brand-orange-rgb),.26) 80%,rgba(var(--brand-pink-rgb),.24) 80%,rgba(var(--brand-pink-rgb),.24))}:root[data-theme=dark] .teacher-dashboard .teacher-hero{background:linear-gradient(180deg,#00000005,#00000047),rgba(var(--brand-green-rgb),.24)}:root[data-theme=dark] .teacher-dashboard .teacher-summary-panel,:root[data-theme=dark] .teacher-dashboard .teacher-list-panel,:root[data-theme=dark] .teacher-dashboard .teacher-summary-panel .metric-card,:root[data-theme=dark] .teacher-dashboard .teacher-list-panel .metric-card,:root[data-theme=dark] .teacher-dashboard .teacher-group-card,:root[data-theme=dark] .teacher-dashboard .selection-card,:root[data-theme=dark] .teacher-dashboard .warehouse-line-summary{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-verde.svg);color:var(--ink)}:root[data-theme=dark] .teacher-dashboard .teacher-summary-panel h2,:root[data-theme=dark] .teacher-dashboard .teacher-list-panel h3,:root[data-theme=dark] .teacher-dashboard .teacher-group-card h3,:root[data-theme=dark] .teacher-dashboard .selection-card strong,:root[data-theme=dark] .teacher-dashboard .warehouse-line-summary strong,:root[data-theme=dark] .teacher-dashboard .metric-value{color:var(--ink)}:root[data-theme=dark] .teacher-dashboard .teacher-summary-panel .helper-copy,:root[data-theme=dark] .teacher-dashboard .teacher-list-panel .helper-copy,:root[data-theme=dark] .teacher-dashboard .field span,:root[data-theme=dark] .teacher-dashboard .selection-card p{color:var(--muted)}:root[data-theme=dark] .teacher-dashboard .field input,:root[data-theme=dark] .teacher-dashboard .field select,:root[data-theme=dark] .teacher-dashboard .field textarea{background:var(--surface-strong);color:var(--ink)}:root[data-theme=dark] .teacher-dashboard.admin-attendance-page .admin-attendance-group-card,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-toolbar-card,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-roster-panel,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-action-panel,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-controls-card,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-panel,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-loading,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-kpi,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-table{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-verde.svg);color:var(--ink)}:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-tabs{background:#20212bf0}:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-report-date-field input,:root[data-theme=dark] .teacher-dashboard.attendance-children-detail-page .attendance-search input{background:var(--surface-strong);color:var(--ink)}@media(max-width:620px){.teacher-dashboard{padding:0;border-radius:0}.teacher-dashboard .teacher-hero,.teacher-dashboard .teacher-summary-panel,.teacher-dashboard .teacher-list-panel,.teacher-dashboard.attendance-children-detail-page .attendance-toolbar-card,.teacher-dashboard.attendance-children-detail-page .attendance-roster-panel,.teacher-dashboard.attendance-children-detail-page .attendance-action-panel,.teacher-dashboard.attendance-children-detail-page .attendance-report-controls-card,.teacher-dashboard.attendance-children-detail-page .attendance-report-panel,.teacher-dashboard.attendance-children-detail-page .attendance-report-loading{border-radius:0}}.teacher-guard-page{--guard-family-blue: var(--brand-blue-strong);--guard-family-purple: var(--brand-purple-strong);--guard-family-orange: var(--brand-orange);--guard-family-green: var(--brand-green-strong);--guard-family-pink: var(--brand-pink-strong);--guard-family-teal: #6f9faa;--guard-family-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,var(--guard-family-teal) 0 34%,var(--guard-family-blue) 34% 58%,var(--guard-family-purple) 58% 78%,var(--guard-family-orange) 78% 100%);background-size:560px auto,auto;background-position:top left,center;background-blend-mode:soft-light,normal}.teacher-guard-page .teacher-guard-setup{position:relative;gap:20px;min-height:0;padding:clamp(20px,3vw,28px);border:0;border-radius:28px;background:linear-gradient(180deg,#00000005,#00000024),var(--guard-family-teal);color:#fff;box-shadow:0 24px 56px #0f172a33}.teacher-guard-page .teacher-guard-setup:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;height:auto;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-naranja-azul-sellos.svg) right -70px center / min(620px,70%) auto no-repeat,url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-morado.svg) left -100px bottom -120px / 430px auto no-repeat;opacity:.36;mix-blend-mode:screen;pointer-events:none}.teacher-guard-page .teacher-guard-setup:after{content:"";position:absolute;inset:auto 0 0;width:auto;height:12px;background:linear-gradient(90deg,var(--guard-family-blue) 0 28%,var(--guard-family-orange) 28% 52%,var(--guard-family-pink) 52% 76%,var(--guard-family-purple) 76% 100%);color:inherit;-webkit-mask:none;mask:none;opacity:1;pointer-events:none}.teacher-guard-page .teacher-guard-setup>*{position:relative;z-index:1}.teacher-guard-hero-copy{align-items:center}.teacher-guard-logo{width:min(180px,46vw);height:auto;display:block;margin-bottom:16px;filter:drop-shadow(0 12px 24px rgba(15,23,42,.18))}.teacher-guard-page .teacher-guard-setup h2{margin:6px 0 10px;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:.96}.teacher-guard-page .teacher-guard-setup .eyebrow,.teacher-guard-page .teacher-guard-setup .helper-copy{color:#ffffffe6}.teacher-guard-page .teacher-guard-setup .helper-copy{font-weight:var(--font-weight-bold)}.teacher-guard-page .teacher-guard-setup .ghost-button,.teacher-guard-page .teacher-guard-setup .primary-button{border:0;background:#fff;color:var(--guard-family-teal);box-shadow:0 16px 32px #0f172a2e}.teacher-guard-page .teacher-guard-setup .primary-button{color:#fff;background:var(--guard-family-purple);box-shadow:0 16px 32px rgba(var(--brand-purple-rgb),.26)}.teacher-guard-control-card{padding:clamp(16px,2.4vw,22px);border-radius:24px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--guard-family-ink);box-shadow:0 18px 38px #0f172a2e}.teacher-guard-page .teacher-guard-control-card .field span,.teacher-guard-page .teacher-guard-control-card .metric-label{color:#566278}.teacher-guard-page .teacher-guard-control-card .field select,.teacher-guard-page .teacher-guard-control-card .field input,.teacher-guard-page .teacher-guard-control-card .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--guard-family-ink)}.teacher-guard-page .teacher-guard-control-card .field select:focus,.teacher-guard-page .teacher-guard-control-card .field input:focus,.teacher-guard-page .teacher-guard-control-card .field textarea:focus{border-color:var(--guard-family-orange);box-shadow:0 0 0 4px rgba(var(--brand-orange-rgb),.14)}.teacher-guard-page .teacher-guard-control-card .metric-card{min-height:112px;border:2px solid rgba(19,21,29,.06);border-radius:22px;background:#fff;color:var(--guard-family-ink);box-shadow:0 16px 34px #0f172a1a}.teacher-guard-page .teacher-guard-control-card .metric-card:before{height:7px}.teacher-guard-page .teacher-guard-control-card .metric-card:nth-of-type(1):before{background:var(--guard-family-blue)}.teacher-guard-page .teacher-guard-control-card .metric-card:nth-of-type(2):before{background:var(--guard-family-orange)}.teacher-guard-page .teacher-guard-control-card .metric-card:nth-of-type(3):before{background:var(--guard-family-purple)}.teacher-guard-page .teacher-guard-calendar,.teacher-guard-page .teacher-guard-assignment-panel,.teacher-guard-page .teacher-guard-roster-panel{border:0;border-radius:28px;background:linear-gradient(180deg,#fffffff5,#ffffffeb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-naranja.svg);background-size:auto,680px auto;background-position:center,right top;color:var(--guard-family-ink);box-shadow:0 24px 56px #0f172a2e}.teacher-guard-page .teacher-guard-calendar h3,.teacher-guard-page .teacher-guard-assignment-panel h3,.teacher-guard-page .teacher-guard-roster-panel h3{color:var(--guard-family-blue)}.teacher-guard-page .quarterly-month{border:2px solid rgba(19,21,29,.06);border-radius:22px;background:linear-gradient(180deg,#fffffff5,#ffffffe6),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg) right -84px top -42px / 260px auto no-repeat,#fff;box-shadow:0 16px 34px #0f172a1a}.teacher-guard-page .quarterly-month:before{content:"";display:block;height:7px;margin:-14px -14px 2px;border-radius:22px 22px 0 0;background:var(--guard-family-blue)}.teacher-guard-page .quarterly-month:nth-child(4n+1):before{background:var(--guard-family-blue)}.teacher-guard-page .quarterly-month:nth-child(4n+2):before{background:var(--guard-family-purple)}.teacher-guard-page .quarterly-month:nth-child(4n+3):before{background:var(--guard-family-orange)}.teacher-guard-page .quarterly-month:nth-child(4n+4):before{background:var(--guard-family-teal)}.teacher-guard-page .quarterly-month h4{background:transparent;color:var(--guard-family-ink);padding:0}.teacher-guard-page .quarterly-weekdays span{min-height:28px;border-radius:999px;background:var(--brand-blue-soft);color:var(--guard-family-blue)}.teacher-guard-page .quarterly-day{border:2px solid rgba(var(--brand-blue-rgb),.12);background:#fff;color:var(--guard-family-ink)}.teacher-guard-page .quarterly-day.assigned.guard-a{border-color:rgba(var(--brand-blue-rgb),.36);background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-blue-rgb),.16)),url(/brand/stock/seeds/club-siete-semilla-mano-azul.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--brand-blue-soft);color:var(--guard-family-blue)}.teacher-guard-page .quarterly-day.assigned.guard-b{border-color:rgba(var(--brand-green-rgb),.36);background:linear-gradient(180deg,#ffffffbd,rgba(var(--brand-green-rgb),.16)),url(/brand/stock/seeds/club-siete-semilla-hoja-verde.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--brand-green-soft);color:var(--guard-family-green)}.teacher-guard-page .quarterly-day.assigned.manual{box-shadow:inset 0 0 0 2px rgba(var(--brand-orange-rgb),.72),0 12px 24px rgba(var(--brand-orange-rgb),.2)}.teacher-guard-page .quarterly-day.selected{border-color:var(--guard-family-pink);box-shadow:inset 0 0 0 2px rgba(var(--brand-pink-rgb),.74),0 14px 28px rgba(var(--brand-pink-rgb),.2)}.teacher-guard-page .quarterly-day-guard{background:#fff}.teacher-guard-page .teacher-guard-assignment-panel .helper-copy,.teacher-guard-page .teacher-guard-roster-panel .helper-copy,.teacher-guard-page .teacher-guard-assignment-panel .field span,.teacher-guard-page .teacher-guard-assignment-panel .selection-card p{color:#566278}.teacher-guard-page .teacher-guard-assignment-panel .field input,.teacher-guard-page .teacher-guard-assignment-panel .field select,.teacher-guard-page .teacher-guard-assignment-panel .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.14);background:#fff;color:var(--guard-family-ink)}.teacher-guard-page .teacher-guard-assignment-panel .field input:focus,.teacher-guard-page .teacher-guard-assignment-panel .field select:focus,.teacher-guard-page .teacher-guard-assignment-panel .field textarea:focus{border-color:var(--guard-family-orange);box-shadow:0 0 0 4px rgba(var(--brand-orange-rgb),.14)}.teacher-guard-page .teacher-guard-activity-row{border:2px solid rgba(19,21,29,.06);border-radius:22px;box-shadow:0 16px 34px #0f172a14}.teacher-guard-page .teacher-guard-activity-name strong,.teacher-guard-page .teacher-guard-table th,.teacher-guard-page .teacher-guard-table td>span{color:var(--guard-family-ink)}.teacher-guard-page .teacher-guard-activity-row.tone-1,.teacher-guard-page .teacher-guard-table th.tone-1,.teacher-guard-page .teacher-guard-table td.tone-1{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-blue-rgb),.16)),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg) right -92px center / 240px auto no-repeat,var(--brand-blue-soft)}.teacher-guard-page .teacher-guard-activity-row.tone-2,.teacher-guard-page .teacher-guard-table th.tone-2,.teacher-guard-page .teacher-guard-table td.tone-2{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-orange-rgb),.18)),url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg) right -92px center / 240px auto no-repeat,var(--brand-orange-soft)}.teacher-guard-page .teacher-guard-activity-row.tone-3,.teacher-guard-page .teacher-guard-table th.tone-3,.teacher-guard-page .teacher-guard-table td.tone-3{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-purple-rgb),.15)),url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-morado.svg) right -92px center / 240px auto no-repeat,var(--brand-purple-soft)}.teacher-guard-page .teacher-guard-activity-row.tone-4,.teacher-guard-page .teacher-guard-table th.tone-4,.teacher-guard-page .teacher-guard-table td.tone-4{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-green-rgb),.16)),url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg) right -92px center / 240px auto no-repeat,var(--brand-green-soft)}.teacher-guard-page .teacher-guard-activity-row.tone-5,.teacher-guard-page .teacher-guard-table th.tone-5,.teacher-guard-page .teacher-guard-table td.tone-5{background:linear-gradient(180deg,#ffffffb8,rgba(var(--brand-pink-rgb),.15)),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-rosa.svg) right -92px center / 240px auto no-repeat,var(--brand-pink-soft)}.teacher-guard-page .teacher-guard-activity-row.tone-6,.teacher-guard-page .teacher-guard-table th.tone-6,.teacher-guard-page .teacher-guard-table td.tone-6{background:linear-gradient(180deg,#ffffffa8,#709fa933),url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-azul.svg) right -92px center / 240px auto no-repeat,#709fa942}.teacher-guard-page .teacher-guard-table{border-spacing:0 10px}.teacher-guard-page .teacher-guard-table th{border-radius:18px}.teacher-guard-page .teacher-guard-table td{border-color:#13151d0f;box-shadow:0 12px 24px #0f172a0f}.teacher-guard-page .teacher-guard-table tbody tr.selected td{border-color:rgba(var(--brand-pink-rgb),.46);box-shadow:inset 0 0 0 2px rgba(var(--brand-pink-rgb),.22),0 14px 28px rgba(var(--brand-pink-rgb),.14)}.teacher-guard-page .teacher-guard-date-button{border-radius:999px;background:linear-gradient(90deg,var(--guard-family-blue),var(--guard-family-purple));box-shadow:0 10px 18px rgba(var(--brand-blue-rgb),.18)}.teacher-guard-page .status-chip.live{background:var(--brand-green-soft);color:var(--guard-family-green)}.teacher-guard-page .status-chip.warning{background:var(--brand-orange-soft);color:#996016}.teacher-guard-page .status-chip.outline,.teacher-guard-page .status-chip.neutral{border-color:rgba(var(--brand-purple-rgb),.18);background:var(--brand-purple-soft);color:var(--guard-family-purple)}:root[data-theme=dark] .teacher-guard-page{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg),linear-gradient(90deg,#709fa94d 0,#709fa94d 34%,rgba(var(--brand-blue-rgb),.3) 34%,rgba(var(--brand-blue-rgb),.3) 58%,rgba(var(--brand-purple-rgb),.3) 58%,rgba(var(--brand-purple-rgb),.3) 78%,rgba(var(--brand-orange-rgb),.26) 78%,rgba(var(--brand-orange-rgb),.26))}:root[data-theme=dark] .teacher-guard-page .teacher-guard-setup{background:linear-gradient(180deg,#00000005,#00000047),#709fa93d}:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card,:root[data-theme=dark] .teacher-guard-page .teacher-guard-calendar,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel,:root[data-theme=dark] .teacher-guard-page .teacher-guard-roster-panel,:root[data-theme=dark] .teacher-guard-page .quarterly-month,:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .metric-card,:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table th,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table td{background:linear-gradient(180deg,#20212bf5,#191923eb),url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-naranja.svg);color:var(--ink)}:root[data-theme=dark] .teacher-guard-page .quarterly-day{background:var(--surface-strong);color:var(--ink)}:root[data-theme=dark] .teacher-guard-page .quarterly-day.assigned.guard-a{background:linear-gradient(180deg,rgba(var(--brand-blue-rgb),.2),rgba(var(--brand-blue-rgb),.1)),url(/brand/stock/seeds/club-siete-semilla-mano-azul.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-page .quarterly-day.assigned.guard-b{background:linear-gradient(180deg,rgba(var(--brand-green-rgb),.18),rgba(var(--brand-green-rgb),.1)),url(/brand/stock/seeds/club-siete-semilla-hoja-verde.svg) right 7px bottom 7px / 32px 32px no-repeat,var(--surface)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-calendar h3,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel h3,:root[data-theme=dark] .teacher-guard-page .teacher-guard-roster-panel h3,:root[data-theme=dark] .teacher-guard-page .quarterly-month h4,:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-name strong,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table th,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table td>span,:root[data-theme=dark] .teacher-guard-page .metric-value{color:var(--ink)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel .helper-copy,:root[data-theme=dark] .teacher-guard-page .teacher-guard-roster-panel .helper-copy,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel .field span,:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .field span,:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .metric-label{color:var(--muted)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .field select,:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .field input,:root[data-theme=dark] .teacher-guard-page .teacher-guard-control-card .field textarea,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel .field input,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel .field select,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel .field textarea{background:var(--surface-strong);color:var(--ink)}@media(max-width:620px){.teacher-guard-page{padding:0;border-radius:0}.teacher-guard-page .teacher-guard-setup,.teacher-guard-page .teacher-guard-calendar,.teacher-guard-page .teacher-guard-assignment-panel,.teacher-guard-page .teacher-guard-roster-panel{border-radius:0}.teacher-guard-hero-copy{align-items:stretch}}.teacher-guard-page .teacher-guard-roster-panel{--guard-table-blue: #d8edf9;--guard-table-blue-head: #b9def2;--guard-table-orange: #ffe8b3;--guard-table-orange-head: #ffd780;--guard-table-purple: #eadcf4;--guard-table-purple-head: #d8c0ec;--guard-table-green: #dbf1d7;--guard-table-green-head: #bfe6b8;--guard-table-pink: #fad9e8;--guard-table-pink-head: #f4bed8;--guard-table-teal: #d8e9eb;--guard-table-teal-head: #bddadd;background:#fff}.teacher-guard-page .teacher-guard-roster-panel:before,.teacher-guard-page .teacher-guard-roster-panel:after{display:none}.teacher-guard-page .teacher-guard-table-scroll{padding:4px;border-radius:22px;background:#fff}.teacher-guard-page .teacher-guard-table{border-spacing:0 8px}.teacher-guard-page .teacher-guard-table th,.teacher-guard-page .teacher-guard-table td{background-image:none;box-shadow:none}.teacher-guard-page .teacher-guard-table th{border:0;color:var(--guard-family-ink)}.teacher-guard-page .teacher-guard-table th:first-child{background:#fff}.teacher-guard-page .teacher-guard-table th.tone-1{background:var(--guard-table-blue-head)}.teacher-guard-page .teacher-guard-table th.tone-2{background:var(--guard-table-orange-head)}.teacher-guard-page .teacher-guard-table th.tone-3{background:var(--guard-table-purple-head)}.teacher-guard-page .teacher-guard-table th.tone-4{background:var(--guard-table-green-head)}.teacher-guard-page .teacher-guard-table th.tone-5{background:var(--guard-table-pink-head)}.teacher-guard-page .teacher-guard-table th.tone-6{background:var(--guard-table-teal-head)}.teacher-guard-page .teacher-guard-table td{border-top:0;border-bottom:0;color:var(--guard-family-ink)}.teacher-guard-page .teacher-guard-table td:first-child{background:#fff}.teacher-guard-page .teacher-guard-table td.tone-1{background:var(--guard-table-blue)}.teacher-guard-page .teacher-guard-table td.tone-2{background:var(--guard-table-orange)}.teacher-guard-page .teacher-guard-table td.tone-3{background:var(--guard-table-purple)}.teacher-guard-page .teacher-guard-table td.tone-4{background:var(--guard-table-green)}.teacher-guard-page .teacher-guard-table td.tone-5{background:var(--guard-table-pink)}.teacher-guard-page .teacher-guard-table td.tone-6{background:var(--guard-table-teal)}.teacher-guard-page .teacher-guard-table tbody tr.selected td{border-color:transparent;box-shadow:inset 0 0 0 2px var(--guard-family-pink)}.teacher-guard-page .teacher-guard-date-button{background:var(--guard-family-blue);color:#fff;box-shadow:none}.teacher-guard-page .teacher-guard-date-button:hover,.teacher-guard-page .teacher-guard-date-button:focus-visible{background:var(--guard-family-purple)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-roster-panel{--guard-table-blue: rgba(var(--brand-blue-rgb), .26);--guard-table-blue-head: rgba(var(--brand-blue-rgb), .38);--guard-table-orange: rgba(var(--brand-orange-rgb), .25);--guard-table-orange-head: rgba(var(--brand-orange-rgb), .38);--guard-table-purple: rgba(var(--brand-purple-rgb), .28);--guard-table-purple-head: rgba(var(--brand-purple-rgb), .4);--guard-table-green: rgba(var(--brand-green-rgb), .24);--guard-table-green-head: rgba(var(--brand-green-rgb), .36);--guard-table-pink: rgba(var(--brand-pink-rgb), .24);--guard-table-pink-head: rgba(var(--brand-pink-rgb), .36);--guard-table-teal: rgba(112, 159, 169, .28);--guard-table-teal-head: rgba(112, 159, 169, .42);background:var(--surface)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-table-scroll,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table th:first-child,:root[data-theme=dark] .teacher-guard-page .teacher-guard-table td:first-child{background:var(--surface)}.teacher-guard-page{--guard-solid-blue: #d8edf9;--guard-solid-blue-strong: #b9def2;--guard-solid-orange: #ffe8b3;--guard-solid-orange-strong: #ffd780;--guard-solid-purple: #eadcf4;--guard-solid-purple-strong: #d8c0ec;--guard-solid-green: #dbf1d7;--guard-solid-green-strong: #bfe6b8;--guard-solid-pink: #fad9e8;--guard-solid-pink-strong: #f4bed8;--guard-solid-teal: #d8e9eb;--guard-solid-teal-strong: #bddadd}.teacher-guard-page .teacher-guard-calendar,.teacher-guard-page .teacher-guard-assignment-panel{background:#fff}.teacher-guard-page .teacher-guard-calendar:before,.teacher-guard-page .teacher-guard-calendar:after,.teacher-guard-page .teacher-guard-assignment-panel:before,.teacher-guard-page .teacher-guard-assignment-panel:after{display:none}.teacher-guard-page .quarterly-month{background:#fff}.teacher-guard-page .quarterly-month:before{background:var(--guard-solid-blue-strong)}.teacher-guard-page .quarterly-month:nth-child(4n+1):before{background:var(--guard-solid-blue-strong)}.teacher-guard-page .quarterly-month:nth-child(4n+2):before{background:var(--guard-solid-purple-strong)}.teacher-guard-page .quarterly-month:nth-child(4n+3):before{background:var(--guard-solid-orange-strong)}.teacher-guard-page .quarterly-month:nth-child(4n+4):before{background:var(--guard-solid-teal-strong)}.teacher-guard-page .quarterly-weekdays span{background:var(--guard-solid-blue);color:var(--guard-family-blue)}.teacher-guard-page .quarterly-day{background:#fff;border-color:#dce8f2}.teacher-guard-page .quarterly-day.assigned.guard-a,.teacher-guard-page .quarterly-day.assigned.guard-b{background:var(--guard-solid-green);border-color:var(--guard-solid-green-strong);color:var(--guard-family-green)}.teacher-guard-page .quarterly-day.assigned.manual{background:var(--guard-solid-orange);border-color:var(--guard-solid-orange-strong);box-shadow:inset 0 0 0 2px var(--guard-solid-orange-strong)}.teacher-guard-page .quarterly-day.selected{background:#fff;border-color:var(--guard-solid-pink-strong);box-shadow:inset 0 0 0 2px var(--guard-solid-pink-strong)}.teacher-guard-page .quarterly-day.selected.assigned.guard-a,.teacher-guard-page .quarterly-day.selected.assigned.guard-b{background:var(--guard-solid-green)}.teacher-guard-page .quarterly-day-guard{background:#fff;color:var(--guard-family-green)}.teacher-guard-page .teacher-guard-activity-row{background-image:none}.teacher-guard-page .teacher-guard-activity-row:after{display:none}.teacher-guard-page .teacher-guard-activity-row.tone-1{background:var(--guard-solid-blue);border-color:var(--guard-solid-blue-strong)}.teacher-guard-page .teacher-guard-activity-row.tone-2{background:var(--guard-solid-orange);border-color:var(--guard-solid-orange-strong)}.teacher-guard-page .teacher-guard-activity-row.tone-3{background:var(--guard-solid-purple);border-color:var(--guard-solid-purple-strong)}.teacher-guard-page .teacher-guard-activity-row.tone-4{background:var(--guard-solid-green);border-color:var(--guard-solid-green-strong)}.teacher-guard-page .teacher-guard-activity-row.tone-5{background:var(--guard-solid-pink);border-color:var(--guard-solid-pink-strong)}.teacher-guard-page .teacher-guard-activity-row.tone-6{background:var(--guard-solid-teal);border-color:var(--guard-solid-teal-strong)}.teacher-guard-page .teacher-guard-assignment-panel .field input,.teacher-guard-page .teacher-guard-assignment-panel .field select,.teacher-guard-page .teacher-guard-assignment-panel .field textarea{background:#fff}:root[data-theme=dark] .teacher-guard-page{--guard-solid-blue: rgba(var(--brand-blue-rgb), .26);--guard-solid-blue-strong: rgba(var(--brand-blue-rgb), .42);--guard-solid-orange: rgba(var(--brand-orange-rgb), .25);--guard-solid-orange-strong: rgba(var(--brand-orange-rgb), .42);--guard-solid-purple: rgba(var(--brand-purple-rgb), .28);--guard-solid-purple-strong: rgba(var(--brand-purple-rgb), .44);--guard-solid-green: rgba(var(--brand-green-rgb), .24);--guard-solid-green-strong: rgba(var(--brand-green-rgb), .4);--guard-solid-pink: rgba(var(--brand-pink-rgb), .24);--guard-solid-pink-strong: rgba(var(--brand-pink-rgb), .42);--guard-solid-teal: rgba(112, 159, 169, .28);--guard-solid-teal-strong: rgba(112, 159, 169, .46)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-calendar,:root[data-theme=dark] .teacher-guard-page .teacher-guard-assignment-panel,:root[data-theme=dark] .teacher-guard-page .quarterly-month{background:var(--surface)}:root[data-theme=dark] .teacher-guard-page .quarterly-day,:root[data-theme=dark] .teacher-guard-page .quarterly-day.selected{background:var(--surface-strong)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-1{background:var(--guard-solid-blue)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-2{background:var(--guard-solid-orange)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-3{background:var(--guard-solid-purple)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-4{background:var(--guard-solid-green)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-5{background:var(--guard-solid-pink)}:root[data-theme=dark] .teacher-guard-page .teacher-guard-activity-row.tone-6{background:var(--guard-solid-teal)}.teacher-wallet-page{--wallet-solid-blue: var(--brand-blue-strong);--wallet-solid-green: var(--brand-green-strong);--wallet-solid-orange: var(--brand-orange);--wallet-solid-purple: var(--brand-purple-strong);--wallet-solid-pink: var(--brand-pink-strong);--wallet-solid-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg) left top / 620px auto repeat,linear-gradient(90deg,var(--wallet-solid-blue) 0 30%,var(--wallet-solid-green) 30% 52%,var(--wallet-solid-orange) 52% 72%,var(--wallet-solid-pink) 72% 86%,var(--wallet-solid-purple) 86% 100%);background-blend-mode:soft-light,normal}.teacher-wallet-page .wallet-entry-screen{gap:18px}.teacher-wallet-page .wallet-entry-topbar{position:relative;overflow:hidden;border:0;border-radius:24px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-azul.svg) right -96px center / 360px auto no-repeat,var(--wallet-solid-blue);color:#fff;box-shadow:0 18px 38px #0f172a33}.teacher-wallet-page .wallet-entry-topbar h1{color:#fff;letter-spacing:0}.teacher-wallet-page .wallet-entry-back{background:#fff;color:var(--wallet-solid-blue);box-shadow:0 10px 20px #0f172a29}.teacher-wallet-page .wallet-entry-back.ghost{background:var(--wallet-solid-orange);color:var(--wallet-solid-ink)}.teacher-wallet-page .wallet-hero-card{position:relative;overflow:hidden;border:0;border-radius:28px;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-verde-azul-hojas.svg) right -78px center / min(620px,72%) auto no-repeat,var(--wallet-solid-green);color:#fff;box-shadow:0 24px 56px #0f172a38}.teacher-wallet-page .wallet-hero-card:before,.teacher-wallet-page .wallet-hero-card:after{content:"";display:block;position:absolute;pointer-events:none;filter:none;border-radius:0}.teacher-wallet-page .wallet-hero-card:before{top:0;right:0;bottom:0;left:0;width:auto;height:auto;background:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-verde.svg) left -120px bottom -96px / 420px auto no-repeat;opacity:.3;mix-blend-mode:screen}.teacher-wallet-page .wallet-hero-card:after{inset:auto 0 0;width:auto;height:12px;background:linear-gradient(90deg,var(--wallet-solid-blue) 0 28%,var(--wallet-solid-orange) 28% 52%,var(--wallet-solid-pink) 52% 76%,var(--wallet-solid-purple) 76% 100%);opacity:1}.teacher-wallet-page .wallet-hero-orb{display:none}.teacher-wallet-page .wallet-hero-card h2,.teacher-wallet-page .wallet-hero-copy p,.teacher-wallet-page .wallet-hero-copy .wallet-panel-kicker{color:#fff}.teacher-wallet-page .wallet-hero-copy p{font-weight:var(--font-weight-bold)}.teacher-wallet-page .wallet-metric-pill{border-radius:999px;color:#fff;box-shadow:0 12px 22px #0f172a2e}.teacher-wallet-page .wallet-metric-pill.mint{background:var(--wallet-solid-blue);color:#fff}.teacher-wallet-page .wallet-metric-pill.rose{background:var(--wallet-solid-purple);color:#fff}.teacher-wallet-page .wallet-tab-shell{border:0;border-radius:22px;background:var(--wallet-solid-purple);box-shadow:0 18px 34px #0f172a2e}.teacher-wallet-page .wallet-tab-button{border-radius:16px;color:#ffffffd6}.teacher-wallet-page .wallet-tab-button.active{background:#fff;color:var(--wallet-solid-purple);box-shadow:0 12px 24px #0f172a2e}.teacher-wallet-page .wallet-tab-panel,.teacher-wallet-page .wallet-award-dialog{border:0;border-top:8px solid var(--wallet-solid-blue);border-radius:28px;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-blanco-multicolor-denso.svg) right -140px top -120px / 430px auto no-repeat,#fff;color:var(--wallet-solid-ink);box-shadow:0 24px 56px #0f172a2e}.teacher-wallet-page .wallet-tab-panel-list,.teacher-wallet-page .wallet-award-dialog{border-top-color:var(--wallet-solid-orange)}.teacher-wallet-page .wallet-panel-kicker,.teacher-wallet-page .wallet-section-heading strong{color:var(--wallet-solid-purple)}.teacher-wallet-page .wallet-panel-head h3,.teacher-wallet-page .wallet-match-copy strong,.teacher-wallet-page .wallet-list-copy strong,.teacher-wallet-page .wallet-dialog-copy strong,.teacher-wallet-page .wallet-concept-card strong{color:var(--wallet-solid-ink)}.teacher-wallet-page .wallet-panel-head p,.teacher-wallet-page .wallet-match-copy span,.teacher-wallet-page .wallet-list-copy span,.teacher-wallet-page .wallet-concept-card span{color:#4f5c72}.teacher-wallet-page .wallet-panel-head .status-chip.outline{border:0;background:var(--wallet-solid-blue);color:#fff}.teacher-wallet-page .wallet-scan-stage{border:0;border-radius:24px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg) right -90px center / 390px auto no-repeat,var(--wallet-solid-blue);box-shadow:inset 0 0 0 2px #ffffff2e,0 18px 34px #0f172a29}.teacher-wallet-page .wallet-corner.tl{border-color:var(--wallet-solid-orange)}.teacher-wallet-page .wallet-corner.tr{border-color:#fff}.teacher-wallet-page .wallet-corner.bl{border-color:var(--wallet-solid-green)}.teacher-wallet-page .wallet-corner.br{border-color:var(--wallet-solid-pink)}.teacher-wallet-page .wallet-pass-card{border:0;border-radius:22px;background:url(/brand/stock/seeds/club-siete-semilla-mano-verde.svg) right 12px bottom 12px / 54px auto no-repeat,#fff;box-shadow:0 22px 38px #0f172a38}.teacher-wallet-page .wallet-pass-qr{border:2px solid rgba(var(--brand-blue-rgb),.18);background:#fff}.teacher-wallet-page .wallet-pass-frame{border-color:var(--wallet-solid-blue)}.teacher-wallet-page .wallet-pass-qr svg,.teacher-wallet-page .wallet-match-side strong{color:var(--wallet-solid-blue)}.teacher-wallet-page .wallet-scan-badge{border:0;background:var(--wallet-solid-orange);color:var(--wallet-solid-ink)}.teacher-wallet-page .wallet-scan-badge.ready{background:var(--wallet-solid-green);color:#fff}.teacher-wallet-page .wallet-scan-input{border:2px solid var(--wallet-solid-green);border-radius:20px;background:#fff}.teacher-wallet-page .wallet-scan-input svg,.teacher-wallet-page .wallet-list-action{color:var(--wallet-solid-green)}.teacher-wallet-page .wallet-scan-clear{background:var(--wallet-solid-pink);color:#fff}.teacher-wallet-page .wallet-empty-card,.teacher-wallet-page .wallet-match-card,.teacher-wallet-page .wallet-list-card,.teacher-wallet-page .wallet-dialog-summary,.teacher-wallet-page .wallet-concept-card{position:relative;overflow:hidden;border:2px solid rgba(19,21,29,.07);border-radius:20px;background:#fff;box-shadow:0 14px 28px #0f172a14}.teacher-wallet-page .wallet-empty-card{border-style:dashed;border-color:var(--wallet-solid-purple);color:#4f5c72}.teacher-wallet-page .wallet-match-card:before,.teacher-wallet-page .wallet-list-card:before,.teacher-wallet-page .wallet-concept-card:before,.teacher-wallet-page .wallet-dialog-summary:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--wallet-solid-blue)}.teacher-wallet-page .wallet-match-card>*,.teacher-wallet-page .wallet-list-card>*,.teacher-wallet-page .wallet-concept-card>*,.teacher-wallet-page .wallet-dialog-summary>*{position:relative;z-index:1}.teacher-wallet-page .wallet-match-card:nth-child(5n+1):before,.teacher-wallet-page .wallet-list-card:nth-child(5n+1):before,.teacher-wallet-page .wallet-concept-card:nth-child(5n+1):before{background:var(--wallet-solid-green)}.teacher-wallet-page .wallet-match-card:nth-child(5n+2):before,.teacher-wallet-page .wallet-list-card:nth-child(5n+2):before,.teacher-wallet-page .wallet-concept-card:nth-child(5n+2):before{background:var(--wallet-solid-blue)}.teacher-wallet-page .wallet-match-card:nth-child(5n+3):before,.teacher-wallet-page .wallet-list-card:nth-child(5n+3):before,.teacher-wallet-page .wallet-concept-card:nth-child(5n+3):before{background:var(--wallet-solid-orange)}.teacher-wallet-page .wallet-match-card:nth-child(5n+4):before,.teacher-wallet-page .wallet-list-card:nth-child(5n+4):before,.teacher-wallet-page .wallet-concept-card:nth-child(5n+4):before{background:var(--wallet-solid-pink)}.teacher-wallet-page .wallet-match-card:nth-child(5n+5):before,.teacher-wallet-page .wallet-list-card:nth-child(5n+5):before,.teacher-wallet-page .wallet-concept-card:nth-child(5n+5):before{background:var(--wallet-solid-purple)}.teacher-wallet-page .wallet-match-card.active,.teacher-wallet-page .wallet-list-card.active{border-color:var(--wallet-solid-green);box-shadow:0 18px 34px #0f172a1f,0 0 0 4px rgba(var(--brand-green-rgb),.16)}.teacher-wallet-page .wallet-avatar.sunrise{background:var(--wallet-solid-orange);color:var(--wallet-solid-ink)}.teacher-wallet-page .wallet-avatar.lagoon{background:var(--wallet-solid-blue);color:#fff}.teacher-wallet-page .wallet-avatar.plum{background:var(--wallet-solid-purple);color:#fff}.teacher-wallet-page .wallet-avatar.mint{background:var(--wallet-solid-green);color:#fff}.teacher-wallet-page .wallet-dialog-summary{border-color:rgba(var(--brand-orange-rgb),.28);background:url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg) right -80px center / 250px auto no-repeat,#fff}.teacher-wallet-page .wallet-dialog-summary:before{background:var(--wallet-solid-orange)}.teacher-wallet-page .wallet-dialog-copy span{color:var(--wallet-solid-blue)}.teacher-wallet-page .wallet-concept-card{padding-top:20px}.teacher-wallet-page .wallet-concept-card.active{border-color:var(--wallet-solid-green);background:var(--wallet-solid-green);color:#fff;box-shadow:0 16px 30px rgba(var(--brand-green-rgb),.24)}.teacher-wallet-page .wallet-concept-card.active:before{background:#ffffff57}.teacher-wallet-page .wallet-concept-card.active strong,.teacher-wallet-page .wallet-concept-card.active span{color:#fff}.teacher-wallet-page .wallet-award-dialog .field input,.teacher-wallet-page .wallet-award-dialog .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.18);background:#fff;color:var(--wallet-solid-ink)}.teacher-wallet-page .wallet-award-dialog .field input[readonly]{background:var(--wallet-solid-blue);color:#fff}.teacher-wallet-page .wallet-dialog-close{background:var(--wallet-solid-pink);color:#fff}.teacher-wallet-page .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.16);background:#fff;color:var(--wallet-solid-blue);font-weight:var(--font-weight-black)}.teacher-wallet-page .primary-button,.teacher-wallet-page .wallet-primary-action{background:var(--wallet-solid-green);color:#fff;box-shadow:0 16px 30px rgba(var(--brand-green-rgb),.24)}:root[data-theme=dark] .teacher-wallet-page{--wallet-solid-ink: var(--ink);background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg) left top / 620px auto repeat,linear-gradient(90deg,rgba(var(--brand-blue-rgb),.36) 0,rgba(var(--brand-blue-rgb),.36) 30%,rgba(var(--brand-green-rgb),.28) 30%,rgba(var(--brand-green-rgb),.28) 52%,rgba(var(--brand-orange-rgb),.28) 52%,rgba(var(--brand-orange-rgb),.28) 72%,rgba(var(--brand-pink-rgb),.26) 72%,rgba(var(--brand-pink-rgb),.26) 86%,rgba(var(--brand-purple-rgb),.32) 86%,rgba(var(--brand-purple-rgb),.32))}:root[data-theme=dark] .teacher-wallet-page .wallet-entry-topbar,:root[data-theme=dark] .teacher-wallet-page .wallet-hero-card,:root[data-theme=dark] .teacher-wallet-page .wallet-tab-panel,:root[data-theme=dark] .teacher-wallet-page .wallet-award-dialog,:root[data-theme=dark] .teacher-wallet-page .wallet-match-card,:root[data-theme=dark] .teacher-wallet-page .wallet-list-card,:root[data-theme=dark] .teacher-wallet-page .wallet-concept-card,:root[data-theme=dark] .teacher-wallet-page .wallet-dialog-summary,:root[data-theme=dark] .teacher-wallet-page .wallet-empty-card{color:var(--ink)}:root[data-theme=dark] .teacher-wallet-page .wallet-tab-panel,:root[data-theme=dark] .teacher-wallet-page .wallet-award-dialog,:root[data-theme=dark] .teacher-wallet-page .wallet-match-card,:root[data-theme=dark] .teacher-wallet-page .wallet-list-card,:root[data-theme=dark] .teacher-wallet-page .wallet-concept-card,:root[data-theme=dark] .teacher-wallet-page .wallet-dialog-summary,:root[data-theme=dark] .teacher-wallet-page .wallet-pass-card,:root[data-theme=dark] .teacher-wallet-page .wallet-scan-input,:root[data-theme=dark] .teacher-wallet-page .wallet-empty-card{background:var(--surface);border-color:var(--line)}:root[data-theme=dark] .teacher-wallet-page .wallet-panel-head h3,:root[data-theme=dark] .teacher-wallet-page .wallet-match-copy strong,:root[data-theme=dark] .teacher-wallet-page .wallet-list-copy strong,:root[data-theme=dark] .teacher-wallet-page .wallet-dialog-copy strong,:root[data-theme=dark] .teacher-wallet-page .wallet-concept-card strong{color:var(--ink)}:root[data-theme=dark] .teacher-wallet-page .wallet-panel-head p,:root[data-theme=dark] .teacher-wallet-page .wallet-match-copy span,:root[data-theme=dark] .teacher-wallet-page .wallet-list-copy span,:root[data-theme=dark] .teacher-wallet-page .wallet-concept-card span{color:var(--muted)}:root[data-theme=dark] .teacher-wallet-page .wallet-concept-card.active,:root[data-theme=dark] .teacher-wallet-page .wallet-award-dialog .field input[readonly]{background:rgba(var(--brand-green-rgb),.3)}@media(max-width:620px){.teacher-wallet-page{padding:0;border-radius:0}.teacher-wallet-page .wallet-entry-topbar,.teacher-wallet-page .wallet-hero-card,.teacher-wallet-page .wallet-tab-shell,.teacher-wallet-page .wallet-tab-panel{border-radius:0}}.materials-oca-page{--oca-solid-blue: var(--brand-blue-strong);--oca-solid-green: var(--brand-green-strong);--oca-solid-orange: var(--brand-orange);--oca-solid-purple: var(--brand-purple-strong);--oca-solid-pink: var(--brand-pink-strong);--oca-solid-ink: #192131;padding:clamp(14px,2vw,22px);border-radius:28px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-morado.svg) left top / 620px auto repeat,linear-gradient(90deg,var(--oca-solid-purple) 0 26%,var(--oca-solid-blue) 26% 50%,var(--oca-solid-green) 50% 70%,var(--oca-solid-orange) 70% 86%,var(--oca-solid-pink) 86% 100%);background-blend-mode:soft-light,normal}.materials-oca-page>.materials-oca-hero{position:relative;overflow:hidden;min-height:176px;border:0;border-radius:28px;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-morado-rosa-mixto.svg) right -80px center / min(620px,68%) auto no-repeat,var(--oca-solid-purple);color:#fff;box-shadow:0 24px 56px #0f172a38}.materials-oca-page>.materials-oca-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg) left -120px bottom -110px / 420px auto no-repeat;opacity:.28;mix-blend-mode:screen;pointer-events:none}.materials-oca-page>.materials-oca-hero:after{content:"";position:absolute;inset:auto 0 0;height:12px;background:linear-gradient(90deg,var(--oca-solid-blue) 0 28%,var(--oca-solid-green) 28% 52%,var(--oca-solid-orange) 52% 76%,var(--oca-solid-pink) 76% 100%)}.materials-oca-page>.materials-oca-hero>*{position:relative;z-index:1}.materials-oca-page .materials-oca-hero .eyebrow,.materials-oca-page .materials-oca-hero h2,.materials-oca-page .materials-oca-hero .helper-copy{color:#fff}.materials-oca-page .materials-oca-hero h2{max-width:12ch;font-size:clamp(2rem,5vw,3.6rem);line-height:.95}.materials-oca-page .materials-oca-hero .helper-copy{max-width:58ch;font-weight:var(--font-weight-bold)}.materials-oca-page .materials-oca-hero-actions .ghost-button,.materials-oca-page .materials-oca-hero-actions .primary-button{border:0;background:#fff;color:var(--oca-solid-purple);box-shadow:0 16px 32px #0f172a2e}.materials-oca-page .materials-oca-hero-actions .primary-button{background:var(--oca-solid-orange);color:var(--oca-solid-ink)}.materials-oca-page .materials-oca-layout{gap:18px}.materials-oca-page .materials-oca-config,.materials-oca-page .materials-oca-game-panel{position:relative;overflow:hidden;border:0;border-radius:28px;background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-blanco-multicolor-denso.svg) right -140px top -110px / 420px auto no-repeat,#fff;color:var(--oca-solid-ink);box-shadow:0 24px 56px #0f172a2e}.materials-oca-page .materials-oca-config:before,.materials-oca-page .materials-oca-game-panel:before{content:"";position:absolute;inset:0 0 auto;height:8px;background:var(--oca-solid-green)}.materials-oca-page .materials-oca-game-panel:before{background:var(--oca-solid-blue)}.materials-oca-page .materials-oca-config>*,.materials-oca-page .materials-oca-game-panel>*{position:relative;z-index:1}.materials-oca-page .materials-oca-config h3,.materials-oca-page .materials-oca-game-panel h3,.materials-oca-page .materials-prompt-head h4{color:var(--oca-solid-ink)}.materials-oca-page .materials-oca-config .helper-copy,.materials-oca-page .materials-oca-game-panel .helper-copy,.materials-oca-page .materials-prompt-head p{color:#4f5c72;font-weight:var(--font-weight-bold)}.materials-oca-page .status-chip.neutral{border:0;background:var(--oca-solid-blue);color:#fff}.materials-oca-page .field input,.materials-oca-page .field select,.materials-oca-page .field textarea{border:2px solid rgba(var(--brand-blue-rgb),.16);background:#fff;color:var(--oca-solid-ink)}.materials-oca-page .field input:focus,.materials-oca-page .field select:focus,.materials-oca-page .field textarea:focus{border-color:var(--oca-solid-orange);box-shadow:0 0 0 4px rgba(var(--brand-orange-rgb),.16)}.materials-oca-page .materials-prompt-item{position:relative;overflow:hidden;border:2px solid rgba(25,33,49,.07);border-radius:20px;background:url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-azul.svg) right -110px center / 260px auto no-repeat,#fff}.materials-oca-page .materials-prompt-item:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:var(--oca-solid-blue)}.materials-oca-page .materials-prompt-editor:nth-of-type(2) .materials-prompt-item:before{background:var(--oca-solid-pink)}.materials-oca-page .materials-prompt-item>*{position:relative;z-index:1}.materials-oca-page .ghost-button{border:2px solid rgba(var(--brand-blue-rgb),.16);background:#fff;color:var(--oca-solid-blue);font-weight:var(--font-weight-black)}.materials-oca-page .ghost-button.danger{border-color:rgba(var(--brand-pink-rgb),.28);background:#fff;color:var(--oca-solid-pink)}.materials-oca-page .primary-button{background:var(--oca-solid-green);color:#fff;box-shadow:0 16px 32px rgba(var(--brand-green-rgb),.24)}.materials-oca-page .materials-oca-game-frame{min-height:min(860px,calc(100vh - 180px));border:8px solid var(--oca-solid-blue);border-radius:24px;background:#fff;box-shadow:0 18px 42px #0f172a29}:root[data-theme=dark] .materials-oca-page{--oca-solid-ink: var(--ink);background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-morado.svg) left top / 620px auto repeat,linear-gradient(90deg,rgba(var(--brand-purple-rgb),.34) 0,rgba(var(--brand-purple-rgb),.34) 26%,rgba(var(--brand-blue-rgb),.3) 26%,rgba(var(--brand-blue-rgb),.3) 50%,rgba(var(--brand-green-rgb),.26) 50%,rgba(var(--brand-green-rgb),.26) 70%,rgba(var(--brand-orange-rgb),.26) 70%,rgba(var(--brand-orange-rgb),.26) 86%,rgba(var(--brand-pink-rgb),.24) 86%,rgba(var(--brand-pink-rgb),.24))}:root[data-theme=dark] .materials-oca-page .materials-oca-config,:root[data-theme=dark] .materials-oca-page .materials-oca-game-panel,:root[data-theme=dark] .materials-oca-page .materials-prompt-item,:root[data-theme=dark] .materials-oca-page .field input,:root[data-theme=dark] .materials-oca-page .field select,:root[data-theme=dark] .materials-oca-page .field textarea{background:var(--surface);color:var(--ink);border-color:var(--line)}@media(max-width:620px){.materials-oca-page{padding:0;border-radius:0}.materials-oca-page>.materials-oca-hero,.materials-oca-page .materials-oca-config,.materials-oca-page .materials-oca-game-panel,.materials-oca-page .materials-oca-game-frame{border-radius:0}}.public-home-page{min-height:100vh;overflow-x:hidden;background:var(--bg);color:var(--ink)}.public-home-nav{position:sticky;top:0;z-index:28;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px;padding:12px clamp(18px,4vw,52px);border-bottom:1px solid var(--line);background:var(--surface-glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.public-home-brand{display:inline-flex;align-items:center;flex:none;min-width:0}.public-home-brand img{display:block;width:clamp(112px,16vw,176px);height:auto;max-height:54px;object-fit:contain}.public-home-links{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.public-home-link,.public-home-login-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border-radius:999px;font-weight:var(--font-weight-black);line-height:1;white-space:nowrap}.public-home-link{color:var(--surface-deep)}.public-home-login-link{background:var(--surface-deep);color:var(--bg);box-shadow:var(--shadow-xs)}.public-home-theme-toggle .theme-mode-label{display:none}.public-home-banners{display:grid;gap:0}.public-home-banner{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:100%;min-height:clamp(520px,78svh,780px);display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);align-items:end;gap:clamp(24px,5vw,72px);padding:clamp(34px,6vw,82px);border-bottom:1px solid var(--line);color:#fff;background:var(--brand-blue-strong)}.public-home-banner-with-countdown{padding-bottom:clamp(150px,20vw,230px)}.public-home-banner:before,.public-home-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.public-home-banner:after{opacity:.96}.public-home-banner-brand{background:url(/brand/stock/seeds/club-siete-semillas-fondo-mixto-azul.svg) right -120px top -80px / min(760px,70vw) auto no-repeat,url(/brand/stock/seeds/club-siete-semillas-fondo-disperso-verde.svg) left -160px bottom -160px / min(720px,76vw) auto no-repeat,linear-gradient(110deg,var(--brand-blue-strong) 0 30%,var(--brand-green-strong) 30% 52%,var(--brand-pink-strong) 52% 74%,var(--brand-purple-strong) 74% 100%)}.public-home-hero-video{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;pointer-events:none}.public-home-video-audio-button{position:absolute;top:clamp(78px,8vw,110px);right:clamp(16px,4vw,52px);z-index:4;min-height:42px;padding:10px 16px;border:1px solid rgba(255,225,128,.62);border-radius:999px;background:linear-gradient(135deg,#080a12d1,#1c2234bd),#080a12cc;color:#ffe38a;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.78rem;font-weight:var(--font-weight-black);letter-spacing:0;text-transform:uppercase;text-shadow:0 0 10px rgba(255,225,128,.5);box-shadow:inset 0 0 0 1px #ffffff14,0 14px 28px #00000052,0 0 22px #ffe18029}.public-home-video-audio-button:hover,.public-home-video-audio-button:focus-visible{transform:translateY(-1px);border-color:#ffe180e6;background:linear-gradient(135deg,#0f172aeb,#363d52d1),#080a12e0;box-shadow:inset 0 0 0 1px #ffffff1f,0 16px 32px #00000061,0 0 30px #ffe1803d}.public-home-video-logo-cover{position:absolute;right:0;bottom:clamp(0px,1vw,12px);left:0;z-index:2;display:grid;place-items:center;width:100%;height:clamp(78px,12vw,138px);overflow:hidden;border-radius:0;background:radial-gradient(circle at 82% 30%,rgba(255,225,128,.22),transparent 24%),repeating-linear-gradient(90deg,rgba(var(--brand-blue-rgb),.2) 0 1px,transparent 1px 18px),linear-gradient(90deg,#080a12fa,#111116e6 50%,#080a12fa);box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #ffffff1a,inset 0 0 0 3px rgba(var(--brand-blue-rgb),.16),0 -18px 40px #080a129e,0 0 34px rgba(var(--brand-blue-rgb),.22);pointer-events:none}.public-home-video-logo-cover:before{content:"";position:absolute;top:-80%;right:0;bottom:-80%;left:0;background:linear-gradient(180deg,transparent 0 44%,rgba(255,225,128,.5) 50%,transparent 56%),linear-gradient(90deg,transparent 0 18%,rgba(var(--brand-blue-rgb),.42) 50%,transparent 82%);opacity:.8;animation:public-home-video-countdown-scan .52s linear infinite}.public-home-video-logo-cover:after{content:"COUNTDOWN";position:absolute;top:clamp(8px,1.2vw,16px);left:clamp(18px,5vw,72px);color:#ffe180d1;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(.52rem,.9vw,.8rem);font-weight:var(--font-weight-black);letter-spacing:.12em}.public-home-video-logo-cover-label{position:relative;z-index:1;color:#ffe38a;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(2rem,7vw,5.4rem);font-weight:var(--font-weight-black);letter-spacing:.02em;line-height:1;text-shadow:0 0 12px rgba(255,225,128,.72),0 0 24px rgba(var(--brand-blue-rgb),.38);text-transform:uppercase}@keyframes public-home-video-countdown-scan{0%{transform:translateY(-30%)}to{transform:translateY(30%)}}.public-home-banner-brand:before{display:none}.public-home-banner-brand:after{display:none}.public-home-banner-attendance{background:linear-gradient(90deg,#005daceb 0,#005daceb 38%,#1921317a 68%,#1921312e),url(/brand/textures/attendance-banner-desktop-11y12.jpg) center / cover no-repeat,var(--brand-blue-strong)}.public-home-banner-attendance:before{background:url(/brand/stock/seeds/club-siete-semillas-fondo-reticula-azul.svg) right -140px center / min(680px,70vw) auto no-repeat;mix-blend-mode:screen;opacity:.28}.public-home-banner-wallet{background:url(/brand/stock/badge-patterns/club-siete-credencial-fondo-morado-rosa-mixto.svg) right -120px center / min(780px,76vw) auto no-repeat,url(/brand/stock/seeds/club-siete-semillas-fondo-sellos-naranja.svg) left -120px bottom -120px / min(620px,70vw) auto no-repeat,linear-gradient(110deg,var(--brand-purple-strong) 0 40%,var(--brand-pink-strong) 40% 70%,var(--brand-orange-strong) 70% 100%)}.public-home-banner-wallet:before{background:#0f172a29}.public-home-banner-with-image.public-home-banner-wallet{background:#000}.public-home-banner-background-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;display:block;object-fit:contain;object-position:88% center;opacity:.96;pointer-events:none}.public-home-banner-with-image:before{display:none}.public-home-banner-with-image:after{display:none}.public-home-banner-with-image .public-home-banner-copy{max-width:680px}.public-home-banner-with-image .public-home-banner-copy h2{margin-bottom:clamp(12px,2.4vw,30px);max-width:12.5ch;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(2.5rem,6.2vw,5.9rem);font-weight:var(--font-weight-black);letter-spacing:0;line-height:.92;background:linear-gradient(180deg,#fff,#b9c1cd 18%,#f7e7a0 42%,#8a929e 58%,#fff 78%,#6e7785);background-clip:text;color:transparent;text-transform:uppercase;-webkit-background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.24);filter:drop-shadow(0 2px 0 rgba(0,0,0,.78)) drop-shadow(0 0 18px rgba(255,225,128,.18))}.public-home-banner-with-image .public-home-actions{justify-content:center}.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button{position:relative;isolation:isolate;min-width:min(100%,286px);min-height:66px;padding:17px 34px;overflow:hidden;border:1px solid rgba(255,225,128,.84);border-radius:2px;background:linear-gradient(90deg,transparent 0 16px,rgba(255,225,128,.55) 16px 18px,transparent 18px),repeating-linear-gradient(90deg,rgba(255,225,128,.12) 0 1px,transparent 1px 15px),linear-gradient(135deg,#172113,#33452b 34%,#6f7a43 50%,#1b2517 72%,#0b120a);color:#ffe38a;clip-path:polygon(14px 0,100% 0,100% calc(100% - 15px),calc(100% - 15px) 100%,0 100%,0 14px);font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(.92rem,1.45vw,1.12rem);font-weight:var(--font-weight-black);letter-spacing:0;text-transform:uppercase;text-shadow:0 0 10px rgba(255,225,128,.82),0 2px 0 rgba(0,0,0,.75);box-shadow:inset 0 0 0 1px #ffffff1f,inset 0 -16px 28px #0000006b,0 0 0 1px #5f754ca3,0 18px 40px #0000007a,0 0 34px #ffe1802e}.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:before,.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:before{background:linear-gradient(110deg,transparent 0 32%,rgba(255,225,128,.42) 44%,rgba(255,255,255,.5) 50%,transparent 62%),radial-gradient(circle at 82% 42%,rgba(255,225,128,.32),transparent 18%);background-position:180% 0,0 0;background-repeat:no-repeat;background-size:220% 100%,auto;opacity:.78;animation:public-home-halo-button-scan 2.4s ease-in-out infinite}.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:after{top:6px;right:6px;bottom:6px;left:6px;border:1px solid rgba(255,225,128,.38);clip-path:polygon(10px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 10px);box-shadow:inset 0 0 16px #ffe18029,inset 18px 0 #ffe1801a}.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:hover,.public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:focus-visible{transform:translateY(-2px);background:linear-gradient(90deg,transparent 0 16px,rgba(255,225,128,.72) 16px 18px,transparent 18px),repeating-linear-gradient(90deg,rgba(255,225,128,.18) 0 1px,transparent 1px 15px),linear-gradient(135deg,#223019,#4b6339 34%,#a0934a 50%,#25331d 72%,#0e160c);box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -16px 28px #0000005c,0 0 0 1px #ffe18080,0 20px 44px #00000085,0 0 42px #ffe18047}@keyframes public-home-halo-button-scan{0%{background-position:180% 0,0 0;opacity:.6}50%{opacity:1}to{background-position:-80% 0,0 0;opacity:.6}}.public-home-banner-with-image .public-home-banner-media{min-height:0}.public-home-banner-copy{position:relative;z-index:2;display:grid;align-content:end;gap:18px;width:100%;max-width:760px;min-width:0}.public-home-banner .eyebrow{margin:0;color:#ffffffdb}.public-home-banner h1,.public-home-banner h2{margin:0;max-width:12ch;color:#fff;font-family:var(--font-display);font-weight:var(--font-weight-black);letter-spacing:0;line-height:.95;text-wrap:balance}.public-home-banner h1{font-size:clamp(3.1rem,9vw,7.6rem)}.public-home-banner h2{font-size:clamp(2.65rem,7vw,6.3rem)}.public-home-banner p{margin:0;width:100%;max-width:min(100%,56ch);color:#ffffffe6;font-size:clamp(1rem,1.5vw,1.18rem);font-weight:var(--font-weight-bold);line-height:1.58;overflow-wrap:break-word}.public-home-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}.public-home-actions .primary-button,.public-home-actions .ghost-button{min-width:154px;margin:0}.public-home-actions .primary-button{background:#fff;color:#192131;box-shadow:0 18px 34px #0f172a33}.public-home-banner-brand .public-home-actions .primary-button{position:relative;isolation:isolate;width:min(100%,430px);min-width:min(100%,350px);min-height:86px;padding:20px 128px 20px 112px;overflow:hidden;border:2px solid rgba(255,225,128,.82);border-radius:10px;background:radial-gradient(circle at 20% 22%,rgba(255,245,190,.96) 0 5px,transparent 6px),radial-gradient(circle at 78% 28%,rgba(255,255,255,.82) 0 2px,transparent 3px),radial-gradient(circle at 90% 72%,rgba(255,225,128,.86) 0 4px,transparent 5px),linear-gradient(90deg,transparent 0 30px,rgba(var(--brand-blue-rgb),.34) 30px 32px,transparent 32px),repeating-linear-gradient(0deg,rgba(var(--brand-blue-rgb),.12) 0 1px,transparent 1px 18px),repeating-linear-gradient(90deg,rgba(255,255,255,.13) 0 1px,transparent 1px 14px),linear-gradient(135deg,#8a5200,#d98222 26%,#f3bd44 48%,#ffe38a 68%,#b56b08);color:#1f1606;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:clamp(1.08rem,2.1vw,1.34rem);font-weight:var(--font-weight-black);font-variant-numeric:tabular-nums;line-height:1.12;text-align:center;text-transform:uppercase;text-shadow:0 1px 0 rgba(255,255,255,.72),0 0 14px rgba(255,255,255,.44),0 3px 10px rgba(84,49,0,.38);-webkit-text-stroke:.35px rgba(255,245,190,.7);box-shadow:inset 0 0 0 1px #ffffff47,inset 0 0 0 3px rgba(var(--brand-blue-rgb),.16),inset 0 -18px 34px #0f172a47,0 0 0 1px rgba(var(--brand-blue-rgb),.48),0 0 0 7px rgba(var(--brand-orange-rgb),.24),0 26px 52px #b068086b,0 0 48px #ffe18061,0 0 32px rgba(var(--brand-blue-rgb),.2);animation:public-home-ticket-pulse 1.55s ease-in-out infinite}.public-home-banner-brand .public-home-actions .primary-button:before{content:"GATE 17\a CK-777";position:absolute;z-index:0;top:12px;bottom:12px;left:14px;display:grid;width:72px;place-items:center;border-right:2px dashed rgba(255,255,255,.62);border-radius:7px 0 0 7px;background:repeating-linear-gradient(0deg,rgba(var(--brand-blue-rgb),.2) 0 1px,transparent 1px 8px),linear-gradient(180deg,#fff3,#ffffff0d),linear-gradient(135deg,#ffe18075,#8a52003d);color:#231806;font-family:Orbitron,Bahnschrift,Segoe UI Variable,sans-serif;font-size:.72rem;font-weight:var(--font-weight-black);font-variant-numeric:tabular-nums;line-height:1;text-shadow:none;transform:rotate(180deg);white-space:pre-line;writing-mode:vertical-rl}.public-home-banner-brand .public-home-actions .primary-button:after{content:"";position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 0 50%,rgba(10,12,22,.96) 0 18px,transparent 19px),radial-gradient(circle at 100% 50%,rgba(10,12,22,.96) 0 18px,transparent 19px),radial-gradient(circle at 72% 50%,rgba(var(--brand-blue-rgb),.3),transparent 18%),repeating-linear-gradient(90deg,rgba(255,255,255,.8) 0 3px,transparent 3px 7px,rgba(255,255,255,.48) 7px 9px,transparent 9px 13px),linear-gradient(110deg,transparent 0 30%,rgba(var(--brand-blue-rgb),.48) 42%,rgba(255,255,255,.58) 48%,transparent 60%);background-position:0 0,0 0,75% 50%,right 28px center,160% 0;background-repeat:no-repeat;background-size:auto,auto,180px 90px,64px 44px,220% 100%;opacity:.86;pointer-events:none;animation:public-home-ticket-shimmer 1.95s ease-in-out infinite}.public-home-banner-brand .public-home-actions .primary-button:hover,.public-home-banner-brand .public-home-actions .primary-button:focus-visible{transform:translateY(-2px) scale(1.02);box-shadow:inset 0 0 0 3px rgba(var(--brand-blue-rgb),.18),0 0 0 7px rgba(var(--brand-orange-rgb),.32),0 26px 52px #b0680880,0 0 52px #ffe18080,0 0 42px rgba(var(--brand-blue-rgb),.3)}@keyframes public-home-ticket-pulse{0%,to{filter:brightness(1) saturate(1)}48%{filter:brightness(1.32) saturate(1.25)}58%{filter:brightness(.94) saturate(1.08)}}@keyframes public-home-ticket-shimmer{0%{background-position:0 0,0 0,75% 50%,right 28px center,170% 0;opacity:.72}50%{opacity:1}to{background-position:0 0,0 0,75% 50%,right 28px center,-70% 0;opacity:.72}}.public-home-actions .ghost-button{border-color:#ffffff70;background:#ffffff29;color:#fff;box-shadow:none}.public-home-banner-media{position:relative;z-index:2;display:grid;place-items:center;min-height:260px}.public-home-logo-spotlight{width:min(100%,460px);height:auto;object-fit:contain;filter:drop-shadow(0 28px 38px rgba(15,23,42,.3))}.public-home-banner-brand .public-home-logo-spotlight{display:none}.public-home-wallet-preview{width:min(100%,390px);height:auto;object-fit:contain;transform:rotate(-3deg);filter:drop-shadow(0 26px 42px rgba(15,23,42,.32))}:root[data-theme=dark] .public-home-nav{background:#111116e6}:root[data-theme=dark] .public-home-link{color:var(--ink)}:root[data-theme=dark] .public-home-login-link{background:#fff;color:#111116}:root[data-theme=dark] .public-home-actions .primary-button{background:#fff;color:#111116;box-shadow:0 18px 34px #0f172a3d}:root[data-theme=dark] .public-home-banner-brand .public-home-actions .primary-button{background:radial-gradient(circle at 20% 22%,rgba(255,245,190,.96) 0 5px,transparent 6px),radial-gradient(circle at 78% 28%,rgba(255,255,255,.82) 0 2px,transparent 3px),radial-gradient(circle at 90% 72%,rgba(255,225,128,.86) 0 4px,transparent 5px),linear-gradient(90deg,transparent 0 30px,rgba(var(--brand-blue-rgb),.34) 30px 32px,transparent 32px),repeating-linear-gradient(0deg,rgba(var(--brand-blue-rgb),.12) 0 1px,transparent 1px 18px),repeating-linear-gradient(90deg,rgba(255,255,255,.13) 0 1px,transparent 1px 14px),linear-gradient(135deg,#8a5200,#d98222 26%,#f3bd44 48%,#ffe38a 68%,#b56b08);color:#1f1606;box-shadow:inset 0 0 0 1px #ffffff47,inset 0 0 0 3px rgba(var(--brand-blue-rgb),.16),inset 0 -18px 34px #0f172a47,0 0 0 1px rgba(var(--brand-blue-rgb),.48),0 0 0 7px rgba(var(--brand-orange-rgb),.24),0 26px 52px #b068086b,0 0 48px #ffe18061,0 0 32px rgba(var(--brand-blue-rgb),.2)}:root[data-theme=dark] .public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button{border-color:#ffe180d6;background:linear-gradient(90deg,transparent 0 16px,rgba(255,225,128,.55) 16px 18px,transparent 18px),repeating-linear-gradient(90deg,rgba(255,225,128,.12) 0 1px,transparent 1px 15px),linear-gradient(135deg,#172113,#33452b 34%,#6f7a43 50%,#1b2517 72%,#0b120a);color:#ffe38a;box-shadow:inset 0 0 0 1px #ffffff1f,inset 0 -16px 28px #0000006b,0 0 0 1px #5f754ca3,0 18px 40px #0000007a,0 0 34px #ffe1802e}:root[data-theme=dark] .public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:hover,:root[data-theme=dark] .public-home-banner-with-image .public-home-actions .primary-button.public-home-halo-button:focus-visible{background:linear-gradient(90deg,transparent 0 16px,rgba(255,225,128,.72) 16px 18px,transparent 18px),repeating-linear-gradient(90deg,rgba(255,225,128,.18) 0 1px,transparent 1px 15px),linear-gradient(135deg,#223019,#4b6339 34%,#a0934a 50%,#25331d 72%,#0e160c);box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -16px 28px #0000005c,0 0 0 1px #ffe18080,0 20px 44px #00000085,0 0 42px #ffe18047}:root[data-theme=dark] .public-home-actions .ghost-button{border-color:#ffffff70;background:#111116b8;color:#fff;box-shadow:0 14px 30px #0f172a33}@media(prefers-reduced-motion:reduce){.public-home-banner-brand .public-home-actions .primary-button,.public-home-banner-brand .public-home-actions .primary-button:after,.public-home-video-logo-cover:before{animation:none;filter:none}}@media(max-width:820px){.public-home-nav{align-items:center;flex-direction:row;gap:12px;min-height:70px;padding:10px clamp(14px,4vw,28px)}.public-home-brand img{width:clamp(86px,20vw,124px);max-height:48px}.public-home-links{width:auto;margin-left:auto;justify-content:flex-end;gap:8px;overflow:visible;padding-bottom:0}.public-home-login-link{min-height:40px;padding:8px 14px}.public-home-theme-toggle .theme-mode-options{grid-template-columns:repeat(2,34px);gap:3px;padding:3px}.public-home-theme-toggle .theme-mode-option{width:34px;min-height:34px;height:34px}.public-home-theme-toggle .theme-mode-icon{width:16px;height:16px}.public-home-banner{grid-template-columns:1fr;width:100%;min-height:clamp(560px,82svh,760px);align-items:end;padding:clamp(28px,7vw,48px)}.public-home-banner-with-image{min-height:clamp(650px,92svh,840px)}.public-home-banner-with-image .public-home-banner-background-image{object-fit:cover;object-position:55% 28%;opacity:1;filter:brightness(1.42) contrast(1.16) saturate(1.08)}.public-home-banner-with-image:before{background:radial-gradient(circle at 58% 34%,rgba(255,225,128,.2),transparent 32%),linear-gradient(180deg,#0000000a,#0000001f 38%,#0000006b 66%,#000000eb),linear-gradient(90deg,#00000075,#0000001a 46%,#00000047)}.public-home-banner-with-image:after{background:radial-gradient(circle at 58% 30%,rgba(255,225,128,.18),transparent 38%),linear-gradient(180deg,transparent 0 60%,rgba(0,0,0,.76) 100%)}.public-home-banner-with-countdown{padding-bottom:clamp(132px,28vw,178px)}.public-home-banner-copy{max-width:100%}.public-home-banner-media{min-height:130px;justify-items:start;order:-1}.public-home-logo-spotlight,.public-home-wallet-preview{width:min(70vw,300px)}}@media(max-width:560px){.public-home-nav{gap:8px;min-height:64px;padding:8px 12px}.public-home-brand img{width:clamp(74px,22vw,96px);max-height:42px}.public-home-link{display:none}.public-home-login-link{min-width:112px;min-height:38px;padding:8px 12px;font-size:.94rem}.public-home-banner-with-image{min-height:clamp(650px,92svh,780px);padding:28px 20px 34px}.public-home-banner-with-image .public-home-banner-background-image{inset:0 0 auto;height:min(60svh,520px);object-fit:contain;object-position:center top;filter:brightness(1.08) contrast(1.08) saturate(1.04)}.public-home-banner-with-image .public-home-banner-copy{align-self:end;gap:16px}.public-home-banner h1{max-width:9ch;font-size:clamp(2.65rem,14vw,4.4rem)}.public-home-banner h2{max-width:10ch;font-size:clamp(2.35rem,12vw,3.9rem)}.public-home-banner-with-image .public-home-banner-copy h2{max-width:9.8ch;font-size:clamp(2.45rem,11.4vw,3.55rem);-webkit-text-stroke:1.4px rgba(0,0,0,.9);filter:drop-shadow(0 3px 0 rgba(0,0,0,.94)) drop-shadow(0 0 10px rgba(0,0,0,.95)) drop-shadow(0 0 18px rgba(255,225,128,.58))}.public-home-banner p{max-width:31ch;font-size:1rem}.public-home-actions{align-items:stretch;flex-direction:column}.public-home-actions .primary-button,.public-home-actions .ghost-button{width:100%}.public-home-banner-brand .public-home-actions .primary-button{min-height:78px;padding:16px 82px 16px 86px;font-size:1rem}.public-home-banner-brand .public-home-actions .primary-button:before{top:10px;bottom:10px;left:10px;width:58px;font-size:.64rem}.public-home-banner-brand .public-home-actions .primary-button:after{background-position:0 0,0 0,72% 50%,right 20px center,160% 0;background-size:auto,auto,120px 70px,44px 34px,220% 100%}}
