/* SOURCE: WINE_CELLAR_DARK_FRIDGE_CAROUSEL_V042 */
:root{
  --bg:#12100f;--panel:#1f1a17;--panel2:#2b231f;--text:#f5eee8;--muted:#b9aaa0;--line:#40352f;
  --accent:#b9825a;--accent2:#e7c7a9;--danger:#d35d4c;--ok:#6ea870;--cabinet:#11100f;--cabinet2:#211916;
  --glass:rgba(255,255,255,.055);--red:#8d1f26;--red2:#3b0d12;--shadow:0 18px 60px rgba(0,0,0,.30);
  --slot-unit:70px;--slot-gap:10px;--fridge-pad:22px;--drawer-width:330px;color-scheme:dark;
}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;background:radial-gradient(circle at top,#30231e,#12100f 48%,#0c0a09);color:var(--text);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.app-header{position:sticky;top:0;z-index:70;display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:rgba(18,16,15,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{font-weight:800;letter-spacing:.04em;color:var(--accent2)}.app-header nav{display:flex;gap:14px;color:var(--muted);font-size:14px;flex-wrap:wrap}.app-header nav a:hover{color:var(--accent2)}.page-shell{max-width:none;margin:0;padding:14px 14px 92px;display:grid;gap:14px}.app-footer{position:fixed;right:14px;bottom:10px;color:#7f7168;font-size:12px;z-index:50}.eyebrow{color:var(--accent2)!important;font-size:12px;letter-spacing:.18em;font-weight:700;margin:0 0 4px}.primary,.secondary,.ghost,.danger,.link-button{border-radius:999px;padding:10px 15px;font-weight:700;transition:.18s transform,.18s border-color,.18s background;display:inline-flex;align-items:center;justify-content:center;gap:6px}.primary{background:var(--accent);color:#170f0a}.secondary{background:#322722;color:var(--text);border:1px solid var(--line)}.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.danger{background:var(--danger);color:#fff}.primary:hover,.secondary:hover,.ghost:hover,.danger:hover{transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}.hero-card,.section-head,.empty-state,.card-form,.note-card,.month-shelf,.modal-card{background:linear-gradient(135deg,rgba(54,41,35,.92),rgba(27,22,20,.92));border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.hero-card{padding:22px;display:flex;gap:20px;justify-content:space-between;align-items:center}.hero-card h1{font-size:clamp(28px,4vw,46px);line-height:1.05;margin:6px 0 8px}.hero-text,.muted{color:var(--muted)}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.cellar-card,.empty-state{background:rgba(31,26,23,.9);border:1px solid var(--line);border-radius:24px;padding:20px;display:grid;gap:9px}.card-badge{width:max-content;padding:4px 9px;border-radius:999px;background:rgba(185,130,90,.14);color:var(--accent2);font-size:12px}.cellar-card small,.cellar-card span{color:var(--muted)}
.stack-form{display:grid;gap:12px}.card-form{padding:18px}label{display:grid;gap:7px;color:#e7dad0;font-weight:700}input,select,textarea{width:100%;border-radius:14px;border:1px solid var(--line);background:#171312;color:var(--text);padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(185,130,90,.12)}label small{color:var(--muted);font-weight:500}.form-row{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.triple-row{grid-template-columns:repeat(3,minmax(0,1fr))}.two-row{grid-template-columns:repeat(2,minmax(0,1fr))}.check-line{display:flex;align-items:center;gap:8px}.check-line input{width:auto}.modal-card{border:0;padding:0;width:min(880px,calc(100vw - 18px));max-height:92vh;overflow:auto}.modal-card::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(8px)}.modal-card.wide{width:min(1020px,calc(100vw - 18px))}.modal-card form,.wine-detail-modal-body{padding:20px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-head h3{margin:0}.section-head{padding:18px 20px;display:flex;justify-content:space-between;align-items:center}.section-head h1{margin:0}
/* carousel layout */
.cellar-stage{position:relative;min-height:calc(100vh - 94px);display:grid;grid-template-rows:auto 1fr;align-items:start;gap:0}.cellar-tab-strip{position:sticky;top:54px;z-index:45;margin:0 auto 4px;max-width:min(96vw,980px);display:flex;gap:8px;overflow-x:auto;padding:6px 10px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(23,19,18,.78);backdrop-filter:blur(12px)}.cellar-tab{white-space:nowrap;padding:7px 12px;border-radius:999px;background:#261f1c;color:var(--muted);border:1px solid var(--line);font-size:13px;font-weight:800}.cellar-tab.active{background:var(--accent);color:#1b120c;border-color:var(--accent)}button.cellar-tab{appearance:none;cursor:pointer}.cellar-tab.add-tab{min-width:38px;text-align:center;color:var(--accent2)}.cellar-carousel-viewport{width:100%;overflow:visible;touch-action:pan-y;min-height:calc(100vh - 158px);display:block;position:relative;perspective:1500px;--drag-ratio:0}.cellar-carousel-track{position:relative;width:100%;height:calc(100vh - 164px);min-height:520px;transform:none!important;transition:none;will-change:auto;transform-style:preserve-3d}.cellar-panel{position:absolute;inset:0;display:flex;justify-content:center;align-items:flex-start;padding:6px 4vw 92px;opacity:0;pointer-events:none;transform:translateX(0) translateY(8px) scale(.64);transition:transform .38s cubic-bezier(.2,.8,.2,1),opacity .28s ease,filter .28s ease;filter:blur(1px);transform-origin:center 48%;}.cellar-panel.is-active{opacity:1;pointer-events:auto;z-index:3;transform:translateX(0) translateY(0) scale(1) rotateY(0deg);filter:none}.cellar-panel.is-prev{opacity:.22;z-index:2;transform:translateX(-38%) translateY(44px) scale(.36) rotateY(34deg);filter:blur(1.3px)}.cellar-panel.is-next{opacity:.22;z-index:2;transform:translateX(38%) translateY(44px) scale(.36) rotateY(-34deg);filter:blur(1.3px)}.cellar-panel.is-far{opacity:0;z-index:1;transform:translateY(42px) scale(.55);filter:blur(3px)}.cellar-carousel-viewport.is-dragging .cellar-panel{transition:none}.cellar-carousel-viewport.is-dragging .cellar-panel.is-active{transform:translateX(calc(var(--drag-ratio) * 18vw)) translateY(8px) scale(.94)}.cellar-side-arrow{position:absolute;top:44%;z-index:44;width:44px;height:44px;border-radius:50%;border:1px solid rgba(231,199,169,.36);background:rgba(23,19,18,.82);color:#e7c7a9;font-size:30px;font-weight:900;display:grid;place-items:center;box-shadow:0 10px 28px rgba(0,0,0,.35);backdrop-filter:blur(8px)}.cellar-side-arrow.prev,.cellar-side-arrow.next{left:auto;right:auto}.cellar-side-arrow:disabled{opacity:.18;pointer-events:none}.cellar-drawer{position:fixed;left:0;top:76px;bottom:26px;z-index:60;width:var(--drawer-width);transform:translateX(calc(-1 * var(--drawer-width) + 54px));transition:transform .22s ease;background:linear-gradient(160deg,rgba(46,35,30,.96),rgba(23,18,16,.98));border:1px solid var(--line);border-left:0;border-radius:0 26px 26px 0;box-shadow:var(--shadow)}.cellar-drawer.open{transform:translateX(0)}.drawer-toggle{position:absolute;right:8px;top:12px;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#17100b;font-weight:900}.drawer-content{padding:22px 62px 20px 20px;height:100%;display:flex;flex-direction:column}.drawer-content h1{font-size:26px;line-height:1.08;margin:4px 0 18px}.drawer-name-edit{display:grid;gap:7px;margin:4px 0 18px}.drawer-name-edit span{font-size:12px;color:var(--muted);font-weight:700}.cellar-name-input{font-size:24px;line-height:1.1;font-weight:900;color:var(--text);background:transparent!important;border:0!important;border-radius:10px;padding:4px 0!important;box-shadow:none!important}.cellar-name-input:focus{background:rgba(255,255,255,.045)!important;padding:7px 9px!important}.cellar-name-input.is-saving,.shelf-label-input.is-saving{opacity:.66}.drawer-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}.drawer-stats div{border:1px solid var(--line);background:rgba(255,255,255,.035);border-radius:16px;padding:11px}.drawer-stats dt{font-size:12px;color:var(--muted);margin-bottom:4px}.drawer-stats dd{margin:0;font-weight:800}.drawer-actions{display:grid;gap:10px}.language-select-line{margin-top:auto;padding-top:16px}.small-help{font-size:13px;color:var(--muted);margin:0}
/* fridge source of truth */
.fridge-shell{--fridge-inner-width:calc(var(--cellar-visual-cols) * var(--slot-unit) + (var(--cellar-visual-cols) - 1) * var(--slot-gap));width:clamp(320px,calc(var(--fridge-inner-width) + var(--fridge-pad) * 2 + 56px),min(92vw,calc(100vw - 168px)));padding:16px;border-radius:34px;background:linear-gradient(145deg,#0b0a09,#201915 46%,#090807);box-shadow:inset 0 0 0 2px rgba(255,255,255,.04),inset 0 0 28px rgba(255,255,255,.03),0 26px 80px rgba(0,0,0,.42)}.fridge-topbar{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 18px;border-radius:22px 22px 12px 12px;background:linear-gradient(180deg,#2a221f,#151211);border:1px solid #3b312c;color:var(--muted);font-size:13px}.fridge-led{color:#e5b98e;font-weight:800;letter-spacing:.04em}.fridge-door-glass{margin-top:12px;padding:18px var(--fridge-pad) 22px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028)),radial-gradient(circle at 50% 0,rgba(255,255,255,.08),transparent 55%),#0f0f10;border:1px solid rgba(255,255,255,.09);box-shadow:inset 0 0 50px rgba(0,0,0,.55);display:grid;gap:14px;overflow-x:auto}.fridge-shelf{display:grid;gap:6px}.shelf-label-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;min-width:var(--fridge-inner-width)}.shelf-label-input{width:190px;max-width:44vw;border:0!important;border-radius:8px!important;padding:4px 2px!important;font-size:13px;font-weight:800;color:#d9c7ba;background:transparent!important;box-shadow:none!important}.shelf-label-input:focus{background:rgba(255,255,255,.055)!important;padding:6px 8px!important;color:#fff}.shelf-label-line span{margin-left:auto;color:#786b63}.shelf-slot-grid{display:grid;grid-template-columns:repeat(var(--shelf-visual-cols),var(--slot-unit));gap:var(--slot-gap);align-items:stretch;min-width:calc(var(--shelf-visual-cols) * var(--slot-unit) + (var(--shelf-visual-cols) - 1) * var(--slot-gap));padding:7px 0 12px;border-bottom:2px solid rgba(185,130,90,.32)}.fridge-slot{grid-column:span var(--slot-span);min-height:98px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.075);padding:6px;display:grid;align-content:start;gap:6px}.fridge-slot.large-slot{background:linear-gradient(180deg,rgba(145,96,62,.16),rgba(255,255,255,.018));border-color:rgba(185,130,90,.28)}.fridge-slot.over{outline:3px solid rgba(231,199,169,.78);outline-offset:2px}.slot-meta{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:10px;color:#98887d}.slot-meta b{font-size:10px;color:var(--accent2);font-weight:800}.slot-stack{display:grid;gap:6px}.slot-stack-row{display:grid;grid-template-columns:repeat(var(--row-cols),1fr);gap:6px}.bottle-token{width:100%;aspect-ratio:1/1;border-radius:50%;min-width:0;background:radial-gradient(circle at 50% 18%,#5b2227 0 25%,#211 28%,#090707 70%);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:inset 0 5px 10px rgba(255,255,255,.12),0 3px 10px rgba(0,0,0,.45);overflow:hidden;cursor:pointer;padding:0;border:0}.bottle-token img{width:98%;height:98%;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.18)}.bottle-token.wine-type-red,.bottle-token.wine-type-sweet{background:radial-gradient(circle at 50% 18%,#2b1117 0 25%,#0d0708 28%,#030303 70%)}.bottle-token.wine-type-white{background:radial-gradient(circle at 50% 18%,#fff8dc 0 26%,#f2df9c 30%,#6a5b2b 70%);color:#1b1410}.bottle-token.wine-type-sparkling{background:radial-gradient(circle at 50% 18%,#f3df98 0 24%,#8d6c28 29%,#14100a 72%)}.bottle-placeholder{display:block;width:100%;aspect-ratio:1/1;border-radius:50%;border:1px dashed rgba(255,255,255,.15);background:rgba(255,255,255,.025);color:rgba(231,199,169,.82);font-weight:900}.add-wine-placeholder{cursor:pointer}.add-wine-placeholder:hover,.fridge-slot.empty-slot:hover .bottle-placeholder{background:rgba(185,130,90,.16);border-color:rgba(231,199,169,.72)}.fridge-slot.can-add-wine.empty-slot{cursor:pointer}.fridge-slot.can-add-wine.empty-slot:hover{box-shadow:inset 0 0 0 1px rgba(231,199,169,.28),0 0 0 2px rgba(185,130,90,.12)}body.is-editing .bottle-token{cursor:grab}.drag-ghost{position:fixed;z-index:9999;pointer-events:none;width:58px;height:58px;border-radius:50%;opacity:.94}.bottle-pick-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:.96;transition:transform 320ms cubic-bezier(.2,.8,.2,1),opacity 230ms ease,filter 230ms ease;filter:drop-shadow(0 24px 30px rgba(0,0,0,.68))}.wine-bottle-pick-ghost{display:block;border-radius:0;background:transparent}.pick-bottle-neck{position:absolute;left:35%;right:35%;top:0;height:28%;border-radius:999px 999px 6px 6px;background:linear-gradient(90deg,#111 0%,#2a2a26 45%,#0a0909 100%);box-shadow:inset 2px 0 3px rgba(255,255,255,.12)}.pick-bottle-shoulder{position:absolute;left:19%;right:19%;top:23%;height:18%;border-radius:50% 50% 8px 8px;background:linear-gradient(90deg,#090909,#23201f 48%,#030303)}.pick-bottle-body{position:absolute;left:14%;right:14%;top:36%;bottom:0;border-radius:12px 12px 20px 20px;background:linear-gradient(90deg,#030303,#1c1718 45%,#000);box-shadow:inset 4px 0 8px rgba(255,255,255,.10),inset -5px 0 10px rgba(0,0,0,.48);display:flex;align-items:center;justify-content:center;overflow:hidden}.pick-bottle-body img{width:78%;height:54%;object-fit:cover;border-radius:7px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.32)}.pick-bottle-body span{font-size:32px}.pick-bottle-shine{position:absolute;left:29%;top:8%;width:8%;height:72%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(255,255,255,.04));opacity:.5}.wine-bottle-pick-ghost.wine-type-white .pick-bottle-neck{background:linear-gradient(90deg,#efe2b8,#fff9da 52%,#bfa860)}.wine-bottle-pick-ghost.wine-type-white .pick-bottle-shoulder{background:linear-gradient(90deg,#f4e8bd,#fff8d8 48%,#bfa65a)}.wine-bottle-pick-ghost.wine-type-white .pick-bottle-body{background:linear-gradient(90deg,#d7c47e,#fff7d2 45%,#9b8740);color:#111}.wine-bottle-pick-ghost.wine-type-sparkling .pick-bottle-body{background:linear-gradient(90deg,#1b1307,#8b6f2c 45%,#110b04)}.wine-bottle-pick-ghost.wine-type-sweet .pick-bottle-body{background:linear-gradient(90deg,#100406,#3b1019 45%,#050102)}.consume-dropzone{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:55;width:min(680px,calc(100vw - 24px));display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 18px;border:1px dashed rgba(185,130,90,.55);border-radius:999px;background:rgba(27,22,20,.92);backdrop-filter:blur(12px);box-shadow:var(--shadow)}.consume-dropzone span{color:var(--muted);font-size:13px}.consume-dropzone.over{border-color:var(--danger);background:rgba(81,28,24,.96)}
/* wine detail modal */
.wine-detail-dialog{width:min(1060px,calc(100vw - 18px))}.wine-detail-grid{display:grid;grid-template-columns:260px 1fr;gap:16px}.detail-label-box{border-radius:22px;background:#120f0e;border:1px solid var(--line);min-height:320px;display:flex;align-items:center;justify-content:center;overflow:hidden}.detail-label-box img{max-width:100%;max-height:420px;object-fit:contain}.detail-label-box span{font-size:64px}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.info-grid.compact div{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:16px;padding:10px}.info-grid dt{font-size:12px;color:var(--muted);margin-bottom:4px}.info-grid dd{margin:0;font-weight:800}.detail-memo{color:var(--muted);line-height:1.55}.wine-edit-panel,.ai-edit-panel,.note-edit-panel{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.ai-edit-panel h4,.note-edit-panel h4{margin:0 0 12px}.compact-list{margin-top:12px}.note-list{display:grid;gap:10px}.note-card{padding:14px}.note-card p{margin:4px 0;color:var(--muted)}
/* archive */
.archive-head{margin-bottom:4px}.archive-shelves{display:grid;gap:16px}.month-shelf{padding:18px}.month-shelf h2{display:flex;justify-content:space-between;margin:0 0 12px}.month-shelf h2 span{color:var(--muted);font-size:16px}.consumed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.archive-bottle{display:grid;gap:9px;background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:20px;padding:12px}.archive-bottle-link{text-align:left;color:var(--text);background:transparent;display:grid;gap:7px;padding:0}.archive-bottle img,.archive-bottle-link>span{width:74px;height:74px;border-radius:50%;object-fit:cover;background:#3a2b24;display:flex;align-items:center;justify-content:center;font-size:34px}.archive-bottle small{color:var(--muted)}
@media(max-width:900px){:root{--drawer-width:300px;--slot-unit:58px}.form-row,.triple-row{grid-template-columns:1fr}.wine-detail-grid{grid-template-columns:1fr}.detail-label-box{min-height:220px}.info-grid{grid-template-columns:1fr}.cellar-panel{padding-inline:12px}.fridge-shell{width:min(96vw,calc(var(--fridge-inner-width) + var(--fridge-pad) * 2 + 46px))}.hero-card{flex-direction:column;align-items:stretch}.cellar-tab-strip{top:54px}.app-header{padding:10px 14px}.consume-dropzone{border-radius:20px;align-items:flex-start;flex-direction:column}.shelf-label-line{min-width:var(--fridge-inner-width)}}
@media(max-width:560px){:root{--slot-unit:54px;--slot-gap:7px;--fridge-pad:14px;--drawer-width:286px}.page-shell{padding-inline:8px}.fridge-shell{border-radius:26px;padding:12px}.fridge-door-glass{padding:14px var(--fridge-pad) 18px}.cellar-drawer{top:70px}.drawer-content{padding-right:58px}.app-footer{display:none}}
/* SOURCE: WINE_CELLAR_CROSS_CELLAR_DRAG_WINE_LOOKUP_I18N_V043 */
.language-select-line{margin:0 0 14px;display:grid;gap:7px}.language-select-line span{font-size:12px;color:var(--muted);font-weight:800}.language-select-line select{height:42px}.cellar-carousel-viewport.edge-prev::before,.cellar-carousel-viewport.edge-next::after{position:fixed;top:50%;z-index:60;transform:translateY(-50%);padding:12px 16px;border-radius:999px;background:rgba(185,130,90,.92);color:#17100b;font-weight:900;box-shadow:0 16px 34px rgba(0,0,0,.38);pointer-events:none}.cellar-carousel-viewport.edge-prev::before{content:"←";left:18px}.cellar-carousel-viewport.edge-next::after{content:"→";right:18px}.wine-lookup-results{display:grid;gap:8px;margin-top:-4px}.wine-lookup-results>p{margin:0;color:var(--muted);font-size:13px}.wine-lookup-item{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 10px;text-align:left;padding:10px 12px;border-radius:16px;border:1px solid rgba(185,130,90,.28);background:rgba(255,255,255,.045);color:var(--text)}.wine-lookup-item:hover{background:rgba(185,130,90,.15);border-color:rgba(231,199,169,.58)}.wine-lookup-item strong{font-size:14px}.wine-lookup-item small{grid-column:1/2;color:var(--muted)}.wine-lookup-item span{grid-row:1/3;grid-column:2/3;align-self:center;color:var(--accent2);font-size:12px;font-weight:900}.wine-lookup-empty{padding:9px 12px;border-radius:14px;background:rgba(255,255,255,.035)}body.is-editing .cellar-tab[data-carousel-tab]{outline:1px dashed rgba(231,199,169,.4)}@media(max-width:560px){.wine-lookup-item{grid-template-columns:1fr}.wine-lookup-item span{grid-column:1;grid-row:auto}}

/* SOURCE: WINE_CELLAR_LAYOUT_OPTIONS_MULTI_SLOT_BUILDER_V044 */
.compact-button{padding:8px 12px;font-size:13px}.builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid rgba(185,130,90,.22);background:rgba(255,255,255,.028);border-radius:18px;padding:13px}.builder-head strong{display:block;color:var(--text);margin-bottom:4px}.builder-head small{display:block;color:var(--muted);font-size:13px;line-height:1.45}.multi-slot-builder{display:grid;gap:10px}.multi-slot-rows{display:grid;gap:8px}.multi-slot-row{display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr 1fr 1fr auto;gap:8px;align-items:end;padding:10px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06)}.multi-slot-row label{gap:5px}.multi-slot-row label span{font-size:12px;color:var(--muted)}.multi-slot-row input,.multi-slot-row select{padding:9px 10px}.remove-multi-slot-row{height:40px;padding-inline:12px}.fridge-led{font-size:15px}.slot-meta span{font-size:11px;font-weight:800;color:#bfaea2}.slot-meta b{font-size:11px}.shelf-label-input{font-size:15px!important;width:230px}.shelf-label-line{font-size:13px}@media(max-width:900px){.multi-slot-row{grid-template-columns:1fr 1fr}.remove-multi-slot-row{grid-column:1/-1}.builder-head{flex-direction:column}.shelf-label-input{width:190px}.fridge-slot{min-height:88px}}@media(max-width:560px){.multi-slot-row{grid-template-columns:1fr}}

/* SOURCE: WINE_CELLAR_CELLAR_CONTROL_UX_V046 */
.brand-wrap{display:flex;align-items:center;gap:10px}.mobile-drawer-toggle{display:none;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#17100b;font-weight:900;font-size:20px;align-items:center;justify-content:center}.modal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.move-save-button:disabled{opacity:.45}.shelf-label-line{justify-content:flex-start}.cellar-carousel-viewport.is-dragging{cursor:grabbing}.bottle-token{touch-action:none}.fridge-door-glass,.fridge-slot,.bottle-placeholder{touch-action:pan-y}.drawer-actions .move-save-button,.drawer-actions .move-cancel-button{width:100%}body.is-editing .fridge-slot{box-shadow:inset 0 0 0 1px rgba(231,199,169,.11)}body.is-editing .bottle-token{outline:2px solid rgba(231,199,169,.28);outline-offset:2px}
@media(max-width:560px){.mobile-drawer-toggle{display:inline-flex}.app-header{justify-content:space-between}.brand-wrap{min-width:0}.cellar-drawer{top:54px;bottom:0;width:min(88vw,var(--drawer-width));transform:translateX(-105%);border-radius:0 22px 22px 0}.cellar-drawer.open{transform:translateX(0)}.drawer-toggle{display:none}.drawer-content{padding:18px 18px 24px 18px}.cellar-side-arrow{display:none!important}.cellar-panel.is-prev,.cellar-panel.is-next{opacity:0;pointer-events:none}.cellar-carousel-viewport{touch-action:pan-y}.cellar-tab-strip{top:54px;margin-bottom:0}.page-shell{padding-top:8px}.consume-dropzone{display:none}}
.move-mode-bar{position:fixed;left:50%;bottom:82px;transform:translateX(-50%);z-index:65;width:min(720px,calc(100vw - 24px));display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:22px;background:rgba(27,22,20,.96);border:1px solid rgba(231,199,169,.28);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.move-mode-bar[hidden]{display:none}.move-mode-bar span{color:var(--muted);font-size:13px}.move-mode-bar>div{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:560px){.move-mode-bar{bottom:14px;align-items:stretch;flex-direction:column}.move-mode-bar>div{display:grid;grid-template-columns:1fr 1fr}.move-mode-bar .primary,.move-mode-bar .ghost{width:100%}}

/* SOURCE: WINE_CELLAR_ARROW_POSITION_SOURCE_V049 */
.wine-edit-panel[hidden]{display:none!important}
.fridge-shell,.fridge-shell *,.bottle-token,.bottle-token img,.detail-label-box img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.cellar-carousel-viewport.is-dragging,.cellar-carousel-viewport.is-dragging *{cursor:grabbing}
.bottle-token img{pointer-events:none}
.cellar-side-arrow{transform:none!important;opacity:0;transition:opacity .12s ease,background .18s ease,border-color .18s ease}
.cellar-side-arrow.prev,.cellar-side-arrow.next{right:auto!important}
.cellar-carousel-viewport.arrows-ready .cellar-side-arrow{opacity:1}
.cellar-carousel-viewport.arrows-ready .cellar-side-arrow:disabled{opacity:.18}
.cellar-side-arrow:not(:disabled):hover{background:rgba(45,35,30,.96);border-color:rgba(231,199,169,.68)}

/* SOURCE: MOBILE_SLOT_STACK_SINGLE_SOURCE_V0415 */
.slot-desktop-content{display:none;gap:6px}
.slot-mobile-content{display:grid;grid-auto-rows:max-content;gap:3px;align-content:center;justify-content:center;justify-items:center;background:transparent;border:0;box-shadow:none;padding:0;overflow:visible}
.cellar-slot.over{outline:3px solid rgba(231,199,169,.78);outline-offset:2px}.header-consume-drop-target{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border:1px solid transparent;border-radius:999px;line-height:1;transition:.16s background,.16s border-color,.16s color}.app-header nav{align-items:center}body.is-editing .header-consume-drop-target{border-color:rgba(231,199,169,.22);background:rgba(185,130,90,.08);color:var(--accent2)}.header-consume-drop-target.over,.consume-dropzone.over{background:rgba(185,130,90,.22)!important;border-color:rgba(231,199,169,.82)!important;color:var(--accent2)!important}body.is-bottle-dragging{overscroll-behavior:none;overflow:hidden;touch-action:none}body.is-bottle-dragging .cellar-stage,body.is-bottle-dragging .fridge-door-glass,body.is-bottle-dragging .shelf-slot-grid,body.is-bottle-dragging .slot-mobile-content{touch-action:none!important;overscroll-behavior:none!important}body.is-bottle-dragging *{-webkit-user-select:none!important;user-select:none!important}
body.is-desktop-cellar-ui .slot-desktop-content{display:grid}
body.is-desktop-cellar-ui .slot-mobile-content{display:none}
body:not(.is-desktop-cellar-ui) .app-header{align-items:center}
body:not(.is-desktop-cellar-ui) .app-header nav{align-items:center;gap:6px}
body:not(.is-desktop-cellar-ui) .app-header nav a,body:not(.is-desktop-cellar-ui) .header-consume-drop-target{min-height:32px;padding:7px 9px;font-size:13px;line-height:1}
body:not(.is-desktop-cellar-ui) .fridge-shell{--mobile-unit:44px;--fridge-inner-width:calc(var(--mobile-cellar-visual-cols,var(--cellar-visual-cols)) * var(--mobile-unit) + (var(--mobile-cellar-visual-cols,var(--cellar-visual-cols)) - 1) * var(--slot-gap));width:min(96vw,calc(var(--fridge-inner-width) + var(--fridge-pad) * 2 + 36px))}
body:not(.is-desktop-cellar-ui) .shelf-label-line{min-width:var(--fridge-inner-width);touch-action:pan-y;overscroll-behavior-x:contain}
body:not(.is-desktop-cellar-ui) .shelf-slot-grid{grid-template-columns:repeat(var(--mobile-shelf-visual-cols,var(--shelf-visual-cols)),var(--mobile-unit));min-width:calc(var(--mobile-shelf-visual-cols,var(--shelf-visual-cols)) * var(--mobile-unit) + (var(--mobile-shelf-visual-cols,var(--shelf-visual-cols)) - 1) * var(--slot-gap));align-items:center;touch-action:pan-y;overscroll-behavior-x:contain}
body:not(.is-desktop-cellar-ui) .cellar-slot.fridge-slot{grid-column:span var(--mobile-slot-span,var(--slot-span));display:grid;align-content:center;justify-content:center;justify-items:center;min-width:calc(var(--mobile-slot-span,var(--slot-span)) * var(--mobile-unit));min-height:var(--mobile-unit);padding:0;background:transparent;border:0;box-shadow:none;outline:0;overflow:visible;touch-action:pan-y;overscroll-behavior-x:contain}
body:not(.is-desktop-cellar-ui) .cellar-slot.fridge-slot.large-slot{background:transparent;border-color:transparent}
body:not(.is-desktop-cellar-ui) .cellar-slot.fridge-slot.can-add-wine.empty-slot:hover{box-shadow:none}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-desktop-content{display:none!important}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-meta{display:none!important}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content{display:grid!important;grid-auto-rows:max-content;gap:3px;align-content:center;justify-content:center;justify-items:center;background:transparent;border:0;box-shadow:none;padding:0;overflow:visible}
body:not(.is-desktop-cellar-ui) .cellar-slot .mobile-slot-row{display:grid;grid-template-columns:repeat(var(--row-cols),var(--mobile-unit));gap:3px;justify-content:center;overflow:visible;width:max-content}
body:not(.is-desktop-cellar-ui) .cellar-slot .mobile-slot-row.is-offset-row{transform:translateX(calc(var(--mobile-unit) * .22))}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content .bottle-token,body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content .bottle-placeholder{width:var(--mobile-unit);height:var(--mobile-unit);min-width:var(--mobile-unit);min-height:var(--mobile-unit);aspect-ratio:1/1;border-radius:50%;box-shadow:inset 0 4px 8px rgba(255,255,255,.12),0 2px 8px rgba(0,0,0,.42);touch-action:none;margin:0;padding:0!important}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content .bottle-token{background-clip:padding-box}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content .bottle-token img{width:100%;height:100%;border-radius:50%;object-fit:cover}
body:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content .bottle-placeholder{background:rgba(255,255,255,.035);border:1px solid rgba(231,199,169,.26);color:var(--accent2)}


/* SOURCE: WINE_CELLAR_BASIC_MODE_GESTURE_SPLIT_V0417 */
body:not(.is-editing) .cellar-slot.large-slot .slot-desktop-content,
body:not(.is-editing) .cellar-slot.large-slot .slot-mobile-content{
  overflow-x:auto;
  overflow-y:visible;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  touch-action:pan-x pan-y;
}
body:not(.is-editing) .cellar-slot.large-slot .slot-desktop-content::-webkit-scrollbar,
body:not(.is-editing) .cellar-slot.large-slot .slot-mobile-content::-webkit-scrollbar{height:5px}
body:not(.is-editing) .cellar-slot.large-slot .slot-desktop-content::-webkit-scrollbar-thumb,
body:not(.is-editing) .cellar-slot.large-slot .slot-mobile-content::-webkit-scrollbar-thumb{background:rgba(231,199,169,.34);border-radius:999px}
body:not(.is-editing) .cellar-slot.large-slot .slot-stack{min-width:max-content}
body:not(.is-editing) .cellar-slot.large-slot .slot-stack-row{min-width:max-content}
body:not(.is-editing).is-desktop-cellar-ui .cellar-slot.large-slot .slot-stack-row{grid-template-columns:repeat(var(--row-cols),minmax(46px,var(--slot-unit)))}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .slot-mobile-content{max-width:calc(var(--mobile-slot-span,var(--slot-span)) * var(--mobile-unit));justify-content:start!important}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .mobile-slot-row{flex:0 0 auto}
body:not(.is-editing) .cellar-slot.large-slot{overscroll-behavior-x:contain}
body.is-editing .cellar-slot.large-slot .slot-desktop-content,
body.is-editing .cellar-slot.large-slot .slot-mobile-content{overflow:visible;touch-action:none}

/* 0.4.18: edit-mode insertion feedback for multi-bottle slots */
body.is-editing .cellar-slot.large-slot .slot-stack-row.insert-target,
body.is-editing .cellar-slot.large-slot .mobile-slot-row.insert-target{outline:2px solid rgba(231,199,169,.62);outline-offset:3px;border-radius:999px;background:rgba(185,130,90,.08)}
.slot-insert-marker{position:fixed;z-index:9998;width:4px;border-radius:999px;background:linear-gradient(180deg,rgba(255,248,216,.95),rgba(185,130,90,.85));box-shadow:0 0 0 2px rgba(31,20,12,.7),0 0 18px rgba(231,199,169,.78);pointer-events:none}
body:not(.is-bottle-dragging) .slot-insert-marker{display:none}

/* SOURCE: WINE_CELLAR_UPWARD_STACK_EDIT_V0419 */
body.is-editing .cellar-slot.large-slot.stack-zone-active{
  box-shadow:inset 0 0 0 2px rgba(231,199,169,.18),0 0 0 2px rgba(185,130,90,.14);
}
body.is-editing .cellar-slot.large-slot .slot-stack-row.stack-target,
body.is-editing .cellar-slot.large-slot .mobile-slot-row.stack-target{
  outline-color:rgba(255,235,180,.82)!important;
  background:linear-gradient(180deg,rgba(231,199,169,.18),rgba(185,130,90,.08));
}
body.is-editing .cellar-slot.large-slot .slot-stack-row.is-dynamic-stack-row,
body.is-editing .cellar-slot.large-slot .mobile-slot-row.is-dynamic-stack-row{
  min-height:34px;
  border-radius:999px;
}

/* SOURCE: MOBILE_GESTURE_SCROLL_STACK_FIX_V0421 */
html,body{min-height:100%;overflow-y:auto}
.cellar-carousel-track{height:auto;min-height:calc(100vh - 164px)}
body:not(.is-desktop-cellar-ui) .cellar-carousel-viewport{overflow:visible;min-height:calc(100vh - 118px)}
body:not(.is-desktop-cellar-ui) .cellar-carousel-track{height:auto;min-height:calc(100vh - 118px)}
body:not(.is-desktop-cellar-ui) .cellar-panel{padding-bottom:34px}
body:not(.is-desktop-cellar-ui) .fridge-door-glass{max-height:none;overflow-y:visible;overflow-x:auto;-webkit-overflow-scrolling:touch}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .slot-mobile-content{
  width:100%;
  min-width:0;
  max-width:calc(var(--mobile-slot-span,var(--slot-span)) * var(--mobile-unit));
  overflow-x:auto!important;
  overflow-y:visible!important;
  justify-content:start!important;
  touch-action:pan-x!important;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .mobile-slot-row{
  width:max-content;
  min-width:max-content;
  justify-content:start;
}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .bottle-token,
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.large-slot .bottle-placeholder{
  touch-action:pan-x!important;
}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot.large-slot{
  min-height:calc(var(--mobile-unit) * 2.15);
  align-content:end;
}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot.large-slot .slot-mobile-content{
  overflow:visible!important;
  touch-action:none!important;
  min-height:calc(var(--mobile-unit) * 2.05);
  align-content:end;
  padding-top:calc(var(--mobile-unit) * .86);
}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot.large-slot .mobile-slot-row.is-dynamic-stack-row:empty::before{
  content:'↑';
  display:grid;
  place-items:center;
  width:var(--mobile-unit);
  height:calc(var(--mobile-unit) * .82);
  border-radius:999px;
  border:1px dashed rgba(231,199,169,.68);
  background:rgba(185,130,90,.10);
  color:rgba(231,199,169,.92);
}


/* SOURCE: ALL_SLOT_STACK_AND_LABEL_SWIPE_GUARD_V0423 */
.cellar-slot .bottle-token{overscroll-behavior:contain}
body:not(.is-editing) .cellar-slot .bottle-token,
body:not(.is-editing) .cellar-slot .bottle-token img{
  touch-action:manipulation!important;
}
body.is-editing .cellar-slot .slot-desktop-content,
body.is-editing .cellar-slot .slot-mobile-content{touch-action:none}
body.is-editing .cellar-slot .slot-stack-row.insert-target,
body.is-editing .cellar-slot .mobile-slot-row.insert-target{outline:2px solid rgba(231,199,169,.62);outline-offset:3px;border-radius:999px;background:rgba(185,130,90,.08)}
body.is-editing .cellar-slot.stack-zone-active{box-shadow:inset 0 0 0 2px rgba(231,199,169,.18),0 0 0 2px rgba(185,130,90,.14)}
body.is-editing .cellar-slot .slot-stack-row.stack-target,
body.is-editing .cellar-slot .mobile-slot-row.stack-target{outline-color:rgba(255,235,180,.82)!important;background:linear-gradient(180deg,rgba(231,199,169,.18),rgba(185,130,90,.08))}
body.is-editing .cellar-slot .slot-stack-row.is-dynamic-stack-row,
body.is-editing .cellar-slot .mobile-slot-row.is-dynamic-stack-row{min-height:34px;border-radius:999px}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot{min-height:calc(var(--mobile-unit) * 1.86);align-content:end}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot .slot-mobile-content{overflow:visible!important;touch-action:none!important;min-height:calc(var(--mobile-unit) * 1.78);align-content:end;padding-top:calc(var(--mobile-unit) * .66)}
body.is-editing:not(.is-desktop-cellar-ui) .cellar-slot .mobile-slot-row.is-dynamic-stack-row:empty::before{content:'↑';display:grid;place-items:center;width:var(--mobile-unit);height:calc(var(--mobile-unit) * .76);border-radius:999px;border:1px dashed rgba(231,199,169,.68);background:rgba(185,130,90,.10);color:rgba(231,199,169,.92)}


/* SOURCE: STACK_PERSIST_SCROLL_FIX_V0424 */
body:not(.is-editing) .cellar-slot.scrollable-slot .slot-desktop-content,
body:not(.is-editing) .cellar-slot.scrollable-slot .slot-mobile-content{
  overflow-x:auto;
  overflow-y:visible;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  touch-action:pan-x pan-y;
}
body:not(.is-editing) .cellar-slot.scrollable-slot .slot-stack,
body:not(.is-editing) .cellar-slot.scrollable-slot .slot-stack-row{min-width:max-content}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.scrollable-slot .slot-mobile-content{
  width:100%;
  min-width:0;
  max-width:calc(var(--mobile-slot-span,var(--slot-span)) * var(--mobile-unit));
  justify-content:start!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  touch-action:pan-x!important;
}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.scrollable-slot .mobile-slot-row{
  width:max-content;
  min-width:max-content;
  justify-content:start;
}
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.scrollable-slot .bottle-token,
body:not(.is-editing):not(.is-desktop-cellar-ui) .cellar-slot.scrollable-slot .bottle-placeholder{touch-action:pan-x!important}

/* 0.5.0 auth foundation */
.auth-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 360px;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 999px;
  background: rgba(20, 15, 24, 0.68);
  color: rgba(255,255,255,0.86);
  font-size: 12px;
  white-space: nowrap;
  box-shadow: 0 10px 30px rgba(0,0,0,0.18);
}
.auth-pill .auth-name {
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 140px;
  font-weight: 700;
}
.auth-pill .auth-account {
  color: rgba(255,255,255,0.58);
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 120px;
}
.auth-pill a { color: #ffd6df; text-decoration: none; font-weight: 700; }
.login-page-body {
  min-height: 100vh;
  margin: 0;
  background:
    radial-gradient(circle at 28% 18%, rgba(126, 26, 52, 0.34), transparent 32%),
    radial-gradient(circle at 78% 80%, rgba(58, 17, 31, 0.46), transparent 34%),
    #08070a;
  color: #fff;
}
.login-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 440px);
  gap: clamp(24px, 6vw, 80px);
  align-items: center;
  max-width: 1120px;
  margin: 0 auto;
  padding: 40px 24px;
}
.login-card {
  position: relative;
  z-index: 2;
  padding: 30px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(31, 23, 34, 0.92), rgba(14, 10, 17, 0.94));
  box-shadow: 0 30px 90px rgba(0,0,0,0.44);
}
.login-card h1 { margin: 8px 0 10px; font-size: clamp(28px, 4vw, 42px); }
.login-copy { margin: 0 0 22px; color: rgba(255,255,255,0.68); line-height: 1.65; }
.login-actions { display: grid; gap: 12px; margin: 22px 0; }
.oauth-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 16px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.94);
  color: #151018;
  text-decoration: none;
  font-weight: 800;
}
.oauth-button.naver { background: #03c75a; color: #fff; }
.oauth-button.disabled { opacity: 0.42; pointer-events: none; }
.oauth-mark {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(0,0,0,0.08);
  font-weight: 900;
}
.login-alert {
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 92, 122, 0.16);
  border: 1px solid rgba(255, 92, 122, 0.28);
  color: #ffd7df;
  font-size: 14px;
  line-height: 1.5;
}
.login-alert.muted { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.14); color: rgba(255,255,255,0.76); }
.login-footnote { color: rgba(255,255,255,0.48); font-size: 12px; line-height: 1.5; }
.dev-login-form { display: grid; gap: 10px; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.12); }
.dev-login-form label { display: grid; gap: 6px; color: rgba(255,255,255,0.72); font-size: 13px; }
.dev-login-form input { min-height: 38px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.08); color: #fff; padding: 0 12px; }
.login-visual { position: relative; min-height: 520px; display: grid; place-items: center; }
.login-fridge-glow { position: absolute; width: 360px; height: 440px; border-radius: 44px; background: rgba(127,23,50,0.28); filter: blur(46px); }
.login-fridge-card {
  position: relative;
  width: min(340px, 74vw);
  height: 460px;
  padding: 36px 30px;
  border-radius: 38px;
  border: 1px solid rgba(255,255,255,0.16);
  background: linear-gradient(180deg, #1a1520, #09080c 62%, #050407);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05), 0 38px 100px rgba(0,0,0,0.54);
}
.login-fridge-top { height: 8px; border-radius: 999px; background: rgba(255,255,255,0.16); margin-bottom: 54px; }
.login-bottle-row { display: flex; justify-content: center; gap: 14px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,0.08); }
.login-bottle-row:last-child { border-bottom: 1px solid rgba(255,255,255,0.08); }
.login-bottle-row span { width: 34px; height: 78px; border-radius: 14px 14px 8px 8px; background: linear-gradient(180deg, #3b0917, #16060d); box-shadow: inset 0 8px 0 rgba(255,255,255,0.08); }
.login-bottle-row.small span { height: 58px; background: linear-gradient(180deg, #eee5c7, #6f6140); }
@media (max-width: 760px) {
  .login-shell { grid-template-columns: 1fr; padding: 24px 16px; }
  .login-visual { min-height: 260px; }
  .login-fridge-card { height: 250px; padding: 24px; }
  .login-bottle-row { padding: 9px 0; }
  .login-bottle-row span { height: 44px; width: 24px; }
  .auth-pill { max-width: calc(100vw - 32px); margin: 8px auto 0; }
}

/* SOURCE: WINE_CELLAR_OPS_BASIC_V051 */
.ops-shell{width:min(1180px,calc(100vw - 28px));margin:0 auto;display:grid;gap:16px}.ops-shell.narrow{width:min(860px,calc(100vw - 28px))}.ops-head{background:linear-gradient(135deg,rgba(54,41,35,.92),rgba(27,22,20,.92));border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:20px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ops-head h1{margin:4px 0 6px;font-size:clamp(28px,4vw,42px);line-height:1.06}.ops-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ops-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.ops-stats article,.ops-card,.notice-card{background:rgba(31,26,23,.92);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.ops-stats article{padding:16px;display:grid;gap:4px}.ops-stats strong{font-size:28px;color:var(--accent2)}.ops-stats span,.notice-meta, .ops-row small{color:var(--muted);font-size:13px}.ops-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ops-card{padding:18px}.ops-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ops-card h2{margin:0;font-size:20px}.ops-card header a{color:var(--accent2);font-size:13px;font-weight:800}.ops-list{display:grid;gap:9px}.ops-row{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:rgba(255,255,255,.025)}.ops-row:hover,.notice-card:hover{border-color:rgba(231,199,169,.34)}.ops-row strong{min-width:0}.ops-row small{grid-column:2}.ops-row.split{grid-template-columns:1fr auto}.ops-row.split>a{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:center}.ops-row form{margin:0}.status-chip{display:inline-flex;align-items:center;justify-content:center;width:max-content;border-radius:999px;padding:4px 8px;background:rgba(185,130,90,.14);color:var(--accent2);font-size:12px;font-weight:800}.status-chip.warn{background:rgba(211,93,76,.18);color:#ffc2b8}.notice-list{display:grid;gap:12px}.notice-card{display:grid;gap:8px;padding:18px}.notice-card h2{margin:0;font-size:22px}.notice-card p{margin:0;color:var(--muted);line-height:1.55}.notice-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.prose-card{line-height:1.72}.prewrap{white-space:pre-wrap;color:#f2e7de}.ops-table{display:grid;gap:1px;overflow-x:auto}.ops-tr{display:grid;grid-template-columns:170px 170px 130px 80px minmax(240px,1fr);gap:10px;padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.07);min-width:820px;color:var(--muted);font-size:13px}.ops-tr span{overflow:hidden;text-overflow:ellipsis}.ops-th{color:var(--accent2);font-weight:900}.filter-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0}.check-stack{display:grid;gap:8px;align-content:center}.compact-button{padding:7px 11px;font-size:13px}.auth-pill{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid rgba(231,199,169,.20);background:rgba(255,255,255,.045);border-radius:999px;padding:6px 10px;font-size:12px;color:var(--muted)}.auth-pill a{color:var(--accent2);font-weight:800}.auth-name{color:var(--text);font-weight:800}.auth-account{color:var(--accent2)}
@media (max-width:900px){.ops-head{display:grid}.ops-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-grid{grid-template-columns:1fr}.ops-row.split{grid-template-columns:1fr}.ops-row.split .ops-actions{justify-content:flex-start}.app-header{align-items:flex-start;gap:8px;flex-wrap:wrap}.app-header nav{order:3;width:100%}}

/* 0.5.2 account sharing */
.account-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid;gap:12px}.account-card.active{border-color:rgba(231,199,169,.58);box-shadow:0 18px 60px rgba(185,130,90,.14)}.account-members-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr)}.account-member-row{align-items:start}.member-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.inline-form{display:inline-flex;gap:6px;align-items:center;margin:0}.inline-form select{min-width:110px;padding:7px 10px;border-radius:12px}.small-help{font-size:13px;line-height:1.55}@media(max-width:860px){.account-members-grid{grid-template-columns:1fr}.member-actions{justify-content:flex-start}.inline-form{width:100%;justify-content:flex-start}.inline-form select{width:auto;min-width:150px}}
/* 0.6.0 tenant integrity audit */
.tenant-actions form{margin:0}.tenant-issues{max-height:680px;overflow:auto}.tenant-issue-row{grid-template-columns:auto minmax(160px,1fr)}.compact-list .ops-row{grid-template-columns:1fr auto}.status-chip.severity-error{background:rgba(211,93,76,.20);color:#ffc2b8}.status-chip.severity-warning{background:rgba(231,199,169,.18);color:#f4d4a9}.success-text{color:#9fd19d!important}.warning-text{color:#ffc2b8!important}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label{min-width:0}.form-grid textarea{min-height:88px}.form-grid button,.form-grid p{align-self:end}.form-grid label:has(textarea),.form-grid label:last-of-type{grid-column:1/-1}@media(max-width:900px){.form-grid{grid-template-columns:1fr}}

.onboarding-hero { align-items: center; }
.onboarding-grid { margin-top: 18px; }
.signup-note { border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 10px 12px; background: rgba(255,255,255,.05); }

.pagination-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 18px auto 4px;
  flex-wrap: wrap;
}

.ops-pre {
  white-space: pre-wrap;
  word-break: break-word;
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 14px;
  padding: 12px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.88rem;
  line-height: 1.5;
}
