:root{color:#211e1b;font-synthesis:none;text-rendering:optimizelegibility;--ink:#211e1b;--muted:#777069;--paper:#f4f0e8;--surface:#fbf9f5;--line:#ded8ce;--wine:#661b2b;--wine-deep:#47101d;--sage:#6f7865;--serif:Iowan Old Style, Baskerville, "Times New Roman", serif;background:#f4f0e8;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #9f5d68}.app-shell{grid-template-columns:236px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f9f4ec;z-index:30;background:#211c1b;flex-direction:column;width:236px;min-height:100vh;padding:31px 20px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:.16em;align-items:center;gap:11px;padding:0 10px 32px;font-size:10px;display:flex}.brand-mark{color:#d4b2a7;border:1px solid #8c7370;border-radius:50%;place-items:center;width:37px;height:37px;display:grid}.brand div:last-child{flex-direction:column;line-height:1.25;display:flex}.brand strong{font-family:var(--serif);letter-spacing:.12em;font-size:17px;font-weight:500}.sidebar nav{gap:6px;display:grid}.nav-item{color:#aaa19c;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;min-height:43px;padding:0 11px;display:flex}.nav-item:hover{color:#fff;background:#2d2826}.nav-item--active{color:#fff;background:#3b292b;box-shadow:inset 2px 0 #b37c80}.nav-item span{text-align:center;background:#4f4240;border-radius:999px;min-width:25px;margin-left:auto;padding:2px 7px;font-size:11px}.nav-item em{color:#8e8580;letter-spacing:.12em;text-transform:uppercase;margin-left:auto;font-size:9px;font-style:normal}.sidebar-note{color:#c8a7a0;background:#292422;border:1px solid #453d3a;border-radius:8px;gap:11px;margin-top:auto;padding:14px;display:flex}.sidebar-note div,.sidebar-footer div{flex-direction:column;gap:3px;display:flex}.sidebar-note strong{color:#f1e9e2;font-size:12px;font-weight:600}.sidebar-note span,.sidebar-footer span{color:#8e8580;font-size:10px}.sidebar-footer{border-top:1px solid #393331;align-items:center;gap:10px;margin-top:16px;padding:18px 7px 0;display:flex}.sidebar-footer strong{font-size:11px;font-weight:500}.avatar{width:31px;height:31px;font-family:var(--serif);background:#6d353d;border-radius:50%;place-items:center;display:grid;color:#f8eeea!important;font-size:11px!important}.nav-close{display:none}main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f4f0e8eb;align-items:center;gap:20px;height:76px;padding:0 clamp(24px,4vw,58px);display:flex;position:sticky;top:0}.search-wrap{color:#938b84;flex:1;align-items:center;gap:10px;max-width:570px;display:flex}.search-wrap input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.search-wrap kbd{color:#999189;white-space:nowrap;background:#f9f6f0;border:1px solid #d3cdc3;border-bottom-color:#bdb6ab;border-radius:5px;padding:3px 7px;font:10px ui-monospace,monospace}.primary-button,.secondary-button{background:var(--wine);color:#fff;cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 17px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 1px 1px #3f121b1a}.primary-button:hover{background:var(--wine-deep)}.primary-button:disabled{opacity:.55;cursor:wait}.secondary-button{color:var(--wine);box-shadow:none;background:0 0;border:1px solid #bca7a4}.mobile-menu{background:0 0;border:0;padding:7px;display:none}.content{max-width:1500px;margin:0 auto;padding:54px clamp(24px,4vw,58px) 80px}.page-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.eyebrow{letter-spacing:.2em;margin:0 0 8px;font-weight:700;color:#8e6f6d!important;font-size:9px!important}.page-heading h1,.section-title h2,.wine-form h2{font-family:var(--serif);letter-spacing:-.02em;font-weight:400}.page-heading h1{margin:0 0 7px;font-size:clamp(34px,4vw,48px);line-height:1}.page-heading p{color:var(--muted);margin:0;font-size:13px}.year-chip{border:1px solid var(--line);color:#665f58;background:#f9f6f0;border-radius:6px;align-items:center;gap:18px;min-height:36px;padding:0 12px;font-size:12px;display:flex}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:36px 0 56px;display:grid}.stats-grid article{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:flex-start;gap:17px;min-height:118px;padding:22px;display:flex}.stat-icon{color:#76685e;background:#e8e1d6;border-radius:6px;flex:none;place-items:center;width:37px;height:37px;display:grid}.stat-icon--wine{color:var(--wine);background:#eee0e1}.stat-icon--ready{color:#637058;background:#e3e6df}.stats-grid article div{display:grid}.stats-grid p{color:var(--muted);margin:1px 0 5px;font-size:11px}.stats-grid strong{font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.05}.stats-grid small{color:#9a938b;margin-top:8px;font-size:9px}.section-title{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;display:flex}.section-title h2{margin:0;font-size:27px}.select-wrap{border:1px solid var(--line);color:#6c655f;background:#f9f6f0;border-radius:6px;align-items:center;gap:8px;height:36px;padding:0 10px;display:flex}.select-wrap select{color:inherit;cursor:pointer;background:0 0;border:0;outline:0;font-size:11px}.wine-list{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.list-header,.wine-row{grid-template-columns:minmax(260px,2.1fr) minmax(130px,1fr) minmax(120px,.85fr) minmax(95px,.7fr) 70px 72px;align-items:center;gap:15px;display:grid}.list-header{border-bottom:1px solid var(--line);color:#98918a;text-transform:uppercase;letter-spacing:.12em;min-height:42px;padding:0 18px;font-size:9px;font-weight:700}.wine-row{color:#655f58;border-bottom:1px solid #e8e2d8;min-height:75px;padding:12px 18px;font-size:11px}.wine-row:last-child{border-bottom:0}.wine-row:hover{background:#f8f4ed}.wine-identity{align-items:center;gap:13px;min-width:0;display:flex}.bottle-symbol{width:37px;height:45px;color:var(--wine);background:#eadedc;border-radius:18px 18px 7px 7px;flex:none;place-items:center;display:grid}.type-white{color:#8c7c42;background:#eee8d6}.type-rosé{color:#ad6871;background:#f1dfdf}.type-sparkling{color:#877546;background:#e7e3d4}.type-dessert,.type-fortified{color:#8a5f37;background:#e8ded2}.wine-identity div{gap:4px;min-width:0;display:grid}.wine-identity strong{color:var(--ink);font-family:var(--serif);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.wine-identity span:last-child{color:#89817a;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.cell-with-icon{align-items:center;gap:6px;display:flex}.cell-with-icon svg{color:#9a9188;flex:none}.window-pill{color:#66705e;background:#e6e9e1;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:600;display:inline-flex}.quantity{align-items:center;gap:10px;display:flex}.quantity button,.row-actions button{cursor:pointer;color:#7f7770;background:#f7f3ec;border:1px solid #d9d2c8;border-radius:5px;place-items:center;width:26px;height:26px;display:grid}.quantity button:disabled{opacity:.4}.quantity strong{color:var(--ink)}.row-actions{opacity:.2;justify-content:flex-end;gap:5px;transition:opacity .15s;display:flex}.wine-row:hover .row-actions,.row-actions:focus-within{opacity:1}.row-actions button:last-child:hover{color:#9a2539;border-color:#caa5aa}.empty-state{text-align:center;border:1px dashed #cfc7bc;border-radius:8px;align-content:center;justify-items:center;min-height:320px;padding:35px;display:grid}.empty-state>span{width:56px;height:56px;color:var(--wine);background:#e9e1d7;border-radius:50%;place-items:center;display:grid}.empty-state h3{font-family:var(--serif);margin:17px 0 6px;font-size:21px;font-weight:500}.empty-state p{color:var(--muted);margin:0 0 20px;font-size:12px}.loading-state{align-content:center;gap:12px;min-height:270px;display:grid}.loading-state span{background:#ebe5dc;border-radius:7px;height:58px;animation:1.2s infinite alternate pulse;display:block}.loading-state span:nth-child(2){animation-delay:.15s}.loading-state span:nth-child(3){animation-delay:.3s}@keyframes pulse{to{opacity:.45}}.error-banner{color:#7f2837;background:#f5e8e9;border:1px solid #d6aeb3;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:11px 14px;font-size:12px;display:flex}.error-banner button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.modal-layer{z-index:50;justify-content:flex-end;display:flex;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1813128a;border:0;position:absolute;inset:0}.wine-form{background:var(--surface);flex-direction:column;width:min(630px,100%);height:100%;animation:.22s ease-out slide-in;display:flex;position:relative;box-shadow:-18px 0 50px #281b182e}@keyframes slide-in{0%{opacity:.5;transform:translate(30px)}}.form-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:97px;padding:25px 30px 19px;display:flex}.form-header h2{margin:0;font-size:29px}.form-header button{cursor:pointer;color:#77706a;background:0 0;border:0;padding:7px}.form-body{padding:27px 30px 40px;overflow-y:auto}.form-grid{grid-template-columns:1fr 1fr;gap:18px 16px;display:grid}.form-grid--three{grid-template-columns:repeat(3,1fr)}.form-grid label{gap:7px;min-width:0;display:grid}.form-grid label>span{color:#6f6861;font-size:10px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #d7d0c6;border-radius:5px;min-height:40px;padding:9px 11px;font-size:12px}.form-grid textarea{resize:vertical}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#b1aaa2}.form-wide{grid-column:1/-1}.form-body hr{border:0;border-top:1px solid var(--line);margin:25px 0}.money-input{position:relative}.money-input>span{color:#8f8880;font-size:12px;position:absolute;top:11px;left:11px}.money-input input{padding-left:25px}.form-footer{border-top:1px solid var(--line);background:#f7f3ed;justify-content:flex-end;align-items:center;gap:12px;min-height:76px;margin-top:auto;padding:17px 30px;display:flex}.text-button{color:#746d66;cursor:pointer;background:0 0;border:0;padding:10px 13px;font-size:12px}.scrim{display:none}@media (width<=1050px){.list-header,.wine-row{grid-template-columns:minmax(260px,2fr) 1fr 1fr 62px 65px}.list-header>:nth-child(4),.wine-row>:nth-child(4){display:none}.form-grid--three{grid-template-columns:1fr 1fr}}@media (width<=790px){.app-shell{display:block}.sidebar{transition:transform .2s;transform:translate(-100%);box-shadow:10px 0 40px #140f0e4d}.sidebar--open{transform:translate(0)}.nav-close{color:#b8afa9;background:0 0;border:0;place-items:center;padding:7px;display:grid;position:absolute;top:24px;right:12px}.scrim{z-index:20;background:#1612117a;border:0;display:block;position:fixed;inset:0}main{display:block}.mobile-menu{place-items:center;display:grid}.topbar{gap:10px;height:66px;padding:0 17px}.search-wrap kbd{display:none}.topbar .primary-button{width:40px;padding:0;font-size:0}.topbar .primary-button svg{width:19px}.content{padding:36px 18px 60px}.stats-grid{grid-template-columns:1fr;margin:28px 0 46px}.stats-grid article{min-height:100px}.year-chip,.list-header{display:none}.wine-list{background:0 0;border:0;gap:10px;display:grid;overflow:visible}.wine-row{background:var(--surface);border-radius:8px;grid-template-columns:1fr auto;gap:12px;padding:14px;border:1px solid var(--line)!important}.wine-row>:nth-child(2),.wine-row>:nth-child(3),.wine-row>:nth-child(4){display:none}.quantity{grid-column:1;padding-left:50px}.quantity:before{content:"Bottles";color:#9b938b;font-size:9px}.row-actions{opacity:1;flex-direction:column;grid-area:1/2/span 2;align-self:center}}@media (width<=540px){.page-heading h1{font-size:37px}.section-title{align-items:start}.form-grid,.form-grid--three{grid-template-columns:1fr}.form-wide{grid-column:auto}.form-header,.form-body,.form-footer{padding-left:20px;padding-right:20px}.wine-form{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
