:root{--bg-page:#fbfbfc;--bg-gradient:linear-gradient(180deg, #fcedee 0%, #fff0f1 16%, #fff8f8 38%, #fbfbfc 100%);--surface:#fff;--surface-soft:#fff5f5;--text-main:#0f172a;--text-muted:#64748b;--border:#e2e8f0;--border-strong:#cbd5e1;--accent:#c41f2a;--accent-hover:#9e141d;--accent-soft:#fef2f2;--accent-border:#fca5a5;--success:#16a34a;--success-soft:#f0fdf4;--danger:#dc2626;--danger-soft:#fef2f2;--focus-ring:#c41f2a33;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 14px #0000000d;--shadow-lg:0 16px 36px #c41f2a14, 0 4px 12px #00000008;--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--radius-full:9999px}*{box-sizing:border-box}html{background:var(--bg-page);color:var(--text-main);scroll-behavior:smooth;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans Thai,Prompt,sans-serif}body{background:var(--bg-gradient);min-height:100vh;color:var(--text-main);margin:0;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.modern-navbar{z-index:50;-webkit-backdrop-filter:blur(14px);background:#ffffffe0;border-bottom:1px solid #e2e8f0bf;padding:10px 0;transition:all .2s;position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;gap:16px;width:min(1200px,100vw - 32px);margin:0 auto;display:flex}.navbar-brand{align-items:center;gap:12px;display:flex}.navbar-logo{object-fit:contain;width:42px;height:42px}.navbar-titles{flex-direction:column;display:flex}.navbar-school-name{color:var(--text-main);font-size:15px;font-weight:800;line-height:1.25}.navbar-motto{color:var(--accent);font-size:12px;font-weight:600}.navbar-admin-link{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-full);color:var(--text-main);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:7px 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.navbar-admin-link:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.modern-main-content{width:min(1200px,100vw - 32px);margin:24px auto 48px}.split-layout-grid{grid-template-columns:1fr;gap:28px;display:grid}@media (min-width:1024px){.split-layout-grid{grid-template-columns:460px 1fr;align-items:start;gap:36px}.hero-showcase-column{position:sticky;top:84px}}.hero-glass-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center;border:1px solid #fecacaa6;padding:28px 22px 26px}.hero-badge-pill{background:var(--accent);color:#fff;border-radius:var(--radius-full);align-items:center;gap:6px;margin-bottom:14px;padding:5px 16px;font-size:12.5px;font-weight:800;display:inline-flex;box-shadow:0 4px 12px #c41f2a38}.hero-main-title{color:var(--text-main);margin:0;font-size:25px;font-weight:900;line-height:1.25}.hero-school-highlight{color:var(--accent);justify-content:center;align-items:center;gap:6px;margin:4px 0 10px;font-size:32px;font-weight:900;line-height:1.2;display:inline-flex}.hero-heart{color:#e11d48;font-size:22px}.hero-subtext{color:var(--text-muted);margin:0 0 16px;font-size:14px;line-height:1.5}.hero-image-box{border-radius:var(--radius-md);margin:0 -4px 18px;overflow:hidden}.hero-students-graphic{width:100%;max-width:410px;height:auto;margin:0 auto;display:block}.hero-features-list{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.hero-feature-item{border-radius:var(--radius-md);text-align:left;background:#fbfbfc;border:1.5px solid #f1f5f9;align-items:center;gap:12px;padding:10px 14px;display:flex;box-shadow:0 2px 6px #00000005}.feature-bubble{border-radius:50%;justify-content:center;align-items:center;width:38px;min-width:38px;height:38px;display:flex}.time-bubble{color:var(--accent);background:#fff1f2}.shield-bubble{color:#2563eb;background:#eff6ff}.feature-details{flex:1}.feature-details strong{color:var(--text-main);font-size:13px;font-weight:700;line-height:1.35;display:block}.feature-details small{color:var(--text-muted);margin-top:2px;font-size:11.5px;display:block}.feature-3d-asset{object-fit:contain;width:44px;min-width:44px;height:44px}.hero-mobile-jump{display:block}@media (min-width:1024px){.hero-mobile-jump{display:none}}.btn-hero-jump{border-radius:var(--radius-full);color:#fff;background:linear-gradient(135deg,#c41f2a 0%,#e11d48 100%);border:none;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:17.5px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 8px 24px #c41f2a52}.btn-hero-jump:hover{transform:translateY(-2px);box-shadow:0 12px 28px #c41f2a6b}.form-column{scroll-margin-top:84px}.form-portal-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid #fecacaa6;padding:28px 24px 32px}.form-portal-header{border-bottom:1.5px dashed var(--border);align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;display:flex}.header-icon-badge{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#c41f2a 0%,#9e141d 100%);justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;display:flex;box-shadow:0 4px 12px #c41f2a40}.form-portal-title{color:var(--text-main);margin:0 0 3px;font-size:21px;font-weight:800}.form-portal-subtitle{color:var(--text-muted);margin:0;font-size:13.5px}.modern-stepper{border:1px solid var(--border);border-radius:var(--radius-md);background:#f8fafc;justify-content:space-between;align-items:center;margin-bottom:24px;padding:12px 18px;display:flex}.stepper-step{color:var(--text-muted);align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.stepper-step.active{color:var(--accent)}.stepper-step.done{color:var(--success)}.stepper-bubble{width:28px;height:28px;color:var(--text-muted);background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:800;transition:all .2s;display:flex}.stepper-step.active .stepper-bubble{background:var(--accent);color:#fff;box-shadow:0 2px 8px #c41f2a4d}.stepper-step.done .stepper-bubble{background:var(--success);color:#fff}.stepper-line{background:var(--border);flex:1;height:2px;margin:0 12px}.modern-alert{border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:13.5px;line-height:1.4;display:flex}.alert-info{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.alert-success{background:var(--success-soft);color:#15803d;border:1px solid #bbf7d0}.alert-error{background:var(--danger-soft);color:var(--danger);border:1px solid #fecaca}.modern-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-row-two{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:640px){.form-row-two{grid-template-columns:1fr 1fr}}.form-label{color:var(--text-main);align-items:center;gap:6px;font-size:13.5px;font-weight:700;display:flex}.required-star{color:var(--danger);font-weight:800}.label-hint{color:var(--text-muted);margin-left:4px;font-size:12px;font-weight:400}.label-with-badge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.checksum-badge{border-radius:var(--radius-full);padding:2px 8px;font-size:11.5px;font-weight:700}.checksum-badge.valid{background:var(--success-soft);color:var(--success);border:1px solid #bbf7d0}.checksum-badge.invalid{background:var(--danger-soft);color:var(--danger);border:1px solid #fecaca}.modern-input{border-radius:var(--radius-sm);border:1.5px solid var(--border);width:100%;min-height:48px;color:var(--text-main);background:#fff;padding:10px 14px;font-size:14.5px;transition:all .15s}.modern-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.modern-input.input-has-error{border-color:var(--danger);background:#fffbfa}.modern-input.input-is-valid{border-color:var(--success)}.field-error-text{color:var(--danger);margin:2px 0 0;font-size:12.5px;font-weight:600}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.level-chip-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (min-width:640px){.level-chip-grid{grid-template-columns:repeat(4,1fr)}}.level-chip{border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text-main);background:#fff;flex-direction:column;justify-content:center;align-items:center;padding:12px 8px;transition:all .15s;display:flex}.level-chip:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.level-chip.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent)}.chip-code{color:var(--accent);font-size:15px;font-weight:900}.chip-label{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:600}.modern-dropzone{border-radius:var(--radius-md);text-align:center;cursor:pointer;background:#fafafa;border:2px dashed #cbd5e1;padding:24px 16px;transition:all .2s}.modern-dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.modern-dropzone.dropzone-has-error{border-color:var(--danger);background:#fff9f8}.modern-dropzone.dropzone-has-file{background:#f0fdf4;border-style:solid;border-color:#bbf7d0;padding:14px}.hidden-file-input{display:none}.dropzone-empty-state{flex-direction:column;align-items:center;gap:6px;display:flex}.dropzone-icon-circle{border:1px solid var(--border);width:48px;height:48px;color:var(--accent);box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.dropzone-title{color:var(--text-main);margin:0;font-size:14px;font-weight:700}.dropzone-sub{color:var(--text-muted);margin:0;font-size:12px}.slip-preview-container{text-align:left;align-items:center;gap:16px;display:flex}.slip-thumbnail{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:72px;height:72px}.slip-doc-container{text-align:left;align-items:center;gap:16px;display:flex}.doc-icon{color:#2563eb}.slip-preview-info{flex:1}.slip-preview-info strong{color:var(--text-main);word-break:break-all;font-size:13.5px;display:block}.slip-preview-info small{color:var(--text-muted);margin:2px 0 6px;font-size:12px;display:block}.btn-remove-slip{color:var(--danger);border-radius:var(--radius-sm);background:#fee2e2;border:none;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.btn-remove-slip:hover{background:#fecaca}.form-action-bar{align-items:center;gap:12px;margin-top:10px;display:flex}.btn-draft{border:1.5px solid var(--border-strong);border-radius:var(--radius-full);background:var(--surface);min-height:48px;color:var(--text-main);justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:14.5px;font-weight:700;transition:all .15s;display:inline-flex}.btn-draft:hover{border-color:var(--text-main);background:#f8fafc}.btn-next{border-radius:var(--radius-full);color:#fff;background:linear-gradient(135deg,#c41f2a 0%,#e11d48 100%);border:none;flex:1;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 24px;font-size:16px;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #c41f2a47}.btn-next:hover{transform:translateY(-1px);box-shadow:0 6px 18px #c41f2a61}.review-section{flex-direction:column;gap:20px;display:flex}.review-header h3{color:var(--text-main);margin:0 0 4px;font-size:19px;font-weight:800}.review-header p{color:var(--text-muted);margin:0;font-size:13.5px}.review-card{border:1.5px solid var(--border);border-radius:var(--radius-md);background:#f8fafc;flex-direction:column;gap:12px;padding:16px 20px;display:flex}.review-item{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;padding-bottom:8px;font-size:14px;display:flex}.review-item:last-child{border-bottom:none;padding-bottom:0}.review-key{color:var(--text-muted);font-weight:600}.review-val{color:var(--text-main);text-align:right;font-weight:700}.font-bold{font-weight:800}.text-accent{color:var(--accent)}.review-slip-preview{border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;background:#fff;padding:14px}.slip-preview-title{color:var(--text-muted);margin:0 0 8px;font-size:12.5px;font-weight:700}.review-slip-img{border-radius:var(--radius-sm);border:1px solid var(--border);object-fit:contain;max-width:100%;max-height:260px}.review-action-bar{align-items:center;gap:12px;display:flex}.btn-back{border:1.5px solid var(--border-strong);border-radius:var(--radius-full);background:var(--surface);min-height:48px;color:var(--text-main);align-items:center;gap:6px;padding:0 18px;font-size:14.5px;font-weight:700;display:inline-flex}.btn-confirm{border-radius:var(--radius-full);color:#fff;background:linear-gradient(135deg,#c41f2a 0%,#e11d48 100%);border:none;flex:1;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 24px;font-size:16.5px;font-weight:800;display:inline-flex;box-shadow:0 4px 14px #c41f2a52}.btn-confirm:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #c41f2a6b}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-section{text-align:center;padding:16px 0}.success-badge-icon{background:var(--success-soft);width:68px;height:68px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex;box-shadow:0 4px 16px #16a34a33}.success-title{color:var(--text-main);margin:0 0 6px;font-size:24px;font-weight:900}.success-desc{color:var(--text-muted);margin:0 0 24px;font-size:14px}.application-ticket{border:2px dashed var(--accent);border-radius:var(--radius-md);background:linear-gradient(135deg,#fff5f5 0%,#fff 100%);margin-bottom:24px;padding:20px 24px}.ticket-label{color:var(--text-muted);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.ticket-number-row{justify-content:center;align-items:center;gap:12px;display:flex}.ticket-number{color:var(--accent);letter-spacing:.05em;font-family:ui-monospace,SFMono-Regular,monospace;font-size:32px;font-weight:900}.btn-copy-ticket{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-main);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex}.btn-copy-ticket:hover{border-color:var(--accent);color:var(--accent)}.text-green{color:var(--success)}.ticket-meta{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;margin-top:12px;font-size:13.5px;font-weight:600;display:flex}.btn-new-registration{border-radius:var(--radius-full);border:1.5px solid var(--border-strong);width:100%;min-height:48px;color:var(--text-main);background:#fff;font-size:15px;font-weight:700;transition:all .15s}.btn-new-registration:hover{border-color:var(--text-main);background:#f8fafc}.modern-footer{text-align:center;color:var(--text-muted);border-top:1px solid #e2e8f099;padding:24px 0 36px;font-size:13px;line-height:1.6}.footer-sub{color:#94a3b8;font-size:11.5px}@media (max-width:640px){.hero-main-title{font-size:22px}.hero-school-highlight{font-size:27px}.hero-glass-card,.form-portal-card{border-radius:20px;padding:20px 16px 24px}.ticket-number{font-size:26px}.hide-on-mobile{display:none}}.admin-shell{width:min(1200px,100vw - 32px);margin:0 auto;padding:24px 0 60px}.admin-topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.admin-kicker{color:var(--accent);text-transform:uppercase;margin:0 0 2px;font-size:13px;font-weight:800}.admin-topbar h1{color:var(--text-main);margin:0 0 4px;font-size:26px;font-weight:900}.admin-topbar span{color:var(--text-muted);font-size:14px}.admin-link-button{border-radius:var(--radius-full);border:1.5px solid var(--border);background:var(--surface);color:var(--text-main);box-shadow:var(--shadow-sm);align-items:center;gap:6px;padding:8px 18px;font-size:13.5px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.admin-link-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.admin-password-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:440px;box-shadow:var(--shadow-lg);text-align:center;margin:40px auto;padding:32px 28px}.admin-password-card h2{color:var(--text-main);margin:0 0 6px;font-size:20px;font-weight:800}.admin-password-card p{color:var(--text-muted);margin:0 0 20px;font-size:13.5px}.admin-password-card form{flex-direction:column;gap:14px;display:flex}.admin-metric-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:22px;display:grid}@media (min-width:768px){.admin-metric-grid{grid-template-columns:repeat(4,1fr)}}.admin-metric-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px 18px}.admin-metric-card span{color:var(--text-muted);font-size:13px;font-weight:700}.admin-metric-card strong{color:var(--text-main);margin-top:6px;font-size:28px;font-weight:900;display:block}.tone-green{background:#f0fdf4;border-color:#bbf7d0}.tone-green strong{color:#16a34a}.tone-blue{background:#eff6ff;border-color:#bfdbfe}.tone-blue strong{color:#2563eb}.tone-purple{background:#fff5f5;border-color:#fca5a5}.tone-purple strong{color:var(--accent)}.tone-slate{background:#f8fafc;border-color:#e2e8f0}.admin-level-panel{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:22px;padding:18px 20px}.admin-level-panel h3{color:var(--text-main);margin:0 0 12px;font-size:15px;font-weight:800}.admin-level-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (min-width:640px){.admin-level-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:1024px){.admin-level-grid{grid-template-columns:repeat(8,1fr)}}.admin-level-pill{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-main);background:#f8fafc;justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.count-badge{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-full);padding:2px 8px;font-size:12px;font-weight:800}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.search-field{flex:1;min-width:220px}.filter-select{border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);min-height:44px;color:var(--text-main);padding:0 14px;font-size:13.5px;font-weight:600}.filter-select:focus{border-color:var(--accent);outline:none}.btn-refresh,.btn-export{border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--text-main);padding:0 16px;font-size:13.5px;font-weight:700;transition:all .15s}.btn-refresh:hover,.btn-export:hover{border-color:var(--text-main);background:#f8fafc}.btn-export{background:var(--text-main);color:#fff;border-color:var(--text-main)}.btn-export:hover{color:#fff;background:#1e293b}.admin-table-shell{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.admin-table th{color:var(--text-muted);border-bottom:1.5px solid var(--border);white-space:nowrap;background:#f8fafc;padding:12px 14px;font-weight:800}.admin-table td{border-bottom:1px solid var(--border);color:var(--text-main);white-space:nowrap;padding:12px 14px}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#fdfdfd}.admin-slip-link{color:var(--accent);font-weight:700;text-decoration:underline}.admin-empty-state{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:14px}.btn-old-system-nav{background:var(--surface);border:1.5px solid var(--accent-border);border-radius:var(--radius-full);color:var(--accent);align-items:center;gap:8px;padding:7px 18px;font-size:13.5px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 2px 8px #c41f2a14}.btn-old-system-nav:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px)}.mobile-old-system-bar{justify-content:center;margin-bottom:20px;display:flex}.btn-old-system-pill{border-radius:var(--radius-full);width:100%;max-width:460px;color:var(--accent);background:#fff;border:1.5px solid #c41f2a40;justify-content:center;align-items:center;gap:10px;padding:12px 20px;font-size:15px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 4px 16px #c41f2a14}.btn-old-system-pill:hover{border-color:var(--accent);background:#fff5f5;transform:translateY(-2px);box-shadow:0 6px 20px #c41f2a1f}.old-system-icon-circle{border:1.5px solid var(--accent);width:28px;height:28px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);background:#0f172a99;justify-content:center;align-items:center;padding:16px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{border:1px solid var(--border);background:#fff;border-radius:20px;width:100%;max-width:520px;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{border-bottom:1px solid var(--border);background:snow;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title-box{align-items:center;gap:12px;display:flex}.modal-icon-badge{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal-title{color:var(--text-main);margin:0;font-size:17px;font-weight:800}.modal-subtitle{color:var(--text-muted);margin:2px 0 0;font-size:12.5px}.modal-close-btn{color:var(--text-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.modal-close-btn:hover{color:var(--text-main);background:#f1f5f9}.modal-body{padding:24px}.lookup-input-group{margin-bottom:18px}.lookup-label{color:var(--text-main);margin-bottom:8px;font-size:13.5px;font-weight:700;display:block}.lookup-field-wrapper{gap:8px;display:flex}.lookup-input{border:1.5px solid var(--border);letter-spacing:.5px;border-radius:10px;outline:none;flex:1;padding:12px 14px;font-size:15px;font-weight:600;transition:all .2s}.lookup-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #c41f2a26}.btn-lookup-submit{background:var(--accent);color:#fff;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:6px;padding:0 18px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.btn-lookup-submit:hover:not(:disabled){background:var(--accent-hover)}.lookup-alert{border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:13.5px;font-weight:600;display:flex}.lookup-alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.lookup-result-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;margin-bottom:18px;padding:18px}.lookup-result-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.badge-confirmed{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:9999px;align-items:center;gap:5px;padding:4px 10px;font-size:12.5px;font-weight:800;display:inline-flex}.lookup-date{color:var(--text-muted);font-size:12px}.lookup-app-no-box{border:1.5px dashed var(--accent-border);background:#fff;border-radius:10px;margin-bottom:14px;padding:12px 16px}.lookup-no-label{color:var(--text-muted);font-size:12px;font-weight:700;display:block}.lookup-no-value-row{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.lookup-no-val{letter-spacing:1px;color:var(--accent);font-family:monospace;font-size:22px;font-weight:900}.btn-copy-no{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-border);border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.btn-copy-no:hover{background:var(--accent);color:#fff}.lookup-details-grid{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.lookup-details-grid small{color:var(--text-muted);font-size:11.5px;display:block}.lookup-details-grid strong{color:var(--text-main);margin-top:2px;font-size:13.5px;display:block}.lookup-details-grid .grid-full{grid-column:span 2}.modal-admin-footer{border-top:1px solid var(--border);color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:14px;font-size:13px;display:flex}.admin-footer-link{color:var(--accent);font-weight:700;text-decoration:none}.admin-footer-link:hover{text-decoration:underline}.landing-steps-section{border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;margin-top:56px;padding:40px 24px}.section-head{margin-bottom:36px}.text-center{text-align:center}.section-eyebrow{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);background:var(--accent-soft);border-radius:9999px;margin-bottom:8px;padding:4px 14px;font-size:13px;font-weight:800;display:inline-block}.section-heading{color:var(--text-main);letter-spacing:-.5px;margin:4px 0 8px;font-size:26px;font-weight:900}.section-subtext{color:var(--text-muted);max-width:620px;margin:0 auto;font-size:15px}.steps-cards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.step-card{background:snow;border:1.5px solid #fecaca;border-radius:18px;padding:28px 20px 24px;transition:all .2s;position:relative}.step-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 10px 25px #c41f2a14}.step-number-badge{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:900;display:flex;position:absolute;top:-14px;left:20px;box-shadow:0 2px 8px #c41f2a4d}.step-icon-wrap{width:48px;height:48px;color:var(--accent);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #fee2e2;border-radius:12px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.step-card h4{color:var(--text-main);margin:0 0 8px;font-size:17px;font-weight:800}.step-card p{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.6}.landing-info-section{margin-top:48px}.info-split-grid{grid-template-columns:1fr;gap:28px;display:grid}@media (min-width:900px){.info-split-grid{grid-template-columns:1.15fr .85fr}}.info-left-panel{border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;padding:32px 28px}.category-items-list{flex-direction:column;gap:14px;margin-top:24px;display:flex}.category-item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:14px;padding:14px 18px;transition:all .15s;display:flex}.category-item-card:hover{background:#fff5f5;border-color:#fca5a5}.cat-icon-pill{background:var(--accent);color:#fff;white-space:nowrap;border-radius:6px;flex-shrink:0;margin-top:2px;padding:4px 10px;font-size:11px;font-weight:800}.category-item-card strong{color:var(--text-main);font-size:14.5px;font-weight:800;display:block}.category-item-card p{color:var(--text-muted);margin:3px 0 0;font-size:12.5px;line-height:1.45}.awards-highlight-card{color:#fff;border-radius:var(--radius-lg);background:linear-gradient(145deg,#9e141d 0%,#c41f2a 100%);flex-direction:column;justify-content:space-between;padding:32px 28px;display:flex;box-shadow:0 16px 36px #c41f2a40}.award-header{align-items:center;gap:14px;margin-bottom:22px;display:flex}.award-icon-box{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#ffffff2e;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.award-title{margin:0;font-size:19px;font-weight:900}.award-subtitle{color:#ffffffd9;margin:3px 0 0;font-size:13px}.award-benefits-list{flex-direction:column;gap:16px;margin:0 0 24px;padding:0;list-style:none;display:flex}.award-benefits-list li{align-items:flex-start;gap:12px;display:flex}.bullet-check{width:22px;height:22px;color:var(--accent);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:12px;font-weight:900;display:flex}.award-benefits-list strong{font-size:14px;font-weight:800;display:block}.award-benefits-list p{color:#ffffffd9;margin:2px 0 0;font-size:12px;line-height:1.4}.school-trust-mini-box{background:#0003;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.trust-logo{object-fit:contain;background:#fff;border-radius:50%;width:36px;height:36px;padding:3px}.school-trust-mini-box strong{font-size:13px;font-weight:800;display:block}.school-trust-mini-box small{color:#ffffffbf;font-size:11px;display:block}.landing-faq-section{margin-top:56px;margin-bottom:24px}.faq-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:768px){.faq-grid{grid-template-columns:1fr 1fr}}.faq-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;padding:22px 24px;transition:all .15s}.faq-card:hover{box-shadow:var(--shadow-md);border-color:#cbd5e1}.faq-q{color:var(--text-main);align-items:flex-start;gap:10px;margin-bottom:10px;font-size:15px;font-weight:800;line-height:1.4;display:flex}.faq-icon{color:var(--accent);flex-shrink:0;margin-top:2px}.faq-a{color:var(--text-muted);margin:0;font-size:13.5px;line-height:1.6}.footer-content-inner{border-bottom:1px solid #e2e8f0cc;flex-direction:column;gap:24px;margin-bottom:20px;padding-bottom:24px;display:flex}@media (min-width:768px){.footer-content-inner{flex-direction:row;justify-content:space-between;align-items:center}}.footer-school-brand{align-items:center;gap:16px;display:flex}.footer-logo{object-fit:contain;width:52px;height:52px}.footer-title{color:var(--text-main);margin:0;font-size:17px;font-weight:800}.footer-desc{color:var(--text-muted);margin:4px 0 0;font-size:12.5px;line-height:1.5}.footer-contact-details{flex-direction:column;gap:8px;display:flex}.footer-contact-item{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.footer-web-link{color:var(--accent);font-weight:700;text-decoration:none}.footer-web-link:hover{text-decoration:underline}.footer-bottom-bar{text-align:center}.navbar-cta-btn{background:var(--accent);border-radius:var(--radius-full);align-items:center;gap:6px;padding:8px 18px;font-size:13.5px;font-weight:800;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 2px 8px #c41f2a40;color:#fff!important}.navbar-cta-btn:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 14px #c41f2a59}.hero-cta-box{margin-top:24px}.btn-hero-primary-cta{color:#fff;border-radius:var(--radius-full);letter-spacing:.5px;background:linear-gradient(135deg,#c41f2a 0%,#9e141d 100%);justify-content:center;align-items:center;gap:12px;width:100%;padding:16px 28px;font-size:18px;font-weight:900;text-decoration:none;transition:all .2s;display:flex;box-shadow:0 8px 24px #c41f2a59}.btn-hero-primary-cta:hover{background:linear-gradient(135deg,#d32f2f 0%,#b71c1c 100%);transform:translateY(-2px);box-shadow:0 12px 30px #c41f2a73}.steps-cta-center{text-align:center;margin-top:32px}.btn-steps-cta{color:var(--accent);border:2px solid var(--accent);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:800;text-decoration:none;transition:all .15s;display:inline-flex}.btn-steps-cta:hover{background:var(--accent);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.mobile-floating-cta-bar{display:none}@media (max-width:768px){.mobile-floating-cta-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);z-index:40;background:#ffffffeb;padding:12px 16px;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000014}.btn-mobile-floating-cta{background:var(--accent);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 20px;font-size:16px;font-weight:800;text-decoration:none;display:flex;box-shadow:0 4px 14px #c41f2a4d}}.register-main-container{width:min(780px,100vw - 32px);margin:32px auto 64px}.register-portal-box{border:1px solid var(--border);background:#fff;border-radius:24px;padding:32px;overflow:hidden;box-shadow:0 16px 40px #0000000d}.register-portal-header{border-bottom:1.5px solid var(--border);align-items:center;gap:16px;margin-bottom:28px;padding-bottom:24px;display:flex}.register-portal-title{color:var(--text-main);letter-spacing:-.5px;margin:0;font-size:22px;font-weight:900}.register-portal-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:14px}.btn-nav-back{border-radius:var(--radius-full);color:var(--text-main);background:#f1f5f9;border:1px solid #cbd5e1;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.btn-nav-back:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.summary-receipt-wrapper{animation:.3s fadeIn}.official-receipt-card{background:#fff;border:2px solid #e2e8f0;border-radius:20px;padding:32px;box-shadow:0 10px 30px #0000000f}.receipt-school-header{border-bottom:2px solid #c41f2a;align-items:center;gap:20px;padding-bottom:20px;display:flex}.receipt-logo{object-fit:contain;flex-shrink:0;width:64px;height:64px}.receipt-school-titles{flex:1}.receipt-school-name{color:#0f172a;margin:0;font-size:20px;font-weight:900}.receipt-program-name{color:#64748b;margin:3px 0 6px;font-size:13px}.receipt-doc-badge{color:#c41f2a;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:3px 10px;font-size:12px;font-weight:800;display:inline-block}.receipt-app-number-box{background:snow;border:2px dashed #f87171;border-radius:14px;margin:24px 0 16px;padding:20px 24px}.receipt-app-number-inner{justify-content:space-between;align-items:center;gap:16px;display:flex}.receipt-no-label{color:#64748b;font-size:13px;font-weight:700;display:block}.receipt-no-row{align-items:center;gap:12px;margin-top:4px;display:flex}.receipt-no-value{color:#c41f2a;letter-spacing:1.5px;font-family:monospace;font-size:32px;font-weight:900}.receipt-qr-placeholder{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:8px 12px;display:flex}.receipt-qr-placeholder small{color:#94a3b8;margin-top:2px;font-size:10px}.receipt-email-alert{color:#1e40af;background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:14px 18px;display:flex}.email-alert-icon{color:#2563eb;flex-shrink:0;margin-top:2px}.receipt-email-alert strong{font-size:14px;font-weight:800;display:block}.receipt-email-alert p{color:#3b82f6;margin:2px 0 0;font-size:12.5px}.receipt-details-table{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;overflow:hidden}.receipt-row{border-bottom:1px solid #e2e8f0;padding:12px 18px;font-size:14px;display:flex}.receipt-row:last-child{border-bottom:none}.receipt-col-label{color:#64748b;width:40%;font-weight:700}.receipt-col-val{color:#0f172a;width:60%}.receipt-col-val.text-green{color:#16a34a}.inline-icon{vertical-align:middle;margin-right:4px;display:inline-block}.receipt-slip-section{background:#fdfdfd;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:14px;margin-bottom:20px;padding:14px 18px;display:flex}.receipt-slip-label{color:#64748b;font-size:13px;font-weight:700}.receipt-slip-thumb{object-fit:cover;border:1px solid #cbd5e1;border-radius:6px;max-width:90px;max-height:70px}.receipt-instructions{color:#92400e;background:#fffbeb;border-left:4px solid #f59e0b;border-radius:0 8px 8px 0;padding:14px 18px;font-size:13px;line-height:1.6}.receipt-instructions strong{margin-bottom:4px;font-weight:800;display:block}.receipt-instructions p{margin:0}.receipt-action-buttons{gap:14px;margin-top:24px;display:flex}.btn-print-pdf{color:#fff;background:#0f172a;border:none;border-radius:12px;flex:1.2;justify-content:center;align-items:center;gap:10px;padding:14px 24px;font-size:15px;font-weight:800;transition:all .15s;display:flex;box-shadow:0 4px 14px #0f172a33}.btn-print-pdf:hover{background:#1e293b;transform:translateY(-1px);box-shadow:0 6px 20px #0f172a4d}.btn-close-summary{color:#475569;background:#fff;border:1.5px solid #cbd5e1;border-radius:12px;flex:.8;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:15px;font-weight:700;transition:all .15s;display:flex}.btn-close-summary:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}@media print{body{color:#000!important;background:#fff!important}.no-print,.modern-navbar,.modern-footer,.receipt-action-buttons,.mobile-floating-cta-bar,.btn-copy-ticket,.modern-stepper-header,.draft-button-group{display:none!important}.register-main-container,.modern-main-content{width:100%!important;margin:0!important;padding:0!important}.register-portal-box{box-shadow:none!important;border:none!important;padding:0!important}.official-receipt-card{box-shadow:none!important;border:2px solid #000!important;border-radius:0!important;width:100%!important;padding:24px!important}.receipt-app-number-box{background:0 0!important;border:2px solid #000!important}.receipt-no-value{color:#000!important}.receipt-school-header{border-bottom:2px solid #000!important}@page{size:A4 portrait;margin:15mm}}.admin-tabs-nav{border-bottom:2px solid var(--border);gap:10px;margin-bottom:24px;padding-bottom:2px;display:flex}.admin-tab-btn{color:var(--text-muted);background:0 0;border:none;border-bottom:3px solid #0000;border-radius:8px 8px 0 0;margin-bottom:-4px;padding:12px 20px;font-size:15px;font-weight:800;transition:all .15s}.admin-tab-btn:hover{color:var(--accent);background:var(--accent-soft)}.admin-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:#fff}.admin-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;margin-bottom:20px;padding:14px 18px;font-size:14px;font-weight:700}.seat-badge-compact{flex-direction:column;gap:2px;display:flex}.seat-badge-pill{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-block}.text-muted-small{color:var(--text-muted);font-size:12px}.allocation-control-card{border:1.5px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;margin-bottom:28px;padding:24px}.control-header h3{color:var(--text-main);margin:0;font-size:18px;font-weight:900}.control-header p{color:var(--text-muted);margin:4px 0 0;font-size:13.5px}.allocation-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:20px 0;display:grid}.control-group label{color:var(--text-main);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.control-group input,.control-group select{border:1.5px solid var(--border);background:#fff;border-radius:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:600}.allocation-actions-bar{border-top:1px solid var(--border);flex-wrap:wrap;gap:12px;padding-top:16px;display:flex}.btn-run-allocation{color:#fff;background:linear-gradient(135deg,#c41f2a 0%,#9e141d 100%);border:none;border-radius:10px;padding:12px 22px;font-size:14.5px;font-weight:800;transition:all .15s;box-shadow:0 4px 14px #c41f2a40}.btn-run-allocation:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #c41f2a59}.btn-print-roster{color:#fff;background:#0f172a;border:none;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:700;transition:all .15s}.btn-print-roster:hover{background:#1e293b}.btn-reset-allocation{color:#dc2626;background:#fff;border:1.5px solid #fca5a5;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:700;transition:all .15s}.btn-reset-allocation:hover:not(:disabled){background:#fef2f2}.rooms-display-container{flex-direction:column;gap:24px;display:flex}.rooms-section-title{color:var(--text-main);margin:0;font-size:18px;font-weight:900}.room-roster-card{border:1.5px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;overflow:hidden}.room-roster-header{border-bottom:1.5px solid var(--border);background:#f8fafc;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.room-title{color:var(--text-main);margin:0;font-size:18px;font-weight:900}.room-count-badge{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:700;display:inline-block}.school-diversity-pills small{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;padding:4px 10px;font-size:12px;font-weight:700}.roster-table{border-collapse:collapse;width:100%}.roster-table th{color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);background:#f1f5f9;padding:10px 14px;font-size:12.5px;font-weight:800}.roster-table td{color:var(--text-main);border-bottom:1px solid #f1f5f9;padding:10px 14px;font-size:13.5px}.roster-table tr:hover td{background:snow}.seat-no-circle{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:inline-flex}.allocation-empty-state{text-align:center;border:1.5px dashed var(--border);color:var(--text-muted);background:#fff;border-radius:16px;padding:48px 20px;font-size:15px}.lookup-seat-allocation-box{margin-bottom:16px}.seat-allocated-card{background:#f0fdf4;border:1.5px solid #86efac;border-radius:12px;padding:14px 16px}.seat-badge-title{color:#166534;align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:800;display:flex}.seat-allocated-details{background:#fff;border:1px solid #bbf7d0;border-radius:8px;grid-template-columns:1fr 1fr 1.2fr;gap:10px;padding:10px 14px;display:grid}.seat-allocated-details small{color:var(--text-muted);font-size:11px;display:block}.seat-allocated-details strong{color:var(--text-main);margin-top:2px;font-size:14px;display:block}.highlight-seat{font-weight:900;color:#16a34a!important;font-size:18px!important}.seat-pending-card{color:#92400e;background:#fffbeb;border:1.5px solid #fde68a;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.pending-icon{color:#d97706;flex-shrink:0;margin-top:2px}.seat-pending-card strong{font-size:13.5px;font-weight:800;display:block}.seat-pending-card p{color:#b45309;margin:3px 0 0;font-size:12px;line-height:1.45}.lookup-print-bar{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.btn-lookup-print{background:var(--accent);color:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 16px;font-size:14px;font-weight:700;transition:all .15s;display:flex}.btn-lookup-print:hover{background:var(--accent-hover)}@media print{.room-roster-card{page-break-after:always;box-shadow:none!important;border:2px solid #000!important;border-radius:0!important;margin-bottom:0!important}.room-roster-header{background:#fff!important;border-bottom:2px solid #000!important}.roster-table th,.roster-table td{border:1px solid #000!important}.seat-no-circle{color:#000!important;background:0 0!important;font-size:16px!important}}.hero-active-event-card{background:linear-gradient(135deg,#c41f2a0f,#fffffff2);border:1.5px solid #c41f2a33;border-radius:16px;margin:16px 0 20px;padding:16px 20px;box-shadow:0 4px 16px #c41f2a14}.event-card-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.event-status-tag{color:#fff;letter-spacing:.5px;background:#10b981;border-radius:9999px;padding:3px 10px;font-size:11px;font-weight:700}.event-code-tag{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:2px 8px;font-family:monospace;font-size:12px}.event-card-title{color:#0f172a;margin-bottom:8px;font-size:16px;font-weight:700;line-height:1.4}.event-card-meta{color:#64748b;flex-wrap:wrap;gap:14px;font-size:13px;font-weight:500;display:flex}.event-info-banner-strip{border:1px solid #e2e8f0;border-left:4px solid var(--accent);background:#f8fafc;border-radius:12px;align-items:center;gap:14px;margin-bottom:20px;padding:12px 16px;display:flex}.banner-strip-icon{width:38px;height:38px;color:var(--accent);background:#c41f2a1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.banner-strip-text{flex-direction:column;gap:2px;display:flex}.banner-strip-text strong{color:#0f172a;font-size:15px}.banner-strip-text span{color:#64748b;font-size:13px}.event-closed-box{text-align:center;background:#fffbeb;border:1px solid #fde68a;border-radius:16px;padding:40px 20px}.event-closed-box h3{color:#92400e;margin-bottom:6px;font-size:18px;font-weight:700}.event-closed-box p{color:#b45309;font-size:14px}.admin-event-filter-bar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 20px;display:flex}.admin-event-filter-bar label{color:#334155;white-space:nowrap;font-size:14px;font-weight:700}.admin-event-select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:1;padding:8px 14px;font-size:14px;font-weight:600}.events-management-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.events-management-header h3{color:#0f172a;margin-bottom:4px;font-size:18px;font-weight:700}.events-management-header p{color:#64748b;font-size:13px}.btn-create-event{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.btn-create-event:hover{background:var(--accent-hover);transform:translateY(-1px)}.events-cards-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.event-manage-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;padding:20px;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000000a}.event-manage-card.active-border{border-color:var(--accent);box-shadow:0 4px 16px #c41f2a1f}.event-card-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.event-status-pills{align-items:center;gap:6px;display:flex}.badge-active-landing{color:#c41f2a;background:#fef2f2;border:1px solid #fecaca;border-radius:9999px;padding:3px 8px;font-size:11px;font-weight:700}.badge-inactive-landing{color:#64748b;background:#f1f5f9;border-radius:9999px;padding:3px 8px;font-size:11px}.badge-status{border-radius:9999px;padding:3px 8px;font-size:11px;font-weight:700}.badge-status.status-open{color:#065f46;background:#d1fae5}.badge-status.status-upcoming{color:#0369a1;background:#e0f2fe}.badge-status.status-closed{color:#991b1b;background:#fee2e2}.event-manage-title{color:#0f172a;flex-grow:1;margin-bottom:12px;font-size:16px;font-weight:700;line-height:1.4}.event-manage-meta{color:#64748b;margin-bottom:16px;font-size:13px;line-height:1.6}.event-manage-actions{border-top:1px solid #f1f5f9;align-items:center;gap:10px;margin-top:auto;padding-top:14px;display:flex}.btn-set-active{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;flex:1;padding:8px 12px;font-size:13px;font-weight:600}.btn-set-active:hover{background:var(--accent)}.btn-view-event-regs{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.btn-view-event-regs:hover{background:#f1f5f9}.badge-event-sm{color:#0369a1;background:#e0f2fe;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:11px}.admin-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal-card{background:#fff;border-radius:20px;width:100%;max-width:600px;padding:28px;box-shadow:0 20px 40px #0003}.admin-modal-card h3{color:#0f172a;margin-bottom:20px;font-size:20px;font-weight:700}.form-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{margin-bottom:16px}.form-field label{color:#334155;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-field input[type=text],.form-field select{border:1.5px solid #cbd5e1;border-radius:10px;width:100%;padding:10px 14px;font-size:14px}.form-field.checkbox-field{align-items:flex-end;padding-bottom:18px;display:flex}.form-field.checkbox-field label{cursor:pointer;align-items:center;gap:8px;margin-bottom:0;display:flex}.admin-modal-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;display:flex}.admin-modal-actions button{cursor:pointer;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600}.btn-confirm-create{background:var(--accent);color:#fff;border:none}.admin-landing-controller-card{color:#fff;background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:20px 24px;display:flex;box-shadow:0 10px 25px -5px #0f172a33}.controller-badge{color:#38bdf8;background:#ffffff1f;border-radius:9999px;align-items:center;gap:8px;margin-bottom:8px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.controller-title{color:#fff;margin-bottom:8px;font-size:18px;font-weight:700;line-height:1.4}.controller-meta{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.controller-meta code{color:#f8fafc;background:#ffffff26;border-radius:4px;padding:2px 8px}.status-pill{border-radius:9999px;padding:3px 10px;font-size:12px;font-weight:700}.status-pill.status-open{color:#34d399;background:#10b98133;border:1px solid #34d39966}.status-pill.status-closed{color:#f87171;background:#ef444433;border:1px solid #f8717166}.controller-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.btn-controller-toggle{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.btn-controller-toggle.btn-warn{color:#fff;background:#dc2626}.btn-controller-toggle.btn-warn:hover{background:#b91c1c}.btn-controller-toggle.btn-success{color:#fff;background:#16a34a}.btn-controller-toggle.btn-success:hover{background:#15803d}.btn-controller-preview{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn-controller-preview:hover{background:#fff3}.event-candidate-stat{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:13px;display:flex}.event-card-operations-row{border-top:1px solid #f1f5f9;align-items:center;gap:10px;margin-top:14px;padding-top:14px;display:flex}.current-landing-indicator{color:#16a34a;flex:1;align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.btn-op-activate{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;flex:1;padding:8px 12px;font-size:13px;font-weight:700;transition:all .15s}.btn-op-activate:hover{background:var(--accent)}.btn-op-status{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;transition:all .15s}.btn-close-reg{color:#b91c1c;background:#fee2e2;border:1px solid #fca5a5}.btn-close-reg:hover{background:#fecaca}.btn-open-reg{color:#15803d;background:#dcfce7;border:1px solid #86efac}.btn-open-reg:hover{background:#bbf7d0}.event-card-secondary-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.btn-sec-edit{color:#475569;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.btn-sec-edit:hover{color:#0f172a;background:#f1f5f9}.btn-sec-view{color:#0284c7;cursor:pointer;background:0 0;border:none;padding:6px 4px;font-size:12px;font-weight:700}.btn-sec-view:hover{text-decoration:underline}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h3{color:#0f172a;margin-bottom:0;font-size:20px;font-weight:700}.btn-modal-close{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:20px}.btn-modal-close:hover{color:#0f172a}.payment-guide-box{background:linear-gradient(135deg,#fff1f2 0%,#fff 100%);border:1.5px solid #fecdd3;border-radius:14px;margin-bottom:20px;padding:16px 18px;box-shadow:0 4px 12px #e11d480d}.payment-guide-header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.payment-guide-header .payment-icon{color:#e11d48;flex-shrink:0;margin-top:2px}.payment-guide-header strong{color:#9f1239;margin-bottom:4px;font-size:15px;display:block}.payment-guide-header p{color:#475569;margin:0;font-size:13px;line-height:1.4}.payment-account-row{background:#fff;border:1px dashed #fda4af;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.account-number-wrap{align-items:baseline;gap:8px;display:flex}.account-label{color:#64748b;font-size:13px;font-weight:500}.account-number{color:#e11d48;letter-spacing:1px;font-family:monospace;font-size:18px;font-weight:800}.btn-copy-account{color:#fff;cursor:pointer;background:#e11d48;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.btn-copy-account:hover{background:#be123c}.awards-tiered-grid{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 16px;display:grid}.award-tier-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.award-tier-card.first{background:#fffbeb;border-color:#fde68a}.award-tier-card strong{color:#0f172a;font-size:13px;display:block}.award-tier-card span{color:#64748b;font-size:12px}.award-tier-card.first span{color:#b45309;font-weight:700}.teacher-contact-pill{color:#334155;align-items:center;gap:8px;margin-top:4px;font-size:13px;display:flex}.workflow-steps-indicator{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#f8fafce6;justify-content:space-between;align-items:center;margin-bottom:24px;padding:12px 18px;display:flex}.wf-step-item{align-items:center;gap:8px;display:flex}.wf-step-number{background:var(--surface-alt);width:28px;height:28px;color:var(--text-muted);border:1.5px solid var(--border-strong);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex}.wf-step-label{color:var(--text-muted);font-size:13px;font-weight:700}.wf-step-item.active .wf-step-number{color:#fff;background:linear-gradient(135deg,#c41f2a,#e11d48);border-color:#c41f2a;box-shadow:0 2px 8px #c41f2a59}.wf-step-item.active .wf-step-label{color:#c41f2a}.wf-step-item.done .wf-step-number{color:#fff;background:#16a34a;border-color:#16a34a}.wf-step-item.done .wf-step-label{color:#16a34a}.wf-step-line{background:var(--border-subtle);flex:1;height:2px;margin:0 10px}.summary-full-portal{flex-direction:column;gap:24px;display:flex}.summary-official-card{border-radius:var(--radius-lg);background:#fff;border:1.5px solid #e2e8f0e6;padding:24px;box-shadow:0 8px 24px #0f172a0d}.summary-card-header{border-bottom:1px solid var(--border-subtle);align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;display:flex}.summary-header-logo{object-fit:contain;width:48px;height:48px}.summary-header-titles h4{color:var(--text-main);margin:0 0 2px;font-size:17px;font-weight:800}.summary-header-titles p{color:var(--text-muted);margin:0;font-size:12.5px}.summary-status-strip{justify-content:center;margin-top:12px;display:flex}.status-pill{border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.status-pill.status-pending{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.status-pill.status-paid{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.summary-details-grid{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#f8fafc;flex-direction:column;gap:10px;margin-bottom:16px;padding:16px 20px;display:flex}.summary-detail-row{border-bottom:1px dashed #e2e8f0cc;justify-content:space-between;align-items:center;padding-bottom:8px;font-size:14px;display:flex}.summary-detail-row:last-child{border-bottom:none;padding-bottom:0}.detail-label{color:var(--text-muted);font-weight:600}.detail-value{color:var(--text-main);font-weight:700}.summary-print-bar{justify-content:flex-end;display:flex}.btn-outline-print{border:1.5px solid var(--border-strong);border-radius:var(--radius-full);color:var(--text-main);cursor:pointer;background:#fff;align-items:center;gap:6px;padding:8px 16px;font-size:13.5px;font-weight:700;transition:all .15s;display:inline-flex}.btn-outline-print:hover{border-color:var(--text-main);background:#f1f5f9}.payment-menu-container{border-radius:var(--radius-lg);background:#fff;border:1.5px solid #e2e8f0e6;padding:24px;box-shadow:0 8px 24px #0f172a0d}.payment-menu-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.payment-header-icon{color:#e11d48;background:#fff1f2;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.payment-menu-title{color:var(--text-main);margin:0 0 2px;font-size:18px;font-weight:800}.payment-menu-subtitle{color:var(--text-muted);margin:0;font-size:13px}.payment-success-box{border-radius:var(--radius-md);text-align:center;background:#f0fdf4;border:1.5px solid #bbf7d0;padding:24px}.payment-success-box h4{color:#166534;margin:0 0 8px;font-size:17px;font-weight:800}.payment-success-box p{color:#15803d;max-width:540px;margin:0 auto;font-size:13.5px;line-height:1.6}.payment-upload-card{margin-top:18px}.payment-slip-selected{border:1.5px solid var(--border-strong);border-radius:var(--radius-md);background:#f8fafc;flex-direction:column;gap:12px;padding:16px;display:flex}.slip-img-box{border-radius:var(--radius-sm);max-width:220px;max-height:220px;margin:0 auto;overflow:hidden}.slip-thumbnail{object-fit:contain;width:100%;height:auto}.slip-selected-meta{justify-content:space-between;align-items:center;font-size:13px;display:flex}.btn-remove-slip{color:#e11d48;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:12.5px;font-weight:700;display:inline-flex}.btn-submit-payment{border-radius:var(--radius-full);color:#fff;cursor:pointer;background:linear-gradient(135deg,#16a34a,#15803d);border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:15.5px;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #16a34a4d}.btn-submit-payment:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #16a34a66}.payment-hint-footnote{color:var(--text-muted);text-align:center;margin-top:14px;font-size:12.5px;line-height:1.5}.summary-bottom-actions{justify-content:center;margin-top:20px;display:flex}.btn-return-home{border-radius:var(--radius-full);border:1px solid var(--border-strong);color:var(--text-main);cursor:pointer;background:#f1f5f9;padding:10px 24px;font-size:14px;font-weight:700}.btn-return-home:hover{background:#e2e8f0}
