.loading-screen{min-height:100vh;color:var(--muted);place-items:center;display:grid}.login-page{color:#fff;background:#0e0e0e;grid-template-columns:1.1fr .9fr;min-height:100vh;display:grid}.login-brand{background:radial-gradient(circle at 15% 15%,#4a3919 0,#0000 30%),linear-gradient(135deg,#171717,#080808);flex-direction:column;justify-content:space-between;padding:7vw;display:flex}.brand-mark{letter-spacing:.12em;align-items:center;gap:13px;font-weight:800;display:flex}.brand-monogram{border:1px solid var(--gold);width:43px;height:43px;color:var(--gold);place-items:center;font-family:Georgia,serif;display:grid}.login-brand h1{max-width:650px;margin-bottom:24px;font:500 clamp(2.8rem,6vw,5.5rem)/.98 Georgia,serif}.login-brand h1 span{color:var(--gold)}.login-brand p{color:#aaa;max-width:530px;line-height:1.7}.login-panel{color:var(--black);background:#fff;place-items:center;padding:32px;display:grid}.login-card{width:min(420px,100%)}.login-card h2{margin-bottom:10px;font:500 2.2rem Georgia,serif}.login-card>p{color:var(--muted);margin-bottom:32px}.field{flex-direction:column;gap:7px;display:flex}.field label,.field-label{color:#393733;font-size:.82rem;font-weight:700}.field input,.field textarea,.field select{border:1px solid var(--border);color:#24221f;background:#fff;border-radius:9px;outline:none;width:100%;padding:12px 13px;transition:all .2s}.field textarea{resize:vertical;min-height:100px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c79b3b1d}.form-stack{gap:18px;display:grid}.error-box,.success-box,.notice{border-radius:8px;padding:12px 14px;font-size:.9rem}.error-box{color:#8e2d28;background:#fff0ef;border:1px solid #f2cbc8}.success-box{color:#316b3c;background:#eef8f0;border:1px solid #cde6d1}.notice{color:#745820;background:#fbf7ed;border:1px solid #ead9ac}.btn{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-weight:700;text-decoration:none;transition:all .18s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--black);color:#fff}.btn-gold{background:var(--gold);color:#17120a}.btn-outline{color:#292621;border:1px solid var(--border);background:#fff}.btn-danger{color:var(--danger);background:#fff1f0;border:1px solid #e8c4c1}.btn-block{width:100%}.admin-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#111;flex-direction:column;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.sidebar .brand-mark{border-bottom:1px solid #2a2a2a;padding:0 8px 28px}.nav{gap:6px;margin-top:28px;display:grid}.nav a{color:#aaa;border-radius:8px;align-items:center;gap:11px;padding:12px 13px;font-size:.92rem;text-decoration:none;display:flex}.nav a:hover,.nav a.active{color:#edcf8e;background:#24211c}.nav-icon{text-align:center;width:20px}.sidebar-footer{border-top:1px solid #292929;margin-top:auto;padding-top:20px}.user-email{color:#888;text-overflow:ellipsis;margin-bottom:12px;font-size:.76rem;overflow:hidden}.sidebar-footer button{width:100%}.main-area{min-width:0}.topbar{border-bottom:1px solid var(--border);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:74px;padding:0 clamp(20px,4vw,48px);display:flex;position:sticky;top:0}.topbar-title{font-weight:800}.menu-button{background:0 0;border:0;font-size:1.4rem;display:none}.content{max-width:1450px;margin:auto;padding:clamp(22px,4vw,48px)}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px;display:flex}.page-header h1{margin-bottom:7px;font:500 clamp(1.8rem,3vw,2.4rem) Georgia,serif}.page-header p{color:var(--muted);margin:0}.card{border:1px solid var(--border);background:#fff;border-radius:13px;padding:24px;box-shadow:0 8px 30px #25211708}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.stat-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:22px}.stat-label{text-transform:uppercase;letter-spacing:.08em;color:#77736c;font-size:.72rem;font-weight:800}.stat-value{color:#171614;margin:10px 0 5px;font:500 1.65rem Georgia,serif}.stat-caption{color:var(--muted);font-size:.78rem}.stat-card.accent{color:#fff;background:#15130f;border-color:#15130f}.stat-card.accent .stat-label,.stat-card.accent .stat-caption{color:#b9b09f}.stat-card.accent .stat-value{color:#e8c775}.section-title{justify-content:space-between;align-items:center;margin:34px 0 15px;display:flex}.section-title h2{margin:0;font:500 1.35rem Georgia,serif}.empty-state{text-align:center;padding:60px 25px}.empty-icon{width:58px;height:58px;color:var(--gold-dark);background:#f7f1e4;border-radius:50%;place-items:center;margin:0 auto 18px;font-size:1.4rem;display:grid}.empty-state p{color:var(--muted);max-width:470px;margin:0 auto 22px;line-height:1.6}.raffle-hero{grid-template-columns:minmax(240px,.75fr) 1.25fr;padding:0;display:grid;overflow:hidden}.raffle-image{color:#8d826d;background:#1b1916 50%/cover;place-items:center;min-height:330px;display:grid}.raffle-body{padding:32px}.badge{text-transform:uppercase;letter-spacing:.07em;color:#555;background:#eee;border-radius:100px;padding:5px 10px;font-size:.7rem;font-weight:800;display:inline-flex}.badge-active,.badge-scheduled{color:#357042;background:#edf7ef}.badge-closed,.badge-drawn,.badge-archived{color:#665f5f;background:#f0eeee}.badge-draft{color:#7e611d;background:#fbf2dc}.detail-grid{grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0;display:grid}.detail-item span{text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-size:.72rem;font-weight:700;display:block}.detail-item strong{font-size:.95rem}.actions{flex-wrap:wrap;gap:10px;display:flex}.table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:720px}.data-table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);padding:13px;font-size:.7rem}.data-table td{border-bottom:1px solid #efede9;padding:16px 13px;font-size:.88rem}.data-table tr:last-child td{border:0}.data-table a{font-weight:700;text-decoration:none}.form-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.form-sections{gap:20px;display:grid}.form-section h2{margin-bottom:5px;font:500 1.25rem Georgia,serif}.section-help{color:var(--muted);margin-bottom:22px;font-size:.84rem}.fields-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.span-2{grid-column:span 2}.form-aside{gap:16px;display:grid;position:sticky;top:98px}.preview-number{letter-spacing:.15em;font:500 1.55rem ui-monospace,monospace}.preview-row{border-bottom:1px solid #eee;justify-content:space-between;padding:10px 0;font-size:.84rem;display:flex}.radio-group{grid-template-columns:1fr 1fr;gap:10px;display:grid}.radio-card{border:1px solid var(--border);cursor:pointer;border-radius:9px;align-items:flex-start;gap:9px;padding:12px;font-size:.86rem;display:flex}.pack-list{gap:12px;display:grid}.pack-card{border:1px solid var(--border);border-radius:10px;padding:16px}.pack-grid{grid-template-columns:1fr .65fr .8fr auto;align-items:end;gap:12px;display:grid}.pack-meta{border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.saving-bar{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.settings-form{max-width:850px}.color-field{grid-template-columns:55px 1fr;gap:8px;display:grid}.color-field input[type=color]{height:44px;padding:4px}.mobile-overlay{display:none}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.admin-shell{grid-template-columns:1fr}.sidebar{z-index:20;width:260px;transition:all .25s;position:fixed;left:-280px}.sidebar.open{left:0}.mobile-overlay.open{z-index:15;background:#0008;display:block;position:fixed;inset:0}.menu-button{display:block}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-layout{grid-template-columns:1fr}.form-aside{order:-1;position:static}.raffle-hero{grid-template-columns:1fr}.raffle-image{min-height:220px}}@media (width<=600px){.content{padding:20px 15px}.topbar{padding:0 16px}.page-header{flex-direction:column}.stats-grid,.fields-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.pack-grid{grid-template-columns:1fr 1fr}.pack-grid .pack-name{grid-column:span 2}.radio-group{grid-template-columns:1fr}.login-panel{padding:24px}.card{padding:18px}.detail-grid{grid-template-columns:1fr}}.filter-bar{align-items:end;gap:14px;display:flex}.filter-bar .search-field{flex:1}.number-chips{flex-wrap:wrap;gap:8px;display:flex}.number-chips>span{color:#4c3b17;background:#f5f0e5;border:1px solid #e5d8bc;border-radius:6px;padding:7px 9px;font:700 .82rem ui-monospace,monospace}.purchase-options{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.purchase-card{border:1px solid var(--border);cursor:pointer;border-radius:10px;gap:9px;padding:14px;display:flex}.purchase-card.selected{border-color:var(--gold);background:#fcf8ee;box-shadow:0 0 0 2px #c79b3b20}.purchase-card span{gap:4px;display:grid}.purchase-card small{color:var(--muted)}.purchase-card em{color:var(--gold-dark);text-transform:uppercase;font-size:.7rem;font-style:normal;font-weight:800}.checkbox-row{margin:14px 0;font-size:.88rem;display:block}.review-card{max-width:650px;margin:auto}.review-card h3{text-transform:uppercase;color:var(--muted);letter-spacing:.08em;margin-top:24px;font-size:.75rem}.review-card .actions{margin-top:28px}.sale-success{text-align:center;justify-items:center;gap:20px;max-width:800px;margin:auto;display:grid}.success-symbol{color:#2c793a;background:#eaf6ec;border-radius:50%;place-items:center;width:62px;height:62px;font-size:1.8rem;display:grid}.success-summary{gap:25px;font:500 1.25rem Georgia,serif;display:flex}.number-search{gap:16px;margin-top:20px;display:grid}.inline-input{gap:8px;display:flex}.availability{border-radius:9px;gap:5px;padding:16px;display:grid}.availability.available{color:#286735;background:#edf7ef}.availability.sold{color:#69501d;background:#fff5e2}.compact-numbers{white-space:nowrap;text-overflow:ellipsis;max-width:330px;overflow:hidden}@media (width<=900px){.purchase-options{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.filter-bar{flex-direction:column;align-items:stretch}.purchase-options{grid-template-columns:1fr}.inline-input{align-items:stretch}.success-summary{flex-direction:column;gap:6px}}.extra-draw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.extra-draw-card .card-head{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.extra-draw-card h2{margin:18px 0 8px;font:500 1.35rem Georgia,serif}.prize-line{color:var(--gold-dark);font-weight:700}.badge-drawn{color:#74571c;background:#f7edd6}.badge-cancelled{color:#6c5e5e;background:#f1eeee}.extra-draw-detail>h2{margin:16px 0 8px;font:500 1.8rem Georgia,serif}.extra-draw-detail>p{color:var(--muted)}.winner-card{color:#fff;background:linear-gradient(135deg,#171510,#262116);border-color:#332b1a;grid-template-columns:250px 1fr;align-items:center;gap:30px;display:grid}.winner-card .detail-item span{color:#b5aa92}.winner-number{color:#e4be66;letter-spacing:.12em;margin-top:8px;font:500 3.4rem Georgia,serif}.pagination{color:var(--muted);justify-content:flex-end;align-items:center;gap:15px;margin-top:18px;font-size:.85rem;display:flex}.draw-modal{z-index:100;background:#080808ed;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.draw-stage{color:#fff;text-align:center;background:radial-gradient(circle,#3c2e13 0,#17130c 35%,#090909 75%);border:1px solid #7d6129;flex-direction:column;justify-content:center;align-items:center;width:min(760px,100%);min-height:540px;padding:45px;display:flex;box-shadow:0 0 100px #c79b3b1a}.draw-eyebrow{text-transform:uppercase;letter-spacing:.28em;color:#d7b767;font-size:.78rem;font-weight:800}.draw-date{text-transform:uppercase;color:#938b7c;margin-top:12px}.draw-status{text-transform:uppercase;letter-spacing:.12em;color:#c7b991;margin-top:60px}.draw-number{color:#eccd7e;letter-spacing:.08em;text-shadow:0 0 35px #d6a94450;margin:24px 0;font:500 clamp(4rem,12vw,7rem)/1 Georgia,serif;transition:all .2s}.draw-stage.revealed .draw-number{transform:scale(1.08)}.draw-winner{text-transform:uppercase;font:500 1.8rem Georgia,serif}.draw-prize{color:#a9a08e;margin-top:10px}.draw-actions{gap:10px;margin-top:35px;display:flex}@media (width<=800px){.extra-draw-grid,.winner-card{grid-template-columns:1fr}.draw-stage{min-height:480px;padding:25px}}.backup-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:20px;display:grid}.backup-main{text-align:center;justify-items:center;gap:12px;padding:48px;display:grid}.backup-indicator{border-radius:50%;place-items:center;width:66px;height:66px;font-size:2rem;font-weight:800;display:grid}.backup-indicator.ok{color:#31713d;background:#e8f5eb}.backup-indicator.pending{color:#95681d;background:#fff0dd}.backup-button{margin:10px 0;padding:15px 24px;font-size:1rem}.backup-counts{display:grid}.backup-reminder,.dashboard-alert{justify-content:space-between;align-items:center;gap:20px;display:flex}.backup-reminder p,.dashboard-alert p{color:var(--muted);margin:5px 0 0}.backup-reminder.pending{border-left:4px solid #d99c35}.backup-reminder.ok{border-left:4px solid #4d995c}.dashboard-alert{margin-top:18px}.winner-modal{z-index:100;background:#000a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.winner-dialog{gap:18px;width:min(650px,100%);max-height:92vh;display:grid;position:relative;overflow:auto}.modal-close{cursor:pointer;background:0 0;border:0;font-size:1.8rem;position:absolute;top:12px;right:15px}.candidate-preview{background:#f7f4ed;border-radius:9px;grid-template-columns:1fr 1fr;gap:15px;padding:17px;display:grid}.winner-result{text-align:center;justify-items:center;gap:12px;display:grid}.winner-summary{color:#fff;background:linear-gradient(135deg,#171510,#292218);align-items:center;gap:35px;display:flex}.winner-summary h2{margin-bottom:5px}.winner-summary p{color:#c0b8a8;margin:0}@media (width<=800px){.backup-layout{grid-template-columns:1fr}.backup-main{padding:30px 18px}.backup-reminder,.dashboard-alert{flex-direction:column;align-items:flex-start}.candidate-preview{grid-template-columns:1fr}.winner-summary{flex-direction:column;align-items:flex-start;gap:10px}}.image-upload{align-content:start;gap:9px;display:grid}.image-upload img{object-fit:contain;border:1px solid var(--border);background:#f2f0eb;border-radius:8px;width:100%;height:150px}.image-upload input[type=file]{display:none}.image-upload small{color:var(--muted);font-size:.72rem}.image-upload .disabled{opacity:.6;pointer-events:none}:root{color:#25231f;font-synthesis:none;text-rendering:optimizelegibility;--gold:#c79b3b;--gold-dark:#9b7427;--black:#121212;--muted:#716e67;--border:#e4e0d8;--danger:#a83b35;background:#f5f4f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #c79b3b8c}a{color:inherit}h1,h2,h3,p{margin-top:0}#root{min-height:100vh}
