:root{--brown:#210b06;--brown-rgb:33,11,6;--brown-light:#3d1d11;--cream:#f2dfc4;--cream-2:#d8b58c;--gold:#dba63b;--red:#941b14;--blue:#073d79;--white:#fff4e4;--dark:#100503;--line:rgba(242,223,196,0.2);--glass:rgba(255,255,255,0.03);--glass-hover:rgba(235,224,206,0.08);--shadow:0 24px 70px rgba(0,0,0,0.5);--radius:20px;--radius-sm:14px;--radius-xs:10px;--safe-bottom:max(18px,env(safe-area-inset-bottom));--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--success:#4CAF50;--warning:#FF9800;--danger:#f44336;--info:#2196F3}*{box-sizing:border-box;margin:0;padding:0}html{min-height:100%;scroll-behavior:smooth;background:var(--brown)}body{min-height:100vh;color:var(--cream);background:var(--brown);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:0.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");mix-blend-mode:overlay}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(135deg,rgba(148,27,20,.12),transparent 28%),linear-gradient(315deg,rgba(7,61,121,.12),transparent 28%),radial-gradient(circle at 50% 0%,rgba(242,223,196,.08),transparent 50%)}h1,h2,h3,.page-header,.sidebar-brand-text,.nav-section-title,.stat-value,.badge,.btn{font-family:"Barlow Condensed",Inter,sans-serif;letter-spacing:.02em}::selection{background:var(--cream);color:var(--brown)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:none;outline:none;cursor:pointer;background:none}img{display:block;max-width:100%}.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{position:fixed;top:0;left:0;width:260px;height:100vh;padding:var(--space-lg);background:linear-gradient(180deg,#160704 0%,#230d08 55%,#0c1320 140%);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:50;overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:12px;padding-bottom:var(--space-lg);border-bottom:1px solid var(--line);margin-bottom:var(--space-lg)}.sidebar-brand-logo{width:50px;height:50px;border:0;background:url('/images/0723-mark.svg') center/contain no-repeat}.sidebar-brand-logo span{display:none}.sidebar-brand-text{font-size:16px;font-weight:800;letter-spacing:-0.02em}.sidebar-brand-text small{display:block;font-size:10px;font-weight:600;color:rgba(235,224,206,0.4);letter-spacing:0.08em;text-transform:uppercase}.nav-section{margin-bottom:var(--space-lg)}.nav-section-title{font-size:9px;font-weight:900;letter-spacing:0.14em;text-transform:uppercase;color:rgba(235,224,206,0.35);padding:0 12px;margin-bottom:var(--space-sm)}.nav-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-xs);font-size:13px;font-weight:600;color:rgba(235,224,206,0.65);transition:all 0.2s ease}.nav-link:hover{background:var(--glass-hover);color:var(--cream)}.nav-link.active{background:rgba(212,175,55,0.12);color:var(--gold);border:1px solid rgba(212,175,55,0.2)}.nav-link svg{flex:0 0 auto;opacity:0.7}.nav-link.active svg{opacity:1}.nav-badge{margin-left:auto;padding:2px 7px;border-radius:99px;background:var(--danger);color:white;font-size:10px;font-weight:800}.main-content{grid-column:2;padding:var(--space-xl);position:relative;z-index:1;min-height:100vh}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:1px solid var(--line)}.page-header h1{font-size:24px;font-weight:800;letter-spacing:-0.02em}.page-header p{color:rgba(235,224,206,0.5);font-size:13px;margin-top:4px}.card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,244,228,.045),rgba(99,28,16,.035));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius);overflow:hidden;transition:all 0.3s cubic-bezier(0.16,1,0.3,1)}.card::before{content:"";display:block;height:1px;background:linear-gradient(90deg,var(--red),var(--cream-2),var(--blue));opacity:.65}.card:hover{background:var(--glass-hover);border-color:rgba(235,224,206,0.2)}.card-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.card-header h2{font-size:16px;font-weight:700}.card-body{padding:var(--space-lg)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.stat-card{padding:var(--space-lg);border:1px solid var(--line);border-radius:var(--radius);background:var(--glass)}.stat-card .stat-value{font-size:28px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-0.02em}.stat-card .stat-value.gold{color:var(--gold)}.stat-card .stat-value.success{color:var(--success)}.stat-card .stat-value.danger{color:var(--danger)}.stat-card .stat-label{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:rgba(235,224,206,0.45);margin-top:6px}.table-container{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--glass)}table{width:100%;border-collapse:collapse;font-size:13px}thead th{padding:12px 16px;text-align:left;font-size:10px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:rgba(235,224,206,0.45);border-bottom:1px solid var(--line);background:rgba(0,0,0,0.15)}tbody td{padding:12px 16px;border-bottom:1px solid rgba(235,224,206,0.05);vertical-align:middle}tbody tr:hover{background:var(--glass-hover)}tbody tr:last-child td{border-bottom:none}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;margin-bottom:6px;font-size:12px;font-weight:700;letter-spacing:0.04em;color:rgba(235,224,206,0.7)}.form-control{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:rgba(10,3,2,.48);color:var(--cream);font-size:14px;transition:border-color 0.2s,box-shadow 0.2s}.money{font-weight:800;color:var(--gold)}.money.danger{color:#ff9d8e}.money.success{color:#83d598}.compact-control{padding:7px 9px;font-size:12px;display:inline-block;width:auto}.modal-backdrop{position:fixed;inset:0;z-index:120;background:rgba(3,1,1,.82);display:grid;place-items:center;padding:16px;backdrop-filter:blur(8px)}.modal-backdrop[hidden]{display:none}.modal-card{width:min(680px,100%);max-height:92vh;overflow:auto}.personal-finance-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space-lg)}.action-grid{display:grid;gap:10px}.auth-gate-card{max-width:440px;margin:40px auto}.enrollment-body{background:#140604;min-height:100vh}.enrollment-body::before{opacity:.14;background:linear-gradient(115deg,var(--red) 0 4%,transparent 4% 92%,var(--blue) 92% 100%)}.enrollment-shell{width:min(980px,calc(100% - 24px));margin:20px auto;padding:24px;border:1px solid #9c5a39;background:linear-gradient(145deg,#2b1008,#120604 58%,#20100b);box-shadow:0 30px 80px #000;border-radius:8px;position:relative;z-index:2}.enrollment-brand{text-align:center;padding:8px 0 20px}.enrollment-brand img{width:min(680px,100%);margin:auto}.enrollment-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}.enrollment-title span{font:900 clamp(30px,6vw,58px)/1 "Barlow Condensed",sans-serif;text-transform:uppercase;background:var(--cream);color:#24100a;padding:8px 20px;flex:1}.enrollment-title strong{font:900 40px/1 "Barlow Condensed";border:2px solid var(--cream);padding:9px 20px}.enrollment-section{border:1px solid #9c5a39;padding:18px;margin:12px 0;background:rgba(13,4,2,.35);clip-path:polygon(0 0,98% 0,100% 18px,100% 100%,2% 100%,0 calc(100% - 18px))}.enrollment-section h2{font-size:20px;letter-spacing:.14em;text-transform:uppercase;margin:-7px 0 16px;color:var(--cream)}.form-span-2{grid-column:span 2}.choice-row{display:flex;gap:14px;flex-wrap:wrap;padding:10px 0}.choice-row label,.consent-box{display:flex;gap:7px;align-items:center}.choice-row input,.consent-box input,.brand-choice input{accent-color:var(--red)}.health-row{display:grid;grid-template-columns:minmax(210px,1fr) auto auto minmax(200px,1.4fr);gap:12px;align-items:center;margin:10px 0}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.brand-choice{display:flex;gap:10px;align-items:center;border:1px solid var(--line);padding:12px;cursor:pointer;background:rgba(255,255,255,.025)}.brand-choice:has(input:checked){border-color:var(--gold);background:rgba(219,166,59,.12)}.brand-choice small{display:block;color:#c7b9a6}.responsibility-section p{color:#d9c8b4;line-height:1.6}.consent-box{padding:14px;border:1px solid var(--line);margin:14px 0}.signature-input{font-family:cursive;font-size:18px}.enrollment-submit{margin-top:18px;font-size:20px;text-transform:uppercase}.enrollment-footer{display:flex;align-items:center;gap:16px;justify-content:center;font:600 12px "Barlow Condensed";letter-spacing:.35em;color:#c7b9a6;margin-top:24px}.enrollment-footer span{height:1px;width:110px;background:var(--cream-2)}.form-message{padding:12px;background:#5e1712;border:1px solid #d15d4f;margin:10px 0}.enrollment-success{text-align:center;padding:50px}.enrollment-success img{width:110px;margin:auto}.enrollment-success h1{font-size:42px}.form-control:focus{outline:none;border-color:rgba(212,175,55,0.5);box-shadow:0 0 0 3px rgba(212,175,55,0.1)}.form-control::placeholder{color:rgba(235,224,206,0.3)}.auth-logo{display:block;width:min(330px,100%);height:auto;margin:0 auto 24px}.password-field{position:relative}.password-field .form-control{padding-right:56px}.password-visibility{position:absolute;z-index:2;top:50%;right:9px;width:38px;height:38px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid transparent;border-radius:10px;color:#d8b58c;background:rgba(242,223,196,0.06);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.password-visibility:hover,.password-visibility:focus-visible,.password-visibility.active{color:#fff2dc;border-color:rgba(219,166,59,0.45);background:rgba(219,166,59,0.13);outline:none}select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m7 10 5 5 5-5' stroke='%23ebe0ce' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.form-actions{display:flex;gap:var(--space-md);justify-content:flex-end;padding-top:var(--space-md);border-top:1px solid var(--line)}.schedule-editor{padding:var(--space-lg);border:1px solid var(--line);border-radius:var(--radius-sm);background:rgba(0,0,0,0.12)}.schedule-editor-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.schedule-editor-header h2{font-size:16px}.schedule-editor-header p{color:rgba(235,224,206,0.5);font-size:12px}.schedule-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(120px,1fr) minmax(120px,1fr) auto;gap:var(--space-sm);align-items:center;margin-bottom:var(--space-sm)}.toggle-card{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--glass);cursor:pointer}.toggle-card input{width:18px;height:18px;accent-color:var(--gold)}.toggle-card strong,.toggle-card small{display:block}.toggle-card small{color:rgba(235,224,206,0.5);margin-top:2px}.attendance-status-form{display:grid;grid-template-columns:minmax(140px,180px) minmax(160px,260px) auto;gap:6px;align-items:center}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.calendar-toolbar h2{font-size:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--glass)}.calendar-weekday{padding:10px;text-align:center;color:rgba(235,224,206,0.55);font-size:11px;font-weight:800;text-transform:uppercase;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(0,0,0,0.2)}.calendar-day{min-height:150px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-day.outside-month{opacity:1;background:rgba(0,0,0,0.18)}.calendar-day.outside-month .calendar-date{color:#c7b9a6}.calendar-day.today{box-shadow:inset 0 0 0 2px rgba(212,175,55,0.7)}.calendar-date{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;font-weight:800}.calendar-date small{color:var(--gold);font-size:9px;text-transform:uppercase}.calendar-events{display:grid;gap:6px}.calendar-event{position:relative;display:grid;gap:2px;padding:7px;border-left:3px solid var(--gold);border-radius:8px;background:rgba(212,175,55,0.08);font-size:11px}.calendar-event.changed{border-left-color:var(--warning);background:rgba(255,152,0,0.08)}.calendar-event.cancelled{border-left-color:var(--danger);background:rgba(244,67,54,0.08);opacity:0.8}.calendar-event-time{color:var(--gold);font-weight:900;font-variant-numeric:tabular-nums}.calendar-event small{color:rgba(235,224,206,0.55)}.calendar-event-link{color:var(--gold);font-weight:800;font-size:11px;text-align:left;padding-top:3px}.calendar-remove-form{position:absolute;top:3px;right:5px}.calendar-remove-form button{color:rgba(235,224,206,0.5);font-size:17px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer;transition:all 0.2s ease;border:none}.btn-primary{background:var(--cream);color:var(--brown)}.btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px)}.btn-primary:active{transform:scale(0.97)}.btn-gold{background:linear-gradient(135deg,var(--gold),#c4a030);color:var(--brown)}.btn-ghost{background:var(--glass);color:var(--cream);border:1px solid var(--line)}.btn-ghost:hover{background:var(--glass-hover);border-color:rgba(235,224,206,0.25)}.btn-danger{background:rgba(244,67,54,0.15);color:#ff6b6b;border:1px solid rgba(244,67,54,0.3)}.btn-sm{padding:8px 14px;font-size:12px}.btn-block{width:100%}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:99px;font-size:10px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase}.badge-success{background:rgba(76,175,80,0.15);color:#81c784;border:1px solid rgba(76,175,80,0.3)}.badge-warning{background:rgba(255,152,0,0.15);color:#ffb74d;border:1px solid rgba(255,152,0,0.3)}.badge-danger{background:rgba(244,67,54,0.15);color:#ef9a9a;border:1px solid rgba(244,67,54,0.3)}.badge-info{background:rgba(33,150,243,0.15);color:#90caf9;border:1px solid rgba(33,150,243,0.3)}.badge-gold{background:rgba(212,175,55,0.12);color:#ead18b;border:1px solid rgba(212,175,55,0.3)}.action-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--glass);margin-bottom:var(--space-sm);cursor:pointer;transition:all 0.2s ease}.action-item:hover{background:var(--glass-hover);border-color:rgba(235,224,206,0.2);transform:translateX(4px)}.action-item.priority-high{border-left:3px solid var(--danger)}.action-item.priority-medium{border-left:3px solid var(--warning)}.action-item.priority-low{border-left:3px solid var(--info)}.action-item .action-icon{font-size:20px}.action-item .action-text{font-size:13px;font-weight:600}.empty-state{text-align:center;padding:var(--space-2xl);color:rgba(235,224,206,0.4)}.empty-state .icon{font-size:48px;margin-bottom:var(--space-md)}.empty-state h3{font-size:16px;color:rgba(235,224,206,0.6);margin-bottom:var(--space-sm)}.empty-state p{font-size:13px}@media (max-width:768px){.app-layout{grid-template-columns:1fr}.sidebar{position:fixed;left:-280px;transition:left 0.3s ease;z-index:100}.sidebar.open{left:0}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:99}.sidebar-overlay.open{display:block}.main-content{grid-column:1;padding:var(--space-md)}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-bottom:1px solid var(--line);margin:calc(var(--space-md) * -1) calc(var(--space-md) * -1) var(--space-lg)}.mobile-header .menu-toggle{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-xs);border:1px solid var(--line)}.stats-grid{grid-template-columns:1fr 1fr}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}.schedule-editor-header{align-items:flex-start}.schedule-row{grid-template-columns:1fr 1fr}.schedule-row select{grid-column:1 / -1}.schedule-row .remove-schedule{grid-column:1 / -1}.attendance-status-form{grid-template-columns:1fr;width:100%;max-width:260px}.personal-finance-grid{grid-template-columns:1fr}.enrollment-shell{padding:14px;margin:8px auto}.enrollment-title span{font-size:31px}.enrollment-title strong{font-size:28px;padding:8px 12px}.enrollment-section{padding:14px;clip-path:none}.form-span-2{grid-column:auto}.health-row{grid-template-columns:1fr auto auto}.health-row .form-control{grid-column:1/-1}.plan-grid{grid-template-columns:1fr}.enrollment-footer span{width:28px}.calendar-toolbar{align-items:stretch}.calendar-toolbar h2{text-align:center;align-self:center}.calendar-toolbar .btn{padding:9px 10px}.calendar-grid{display:block;border-radius:var(--radius-sm)}.calendar-weekday,.calendar-day.outside-month{display:none}.calendar-day{min-height:0;padding:12px}.calendar-date{justify-content:flex-start;gap:8px}.form-control{font-size:16px}}@media (min-width:769px){.mobile-header{display:none}.sidebar-overlay{display:none !important}}@keyframes fadeInUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp 0.5s cubic-bezier(0.16,1,0.3,1) both}.animate-in:nth-child(1){animation-delay:0.05s}.animate-in:nth-child(2){animation-delay:0.1s}.animate-in:nth-child(3){animation-delay:0.15s}.animate-in:nth-child(4){animation-delay:0.2s}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}}.sidebar-brand-text small,.nav-section-title,.page-header p,.stat-card .stat-label,.calendar-event small,.timer-brand,.round-label,.presets h3,.footer-brand a,.login-brand p,.forgot-link,thead th,.empty-state,.empty-state p{color:#c7b9a6 !important}[style*="rgba(235,224,206,0.3)"],[style*="rgba(235,224,206,0.35)"],[style*="rgba(235,224,206,0.4)"],[style*="rgba(235,224,206,0.45)"],[style*="rgba(235,224,206,0.5)"],[style*="rgba(235,224,206,0.55)"],[style*="rgba(235,224,206,0.3)"],[style*="rgba(235,224,206,0.35)"],[style*="rgba(235,224,206,0.4)"],[style*="rgba(235,224,206,0.45)"],[style*="rgba(235,224,206,0.5)"],[style*="rgba(235,224,206,0.55)"]{color:#c7b9a6 !important}.app-layout,.main-content,.main-content>*,.card,.card-body,.page-header,.table-container{min-width:0;max-width:100%}.table-container{width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.action-item>*{min-width:0}@media (max-width:768px){.main-content{width:100%;overflow-x:clip}.table-container{max-width:calc(100vw - (var(--space-md) * 2))}.table-container table{min-width:680px}.page-header{width:100%;flex-wrap:wrap}.page-header>div,.page-header .btn{max-width:100%}.btn{white-space:normal}.action-item{flex-wrap:wrap;max-width:100%}}