:root{--bg:#171514;--panel:#241f1c;--border:#483b31;--text:#f7ebd6;--muted:#c2ac91;--gold:#d5ae78;--paper:#f5e9cf;--red:#b6544c;--green:#93c7a3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.brand{font:700 24px/1.2 Georgia,serif;letter-spacing:.06em;text-decoration:none;color:#fff6e4}.brand span{font-weight:400;color:var(--gold)}.brand small{display:block;font:600 11px system-ui,sans-serif;letter-spacing:.24em;color:var(--muted);text-transform:uppercase;margin-top:8px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px max(20px,calc((100vw - 1250px)/2));border-bottom:1px solid var(--border);background:#211c19}.admin-top p{margin:5px 0 0;font-size:13px;color:var(--muted)}.top-actions{display:flex;gap:9px;align-items:center}.top-actions form{margin:0}
.layout{width:min(1250px,calc(100% - 32px));margin:44px auto 70px}.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-weight:700;margin:0 0 10px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:clamp(30px,4vw,50px);margin:0 0 12px}h2{font-size:clamp(26px,3vw,37px);margin:0 0 10px}h3{font-size:23px;margin:0}.subtle{color:var(--muted);margin:0;font-size:14px}.heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:29px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:25px 0 28px}.stat{padding:22px;background:#2c241f;border:1px solid var(--border);border-radius:8px}.stat strong{display:block;font:400 40px Georgia,serif;color:var(--gold)}.stat span{color:#d6c4ac;font-size:13px}.panel{border:1px solid var(--border);background:var(--panel);padding:clamp(17px,3vw,35px);border-radius:9px;margin-bottom:26px;scroll-margin-top:25px}.section-head{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-bottom:25px}
.primary,.secondary,.danger,.text-button{border-radius:5px;padding:10px 15px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.3;white-space:nowrap;font-size:13px;font-weight:650;transition:filter .18s,background .18s}.primary{background:var(--gold);color:#201811;border:1px solid var(--gold)}.secondary{background:#362b25;color:#f2e6d4;border:1px solid #65503f}.danger{background:#3d2625;color:#f3b8b1;border:1px solid #75413f}.text-button{background:transparent;border:0;color:var(--muted)}.primary:hover,.secondary:hover,.danger:hover{filter:brightness(1.12)}.btn-small{padding:8px 9px;font-size:11px}.toast{margin:0 0 15px;border:1px solid #b38d57;background:#453829;padding:13px 16px;border-radius:5px;color:#f8eddd}.toast.error{border-color:#a9544c;background:#3d2220}.toast.success{border-color:#699873;background:#1c3425}
.editor{padding:24px;margin:0 0 24px;background:#f2e3c7;color:#261c15;border:1px solid #c49e67;border-radius:6px}.editor-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.editor .text-button{color:#624936}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.editor-grid label,.category-form label{display:flex;flex-direction:column;gap:6px;font-weight:650;font-size:12px}.editor-grid input:not([type="checkbox"]),.editor-grid textarea,.editor-grid select,.category-form input{width:100%;padding:11px 12px;border-radius:4px;border:1px solid #baa27d;background:#fff9ed;color:#261e19;font-weight:400;font-size:14px}.editor-grid textarea{resize:vertical}.editor-grid .full,.category-form .full{grid-column:1/-1}.checkbox-line{display:flex!important;flex-direction:row!important;align-items:start;gap:12px!important;padding:13px;background:#f8ecd7;border:1px solid #ddc6a7;border-radius:5px}.checkbox-line input{width:19px;height:19px;margin:0;accent-color:#67462a}.checkbox-line span{display:flex;flex-direction:column}.checkbox-line small{font-size:11px;font-weight:400;color:#695949}.form-actions{display:flex;gap:10px}.editor .secondary{background:#e7d0a9;color:#261e19;border-color:#bfa279}
.filterbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:18px}.filterbar label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:5px}.filterbar input,.filterbar select{background:#322923;color:var(--text);border:1px solid #65503f;padding:10px 12px;border-radius:5px;min-width:0;font-size:13px}.table-scroll{overflow-x:auto}.list-table{width:100%;border-collapse:collapse;font-size:13px;min-width:740px}.list-table thead th{font-size:11px;color:#bca88d;text-align:left;text-transform:uppercase;letter-spacing:.08em;font-weight:600;border-bottom:1px solid #6f5742;padding:10px 11px}.list-table td{padding:14px 11px;vertical-align:middle;border-bottom:1px solid #42362e}.list-table td strong{display:block;font-size:13px;font-weight:600}.list-table td small{display:block;color:var(--muted);margin-top:3px}.list-table td.actions{display:flex;flex-wrap:wrap;gap:5px}.list-table td.actions form{display:inline-flex}.pill{font-size:10px;font-weight:700;display:inline-block;padding:5px 9px;border-radius:15px}.pill.live{background:#1e4130;color:#a2dfb7}.pill.draft{background:#443726;color:#e6bc7c}.muted{color:var(--muted)}.empty-row{text-align:center;padding:30px;color:var(--muted)}
.category-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.category-card,.add-category{border:1px solid #564537;background:#2e261f;border-radius:6px;padding:18px}.category-form{display:grid;grid-template-columns:1fr 100px;gap:13px}.category-form button{justify-self:start}.category-card>form:last-child{margin-top:11px}.add-category{margin-top:15px}.add-category h3{margin:0 0 15px}.category-form label{color:#efdec4}.footnote{max-width:840px;margin:auto;text-align:center;color:#bba68a;font-size:12px}.footnote p{margin:10px 0}
.auth-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.auth-card{border:1px solid var(--border);background:#29211d;padding:30px;border-radius:9px;width:min(450px,100%);margin-top:35px}.auth-card h1{font-size:34px}.auth-card .editor-grid{grid-template-columns:1fr;margin-top:22px}.auth-card .editor-grid label{color:#e6d5bc}.auth-card .editor-grid input{background:#f9edda}.backlink{text-align:center;color:var(--muted);font-size:13px;margin:20px 0 0}
@media(max-width:850px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.heading,.section-head{align-items:start;flex-direction:column}.filterbar{grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}.category-cards{grid-template-columns:1fr}}@media(max-width:560px){.admin-top{flex-direction:column;align-items:flex-start}.top-actions{width:100%}.stat strong{font-size:29px}.editor-grid,.filterbar{grid-template-columns:1fr}.filter-search{grid-column:auto}.category-form{grid-template-columns:1fr 85px}.layout{margin-top:24px}.panel{padding:16px}.heading{gap:15px}.editor{padding:14px}.editor-top{align-items:flex-start}.form-actions{flex-wrap:wrap}}

/* V4 · polished lounge backoffice — V3 selectors and workflows remain unchanged */
.release-badge{display:inline-block;vertical-align:middle;margin-left:8px;padding:4px 7px;border:1px solid #866548;color:#d3b080;font:700 9px "Courier New",monospace;letter-spacing:.09em;border-radius:3px;white-space:nowrap}
body{background:radial-gradient(ellipse at top left,#37251a,#1b1613 42%,#161210 100%) fixed}
.panel{box-shadow:0 12px 36px #0003}
.stat{background:linear-gradient(145deg,#35281f,#271e19)}
.btn-small{transition:background .15s ease,border-color .15s ease}
.category-card{box-shadow:inset 0 1px 0 #ffffff0a}
@media(max-width:560px){.release-badge{display:block;margin:8px 0 0;width:max-content}}

/* V5: Image uploads and per-category ordering */
.image-upload-panel{background:#ead4af;border:1px dashed #9f825c;padding:16px;border-radius:6px;display:flex;flex-direction:column;gap:14px}
.image-upload-copy{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.image-upload-copy strong{font:700 14px system-ui,sans-serif}.image-upload-copy span{font:12px/1.4 system-ui,sans-serif;color:#73573a}
.image-editor-row{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.image-preview-box{width:144px;height:126px;display:grid;place-items:center;overflow:hidden;border-radius:6px;border:1px solid #b89a73;background:#f6edda;color:#8f7255;font:11px system-ui,sans-serif;flex-shrink:0}
.image-preview-box img{width:100%;height:100%;object-fit:cover;display:block}.image-controls{display:flex;flex-direction:column;gap:11px;flex:1;min-width:170px}
.image-controls input[type=file]{width:100%;max-width:460px;padding:9px;border:1px solid #b89a73;background:#fff8e8;border-radius:5px}
.image-controls small{font-size:11px;font-weight:400;color:#73573a}
.editor-grid .remove-image{padding:9px 10px;width:max-content;max-width:100%}
.drink-label{display:flex;align-items:center;gap:10px;min-width:180px}.drink-thumb{width:47px;height:47px;flex:0 0 47px;border-radius:5px;object-fit:cover;border:1px solid #6c503c}.drink-thumb.placeholder{display:grid;place-items:center;background:#443226;color:#ad8e66;font-size:19px}
.sort-actions{white-space:nowrap}.sort-actions form{display:inline-flex;margin:0 2px}.sort-actions button{width:31px;min-width:31px;padding:7px!important;font-size:17px}
.list-table{min-width:880px}
@media(max-width:560px){.image-editor-row{align-items:flex-start}.image-upload-copy{flex-direction:column}}

[hidden]{display:none!important}
html{background:#171311}
body{background-color:#171311;background-image:radial-gradient(ellipse at top left,#37251a,#1b1613 42%,#161210 100%);background-attachment:scroll;min-height:100vh}

/* V5.1: inline category feedback and preserved editing context */
.category-feedback{grid-column:1/-1;display:block;padding:9px 11px;border-radius:5px;font-size:12px;font-weight:600;white-space:normal}
.category-feedback.success{color:#b2e2bf;background:#173a2a;border:1px solid #497b56}
.category-feedback.error{color:#ffd5d0;background:#4b2927;border:1px solid #a25a54}
.category-edit-form button[disabled]{opacity:.65}
.category-card:focus-within{border-color:#a98655}

/* V7: seasonal editor */
.admin-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 24px}.admin-shortcuts a{display:inline-flex;align-items:center;border:1px solid #766046;color:#f2dac1;text-decoration:none;padding:11px 14px;border-radius:5px;background:#33251d;font:700 12px system-ui,sans-serif}.admin-shortcuts a:hover{background:#513628}
.special-admin{border:1px solid #916947!important}.special-list{display:grid;gap:22px;margin-top:20px}.special-editor{background:#e9d8bd;color:#34291d;padding:18px;border:1px solid #be9d6c;margin:22px 0;border-radius:8px}.special-editor .editor-grid{margin-top:14px}.special-editor input,.special-editor textarea,.special-editor select{background:#fff8e9;color:#302419}
.special-panel{border:1px solid #69523f;background:#281d18;border-radius:8px;padding:18px;scroll-margin-top:90px}.special-panel.theme-halloween{border-color:#c4682d}.special-panel.theme-winter{border-color:#6695bc}.special-panel.theme-summer{border-color:#7aa377}.special-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;border-bottom:1px solid #584739;padding-bottom:15px}.special-panel-header h3{font:400 31px Georgia,serif;color:#eed5af;margin:5px 0}.special-panel .subtle{color:#bca998}.special-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.special-tools form{display:inline-flex;margin:0}.special-tools button{font-size:12px;padding:8px 10px}.special-drinks-head{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.special-drinks-head h4{font:400 22px Georgia,serif;margin:18px 0 14px}.special-drink-list{display:grid;gap:6px}.special-drink-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px;border:1px solid #4d3c2e;background:#1e1815;border-radius:5px}.special-drink-name{display:flex;align-items:center;gap:12px;flex:1;min-width:165px}.special-drink-name>img,.special-placeholder{width:48px;height:48px;object-fit:cover;border:1px solid #8c6b4e;border-radius:5px;flex:0 0 48px}.special-placeholder{display:grid;place-items:center;background:#3c2c23;color:#ddaf76}.special-drink-name span:last-child{display:grid;gap:4px;max-width:360px}.special-drink-name strong{font-size:14px;color:#fff0df}.special-drink-name small{color:#a99583;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}.special-drink-price{color:#edbf8c;font-weight:700;font-size:15px}.special-drink-row .pill{font-size:10px}.special-note{margin-top:24px;font-size:12px}.special-upload-preview{display:grid;place-items:center;width:140px;height:125px;border:1px dashed #a48c6e;background:#fff8e9;color:#8a765a;border-radius:5px;font:12px system-ui,sans-serif}.special-upload-preview img{width:100%;height:100%;object-fit:cover}.special-admin button{cursor:pointer}
@media(max-width:600px){.special-panel{padding:12px}.special-panel-header h3{font-size:25px}.special-drink-row{align-items:flex-start}.special-drink-row .special-tools{width:100%}.special-tools button{padding:9px 8px}}

/* V7.4 – seasonal manager */
.season-template-bar{display:flex;flex-wrap:wrap;align-items:center;gap:9px;background:#221a16;border:1px solid #654d39;border-radius:10px;padding:15px;margin:14px 0}
.template-label{width:100%;font:700 10px 'Courier New',monospace;color:#bda482;letter-spacing:.17em}
.season-template{background:#3a2c22;color:#f8e4cc;border:1px solid #806348;border-radius:6px;padding:11px 12px;font:600 12px system-ui,sans-serif}
.season-template:hover,.season-template:focus-visible{background:#61432d;color:#fff}
.season-template-bar>small{width:100%;font:11px/1.5 system-ui,sans-serif;color:#c0a991}
.season-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;background:#faefd9;border:1px solid #d4b58c;padding:14px;border-radius:7px}
.season-dates-title,.season-date-hint{grid-column:1/-1}
.season-dates-title{display:grid;gap:4px}.season-dates-title small,.season-date-hint{font:12px/1.5 system-ui,sans-serif;color:#725a40;margin:0}
.season-swatches{display:flex;align-items:center;gap:7px;min-height:46px;flex-wrap:wrap}.season-swatch{width:24px;height:24px;border-radius:50%;border:2px solid #fff3dd;box-shadow:0 0 0 1px #998061}.season-swatch.copper{background:#e69c65}.season-swatch.gold{background:#ebc972}.season-swatch.purple{background:#c2a2f8}.season-swatch.pink{background:#f6a8ce}.season-swatch.green{background:#8fd4a1}.season-swatch.blue{background:#9bcaed}.season-swatches small{font:11px system-ui,sans-serif;color:#6c5337}
.special-title-block{min-width:200px;flex:1}.special-status{display:inline-block;margin-bottom:8px;border-radius:20px;border:1px solid #8b6e4d;padding:5px 10px;color:#f0d2a7;background:#463629;font:700 10px system-ui,sans-serif;letter-spacing:.08em}
.special-status.status-live{color:#b9e7bc;background:#163a24;border-color:#57956d}
.special-status.status-scheduled{color:#c2dcff;background:#1b354d;border-color:#597b9d}
.special-status.status-expired{color:#b5adb4;background:#3c363d;border-color:#756977}
.special-status.status-empty{color:#ffd4a7;background:#4d3425;border-color:#a87c4a}
.season-window{font:12px system-ui,sans-serif;margin:11px 0 4px;color:#edc790}
.special-tools a.secondary.preview-special{font-size:12px;text-decoration:none;padding:8px 10px;white-space:nowrap}
.special-tools button:disabled{opacity:.55;cursor:wait}
@media(max-width:600px){.season-dates{grid-template-columns:1fr}.season-dates-title,.season-date-hint{grid-column:1}.special-panel .special-tools{justify-content:flex-start}.special-panel-header{gap:9px}}
