:root{--primary-red:#9f1d24;--primary-red-light:#bf2a31;--primary-red-dark:#6f141a;--accent-gold:#b98a2f;--accent-gold-light:#f6e4bd;--accent-gold-dark:#8c6724;--ink:#1f2933;--text-main:#2f343b;--text-muted:#68717d;--line:#d9dee5;--line-strong:#c6ccd4;--surface:#fff;--surface-soft:#f6f8fb;--surface-warm:#fffaf0;--danger:#b42318;--danger-bg:#fff3f0;--success:#1f7a4d;--success-bg:#effaf4;--shadow-soft:0 24px 60px #1f293324;--shadow-small:0 8px 24px #1f29331a;--font-family:"Be Vietnam Pro", "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Playfair Display", "Be Vietnam Pro", Georgia, serif;--radius-lg:18px;--radius-md:12px;--radius-sm:8px;--transition-speed:.22s;--content-alpha:.95}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text-main);font-family:var(--font-family);background:linear-gradient(#ffffffe0 0%,#f6f8fbf0 48%,#eef2f6 100%),repeating-linear-gradient(90deg,#9f1d2409 0 1px,#0000 1px 44px);line-height:1.6}button,input,textarea,select{font:inherit}button{letter-spacing:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #b98a2f57}textarea{resize:vertical}.container{width:min(100% - 32px,980px);margin:0 auto}.page-background{z-index:-2;background-position:50%;background-size:cover;position:fixed;inset:0}.page-background:after{content:"";background:linear-gradient(#1418211f,#14182138);position:absolute;inset:0}.glass-card{border-radius:var(--radius-md);box-shadow:var(--shadow-small);background:#ffffffeb;border:1px solid #d9dee5e6;padding:2rem}.btn-primary,.btn-outline{border-radius:var(--radius-sm);cursor:pointer;min-height:44px;transition:background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, box-shadow var(--transition-speed) ease, color var(--transition-speed) ease, transform var(--transition-speed) ease;letter-spacing:.01em;border:1px solid #0000;min-width:148px;padding:.75rem 1.35rem;font-weight:700}.btn-primary{background:linear-gradient(135deg, var(--primary-red-light), var(--primary-red-dark));border-color:var(--primary-red);color:#fff;box-shadow:0 10px 22px #9f1d243d}.btn-primary:hover{background:linear-gradient(135deg, var(--primary-red), var(--primary-red-dark));border-color:var(--primary-red-dark);transform:translateY(-1px);box-shadow:0 14px 30px #9f1d244d}.btn-primary:disabled{cursor:not-allowed;opacity:.65;transform:none}.btn-outline{border-color:var(--line-strong);color:var(--primary-red-dark);background:#fff}.btn-outline:hover{background:var(--surface-warm);border-color:var(--accent-gold);color:var(--primary-red-dark)}.app-header{border-bottom:4px solid var(--accent-gold);color:#fff;text-align:center;background:radial-gradient(120% 140% at 15% 0,#9f1d248c,#0000 55%),linear-gradient(135deg,#6f141af7,#9f1d24f2 55%,#6f141afa),linear-gradient(90deg,#b98a2f2e,#0000);margin-bottom:0;padding:2.5rem 1rem 2.25rem;position:relative;overflow:hidden}.app-header:before{content:"";pointer-events:none;background:radial-gradient(circle at 85% 20%,#f6e4bd1f,#0000 35%),radial-gradient(circle at 12% 90%,#f6e4bd1a,#0000 30%);position:absolute;inset:0}.app-header:after{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#ffffff0b 0 1px,#0000 1px 22px);position:absolute;inset:0}.app-header-overlay{z-index:1;position:absolute;inset:0}.app-header--solid{background-image:none}.app-header--solid:after,.app-header--solid:before{display:none}.app-header-inner{z-index:2;flex-direction:column;align-items:center;width:min(100% - 32px,980px);margin:0 auto;display:flex;position:relative}.app-header-top{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.35rem;display:flex}.brand-badge{flex:none}.brand-logo{object-fit:cover;border:4px solid var(--accent-gold);background:#fff;border-radius:50%;width:150px;height:150px;padding:6px;box-shadow:0 8px 22px #0000004d}.brand-emblem{background:radial-gradient(circle at 50% 35%, var(--accent-gold-light), var(--accent-gold) 70%, var(--accent-gold-dark));width:84px;height:84px;color:var(--primary-red-dark);border:3px solid #ffffffd9;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;box-shadow:0 6px 18px #00000047,inset 0 0 0 2px #ffffff4d}.brand-emblem-num{font-family:var(--font-display);font-size:1.9rem;font-weight:800}.brand-emblem-text{letter-spacing:.18em;margin-top:2px;font-size:.68rem;font-weight:800}.app-header-headings{text-align:left;max-width:640px}.header-title{color:#fff;font-family:var(--font-display);letter-spacing:.01em;text-shadow:0 2px 8px #00000040;font-size:1.85rem;font-weight:800;line-height:1.22}.header-subtitle{color:var(--accent-gold-light);margin-top:.5rem;font-size:1.02rem;font-weight:500}.header-divider{background:linear-gradient(90deg,#0000,#f6e4bd80,#0000);width:min(320px,70%);height:1px;margin:1.4rem auto 1.1rem;position:relative}.header-divider span{background:var(--accent-gold);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 0 3px #9f1d2499}.event-date{color:var(--accent-gold-light);letter-spacing:.01em;background:#ffffff14;border:1px solid #f6e4bd66;border-radius:999px;align-items:center;gap:.55rem;padding:.4rem 1.1rem;font-size:.95rem;font-weight:600;display:inline-flex}.event-date-icon{color:var(--accent-gold);flex:none}.countdown-wrapper{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.15rem;display:flex}.countdown-box{border-radius:var(--radius-md);text-align:center;background:linear-gradient(160deg,#ffffff29,#ffffff0f);border:1px solid #f6e4bd66;min-width:82px;padding:.65rem .85rem;position:relative;box-shadow:inset 0 1px #ffffff26,0 6px 16px #0000002e}.countdown-num{color:#fff;font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:800;line-height:1.1;display:block}.countdown-label{color:var(--accent-gold-light);text-transform:uppercase;letter-spacing:.08em;margin-top:.2rem;font-size:.72rem;font-weight:700;display:block}.countdown-live{color:#fff;background:#ffffff24;border:1px solid #f6e4bd80;border-radius:999px;padding:.7rem 1.5rem;font-size:1.1rem;font-weight:700}.contact-phone-trigger{cursor:pointer;letter-spacing:0;transition:background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, color var(--transition-speed) ease, box-shadow var(--transition-speed) ease, transform var(--transition-speed) ease;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;font-weight:800;display:inline-flex}.header-contact-trigger{min-height:44px;color:var(--primary-red-dark);background:#fffffff0;border-color:#f6e4bdb8;margin-top:1.1rem;padding:.7rem 1.25rem;box-shadow:0 10px 26px #0000002e}.header-contact-trigger:hover{background:var(--accent-gold-light);border-color:#fff;transform:translateY(-1px)}.footer-contact-trigger{min-height:auto;color:var(--accent-gold-light);background:0 0;border:0;justify-content:flex-start;margin-top:.1rem;padding:0;font-size:.94rem;line-height:1.5}.footer-contact-trigger:hover{color:#fff;text-decoration:underline}.contact-phone-modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14182199;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.contact-phone-modal{border-radius:var(--radius-md);width:min(100%,560px);max-height:min(82vh,680px);box-shadow:var(--shadow-soft);background:#fff;border:1px solid #ffffffa6;overflow:hidden}.contact-phone-modal-head{border-bottom:1px solid var(--line);background:linear-gradient(160deg, var(--surface-warm), #fff);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.35rem;display:flex}.contact-phone-modal-head p{color:var(--accent-gold-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.25rem;font-size:.75rem;font-weight:800}.contact-phone-modal-head h3{color:var(--ink);font-family:var(--font-display);font-size:1.55rem;line-height:1.2}.contact-phone-modal-close{border:1px solid var(--line);width:38px;height:38px;color:var(--text-main);cursor:pointer;background:#fff;border-radius:50%;flex:none;font-size:1.45rem;line-height:1}.contact-phone-modal-close:hover{background:var(--danger-bg);color:var(--danger);border-color:#b4231859}.contact-phone-list{gap:.75rem;max-height:calc(min(82vh,680px) - 104px);padding:1.25rem;display:grid;overflow:auto}.contact-phone-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--text-muted);text-align:center;padding:1rem}.contact-phone-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1rem;display:flex}.contact-phone-item h4{color:var(--ink);font-size:1rem;line-height:1.25}.contact-phone-item p{color:var(--text-muted);margin-top:.2rem;font-size:.9rem}.contact-phone-item span:not(.contact-phone-number){color:var(--accent-gold-dark);margin-top:.35rem;font-size:.82rem;font-weight:700;display:inline-block}.contact-phone-number{background:var(--primary-red-dark);color:#fff;white-space:nowrap;border-radius:999px;flex:none;padding:.55rem .85rem;font-size:.95rem;font-weight:800;text-decoration:none}.contact-phone-number:hover{background:var(--primary-red)}.contact-page{width:min(100% - 32px,1160px);margin:0 auto;padding:3rem 0 4.5rem}.contact-layout{grid-template-columns:minmax(260px,.82fr) minmax(0,1.4fr);align-items:start;gap:2.25rem;display:grid}.contact-intro{border-radius:var(--radius-lg);background:rgba(255, 255, 255, var(--content-alpha));-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow-soft);border:1px solid #ffffffb3;padding:1.75rem 1.6rem;position:sticky;top:1.5rem}.section-kicker{color:var(--accent-gold-dark);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:.7rem;font-size:.76rem;font-weight:800;line-height:1.3;display:inline-flex}.section-kicker:before{content:"";background:linear-gradient(90deg, var(--accent-gold), transparent);width:26px;height:2px}.contact-intro h2,.success-panel h2{color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;font-size:2.15rem;font-weight:700;line-height:1.18}.contact-intro p{color:var(--text-muted);white-space:pre-line;text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;margin-top:1rem;font-size:1.02rem}.form-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1.75rem;display:grid}.form-summary div{border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(160deg, #fff, var(--surface-soft));padding:1.1rem 1.15rem;position:relative;overflow:hidden}.form-summary div:before{content:"";background:linear-gradient(180deg, var(--accent-gold), var(--primary-red));width:3px;height:100%;position:absolute;top:0;left:0}.form-summary dt{color:var(--primary-red-dark);font-family:var(--font-display);font-size:1.65rem;font-weight:700;line-height:1.1}.form-summary dd{color:var(--text-muted);margin-top:.3rem;font-size:.88rem;font-weight:500}.intro-note{border-radius:var(--radius-md);background:var(--surface-warm);border:1px solid #b98a2f52;align-items:flex-start;gap:.85rem;margin-top:1.5rem;padding:1rem 1.1rem;display:flex}.intro-note-mark{background:var(--accent-gold);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;display:inline-flex}.intro-note p{color:var(--text-main);margin:0;font-size:.92rem;line-height:1.55}.req-star{color:var(--primary-red);font-weight:800}.contact-form-panel,.success-panel,.form-status{background:rgba(255, 255, 255, var(--content-alpha));border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(6px);border:1px solid #d9dee5f5}.contact-form-panel{border-radius:var(--radius-lg);padding:2rem 2rem 1.75rem;position:relative;overflow:hidden}.contact-form-panel:before{content:"";background:linear-gradient(90deg, var(--primary-red), var(--accent-gold), var(--primary-red));height:4px;position:absolute;top:0;left:0;right:0}.form-progress{background:var(--surface-soft);border-radius:999px;height:6px;margin-bottom:1.5rem;overflow:hidden}.form-progress-bar{background:linear-gradient(90deg, var(--accent-gold), var(--primary-red));border-radius:999px;height:100%;transition:width .4s}.form-alert{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);border:1px solid #b4231847;margin-bottom:1rem;padding:.8rem .95rem;font-weight:650}.stepper{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-bottom:1.75rem;display:grid}.step-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);min-height:58px;color:var(--text-muted);cursor:pointer;text-align:left;transition:background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, color var(--transition-speed) ease, box-shadow var(--transition-speed) ease;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:.7rem;padding:.65rem .75rem;display:grid}.step-number{border:1px solid var(--line-strong);width:34px;height:34px;color:var(--text-muted);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;display:inline-flex}.step-label{color:inherit;overflow-wrap:anywhere;font-size:.92rem;font-weight:750;line-height:1.25;display:block}.step-item.active{color:var(--primary-red-dark);background:#fff7f7;border-color:#9f1d2470;box-shadow:inset 0 0 0 1px #9f1d2414}.step-item.active .step-number{border-color:var(--primary-red);background:var(--primary-red);color:#fff}.step-item.completed{color:var(--ink);background:#fffaf0;border-color:#b98a2f70}.step-item.completed .step-number{border-color:var(--accent-gold);background:var(--accent-gold);color:#fff}.form-section-heading{border-top:1px solid var(--line);padding-top:1.5rem}.form-section-heading h3{color:var(--ink);font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.25}.form-fields{gap:1.2rem;margin-top:1.35rem;display:grid}.form-group{text-align:left}.form-label{color:var(--ink);letter-spacing:.005em;margin-bottom:.4rem;font-size:.98rem;font-weight:650;display:block}.form-label.required:after{content:" *";color:var(--primary-red)}.form-desc{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;display:block}.form-control{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-soft);width:100%;min-height:48px;color:var(--ink);transition:border-color var(--transition-speed) ease, box-shadow var(--transition-speed) ease, background-color var(--transition-speed) ease;padding:.8rem 1rem}.form-control:hover{border-color:#aeb6c1}.form-control:focus{border-color:var(--primary-red);background:#fff;outline:none;box-shadow:0 0 0 4px #9f1d241a}.form-control.has-error{border-color:var(--danger);background:snow}.choice-grid{gap:.65rem;display:grid}.choice-option,.check-label{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--ink);cursor:pointer;transition:background-color var(--transition-speed) ease, border-color var(--transition-speed) ease, box-shadow var(--transition-speed) ease;align-items:flex-start;gap:.75rem;padding:.85rem .9rem;display:flex}.choice-option:hover,.check-label:hover{border-color:var(--accent-gold);background:var(--surface-warm)}.choice-option input,.check-label input{width:18px;height:18px;accent-color:var(--primary-red);flex:none;margin-top:.2rem}.choice-option span,.check-label span{overflow-wrap:anywhere;flex:1}.radio-group,.checkbox-group{gap:.65rem;display:grid}.form-error{color:var(--danger);margin-top:.45rem;font-size:.86rem;font-weight:650;display:block}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--text-muted);text-align:center;padding:1.2rem}.form-actions{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;margin-top:1.75rem;padding-top:1.35rem;display:flex}.success-panel,.form-status{text-align:center;width:min(100%,760px);margin:0 auto;padding:3.5rem 2rem;position:relative;overflow:hidden}.success-panel:before{content:"";background:linear-gradient(90deg, var(--primary-red), var(--accent-gold), var(--primary-red));height:4px;position:absolute;top:0;left:0;right:0}.success-panel p:not(.section-kicker){color:var(--text-muted);max-width:620px;margin:1rem auto 0}.success-mark{background:var(--success-bg);width:68px;height:68px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;font-size:2rem;font-weight:900;display:inline-flex;box-shadow:0 0 0 8px #1f7a4d14}.success-panel h2{font-size:1.9rem}.form-status{color:var(--text-muted)}.status-spinner{border:3px solid var(--line);border-top-color:var(--primary-red);border-radius:50%;width:34px;height:34px;margin-bottom:1rem;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.35s ease-out forwards fadeIn}@media (width<=900px){.contact-layout{grid-template-columns:1fr;gap:1.6rem}.contact-intro{padding-top:0}}@media (width<=640px){.container,.contact-page{width:min(100% - 24px,100%)}.app-header{padding:1.8rem .75rem 1.55rem}.app-header-top{flex-direction:column;gap:.9rem}.app-header-headings{text-align:center}.header-title{font-size:1.3rem}.header-subtitle{font-size:.92rem}.brand-emblem{width:68px;height:68px}.brand-logo{width:110px;height:110px}.brand-emblem-num{font-size:1.5rem}.event-date{padding:.35rem .85rem;font-size:.85rem}.countdown-box{min-width:68px;padding:.5rem .6rem}.countdown-num{font-size:1.4rem}.contact-page{padding:2rem 0 3rem}.contact-intro h2,.success-panel h2{font-size:1.55rem}.form-summary{grid-template-columns:1fr}.contact-form-panel{padding:1rem}.stepper{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn-primary,.form-actions .btn-outline{width:100%}.success-panel,.form-status{padding:2.25rem 1rem}}.admin-shell{width:min(100% - 32px,1040px);margin:0 auto;padding:2.5rem 0 4rem}.admin-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.admin-topbar h2{color:var(--ink);font-family:var(--font-display);font-size:1.9rem;font-weight:700}.admin-user{color:var(--text-muted);align-items:center;gap:1rem;display:flex}.admin-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.25rem;display:flex}.admin-tab{border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--text-muted);cursor:pointer;transition:background-color var(--transition-speed) ease, color var(--transition-speed) ease, border-color var(--transition-speed) ease;background:0 0;border:1px solid #0000;padding:.7rem 1.15rem;font-size:.96rem;font-weight:700}.admin-tab:hover{color:var(--primary-red-dark);background:var(--surface-warm)}.admin-tab.active{color:var(--primary-red-dark);border-color:var(--line);box-shadow:inset 0 3px 0 var(--primary-red);background:#ffffffeb;border-bottom-color:#0000}.settings-group{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);margin-bottom:1.35rem;padding:1.35rem 1.4rem}.settings-group>.settings-group-title{color:var(--ink);align-items:center;gap:.6rem;margin-bottom:.35rem;font-size:1.12rem;font-weight:800;display:flex}.settings-group>.settings-group-desc{color:var(--text-muted);margin-bottom:1.15rem;font-size:.9rem}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem 1.25rem;display:grid}.settings-grid .form-group{margin-bottom:0}.settings-full{grid-column:1/-1}.field-color-row{align-items:center;gap:.6rem;display:flex}.field-color-swatch{border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;background:#fff;flex:none;width:46px;height:46px;padding:2px}.range-row{align-items:center;gap:1rem;display:flex}.range-row input[type=range]{accent-color:var(--primary-red);flex:1}.range-value{text-align:right;min-width:48px;color:var(--primary-red-dark);font-weight:700}.image-preview{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);max-width:100%;height:150px;margin-bottom:.5rem;display:block}.admin-save-bar{justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding:1rem 0 0;display:flex;position:sticky;bottom:0}@media (width<=640px){.admin-tab{text-align:center;flex:auto}}.submissions-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.submissions-actions{flex-wrap:wrap;gap:.6rem;display:flex}.table-scroll{border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.9rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.65rem .85rem}.data-table thead th{background:var(--primary-red);color:#fff;white-space:nowrap;border-bottom:none;font-weight:700;position:sticky;top:0}.data-table thead th:first-child{border-top-left-radius:var(--radius-md)}.data-table tbody tr:nth-child(2n){background:var(--surface-soft)}.data-table tbody tr:hover{background:var(--surface-warm)}.data-table .col-stt{text-align:center;width:52px}.data-table tbody .col-stt{color:var(--primary-red-dark);font-weight:700}.data-table .col-time{white-space:nowrap}.data-table tbody .col-time{color:var(--text-muted)}.data-table .col-action{text-align:center;white-space:nowrap;width:72px}.btn-delete-row{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);cursor:pointer;transition:background-color var(--transition-speed) ease, color var(--transition-speed) ease, border-color var(--transition-speed) ease;border:1px solid #b4231866;padding:.35rem .7rem;font-size:.82rem;font-weight:700}.btn-delete-row:hover{background:var(--danger);border-color:var(--danger);color:#fff}.cell-empty{color:var(--line-strong)}.btn-danger{border-radius:var(--radius-sm);border:1px solid var(--danger);background:var(--danger);color:#fff;cursor:pointer;letter-spacing:.01em;min-width:148px;min-height:44px;transition:background-color var(--transition-speed) ease, box-shadow var(--transition-speed) ease, transform var(--transition-speed) ease;padding:.75rem 1.35rem;font-weight:700;box-shadow:0 10px 22px #b423183d}.btn-danger:hover{background:#97231a;border-color:#97231a;transform:translateY(-1px);box-shadow:0 14px 30px #b423184d}.toast-stack{z-index:1000;flex-direction:column;gap:.65rem;max-width:min(92vw,380px);display:flex;position:fixed;top:1.25rem;right:1.25rem}.toast{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#fff;border-left-width:4px;align-items:flex-start;gap:.7rem;padding:.85rem .95rem;animation:.28s ease-out toastIn;display:flex}@keyframes toastIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--accent-gold)}.toast-icon{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-top:1px;font-size:.85rem;font-weight:800;display:inline-flex}.toast-success .toast-icon{background:var(--success)}.toast-error .toast-icon{background:var(--danger)}.toast-info .toast-icon{background:var(--accent-gold)}.toast-msg{color:var(--ink);flex:1;font-size:.92rem;line-height:1.45}.toast-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:0 .15rem;font-size:1.25rem;line-height:1}.toast-close:hover{color:var(--ink)}.modal-overlay{z-index:1100;-webkit-backdrop-filter:blur(3px);background:#14182180;justify-content:center;align-items:center;padding:1.25rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-box{border-radius:var(--radius-lg);width:min(100%,440px);box-shadow:var(--shadow-soft);text-align:center;background:#fff;padding:2rem 1.75rem 1.5rem;animation:.24s ease-out modalIn}@keyframes modalIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-mark{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:1rem;font-size:1.9rem;font-weight:900;display:inline-flex}.modal-mark-danger{background:var(--danger-bg);color:var(--danger);box-shadow:0 0 0 8px #b4231814}.modal-mark-primary{background:var(--surface-warm);color:var(--accent-gold-dark);box-shadow:0 0 0 8px #b98a2f1a}.modal-title{color:var(--ink);font-family:var(--font-display);margin-bottom:.5rem;font-size:1.4rem;font-weight:700}.modal-message{color:var(--text-muted);margin-bottom:1.5rem;font-size:.98rem;line-height:1.55}.modal-actions{justify-content:center;gap:.75rem;display:flex}@media (width<=480px){.modal-actions{flex-direction:column-reverse}.modal-actions .btn-primary,.modal-actions .btn-danger,.modal-actions .btn-outline{width:100%}}.landing{position:relative}.landing-bg{z-index:-1;opacity:.5;background-position:50%;background-size:cover;background-attachment:fixed;position:fixed;inset:0}.landing-section{width:min(100% - 40px,1080px);margin:0 auto;padding:4rem 0;position:relative}.section-head{text-align:center;margin-bottom:2.75rem}.section-tag{color:var(--accent-gold-dark);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.75rem;font-size:.82rem;font-weight:800;display:inline-block}.section-title{color:var(--ink);font-family:var(--font-display);font-size:2.15rem;font-weight:700;line-height:1.2}.section-title:after{content:"";background:linear-gradient(90deg, var(--accent-gold), var(--primary-red));border-radius:2px;width:64px;height:3px;margin:.9rem auto 0;display:block}.hero{color:#fff;text-align:center;background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:100vh;padding:3rem 1rem;display:flex;position:relative;overflow:hidden}.hero-overlay{z-index:1;position:absolute;inset:0}.hero-inner{z-index:2;flex-direction:column;align-items:center;width:min(100%,860px);animation:.6s ease-out fadeIn;display:flex;position:relative}.hero-logo{object-fit:cover;border:4px solid var(--accent-gold);background:#fff;border-radius:50%;width:130px;height:130px;margin-bottom:1.5rem;padding:6px;box-shadow:0 10px 30px #0006}.hero-kicker{color:var(--accent-gold-light);letter-spacing:.22em;text-transform:uppercase;margin-bottom:1rem;font-size:.9rem;font-weight:700}.hero-title{font-family:var(--font-display);text-shadow:0 3px 16px #0006;max-width:820px;font-size:clamp(1.9rem,5vw,3.4rem);font-weight:800;line-height:1.15}.hero-subtitle{color:var(--accent-gold-light);margin-top:1rem;font-size:clamp(1rem,2.2vw,1.25rem);font-weight:500}.hero-slogan{font-family:var(--font-display);color:#fff;opacity:.95;margin-top:.75rem;font-size:clamp(1.1rem,2.5vw,1.5rem);font-style:italic}.hero-date{color:var(--accent-gold-light);background:#ffffff1a;border:1px solid #f6e4bd73;border-radius:999px;align-items:center;gap:.55rem;margin-top:1.75rem;padding:.5rem 1.25rem;font-weight:600;display:inline-flex}.hero-date svg{color:var(--accent-gold);flex:none}.hero-countdown{flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:1.5rem;display:flex}.hero-cd-box{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(4px);background:linear-gradient(160deg,#ffffff2e,#ffffff0f);border:1px solid #f6e4bd66;min-width:92px;padding:.8rem 1rem;box-shadow:inset 0 1px #ffffff26,0 8px 20px #00000040}.hero-cd-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.1rem;font-weight:800;line-height:1.05;display:block}.hero-cd-label{color:var(--accent-gold-light);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-size:.72rem;font-weight:700;display:block}.hero-cd-live{background:#ffffff29;border:1px solid #f6e4bd80;border-radius:999px;padding:.85rem 1.75rem;font-size:1.2rem;font-weight:700}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2.25rem;display:flex}.btn-hero-primary,.btn-hero-secondary{cursor:pointer;min-height:52px;transition:transform var(--transition-speed) ease, box-shadow var(--transition-speed) ease, background-color var(--transition-speed) ease;border-radius:999px;padding:.85rem 2.1rem;font-size:1.05rem;font-weight:700}.btn-hero-primary{background:linear-gradient(135deg, var(--accent-gold-light), var(--accent-gold) 60%, var(--accent-gold-dark));color:var(--primary-red-dark);border:none;box-shadow:0 12px 28px #b98a2f66}.btn-hero-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px #b98a2f80}.btn-hero-secondary{color:#fff;background:#ffffff14;border:1.5px solid #ffffffb3}.btn-hero-secondary:hover{background:#ffffff29;transform:translateY(-2px)}.hero-scroll{z-index:2;color:#fffc;cursor:pointer;background:0 0;border:none;animation:2s infinite bounce;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%)translateY(0)}40%{transform:translate(-50%)translateY(-10px)}60%{transform:translate(-50%)translateY(-5px)}}.letter-layout{background:rgba(255, 255, 255, var(--content-alpha,.95));border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);grid-template-columns:300px minmax(0,1fr);align-items:start;gap:2.5rem;padding:2.5rem;display:grid}.letter-layout--single{grid-template-columns:1fr;max-width:780px;margin:0 auto}.letter-photo img{border-radius:var(--radius-md);border:3px solid var(--accent-gold-light);width:100%;box-shadow:var(--shadow-small)}.letter-content p{color:var(--text-main);text-align:justify;margin-bottom:1rem;font-size:1.05rem;line-height:1.75}.letter-signature{font-family:var(--font-display);color:var(--primary-red-dark);text-align:right;margin-top:1.5rem;font-size:1.3rem;font-style:italic}.timeline{max-width:860px;margin:0 auto;padding-left:2rem;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--accent-gold), var(--primary-red));border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:7px}.timeline-item{padding-bottom:2rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-marker{border:3px solid var(--primary-red);background:#fff;border-radius:50%;width:17px;height:17px;position:absolute;top:6px;left:-2rem;box-shadow:0 0 0 4px #9f1d241f}.timeline-card{background:rgba(255, 255, 255, var(--content-alpha,.95));border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-small);transition:transform var(--transition-speed) ease, box-shadow var(--transition-speed) ease;gap:1.25rem;display:flex;overflow:hidden}.timeline-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-3px)}.timeline-img{object-fit:cover;flex:none;width:160px}.timeline-body{padding:1.25rem 1.4rem}.timeline-year{color:#fff;background:linear-gradient(135deg, var(--primary-red-light), var(--primary-red-dark));border-radius:999px;margin-bottom:.6rem;padding:.2rem .85rem;font-size:.85rem;font-weight:800;display:inline-block}.timeline-item-title{color:var(--ink);font-family:var(--font-display);margin-bottom:.4rem;font-size:1.3rem;font-weight:700}.timeline-desc{color:var(--text-muted);line-height:1.6}.schedule-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.schedule-day{background:rgba(255, 255, 255, var(--content-alpha,.95));border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-small);overflow:hidden}.schedule-day-head{background:linear-gradient(135deg, var(--primary-red-light), var(--primary-red-dark));color:#fff;align-items:center;gap:.85rem;padding:1.1rem 1.4rem;display:flex}.schedule-day-badge{background:var(--accent-gold);width:34px;height:34px;color:var(--primary-red-dark);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.schedule-day-head h3{font-family:var(--font-display);font-size:1.2rem;font-weight:700}.schedule-items{padding:.5rem 1.4rem 1.25rem;list-style:none}.schedule-items li{border-bottom:1px solid var(--line);gap:1rem;padding:.85rem 0;display:flex}.schedule-items li:last-child{border-bottom:none}.schedule-time{color:var(--primary-red-dark);font-variant-numeric:tabular-nums;flex:none;min-width:108px;font-weight:700}.schedule-activity{color:var(--text-main);line-height:1.5}.cta-banner{text-align:center;color:#fff;background:linear-gradient(135deg, var(--primary-red-dark), var(--primary-red), var(--primary-red-dark));padding:3.5rem 1.5rem;position:relative;overflow:hidden}.cta-banner:before{content:"";background:repeating-linear-gradient(135deg,#ffffff0d 0 1px,#0000 1px 22px);position:absolute;inset:0}.cta-banner h2{font-family:var(--font-display);margin-bottom:.75rem;font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:700;position:relative}.cta-banner p{color:var(--accent-gold-light);margin-bottom:1.75rem;font-size:1.08rem;position:relative}.cta-banner .btn-hero-primary{position:relative}.honorees-slider{justify-content:center;align-items:center;gap:1rem;max-width:720px;margin:0 auto;display:flex}.honoree-card{background:rgba(255, 255, 255, var(--content-alpha,.95));border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:center;flex:1;padding:2.5rem 2rem}.honoree-avatar{border:3px solid var(--accent-gold);background:var(--surface-warm);border-radius:50%;justify-content:center;align-items:center;width:110px;height:110px;margin:0 auto 1.25rem;display:flex;overflow:hidden}.honoree-avatar img{object-fit:cover;width:100%;height:100%}.honoree-initial{font-family:var(--font-display);color:var(--accent-gold-dark);font-size:2.6rem;font-weight:800}.honoree-quote{font-family:var(--font-display);color:var(--ink);margin-bottom:1.25rem;font-size:1.2rem;font-style:italic;line-height:1.6}.honoree-name{color:var(--primary-red-dark);font-size:1.15rem;font-weight:800}.honoree-role{color:var(--text-muted);margin-top:.2rem;font-size:.95rem}.honoree-nav{border:1px solid var(--line-strong);width:46px;height:46px;color:var(--primary-red-dark);cursor:pointer;box-shadow:var(--shadow-small);transition:background-color var(--transition-speed) ease, transform var(--transition-speed) ease;background:#fff;border-radius:50%;flex:none;font-size:1.6rem;line-height:1}.honoree-nav:hover{background:var(--surface-warm);transform:scale(1.05)}.honoree-dots{justify-content:center;gap:.5rem;margin-top:1.5rem;display:flex}.honoree-dot{background:var(--line-strong);cursor:pointer;width:10px;height:10px;transition:background-color var(--transition-speed) ease, transform var(--transition-speed) ease;border:none;border-radius:50%}.honoree-dot.active{background:var(--primary-red);transform:scale(1.2)}.gallery-tabs{justify-content:center;gap:.5rem;margin-bottom:2rem;display:flex}.gallery-tab{border:1px solid var(--line-strong);color:var(--text-muted);cursor:pointer;transition:all var(--transition-speed) ease;background:#fff;border-radius:999px;padding:.6rem 1.5rem;font-weight:700}.gallery-tab.active{background:var(--primary-red);border-color:var(--primary-red);color:#fff}.gallery-slider{justify-content:center;align-items:center;gap:1.5rem;max-width:900px;margin:0 auto;display:flex}.slider-track-container{border-radius:var(--radius-md);background:var(--surface-soft);box-shadow:var(--shadow-small);flex:1;overflow:hidden}.slider-track{transition:transform .4s ease-in-out;display:flex}.slider-image-wrapper{aspect-ratio:16/9;cursor:pointer;flex:0 0 100%;justify-content:center;align-items:center;display:flex}.slider-image{object-fit:contain;max-width:100%;max-height:100%;display:block}.slider-image-wrapper:hover .slider-image{transition:transform .4s;transform:scale(1.02)}.slider-nav{background:var(--surface-soft);width:48px;height:48px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-soft);border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.8rem;line-height:1;transition:all .2s;display:flex}.slider-nav:hover{background:var(--primary-red);color:#fff}@media (width<=768px){.gallery-slider{gap:0;position:relative}.slider-nav{z-index:10;background:#fffc;position:absolute;top:50%;transform:translateY(-50%)}.slider-nav.slider-prev{left:10px}.slider-nav.slider-next{right:10px}}.gallery-empty{text-align:center;color:var(--text-muted);padding:2rem}.lightbox{z-index:1200;background:#0a0c12eb;justify-content:center;align-items:center;padding:2rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.lightbox img{border-radius:var(--radius-md);max-width:90vw;max-height:85vh;box-shadow:0 20px 60px #00000080}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;width:44px;height:44px;font-size:1.8rem;line-height:1;position:absolute;top:1.25rem;right:1.5rem}.lightbox-close:hover{background:#ffffff4d}.lightbox-nav{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;width:54px;height:54px;font-size:2.2rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#ffffff4d}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.lightbox-count{color:#ffffffd9;font-weight:600;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.fund-contributors{max-width:920px;margin:0 auto}.fund-contributors-head{margin-bottom:1.75rem}.fund-contributors-count{border:1px solid var(--line);color:var(--text-muted);background:#ffffffd1;border-radius:999px;margin-top:1rem;padding:.4rem .8rem;font-size:.86rem;font-weight:700;display:inline-flex}.contributors-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255, 255, 255, var(--content-alpha,.95));box-shadow:var(--shadow-small);overflow-x:auto}.contributors-table{border-collapse:collapse;width:100%;min-width:680px}.contributors-table th,.contributors-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.85rem 1rem}.contributors-table thead th{background:var(--primary-red);color:#fff;white-space:nowrap;font-weight:800}.contributors-table tbody tr:nth-child(2n){background:var(--surface-soft)}.contributors-table tbody tr:last-child td{border-bottom:none}.contributors-col-index{width:70px;text-align:center!important}.contributors-table tbody .contributors-col-index{color:var(--primary-red-dark);font-weight:800}.contributors-name{color:var(--ink);font-weight:700}.contributors-col-amount{white-space:nowrap;width:170px;text-align:right!important}.fund-more-btn{margin:1rem auto 0;display:block}.contributors-modal-backdrop{z-index:1300;background:#0a0c12b8;justify-content:center;align-items:center;padding:1.25rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.contributors-modal{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;flex-direction:column;width:min(100%,980px);max-height:min(86vh,760px);display:flex;overflow:hidden;box-shadow:0 24px 70px #00000047}.contributors-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.4rem;display:flex}.contributors-modal-head h3{color:var(--ink);font-family:var(--font-display);margin:0 0 .25rem;font-size:1.35rem}.contributors-modal-head p{color:var(--text-muted);margin:0}.contributors-modal-close{border:1px solid var(--line);background:var(--surface-soft);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:50%;flex:none;font-size:1.6rem;line-height:1}.contributors-modal-close:hover{background:var(--surface-warm)}.contributors-modal .contributors-table-wrap{margin:1.25rem;overflow:auto}.fund-sponsors{margin-top:2.5rem}.fund-sponsors-title{text-align:center;font-family:var(--font-display);color:var(--ink);margin-bottom:1.25rem;font-size:1.35rem}.fund-sponsor-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;max-width:760px;margin:0 auto;display:grid}.fund-sponsor{text-align:center;background:rgba(255, 255, 255, var(--content-alpha,.95));border:1px solid var(--line);border-top:3px solid var(--line-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-small);padding:1.2rem 1rem}.fund-sponsor.tier-gold{border-top-color:#d4a52a}.fund-sponsor.tier-silver{border-top-color:#9aa3ad}.fund-sponsor.tier-bronze{border-top-color:#b0713b}.fund-sponsor-tier{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-gold-dark);margin-bottom:.4rem;font-size:.75rem;font-weight:800;display:inline-block}.fund-sponsor-name{color:var(--ink);font-weight:700;display:block}.fund-sponsor-amount{color:var(--text-muted);margin-top:.3rem;font-size:.9rem;display:block}.landing-footer{background:linear-gradient(135deg, #1a0608, var(--primary-red-dark));color:#ffffffe6;border-top:4px solid var(--accent-gold);margin-top:2rem;position:relative}.footer-inner{grid-template-columns:1.6fr 1fr 1fr;align-items:flex-start;gap:2rem;width:min(100% - 40px,1080px);margin:0 auto;padding:3rem 0 2rem;display:grid}.footer-brand{align-items:center;gap:1rem;display:flex}.footer-logo{object-fit:cover;border:2px solid var(--accent-gold);background:#fff;border-radius:50%;flex:none;width:70px;height:70px;padding:4px}.footer-school{font-family:var(--font-display);color:#fff;font-size:1.25rem}.footer-tagline{color:var(--accent-gold-light);margin-top:.25rem;font-size:.9rem}.footer-contact h4{color:#fff;margin-bottom:.85rem;font-size:1.05rem}.footer-contact p{align-items:flex-start;gap:.55rem;margin-bottom:.6rem;font-size:.94rem;line-height:1.5;display:flex}.footer-ico{flex:none}.footer-contact a{color:var(--accent-gold-light);text-decoration:none}.footer-contact a:hover{text-decoration:underline}.footer-map{border-radius:var(--radius-md);border:1px solid #fff3;min-height:180px;overflow:hidden}.footer-map iframe{border:none;width:100%;height:100%;min-height:180px;display:block}.footer-bottom{text-align:center;color:#ffffffb3;border-top:1px solid #ffffff26;padding:1.15rem;font-size:.88rem}@media (width<=860px){.letter-layout{grid-template-columns:1fr;gap:1.5rem;padding:1.75rem}.letter-photo{max-width:240px;margin:0 auto}.footer-inner{grid-template-columns:1fr}}@media (width<=640px){.landing-section{padding:2.75rem 0}.section-title{font-size:1.6rem}.header-contact-trigger{width:min(100%,280px)}.contact-phone-modal{max-height:86vh}.contact-phone-modal-head{padding:1rem}.contact-phone-modal-head h3{font-size:1.3rem}.contact-phone-list{max-height:calc(86vh - 96px);padding:1rem}.contact-phone-item{flex-direction:column;align-items:stretch}.contact-phone-number{text-align:center;white-space:normal;overflow-wrap:anywhere;width:100%;display:block}.hero{min-height:90vh}.hero-logo{width:100px;height:100px}.hero-cd-box{min-width:68px;padding:.6rem .7rem}.hero-cd-num{font-size:1.6rem}.hero-actions{flex-direction:column;width:100%}.btn-hero-primary,.btn-hero-secondary{width:100%}.timeline-card{flex-direction:column}.timeline-img{width:100%;height:170px}.schedule-time{min-width:92px}.honoree-nav{width:40px;height:40px}.honoree-card{padding:1.75rem 1.25rem}.fund-contributors-head{margin-bottom:1.4rem}.fund-contributors-count{margin-top:.75rem}.contributors-table{min-width:620px}.contributors-modal{border-radius:var(--radius-md);max-height:90vh}.contributors-modal-head{padding:1rem}.contributors-modal .contributors-table-wrap{margin:1rem}}.accordion{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;margin-bottom:.85rem;overflow:hidden}.accordion.open{box-shadow:var(--shadow-small)}.accordion-head{background:var(--surface-soft);cursor:pointer;text-align:left;width:100%;transition:background-color var(--transition-speed) ease;border:none;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.accordion.open .accordion-head,.accordion-head:hover{background:var(--surface-warm)}.accordion-icon{flex:none;font-size:1.2rem}.accordion-title{color:var(--ink);flex:1;font-weight:750}.accordion-chevron{color:var(--text-muted);font-size:.7rem}.accordion-body{border-top:1px solid var(--line);padding:1.25rem}.list-editor{margin-top:.5rem}.list-editor.compact .list-item{background:#fff}.list-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft);margin-bottom:.85rem;padding:.85rem 1rem}.list-item-head{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.list-item-num{color:var(--primary-red-dark);font-size:.9rem;font-weight:800}.list-item-tools{gap:.35rem;display:flex}.list-item-tools button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-main);cursor:pointer;transition:background-color var(--transition-speed) ease;background:#fff;font-size:.85rem}.list-item-tools button:hover:not(:disabled){background:var(--surface-warm)}.list-item-tools button:disabled{opacity:.4;cursor:not-allowed}.list-item-tools .list-del{color:var(--danger);border-color:#b4231866}.list-item-tools .list-del:hover{background:var(--danger);color:#fff}.list-add{border-style:dashed;width:100%}.img-picker{margin-top:.5rem}.img-picker-preview{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);max-width:220px;max-height:140px;margin-bottom:.5rem;display:block}.img-picker-actions{align-items:center;gap:.6rem;display:flex}.img-picker-btn{cursor:pointer;align-items:center;min-height:40px;padding:.5rem 1rem;display:inline-flex}.gallery-editor{gap:1.25rem;margin-top:.5rem;display:grid}.gallery-editor-tab{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);padding:1rem}.gallery-editor-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.gallery-editor-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;display:grid}.gallery-editor-empty{color:var(--text-muted);font-size:.9rem}.gallery-editor-thumb{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--line);position:relative;overflow:hidden}.gallery-editor-thumb img{object-fit:cover;width:100%;height:100%}.gallery-editor-thumb button{color:#fff;cursor:pointer;background:#b42318e6;border:none;border-radius:50%;width:24px;height:24px;font-size:.8rem;line-height:1;position:absolute;top:4px;right:4px}.contact-phone-compact-row{grid-template-columns:1fr 1fr 1fr 1fr;gap:.75rem;display:grid}.contact-phone-compact-row .form-control{min-height:38px;padding:.5rem .75rem;font-size:.9rem}@media (width<=900px){.contact-phone-compact-row{grid-template-columns:1fr 1fr}}@media (width<=640px){.contact-phone-compact-row{grid-template-columns:1fr}}.contact-phone-admin-list .list-item{padding:.75rem}.contact-phone-admin-list .list-item-head{margin-bottom:.5rem}.login-container{background-color:var(--page-bg);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-soft);background:#fff;padding:2.5rem 2rem}.login-header{text-align:center;margin-bottom:2rem}.login-logo{object-fit:contain;width:110px;height:110px;margin-bottom:1rem}.login-header h2{font-family:var(--font-display);color:var(--primary-red);margin:0;font-size:1.75rem;font-weight:800}.login-form .form-group{margin-bottom:1.25rem}.login-form .form-label{color:var(--ink);margin-bottom:.5rem;font-weight:600;display:block}.login-form .form-control{border-radius:var(--radius-sm);background-color:var(--surface-warm);border:1px solid var(--line);padding:.75rem 1rem;transition:all .2s}.login-form .form-control:focus{border-color:var(--primary-red);background-color:#fff;box-shadow:0 0 0 3px #9f1d241a}.login-btn{border-radius:var(--radius-sm);width:100%;margin-top:.5rem;padding:.85rem;font-size:1.1rem}.login-error{background-color:var(--danger-bg);color:var(--danger);border-radius:var(--radius-sm);text-align:center;border:1px solid #b4231833;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.95rem}
