@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-ext-500-normal-Yta7XZ9C.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-500-normal-lsPpqi9g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-500-normal-CyAY5ZLS.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-500-normal-DkJXBcIH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-vietnamese-500-normal-BZGLGj12.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-500-normal-DqXqCC0q.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-ext-600-normal-BMhMHfrj.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-600-normal-CsIYWmWK.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-600-normal-C2atO-64.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-600-normal-FNmA3REe.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-vietnamese-600-normal-BoXdMtcr.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-600-normal-C4HEjEaf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-normal-o8fRvAFQ.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-normal-DG8lny6_.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-normal-DDLP67lu.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-normal-C0kVTdou.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-normal-K8pwR3tn.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-normal-BaZl8BIK.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-normal-CVAbzS9p.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-normal-d4JlP2QH.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-normal-CLvJdMEL.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-normal-ifvNSiWx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-normal-o4A__6QZ.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-normal-B4EmgUmt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-italic-Bz1w3xqM.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-italic-CYS3phfl.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-italic-BGIwiowF.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-italic-BZInx2ys.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-italic-CHZOQEtG.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-italic-BL1XYHtS.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-italic-Dqr5KC66.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-italic-BamGE6QP.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-italic-DQ8HKnks.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-italic-ORtyMVfw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-italic-V7s3nWfX.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-italic-DUSsnRSD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-italic-DSEbMgZu.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-italic-CDFyLPXJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-cyrillic-ext-600-normal-cjIjEMm6.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-600-normal-b6vuEf1e.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-cyrillic-600-normal-CHfC3jm-.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-600-normal-koFutDBv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-greek-ext-600-normal-B6KG6Acg.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-600-normal-DzPSPp8W.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-greek-600-normal--vWuDlyL.woff2) format("woff2"),url(/assets/eb-garamond-greek-600-normal-JScKXZBq.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-vietnamese-600-normal-Dmi8L14S.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-600-normal-DgZMCD0h.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-ext-600-normal-CrweTMKz.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-600-normal-CoWPx8v4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-600-normal-DHwxsLHv.woff2) format("woff2"),url(/assets/eb-garamond-latin-600-normal-xCe6GkOx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--night-950: #040507;--night-900: #07090c;--night-800: #0e1116;--night-700: #161a21;--night-600: #232933;--stone-900: var(--night-900);--oak-900: #24140a;--oak-800: #3a2212;--oak-700: #55331b;--oak-600: #6f4424;--oak-500: #8c5a31;--oak-400: #a8713f;--backlight: #2ea8ff;--backlight-deep: #0b4f96;--backlight-glow: rgba(46, 168, 255, .35);--amber: #ffb35c;--amber-bright: #ffd59a;--amber-dim: #b9782f;--amber-glow: rgba(255, 170, 80, .55);--wine-red-accent: #8e1b30;--wine-red-deep: #5a0d1c;--text: #e9eef3;--text-soft: #aeb8c3;--text-faint: #7c8794;--line: rgba(170, 205, 240, .16);--line-strong: rgba(170, 205, 240, .3);--glass: rgba(9, 12, 17, .78);--glass-strong: rgba(9, 12, 17, .92);--good: #7fd18b;--warn: #f0c26b;--danger: #ff7b7b;--wine-red: #9a1f36;--wine-white: #d9cf8c;--wine-rose: #e39aa6;--wine-sparkling: #ece3b2;--wine-dessert: #d49a3b;--wine-fortified: #6f2b16;--radius: 6px;--font-display: "Cormorant Garamond", "EB Garamond", Garamond, Georgia, serif;--font-body: "EB Garamond", Garamond, Georgia, "Times New Roman", serif;--font-caps: "Cormorant Garamond", "EB Garamond", Georgia, serif;font-family:var(--font-body);font-variant-numeric:lining-nums;font-size:18px;line-height:1.5;color:var(--text);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--night-900)}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse 70% 45% at 50% 35%,rgba(46,140,255,.16),transparent 70%),radial-gradient(ellipse 120% 90% at 50% 50%,transparent 40%,rgba(2,3,5,.85) 100%),linear-gradient(180deg,#0405089e,#040508d1),url(/stone-wall.jpg) center / cover no-repeat,var(--night-900)}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:.01em;line-height:1.15;margin:0}h1{font-size:2.2rem}h2{font-size:1.45rem}h3{font-size:1.15rem}a{color:var(--amber-bright);text-decoration-color:var(--amber-dim);text-underline-offset:3px}a:hover{color:#fff0d8}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{background:#00000080;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;padding:.45rem .6rem;min-width:0}select{background-color:var(--night-800)}option,optgroup{background-color:var(--night-800);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-faint);font-style:italic}input:focus,textarea:focus{border-color:var(--backlight)}:focus-visible{outline:2px solid var(--backlight);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.caps{font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.85em}.loc{font-family:var(--font-display);font-variant:small-caps;font-variant-numeric:lining-nums;font-weight:600;letter-spacing:.04em}.muted{color:var(--text-soft)}.faint{color:var(--text-faint)}.small{font-size:.85rem}.grow{flex:1;min-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack{display:flex;flex-direction:column;gap:1rem}.stack.tight{gap:.5rem}.row{display:flex;align-items:center;gap:.6rem}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.splash{text-align:center;margin-top:30vh;font-family:var(--font-display);font-size:1.4rem}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:1.25rem;padding:.6rem 1.25rem;padding-top:calc(.6rem + env(safe-area-inset-top));background:#040507e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(46,168,255,.45);box-shadow:0 1px 22px #2ea8ff2e,0 8px 20px #0009}.brand{display:flex;align-items:center;gap:.55rem;color:var(--text);text-decoration:none;font-family:var(--font-display);font-weight:600;font-size:1.35rem;text-transform:uppercase;letter-spacing:.22em;white-space:nowrap}.brand:hover{color:#fff}.brand svg{flex:none;color:var(--amber);filter:drop-shadow(0 0 6px var(--amber-glow))}.top-nav{display:flex;gap:.25rem}.top-nav a,.bottom-nav a{color:var(--text-faint);text-decoration:none;font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.14em}.top-nav a{padding:.35rem .75rem;font-size:.82rem}.top-nav a:hover{color:var(--text)}.top-nav a.active{color:#fff;box-shadow:inset 0 -2px 0 var(--backlight),0 8px 14px -10px var(--backlight)}.topbar .spacer{flex:1}.topbar .who{color:var(--text-faint);font-style:italic;max-width:14rem}.content{width:100%;max-width:1180px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.bottom-nav{display:none}@media(min-width:761px)and (max-width:1100px){.topbar{gap:.75rem}.topbar .who{display:none}.brand{font-size:1.15rem;letter-spacing:.16em}.top-nav a{padding-inline:.5rem;letter-spacing:.1em}}@media(min-width:761px)and (max-width:900px){.brand span{display:none}.content{padding-inline:.75rem}}@media(max-width:760px){:root{font-size:17px}.top-nav,.topbar .who{display:none}.topbar{padding-inline:1rem;gap:.75rem}.brand{font-size:1.15rem;letter-spacing:.18em}.content{padding:1rem 1rem calc(5.5rem + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(var(--tabs, 4),1fr);padding-bottom:env(safe-area-inset-bottom);background:#040507f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(46,168,255,.45);box-shadow:0 -1px 22px #2ea8ff26}.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .25rem .45rem;font-size:.66rem;letter-spacing:.1em}.bottom-nav a.active{color:#fff}.bottom-nav a.active svg{color:var(--backlight);filter:drop-shadow(0 0 6px var(--backlight-glow))}.bottom-nav svg{width:22px;height:22px}h1{font-size:1.85rem}}.page-title{text-align:center;color:#f4f7fa;text-transform:uppercase;letter-spacing:.2em;font-weight:500;text-shadow:0 2px 12px rgba(0,0,0,.9)}.page-title small{display:block;font-family:var(--font-body);font-style:italic;font-size:1rem;text-transform:none;letter-spacing:.04em;font-weight:400;color:var(--text-soft);margin-top:.3rem}.ornament{display:flex;align-items:center;justify-content:center;gap:.75rem;color:var(--amber);margin:0 auto .5rem;max-width:420px}.ornament svg{filter:drop-shadow(0 0 6px var(--amber-glow))}.ornament:before,.ornament:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,179,92,.6),transparent)}.card{position:relative;color:var(--text);background:var(--glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.25rem;box-shadow:0 14px 34px #0009,inset 0 1px #ffffff0a}.card h2,.card h3{color:#f4f7fa}.card hr{border:0;border-top:1px solid var(--line);margin:.5rem 0}.section-title{font-family:var(--font-caps);font-size:.8rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.5rem;padding:.4rem 1.1rem;border-radius:3px;cursor:pointer;text-decoration:none;white-space:nowrap;font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;color:var(--text);background:#ffffff0a;border:1px solid var(--line-strong)}.button:hover{background:#ffffff17;border-color:#c8e1fa73}.button:disabled{opacity:.45;cursor:default;background:#ffffff0a}.button.block{width:100%}.button.small{min-height:2rem;padding:.2rem .7rem;font-size:.74rem}.button.primary{color:#fff;background:linear-gradient(180deg,var(--wine-red-accent),var(--wine-red-deep));border-color:#b02a44;box-shadow:0 0 18px #b02a4459}.button.primary:hover{background:linear-gradient(180deg,#a32139,#6a1022)}.button.gold{color:#1a1004;background:linear-gradient(180deg,var(--amber-bright),var(--amber));border-color:var(--amber-dim);box-shadow:0 0 16px #ffaa504d}.button.gold:hover{background:linear-gradient(180deg,#ffe2b5,#ffbf73)}.button.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--amber-bright);text-transform:none;letter-spacing:.02em;font-family:var(--font-body);font-weight:400;font-size:.95rem;text-decoration:underline;text-decoration-color:var(--amber-dim);text-underline-offset:3px}.button.ghost.small{font-size:.85rem}.button.ghost:hover{background:transparent;text-decoration-thickness:2px}.button.danger{color:var(--danger);text-decoration-color:#ff7b7b80}.icon-button{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--line-strong);background:#ffffff0a;color:var(--text);cursor:pointer;font-size:1.1rem;line-height:1}.icon-button:hover{background:#ffffff1a}.icon-button:disabled{opacity:.35;cursor:default}.form{display:flex;flex-direction:column;gap:.85rem}.form label{display:flex;flex-direction:column;gap:.25rem;font-weight:500;color:var(--text-soft)}.form .hint,.hint{font-size:.85rem;font-weight:400;color:var(--text-faint);font-style:italic}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.85rem}.form-grid .span-2{grid-column:span 2}@media(max-width:520px){.form-grid .span-2{grid-column:auto}}.inline-form{display:flex;gap:.5rem}.inline-form input{flex:1}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .8rem;border-radius:999px;cursor:pointer;border:1px solid var(--line-strong);background:#00000073;color:var(--text-soft);font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.chip:hover{color:var(--text)}.chip[aria-pressed=true]{color:#fff;background:#2ea8ff2e;border-color:var(--backlight);box-shadow:0 0 12px #2ea8ff4d}.swatch{display:inline-block;width:.8em;height:.8em;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff40}.error{color:#ffd9d9;background:#5a0a14b3;border:1px solid rgba(255,110,110,.5);border-radius:4px;padding:.6rem .85rem}.toast{color:#d9f5de;background:#143c1eb3;border:1px solid rgba(127,209,139,.5);border-radius:4px;padding:.6rem .85rem;margin:0}.notice{font-style:italic;color:var(--text-soft)}.search-bar{position:relative}.search-bar input{width:100%;font-size:1.15rem;padding:.8rem 1rem .8rem 2.85rem;background:#030508d1;border:1px solid var(--line-strong);border-radius:4px;box-shadow:0 10px 28px #0009}.search-bar input:focus{border-color:var(--backlight);box-shadow:0 0 0 1px var(--backlight),0 0 24px #2ea8ff40}.search-bar svg{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);color:var(--text-faint)}.results{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem}.wine-card{display:flex;gap:.75rem;text-align:left;cursor:pointer;width:100%;font:inherit}.wine-card:hover{border-color:var(--line-strong)}.wine-card[aria-pressed=true]{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber),0 0 26px #ffaa504d,0 14px 34px #0009}.wine-card .name{font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.2;color:#f4f7fa}.wine-card .where{color:var(--amber-bright);font-size:.95rem}.bottle-icon{flex:none;width:28px;height:64px}.label-thumb{flex:none;width:56px;height:72px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px var(--line-strong),0 4px 10px #00000080}.found-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;padding:.8rem 1rem;border-radius:4px;background:var(--glass-strong);border:1px solid rgba(255,179,92,.55);box-shadow:0 0 30px #ffaa5026}.found-banner strong{font-family:var(--font-display);font-size:1.3rem;color:var(--amber-bright)}.found-banner .icon-button{width:2rem;height:2rem}.cellar-toolbar{display:flex;flex-direction:column;gap:.75rem}.cellar-toolbar .add-wine{align-self:flex-end}.cellar-strip{display:flex;flex-direction:column;gap:1rem}.cellar-strip:empty{display:none}.cellar-stats{text-align:center;margin:0}@media(orientation:landscape)and (min-width:700px)and (min-height:480px){.content:has(.cellar-page){max-width:none;padding:.5rem .75rem}.shell:has(.cellar-page) .topbar{padding-block:.35rem;padding-top:calc(.35rem + env(safe-area-inset-top))}.cellar-page{gap:.5rem}.cellar-page .cellar-head,.cellar-page .legend{display:none}.cellar-toolbar{flex-direction:row;align-items:center;gap:.75rem}.cellar-toolbar .search-bar{flex:0 1 22rem;min-width:13rem}.cellar-toolbar .search-bar input{font-size:1rem;padding-block:.5rem;box-shadow:none}.cellar-toolbar .colour-select{flex:0 0 auto}.cellar-toolbar .add-wine{margin-left:auto}.cellar-toolbar .add-wine{flex:none;align-self:center}.cellar-strip{display:flex;flex-direction:row;align-items:stretch;gap:.6rem;height:3.6rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.cellar-strip.has-selection{overflow-x:hidden}.cellar-strip:empty{display:flex}.cellar-strip>.notice,.cellar-strip>.cellar-stats{align-self:center;margin:0 auto}.cellar-strip.has-selection .results{display:none}.cellar-strip .results{display:flex;flex-wrap:nowrap;gap:.6rem}.cellar-strip .wine-card{flex:0 0 18rem;padding:.3rem .75rem;gap:.6rem;align-items:center}.cellar-strip .wine-card .stack.tight{gap:.05rem!important}.cellar-strip .wine-card .bottle-icon{width:18px;height:42px}.cellar-strip .wine-card .label-thumb{width:34px;height:46px}.cellar-strip .wine-card .name{font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cellar-strip .wine-card .muted,.cellar-strip .wine-card .button{display:none}.cellar-strip .wine-card .where{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cellar-strip .found-banner{flex:1 1 auto;min-width:0;align-items:center;flex-wrap:nowrap;padding:.4rem .9rem}.cellar-strip .found-banner>strong,.cellar-strip .found-banner>.muted{flex:none;white-space:nowrap}.cellar-strip .found-banner ul{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.cellar-strip .found-banner li{white-space:nowrap}.cellar-strip .found-banner>.grow{display:none}.cellar-strip .found-banner>.button,.cellar-strip .found-banner>.icon-button{flex:none}}.found-banner ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.1rem}.found-banner li{color:var(--text);font-size:1.1rem}.racks{display:flex;flex-wrap:wrap;gap:1.25rem 1rem;align-items:flex-start;justify-content:center}.rack{--size: 34px;--gap: 6px;--pad: 10px;--rail: 20px;--dip: 12px;max-width:100%;border-style:solid;border-width:0 9px 9px;border-image:linear-gradient(90deg,var(--oak-800),var(--oak-500) 35%,var(--oak-600) 65%,var(--oak-800)) 1;background:radial-gradient(ellipse 80% 70% at 50% 55%,#50beff8c,#146ed259 45%,#041e4699 80%),linear-gradient(180deg,#06223f,#031428);box-shadow:0 0 40px #2ea8ff47,0 24px 40px #000000b3}.plate{position:relative;display:block;margin:0 -9px;padding:.4rem 1rem .45rem;text-align:center;font-family:var(--font-caps);font-weight:700;text-transform:uppercase;letter-spacing:.24em;font-size:.78rem;color:#ffe6c8d9;text-shadow:0 1px 0 rgba(0,0,0,.8);background:repeating-linear-gradient(180deg,rgba(0,0,0,.12) 0 1px,transparent 1px 5px),linear-gradient(180deg,var(--oak-500),var(--oak-700));box-shadow:0 4px 8px #0009}.plate:after{content:"";position:absolute;left:0;right:0;top:65%;height:32px;pointer-events:none;z-index:3;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='32' viewBox='0 0 150 32'%3E%3Cpath d='M0 8C20 13 32 4 52 9S88 15 108 8S138 6 150 8M54 9c1 6-2 12 1 20M110 8c2 6-1 9 0 14' fill='none' stroke='%231f3d1a' stroke-width='1.3'/%3E%3Cpath transform='translate(10 9) rotate(-30)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23305f28'/%3E%3Cpath transform='translate(24 6) rotate(25)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%233f7a33'/%3E%3Cpath transform='translate(38 11) rotate(-55)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23284f22'/%3E%3Cpath transform='translate(55 7) rotate(10)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23305f28'/%3E%3Cpath transform='translate(70 12) rotate(40)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%233f7a33'/%3E%3Cpath transform='translate(88 8) rotate(-20)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23284f22'/%3E%3Cpath transform='translate(103 11) rotate(55)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23305f28'/%3E%3Cpath transform='translate(118 6) rotate(-35)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%233f7a33'/%3E%3Cpath transform='translate(134 10) rotate(20)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23284f22'/%3E%3Cpath transform='translate(54 20) rotate(80)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23305f28'/%3E%3Cpath transform='translate(57 26) rotate(100)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%233f7a33'/%3E%3Cpath transform='translate(111 19) rotate(75)' d='M0 0q4-5 10 0q-6 5-10 0z' fill='%23284f22'/%3E%3C/svg%3E") left top / 150px 32px repeat-x;opacity:.9}.rack-body{overflow-x:auto;padding:.55rem .5rem .35rem .25rem}.rack-shelf{display:flex;align-items:flex-end;gap:.35rem}.rack-shelf .shelf-label{padding-bottom:calc(var(--rail) - 2px)}.rack-shelf+.rack-shelf{margin-top:.35rem}.shelf-label{flex:none;width:1.9rem;text-align:right;padding-bottom:.55rem;font-family:var(--font-display);font-weight:700;color:#e1f0ffbf;font-size:.85rem;letter-spacing:.05em;text-shadow:0 0 6px rgba(0,0,0,.9)}.slots{position:relative;display:flex;gap:var(--gap);padding:4px var(--pad) calc(var(--rail) - var(--dip) - 2px)}.slots:before,.slots:after{content:"";position:absolute;left:0;right:0;height:var(--rail);z-index:2;pointer-events:none;-webkit-mask:radial-gradient(circle calc(var(--size) * .52) at 50% calc(var(--dip) - var(--size) * .52),transparent 98%,#000 100%) calc(var(--pad) - var(--gap) / 2) 0 / calc(var(--size) + var(--gap)) 100% repeat-x;mask:radial-gradient(circle calc(var(--size) * .52) at 50% calc(var(--dip) - var(--size) * .52),transparent 98%,#000 100%) calc(var(--pad) - var(--gap) / 2) 0 / calc(var(--size) + var(--gap)) 100% repeat-x}.slots:before{bottom:1.5px;background:#ffd6a08c}.slots:after{bottom:0;background:repeating-linear-gradient(90deg,rgba(0,0,0,.12) 0 1px,transparent 1px 7px,rgba(255,255,255,.04) 7px 8px,transparent 8px 13px),linear-gradient(180deg,var(--oak-400),var(--oak-600) 45%,var(--oak-800))}.slot{position:relative;flex:none;z-index:1;width:var(--size);height:var(--size);border-radius:50%;padding:0;border:0;cursor:default;background:transparent;box-shadow:inset 0 0 0 1px #a0d7ff12}.slot.bottle{--tint: #0d120d;--rim: rgba(150, 215, 255, .55);background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.38) 0 5%,transparent 14%),radial-gradient(circle at 50% 50%,#000 0 20%,color-mix(in srgb,var(--tint),#000 40%) 26%,transparent 34%),radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--tint),#fff 8%) 0 62%,var(--tint) 74%,#000 88%,var(--rim) 96%);box-shadow:0 0 0 1px #78c8ff47,0 0 8px #2ea8ff73,0 3px 5px #000000b3}.slot.bottle[data-colour=Red]{--tint: #120708}.slot.bottle[data-colour=White]{--tint: #3b5a33}.slot.bottle[data-colour=Rose]{--tint: #8a5560}.slot.bottle[data-colour=Sparkling]{--tint: #1d2c18;--rim: rgba(236, 227, 178, .75)}.slot.bottle[data-colour=Dessert]{--tint: #6e420f}.slot.bottle[data-colour=Fortified]{--tint: #2a0f07}button.slot{cursor:pointer}button.slot.bottle:hover{filter:brightness(1.6)}.slot:focus-visible{outline:2px solid var(--amber-bright);outline-offset:2px}.racks.dimmed .slot.bottle:not(.lit){filter:brightness(.4) saturate(.4);box-shadow:none}.slot.lit{z-index:3;box-shadow:0 0 0 2px var(--amber-bright),0 0 14px 4px var(--amber-glow),0 0 32px 10px #ff963c59;animation:glow 1.8s ease-in-out infinite alternate}@keyframes glow{0%{box-shadow:0 0 0 2px var(--amber-bright),0 0 10px 3px #ffaa5073,0 0 22px 6px #ff963c33}to{box-shadow:0 0 0 2px var(--amber-bright),0 0 18px 6px #ffaa50b3,0 0 38px 12px #ff963c66}}.picking .slot.free{cursor:pointer;box-shadow:inset 0 0 0 1px #c8ebff73}.picking .slot.free:hover{box-shadow:inset 0 0 0 2px #fff,0 0 10px #ffffff59}.slot.chosen{background:radial-gradient(circle at 40% 35%,#fff2dc,var(--amber) 50%,#8a4d12);box-shadow:0 0 0 2px var(--amber-bright),0 0 16px var(--amber-glow)}.slot.moving{outline:2px dashed var(--amber-bright);outline-offset:2px}.picking .slot.bottle:not(.moving){filter:brightness(.6)}.slot-number{display:flex;gap:var(--gap);padding:.15rem var(--pad) 0;margin-left:2.25rem;font-size:.68rem;color:#e1f0ff8c}.slot-number span{width:var(--size);flex:none;text-align:center}.rack.compact{--size: 20px;--gap: 4px;--pad: 6px;--rail: 13px;--dip: 8px}.rack.compact .plate{font-size:.7rem;padding-block:.25rem}.legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem;font-size:.85rem;color:var(--text-soft)}.legend span{display:inline-flex;align-items:center;gap:.35rem}@media(max-width:520px){.rack{--size: 28px;--gap: 5px;--pad: 8px;--rail: 17px;--dip: 10px}.rack.compact{--size: 20px;--gap: 4px;--pad: 6px;--rail: 13px;--dip: 8px}}.racks[data-fit]{display:grid;grid-template-columns:repeat(var(--fit-columns, 99),max-content);justify-content:center;gap:calc(var(--fit-size) * .5) calc(var(--fit-size) * .45)}.racks[data-fit][data-centred]{display:flex;flex-wrap:wrap;justify-content:center;width:100%;max-width:var(--fit-row-width);margin-inline:auto}.racks[data-fit] .rack{--size: var(--fit-size);--gap: max(2px, calc(var(--fit-size) * .15));--pad: calc(var(--fit-size) * .25);--rail: calc(var(--fit-size) * .56);--dip: calc(var(--fit-size) * .34);border-width:0 5px 5px;box-shadow:0 0 24px #2ea8ff40,0 12px 24px #000000b3}.racks[data-fit] .plate{margin:0 -5px;padding:.2rem .4rem;font-size:clamp(.55rem,calc(var(--fit-size) * .42),.78rem);letter-spacing:.16em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.racks[data-fit] .plate:after{height:calc(var(--fit-size) * .95);background-size:calc(var(--fit-size) * 4.4) calc(var(--fit-size) * .95)}.racks[data-fit] .rack-body{overflow:visible;padding:calc(var(--fit-size) * .3) calc(var(--fit-size) * .25) calc(var(--fit-size) * .15) 0}.racks[data-fit] .rack-shelf{gap:calc(var(--fit-size) * .12)}.racks[data-fit] .rack-shelf+.rack-shelf{margin-top:calc(var(--fit-size) * .12 + var(--fit-shelf-gap, 0px))}.racks[data-fit] .shelf-label{width:max(.9rem,calc(var(--fit-size) * 1.1));font-size:clamp(.5rem,calc(var(--fit-size) * .42),.85rem)}.racks[data-fit] .slot-number{display:none}@media(prefers-reduced-motion:reduce){.slot.lit{animation:none}}.drawer-backdrop{position:fixed;inset:0;z-index:40;background:#000000b8;display:flex;justify-content:flex-end}.drawer{width:min(560px,100%);height:100%;overflow-y:auto;border-radius:0;border-width:0 0 0 1px;padding:1.25rem 1.25rem 2rem;padding-top:calc(1.25rem + env(safe-area-inset-top));background:var(--glass-strong);animation:slide-in .2s ease-out}@keyframes slide-in{0%{transform:translate(30px);opacity:0}}@media(prefers-reduced-motion:reduce){.drawer{animation:none}}.drawer header{display:flex;align-items:flex-start;gap:.75rem}.drawer header h2{font-size:1.65rem}.drawer .label-photo{width:100%;max-height:300px;object-fit:contain;border-radius:4px;background:#0006}.facts{display:grid;grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:0}.facts dt{color:var(--text-faint);font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;padding-top:.3rem}.facts dd{margin:0}.bottle-list{list-style:none;margin:0;padding:0}.bottle-list li{display:flex;align-items:center;gap:.5rem;padding:.45rem 0;border-top:1px solid var(--line)}.bottle-list li:first-child{border-top:0}.badge{display:inline-block;padding:.05rem .6rem;border-radius:999px;font-size:.68rem;font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.12em;background:#ffffff0d;color:var(--text-soft);border:1px solid var(--line-strong)}.badge.Ready{background:#7fd18b1a;color:var(--good);border-color:#7fd18b73}.badge.TooYoung{background:#f0c26b1a;color:var(--warn);border-color:#f0c26b73}.badge.PastBest{background:#ff7b7b1a;color:var(--danger);border-color:#ff7b7b73}.badges{display:flex;flex-wrap:wrap;gap:.3rem}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem}.tile{text-align:center;padding:1rem .75rem}.tile .value{font-family:var(--font-display);font-size:2.5rem;font-weight:500;line-height:1;color:#fff;text-shadow:0 0 18px rgba(46,168,255,.35)}.tile .value.text{font-size:1.6rem;line-height:1.55;white-space:nowrap}.tile .label{font-family:var(--font-caps);font-weight:600;text-transform:uppercase;font-size:.7rem;letter-spacing:.16em;color:var(--text-faint);margin-top:.45rem}.bars{display:flex;flex-direction:column;gap:.5rem}.bar-row{display:grid;grid-template-columns:8rem 1fr 2.5rem;align-items:center;gap:.6rem}.bar-track{height:10px;border-radius:2px;background:#ffffff0f;overflow:hidden}.bar-fill{height:100%;border-radius:2px;box-shadow:0 0 10px #ffffff26}.bar-row .count{text-align:right;font-variant-numeric:tabular-nums}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.wine-list{list-style:none;margin:0;padding:0}.wine-list li+li{border-top:1px solid var(--line)}.wine-list button{display:flex;width:100%;gap:.6rem;align-items:center;text-align:left;padding:.5rem 0;background:none;border:0;cursor:pointer;color:inherit}.wine-list button:hover .name{text-decoration:underline;text-decoration-color:var(--amber-dim)}.number-field{display:flex;align-items:center;gap:.4rem}.number-field input{width:4.5rem;text-align:center}.rack-editor{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.shelf-rows{display:flex;flex-direction:column;gap:.35rem}.shelf-row{display:flex;align-items:center;gap:.5rem}.save-bar{position:sticky;bottom:1rem;z-index:5;padding-block:.6rem;background:var(--glass-strong)}@media(max-width:760px){.save-bar{bottom:calc(4.75rem + env(safe-area-inset-bottom))}}.shelf-row .shelf-name{width:4.5rem;font-family:var(--font-display);font-variant:small-caps;font-variant-numeric:lining-nums;font-weight:600;color:var(--text-soft)}.steps{display:flex;justify-content:center;gap:.6rem;list-style:none;padding:0;margin:0}.steps li{font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;color:var(--text-faint);display:flex;align-items:center;gap:.6rem}.steps li+li:before{content:"";width:1.5rem;height:1px;background:var(--line-strong)}.steps li[aria-current=step]{color:#fff;text-shadow:0 0 10px rgba(46,168,255,.6)}.candidates{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.candidates button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem;border-radius:4px;cursor:pointer;text-align:left;background:#ffffff0a;border:1px solid var(--line-strong);color:var(--text)}.candidates button:hover{border-color:var(--amber);box-shadow:0 0 14px #ffaa5033}.duplicate{font-style:normal;color:var(--text);padding:.85rem;border-radius:4px;border:1px solid var(--amber);background:#ffaa500f}.photo-preview{width:100%;max-height:260px;object-fit:contain;border-radius:4px;background:#0006}.member-list,.invite-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.member{display:flex;align-items:center;gap:.75rem}.thumb{flex:none;width:2.4rem;height:2.4rem;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:1.3rem;font-weight:600;color:#fff;background:radial-gradient(circle at 40% 35%,#1d5f9e,#0a2440);box-shadow:0 0 0 1px #2ea8ff99,0 0 12px #2ea8ff4d}.member-actions{display:flex;flex-wrap:wrap;gap:.25rem;margin:.35rem 0 0 3.15rem}.invite{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.invite-code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.05rem;letter-spacing:.06em}.badge.role-Owner{background:#ffaa5014;color:var(--amber);border-color:#ffaa5073}.badge.role-Sommelier{background:#2ea8ff1a;color:#8fd0ff;border-color:#2ea8ff73}.member-actions select{padding-block:.3rem}.invite-role{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.25rem 1rem}.invite-role .field{display:flex;flex-direction:column;gap:.25rem}.invite-role .field>span{font-size:.85rem;color:var(--text-soft)}.invite-role .hint{margin:0 0 .45rem}.role-guide{margin:0;display:grid;gap:.35rem;padding-top:.75rem;border-top:1px solid var(--line)}.role-guide>div{display:flex;gap:.6rem}.role-guide dt{flex:0 0 6.5rem;font-weight:600}.role-guide dd{margin:0}.item-name{font-weight:600}.auth-page{max-width:440px;margin:7vh auto 0;display:flex;flex-direction:column;gap:1.25rem}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center}.auth-brand .brand{font-size:2rem;letter-spacing:.26em}.auth-brand .faint{font-style:italic}.auth-card h1{font-size:1.7rem}.field-choice{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.35rem 1rem}.check{display:flex;align-items:center;gap:.5rem;cursor:pointer}.check input{width:1.1rem;height:1.1rem;accent-color:var(--amber);padding:0}.check input:disabled{cursor:default}.column-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem 1rem}.column-map label{display:flex;flex-direction:column;gap:.2rem;font-size:.9rem;color:var(--text-soft);min-width:0}.column-map .heading{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--text)}.import-table-wrap{overflow-x:auto;max-height:60vh;border:1px solid var(--line);border-radius:4px}.import-table{width:100%;border-collapse:collapse;font-size:.9rem}.import-table th{position:sticky;top:0;z-index:1;text-align:left;padding:.45rem .6rem;background:var(--glass-strong);font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:var(--text-faint)}.import-table td{padding:.45rem .6rem;border-top:1px solid var(--line);vertical-align:top}.import-table td.num{text-align:right;font-variant-numeric:tabular-nums}.import-table tr.Error td{background:#ff7b7b0d}.import-table .messages{margin:.2rem 0 0;padding:0;list-style:none;font-size:.82rem}.import-table .messages .msg-error{color:var(--danger)}.import-table .messages .msg-warning{color:var(--warn)}.badge.New{background:#7fd18b1a;color:var(--good);border-color:#7fd18b73}.badge.AddToExisting,.badge.SameAsRow{background:#ffaa5014;color:var(--amber);border-color:#ffaa5073}.badge.Error{background:#ff7b7b1a;color:var(--danger);border-color:#ff7b7b73}.welcome{max-width:1040px;margin:0 auto;padding-block:2rem 3rem;gap:2.5rem}.welcome-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem}.welcome-hero .brand{font-size:2rem;letter-spacing:.26em}.welcome-hero h1{margin:0;color:#f4f7fa;font-weight:500;font-size:clamp(1.9rem,5vw,3rem);line-height:1.1;text-shadow:0 2px 16px rgba(0,0,0,.9)}.welcome .lead{max-width:640px;margin:0 auto .6rem;font-size:1.15rem;color:var(--text-soft)}.welcome h3,.welcome p{margin:0}.demo-search{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem;padding:.55rem .8rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:#00000059}.demo-search svg{color:var(--text-faint);flex:none}.demo-search .query{color:#f4f7fa}.demo-search .answer{margin-left:auto;color:var(--amber);font-family:var(--font-caps);letter-spacing:.06em}.welcome-demo .racks{justify-content:center}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.feature{display:flex;flex-direction:column;gap:.5rem}.feature>svg{color:var(--amber);filter:drop-shadow(0 0 6px var(--amber-glow))}.benefits{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem 1.5rem}.benefits>li:last-child{grid-column:1 / -1;padding-top:1rem;border-top:1px solid var(--line)}.benefits li{display:flex;flex-direction:column;gap:.2rem;padding-left:.9rem;border-left:2px solid var(--wine-red-accent)}.benefits strong{color:#f4f7fa}.start-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.start-steps li{display:flex;flex-direction:column;gap:.4rem}.badge.low-stock{margin-left:.45rem;vertical-align:middle;background:#f0c26b1a;color:var(--warn);border-color:#f0c26b73}.low-stock-alert{margin:0;padding:.5rem .8rem;border-radius:4px;color:var(--warn);background:#f0c26b14;border:1px solid rgba(240,194,107,.45)}.colour-select{font-family:var(--font-caps);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;padding:.45rem .6rem;border-radius:999px;background-color:var(--night-800);color:var(--text);cursor:pointer}.colour-select.active{color:var(--amber-bright);background-color:#2a1c0c;border-color:var(--amber)}.colour-select option{font-family:var(--font-body);text-transform:none;letter-spacing:normal;font-size:1rem}.month-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:end;gap:2px;padding-top:1.4rem;border-bottom:1px solid var(--line-strong)}.month{position:relative;display:flex;flex-direction:column;align-items:center;outline:none}.month .column-area{position:relative;width:100%;height:170px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.month .column{width:min(24px,70%);min-height:0;background:var(--amber);border-radius:4px 4px 0 0;box-shadow:0 0 10px var(--amber-glow);transition:filter .12s}.month .cap{font-variant-numeric:tabular-nums;font-size:.85rem;color:var(--text);margin-bottom:.2rem}.month-label{position:absolute;top:calc(100% + .35rem);font-size:.75rem;color:var(--text-faint);text-transform:lowercase;white-space:nowrap}.month-chart+.number-table{margin-top:1.6rem}.month:hover .column,.month:focus-visible .column{filter:brightness(1.25)}.month:focus-visible .column-area{outline:2px solid var(--backlight);outline-offset:2px;border-radius:4px}.month .tip{display:none;position:absolute;bottom:calc(100% - 1rem);left:50%;transform:translate(-50%);z-index:5;padding:.4rem .6rem;border-radius:var(--radius);background:var(--glass-strong);border:1px solid var(--line-strong);font-size:.85rem;line-height:1.35;white-space:nowrap;color:var(--text-soft);pointer-events:none}.month .tip strong{color:var(--text);font-size:1rem}.month:hover .tip,.month:focus-visible .tip{display:block}.month:first-child .tip{left:0;transform:none}.month:last-child .tip{left:auto;right:0;transform:none}.number-table summary{cursor:pointer;color:var(--text-soft);font-size:.9rem}.number-table table{width:100%;border-collapse:collapse;margin-top:.5rem;font-variant-numeric:tabular-nums}.number-table th,.number-table td{padding:.25rem .5rem;text-align:right;border-bottom:1px solid var(--line)}.number-table th:first-child,.number-table td:first-child{text-align:left}.rank-list{margin:0;padding:0 0 0 1.6rem}.rank-list li+li{border-top:1px solid var(--line)}.rank-list li::marker{color:var(--text-faint);font-variant-numeric:tabular-nums}.rank-list button{display:flex;width:100%;gap:.6rem;align-items:center;text-align:left;min-width:0;padding:.45rem 0;background:none;border:0;cursor:pointer;color:inherit}.rank-list button:hover .grow{text-decoration:underline;text-decoration-color:var(--amber-dim)}.rank-list .count{font-variant-numeric:tabular-nums;font-weight:600;min-width:2ch;text-align:right}.stats-page .chips{justify-content:center}.language-switch{min-width:2.75rem;letter-spacing:.12em}.language-corner{position:fixed;top:calc(.75rem + env(safe-area-inset-top));right:.75rem;z-index:30}.story-card{position:relative;overflow:hidden;isolation:isolate}.story-card>:not(.sheet-watermark){position:relative;z-index:1}.sheet-watermark{position:absolute;z-index:0;top:50%;right:-6%;width:min(640px,115%);height:auto;transform:translateY(-50%) rotate(-5deg);opacity:.16;pointer-events:none;-webkit-mask-image:linear-gradient(100deg,transparent 5%,#000 55%);mask-image:linear-gradient(100deg,transparent 5%,#000 55%)}.sheet-head{fill:#ffffff1f}.sheet-line{stroke:#cfe6d4;stroke-width:1}.sheet-letter{fill:#cfe6d4;font:600 12px var(--font-body)}.sheet-text{fill:#e9f2ec;font:14px var(--font-body)}.sheet-title{font-weight:700}.sheet-guess{fill:var(--amber-bright);font-style:italic}.sheet-cursor{fill:none;stroke:#6fd08c;stroke-width:2.5}.story-teaser{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;padding-block:1.6rem}.story-teaser p{max-width:34rem}.story-chapters{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.6rem;max-width:40rem;counter-reset:chapter}.story-chapters li{counter-increment:chapter;padding-left:3rem;position:relative}.story-chapters li:before{content:counter(chapter,upper-roman);position:absolute;left:0;top:.1rem;width:2.2rem;text-align:center;font-family:var(--font-caps);color:var(--amber);font-size:1.2rem;text-shadow:0 0 8px var(--amber-glow)}.story-chapters h2{margin:0 0 .3rem;font-size:1.35rem}@media(max-width:640px){.sheet-watermark{right:-40%;width:150%;opacity:.12}.story-chapters li{padding-left:2.3rem}}.story-teaser .sheet-watermark{top:-.6rem;transform:rotate(-4deg);transform-origin:top right;opacity:.2}.demo-roles{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1rem;text-align:center}.demo-roles p{flex-basis:100%}.demo-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;align-items:start}.demo-wines{padding:.2rem .9rem}.demo-wines button[aria-pressed=true] .name{color:var(--amber-bright)}.demo-wines button[aria-pressed=true] svg{filter:drop-shadow(0 0 6px var(--amber-glow))}.demo-where{margin:0;color:var(--amber);font-family:var(--font-caps);letter-spacing:.06em}.demo-wine h2{font-size:1.4rem}.demo-note{margin:0;padding:.5rem .8rem;border-radius:4px;color:var(--good);background:#7fd18b14;border:1px solid rgba(127,209,139,.45)}.demo-card{scroll-margin-top:1rem}.welcome-links{display:flex;gap:.6rem;justify-content:center;color:var(--text-faint)}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem;max-width:820px;width:100%;margin:0 auto;align-items:stretch}.plan{display:flex;flex-direction:column;gap:.6rem;padding:1.6rem 1.4rem}.plan h2{margin:0;font-size:1.6rem}.plan.featured{border-color:var(--amber-dim);box-shadow:0 0 0 1px var(--amber-dim),0 0 30px #ffaa5026}.plan-price{display:flex;flex-direction:column;gap:.1rem;padding-block:.6rem;border-block:1px solid var(--line)}.plan-price .amount{font-family:var(--font-display);font-size:2.6rem;line-height:1.1;color:#fff}.plan.featured .plan-price .amount{color:var(--amber-bright);text-shadow:0 0 18px var(--amber-glow)}.plan-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.plan-features li{padding-left:1.4rem;position:relative}.plan-features li:before{content:"✓";position:absolute;left:0;color:var(--amber)}.plan-footnote{margin-top:auto;padding-top:.8rem;border-top:1px solid var(--line);color:var(--amber-bright)}.demo-examples{gap:.4rem;align-items:center}
