:root{color-scheme:light;--ink: #0f172a;--muted: #64748b;--line: #e2e8f0;--line-strong: #cbd5e1;--paper: #f8fafc;--panel: #ffffff;--brand: #10b981;--brand-strong: #059669;--brand-light: #d1fae5;--accent: #f59e0b;--danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 4px 6px -1px rgb(0 0 0 / .05), 0 2px 4px -2px rgb(0 0 0 / .05);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .05), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-float: 0 20px 25px -5px rgb(0 0 0 / .08), 0 8px 10px -6px rgb(0 0 0 / .08);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);transition:background-color .3s ease}a{color:inherit;text-decoration:none;transition:color .2s ease}.site-header{align-items:center;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;min-height:72px;padding:0 clamp(16px,4vw,56px);position:sticky;top:0;z-index:20}.brand{align-items:center;display:inline-flex;font-weight:800;gap:12px;letter-spacing:-.02em}.brand img{height:38px;width:auto;transition:transform .3s ease}.brand:hover img{transform:scale(1.05)}.site-header nav{align-items:center;display:flex;gap:8px}.site-header nav a,.site-header nav button,.back-link{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;font:inherit;font-weight:600;padding:10px 14px;transition:all .2s ease}.site-header nav a:hover,.site-header nav button:hover,.back-link:hover{background:var(--paper);color:var(--ink)}.site-header nav form{margin:0}.has-admin-sidebar .site-header{background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.admin-topbar{min-height:64px}.admin-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 64px)}.admin-sidebar{align-self:start;background:var(--panel);border-right:1px solid var(--line);height:calc(100vh - 64px);overflow-y:auto;padding:24px 20px;position:sticky;top:64px}.admin-sidebar-heading{margin-bottom:20px;padding:0 12px 12px}.admin-sidebar-heading span{color:var(--brand);display:block;font-size:.75rem;font-weight:800;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.admin-sidebar-heading strong{display:block;font-size:1.1rem;letter-spacing:-.01em}.admin-sidebar-nav{display:grid;gap:6px}.admin-sidebar-nav a{border:1px solid transparent;border-radius:var(--radius-md);color:var(--muted);font-size:.95rem;font-weight:600;padding:12px 16px;transition:all .2s ease;display:flex;align-items:center;gap:12px}.admin-sidebar-nav a:hover{background:var(--paper);color:var(--ink)}.admin-sidebar-nav a.is-active{background:var(--brand-light);color:var(--brand-strong);font-weight:700}.admin-content{min-width:0;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.has-admin-sidebar .section{padding:40px clamp(24px,4vw,56px) 80px}.has-admin-sidebar .section.compact{margin:0;max-width:1240px}.has-admin-sidebar .section-heading h1,.has-admin-sidebar .section-heading h2{font-size:clamp(2rem,4vw,3.4rem)}.hero{display:grid;gap:28px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);min-height:calc(100vh - 72px);padding:clamp(34px,7vw,88px) clamp(16px,4vw,56px)}.hero-copy{align-self:center;max-width:760px}.eyebrow{color:var(--brand);font-size:.82rem;font-weight:800;letter-spacing:0;margin:0 0 14px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(3.4rem,9vw,8rem);line-height:.94;margin-bottom:22px}.hero p,.section-heading p{color:var(--muted);font-size:1.04rem;line-height:1.7}.hero-panel{align-self:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);display:grid;overflow:hidden}.hero-panel div,.program-card,.empty-state{border-bottom:1px solid var(--line);padding:24px}.hero-panel div:last-child{border-bottom:0}.hero-panel strong,.hero-panel span{display:block}.hero-panel span,.program-card p,.empty{color:var(--muted);line-height:1.6}.section{padding:44px clamp(16px,4vw,56px) 72px}.section.compact{margin:0 auto;max-width:960px}.section-heading{margin-bottom:24px;max-width:760px}.section-heading h1,.section-heading h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;letter-spacing:-.02em;margin-bottom:12px}.program-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.program-card,.empty-state,.meta-grid div,.alert,.notice{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease}.program-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.program-card{border-bottom:1px solid var(--line)}.program-card h3{font-size:1.25rem;letter-spacing:-.01em;margin-bottom:10px}.cycle-list{display:grid;gap:8px;margin-top:18px}.cycle-list a,.notification-list li,.requirement-list li{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;gap:12px;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.cycle-list a:hover{border-color:var(--brand);background:var(--brand-light);transform:translate(2px)}.cycle-list b,.requirement-list b{color:var(--brand-strong);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.meta-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:28px 0}.meta-grid div{padding:20px}.meta-grid dt{color:var(--muted);font-size:.8rem;font-weight:700;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.meta-grid dd{font-size:1.15rem;font-weight:800;margin:0;letter-spacing:-.01em}.requirement-list{display:grid;gap:10px;list-style:none;padding:0}.notification-list{display:grid;gap:10px;list-style:none;margin:0 0 28px;padding:0}.notification-list li{background:var(--panel);box-shadow:var(--shadow-sm)}.notification-list li.is-unread{border-left:4px solid var(--brand)}.notification-list span{display:block;font-weight:700}.primary-button{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);border:0;border-radius:var(--radius-sm);box-shadow:0 2px 4px #10b98133;color:#fff;cursor:pointer;font:inherit;font-weight:600;margin-top:18px;padding:12px 20px;transition:all .2s ease;text-align:center;position:relative;overflow:hidden}.inline-button,.secondary-button{display:inline-flex;justify-content:center;align-items:center}.compact-button{margin-top:0;white-space:nowrap}.secondary-button{background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font-weight:600;margin-top:12px;padding:10px 16px;transition:all .2s ease;box-shadow:var(--shadow-sm)}.primary-button:hover{transform:translateY(-1px);box-shadow:0 4px 6px #10b9814d;filter:brightness(1.1)}.secondary-button:hover{background:var(--paper);border-color:var(--muted);transform:translateY(-1px)}.primary-button:active,.secondary-button:active{transform:translateY(0)}.primary-button:hover{background:var(--brand-strong)}.form-panel,.info-panel,.filter-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .3s ease}.form-panel:hover,.filter-panel:hover{box-shadow:var(--shadow)}.form-panel{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0;padding:28px}.form-panel label{display:grid;gap:8px}.form-panel label span,.form-actions span{color:var(--muted);font-size:.85rem;font-weight:700}.form-panel input,.form-panel select,.form-panel textarea{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font:inherit;min-height:44px;padding:10px 14px;width:100%;transition:all .2s ease}.password-field{align-items:stretch;display:grid!important;gap:8px;grid-template-columns:minmax(0,1fr) auto}.password-field input{min-width:0}.password-field button{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--brand-strong);cursor:pointer;font:inherit;font-weight:700;min-height:44px;padding:0 16px;white-space:nowrap;transition:all .2s ease}.password-field button[aria-pressed=true]{background:var(--brand);color:#fff;border-color:var(--brand)}.password-field button svg{width:18px;height:18px;display:block}.password-field button .icon-eye-off,.password-field button[aria-pressed=true] .icon-eye{display:none}.password-field button[aria-pressed=true] .icon-eye-off{display:block}.form-panel textarea{min-height:120px;resize:vertical}.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus,.filter-panel input:focus,.filter-panel select:focus{border-color:var(--brand);outline:none;background:var(--panel);box-shadow:0 0 0 3px var(--brand-light)}.span-2,.form-panel .primary-button{grid-column:1 / -1}.check-row{align-items:center;display:flex!important;grid-column:1 / -1}.check-row input{min-height:auto;width:auto}.form-actions{align-items:center;display:flex;gap:16px;justify-content:space-between}.dashboard-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:28px}.admin-actions{display:flex;flex-wrap:wrap;gap:12px}.metric-strip{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:24px;overflow:hidden;box-shadow:var(--shadow-sm)}.filter-panel{display:grid;gap:16px;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(160px,1fr));margin-bottom:28px;padding:20px}.filter-panel label{display:grid;gap:6px}.filter-panel label span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.filter-panel input,.filter-panel select{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;min-height:42px;padding:8px 12px;width:100%;transition:all .2s ease}.searchable-select{position:relative}.searchable-select-button,.searchable-select-search{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font:inherit;min-height:42px;padding:8px 12px;text-align:left;width:100%;transition:all .2s ease}.searchable-select-button{cursor:pointer;overflow:hidden;padding-right:32px;position:relative;text-overflow:ellipsis;white-space:nowrap}.searchable-select-button:after{border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--muted);content:"";position:absolute;right:14px;top:50%;transform:translateY(-50%)}.searchable-select-button:focus,.searchable-select-search:focus{border-color:var(--brand);outline:none;background:var(--panel);box-shadow:0 0 0 3px var(--brand-light)}.searchable-select-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-float);left:0;margin-top:8px;padding:10px;position:absolute;right:0;top:100%;z-index:30}.searchable-select-list{display:grid;gap:4px;max-height:260px;margin-top:10px;overflow-y:auto}.searchable-select-option{background:transparent;border:0;border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;font:inherit;padding:10px 12px;text-align:left;transition:background-color .2s ease}.searchable-select-option:hover,.searchable-select-option[aria-selected=true]{background:var(--brand-light);color:var(--brand-strong);font-weight:700}.searchable-select-empty{color:var(--muted);padding:12px;text-align:center}.filter-actions{align-items:end;display:flex;gap:12px}.metric-strip div{border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:grid;gap:6px;min-height:80px;padding:18px 20px;transition:background-color .2s ease}.metric-strip div:hover{background:var(--paper)}.metric-strip span{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.metric-strip strong{font-size:1.4rem;letter-spacing:-.02em}.table-section{margin-top:32px}.table-section.is-loading{opacity:.6;pointer-events:none;filter:blur(1px);transition:all .3s ease}.compact-table-section{max-width:600px}.table-heading{align-items:flex-end;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.table-heading h2{font-size:1.5rem;margin-bottom:6px;letter-spacing:-.01em}.table-heading p{color:var(--muted);margin:0}.data-table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.data-table{border-collapse:collapse;min-width:920px;width:100%}.data-table.application-table{min-width:1320px}.data-table.action-table,.data-table.candidates-table,.data-table.cycles-table,.data-table.finance-batches-table,.data-table.imports-table,.data-table.users-table{min-width:1180px}.data-table.users-table{min-width:1680px}.data-table.candidates-table,.data-table.cycles-table,.data-table.finance-batches-table{min-width:1560px}.data-table.slim{min-width:0}.data-table th,.data-table td{border-bottom:1px solid var(--line);padding:16px 20px;text-align:left;vertical-align:top;transition:background-color .2s ease}.data-table tbody tr:hover td{background-color:var(--paper)}.data-table th{background:var(--paper);color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--line)}.data-table tr:last-child td{border-bottom:0}.data-table td{font-size:.95rem}.data-table td>strong,.data-table td>span{display:block}.data-table td>span{color:var(--muted);margin-top:4px;font-size:.85rem}.data-table a{color:var(--brand-strong);font-weight:700}.data-table a:hover{text-decoration:underline}.data-table code{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--brand-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:4px 8px;font-size:.85em}.action-cell{min-width:220px}.table-form{margin-top:0!important}.table-form textarea{min-height:72px}.checkbox-table-form{max-height:260px;overflow:auto}.nested-table{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);min-width:680px!important;overflow:hidden}.table-pick-form{display:block}.inline-filter{align-items:flex-end;display:flex;gap:12px;margin:0 0 20px;max-width:520px}.status-pill{background:var(--brand-light);border:1px solid rgb(16 185 129 / .2);border-radius:var(--radius-full);color:var(--brand-strong)!important;display:inline-flex!important;font-size:.75rem;font-weight:700;line-height:1;margin-top:0!important;padding:6px 12px;text-transform:uppercase;letter-spacing:.05em}.pagination-bar{align-items:center;color:var(--muted);display:flex;font-size:.9rem;gap:16px;justify-content:space-between;margin-top:20px}.pagination-bar nav>div:first-child{display:none}.pagination-bar nav>div:last-child{align-items:center;display:flex;gap:8px}.pagination-bar nav span,.pagination-bar nav a{align-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);display:inline-flex;font-weight:600;min-height:36px;padding:6px 12px;background:var(--panel);transition:all .2s ease}.pagination-bar nav a:hover{background:var(--paper);border-color:var(--line-strong)}.pagination-bar nav a{color:var(--ink)}.info-panel{padding:24px}.mini-form{display:grid;gap:12px;margin-top:20px}.mini-form input,.mini-form select,.mini-form textarea{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font:inherit;min-height:42px;padding:10px 14px;width:100%;transition:all .2s ease}.mini-form input:focus,.mini-form select:focus,.mini-form textarea:focus{border-color:var(--brand);outline:none;background:var(--panel);box-shadow:0 0 0 3px var(--brand-light)}.mini-form textarea{min-height:100px;resize:vertical}.requirement-list small{color:var(--muted);display:block;margin-top:4px}.alert,.notice{border-color:#f2c5be;color:var(--danger);margin:16px clamp(16px,4vw,56px);padding:14px 16px}.notice{border-color:#bfdccb;color:var(--brand-strong)}@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column;gap:12px;padding-bottom:14px;padding-top:14px;position:static}.hero{grid-template-columns:1fr;min-height:auto}.form-panel{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column}.admin-shell{display:block}.admin-sidebar{border-bottom:1px solid var(--line);border-right:0;min-height:auto;overflow-x:auto;padding:12px;position:static}.admin-sidebar-heading{display:none}.admin-sidebar-nav{display:flex;gap:8px;min-width:max-content}.admin-sidebar-nav a{white-space:nowrap}}.progress{display:flex;align-items:center;gap:.75rem;margin:.5rem 0 1rem}.progress-track{flex:1;height:10px;background:var(--line);border-radius:var(--radius-full);overflow:hidden;box-shadow:inset 0 1px 2px #0000000d}.progress-fill{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-strong));transition:width .4s cubic-bezier(.4,0,.2,1)}.stepper-indicators{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;padding:0;margin:0 0 1.5rem}.stepper-indicators li{font-size:.85rem;font-weight:600;padding:.4rem 1rem;border-radius:var(--radius-full);background:var(--paper);border:1px solid var(--line-strong);color:var(--muted);transition:all .2s ease}.stepper-indicators li.is-active{background:var(--brand-light);border-color:var(--brand);color:var(--brand-strong);box-shadow:0 2px 4px #10b9811a}.step-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;border:0;padding:0;margin:0;grid-column:1 / -1}.step-grid[hidden]{display:none!important}.step-grid legend{font-size:1.2rem;font-weight:700;grid-column:1 / -1;margin-bottom:12px;color:var(--ink);letter-spacing:-.01em}.step-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.autosave-status{font-size:.85rem;color:var(--muted);font-weight:600}.address-block{border:1px solid var(--line-strong);border-radius:var(--radius-md);display:grid;gap:16px;padding:20px;background:var(--paper)}.address-block h2{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;margin-bottom:8px}.region-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.is-invalid span{color:var(--danger)}.is-invalid input,.is-invalid select,.is-invalid textarea{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-light)}@media(max-width:900px){.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.step-grid,.region-grid{grid-template-columns:1fr}}
