@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--flour:#f6f1e7;--dough:#fffcf6;--crust:#3d2b1f;--crust-light:#5a4030;--toast:#8a5a34;--honey:#c97a2b;--jam:#a23e2c;--line:#e6dcc9;--font-display:"Fraunces", Georgia, serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--radius:3px}*{box-sizing:border-box}h1,h2{color:var(--crust)}html,body,#root{height:100%}body{background:linear-gradient(120deg, var(--flour) 0%, #f2e9d8 35%, var(--flour) 60%, #f4ecdc 85%, var(--flour) 100%);color:var(--crust);font-family:var(--font-body);place-items:unset;background-size:240% 240%;min-width:0;margin:0;animation:30s ease-in-out infinite driftBackground;display:block;overflow:hidden}@keyframes driftBackground{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}#root{text-align:left;border:0;width:100%;max-width:none;min-height:100vh;margin:0;padding:0;display:block}.app{width:100vw;height:100vh;display:flex}.login-page{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100vh;display:grid}.login-intro{background:var(--crust);min-height:100%;color:var(--flour);flex-direction:column;padding:48px 10%;animation:.45s ease-out both fadeIn;display:flex}.login-brand{flex-direction:column;line-height:1.1;display:flex}.login-brand__mark{font-family:var(--font-display);font-size:25px;font-weight:600}.login-brand__sub,.login-eyebrow{color:var(--honey);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.login-brand__sub{letter-spacing:normal;text-transform:none;margin-top:3px}.login-copy{max-width:470px;margin:auto 0}.login-copy h1{color:var(--flour);font-family:var(--font-display);margin:14px 0 18px;font-size:clamp(34px,4vw,54px);font-weight:500;line-height:1.08}.login-copy>p:last-child{color:#f6f1e7ad;margin:0;font-size:15px;line-height:1.6}.login-footer{color:#f6f1e76b;margin:0;font-size:12px}.login-panel{place-items:center;padding:40px;display:grid}.login-card{background:var(--dough);border:1px solid var(--line);border-top:2px solid var(--honey);border-radius:var(--radius);width:min(100%,390px);padding:34px;animation:.5s ease-out .1s both riseIn}.login-card__heading{margin-bottom:28px}.login-card__heading h2{font-family:var(--font-display);margin:8px 0;font-size:31px;font-weight:500}.login-card__heading>p:last-child{color:var(--toast);margin:0;font-size:14px}.login-field{margin-bottom:18px;display:block}.login-field span{margin-bottom:7px;font-size:13px;font-weight:600;display:block}.login-field input{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--crust);font:inherit;background:#fffefa;outline:none;padding:11px 12px;font-size:14px}.login-field input::placeholder{color:#a8957f}.login-field input:focus{border-color:var(--honey);box-shadow:0 0 0 3px #c97a2b24}.login-submit{border:1px solid var(--crust);border-radius:var(--radius);background:var(--crust);width:100%;color:var(--flour);cursor:pointer;font:inherit;margin-top:8px;padding:12px 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,transform .15s}.login-submit:hover:not(:disabled){background:var(--crust-light);border-color:var(--crust-light);transform:translateY(-1px)}.login-submit:disabled{cursor:wait;opacity:.7}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--honey);outline-offset:2px}.login-error{border-radius:var(--radius);color:var(--jam);background:#f7e6e1;border:1px solid #a23e2c40;margin:0 0 18px;padding:10px 12px;font-size:13px}.sidebar{background:var(--crust);width:260px;height:100vh;color:var(--flour);flex-direction:column;flex-shrink:0;padding:32px 24px;display:flex}.logo{border-bottom:1px solid #f6f1e726;flex-direction:column;margin-bottom:40px;padding-bottom:20px;line-height:1.1;display:flex}.logo-mark{font-family:var(--font-display);font-size:22px;font-weight:600}.logo-sub{color:var(--honey);margin-top:2px;font-size:12px}.nav{flex-direction:column;flex-grow:1;gap:4px;display:flex}.nav button{text-align:left;color:#f6f1e7b3;font-family:var(--font-body);cursor:pointer;border-radius:0 var(--radius) var(--radius) 0;background:0 0;border:none;border-left:2px solid #0000;padding:10px 14px;font-size:14.5px;font-weight:500;transition:color .15s,background .15s,transform .15s}.nav button:hover{color:var(--flour);background:#f6f1e70f;transform:translate(3px)}.nav button.active{color:var(--flour);border-left-color:var(--honey);background:#f6f1e714}.logout button{color:#f6f1e7bf;width:100%;font-family:var(--font-body);border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #f6f1e733;padding:9px 12px;font-size:13.5px;transition:border-color .15s,color .15s}.logout button:hover{border-color:var(--honey);color:var(--flour);transform:translateY(-1px)}.main{flex-direction:column;flex-grow:1;height:100vh;padding:0 56px 32px;display:flex;overflow-y:auto}.topbar{z-index:2;background:var(--crust);flex-shrink:0;justify-content:space-between;align-items:center;margin:0 -56px 24px;padding:20px 56px 16px;animation:.35s ease-out both fadeIn;display:flex;position:sticky;top:0}.topbar h1{font-family:var(--font-display);color:var(--flour);margin:0 0 4px;font-size:30px;font-weight:600}.topbar p{color:#f6f1e7a6;margin:0;font-size:14.5px}.admin{color:var(--flour);border-radius:var(--radius);background:#f6f1e71a;border:1px solid #f6f1e733;padding:7px 14px;font-size:13.5px;font-weight:500}.error{color:var(--jam);border-radius:var(--radius);background:#f7e6e1;border:1px solid #a23e2c40;margin-bottom:20px;padding:10px 14px;font-size:14px}.products-layout{flex:1;grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);gap:24px;min-height:0;display:grid}.product-form-panel,.product-list-panel{background:var(--dough);border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;animation:.4s ease-out both riseIn}.product-list-panel{animation-delay:80ms}.section-heading{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:16px}.section-heading h2{font-family:var(--font-display);margin:0 0 6px;font-size:20px;font-weight:600}.section-heading p{color:var(--toast);margin:0;font-size:13px}.product-form label{margin-bottom:18px;display:block}.product-form label span{margin-bottom:7px;font-size:13px;font-weight:600;display:block}.product-form input,.product-form select{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--crust);font:inherit;background:#fffefa;outline:none;padding:11px 12px;font-size:14px}.product-form input:focus,.product-form select:focus{border-color:var(--honey);box-shadow:0 0 0 3px #c97a2b24}.quantity-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-actions,.table-actions{gap:8px;display:flex}.button,.table-actions button{border-radius:var(--radius);cursor:pointer;font:inherit;font-size:13px;font-weight:600}.button{border:1px solid var(--crust);padding:10px 14px;transition:background .15s,border-color .15s,transform .15s}.button--primary{background:var(--crust);color:var(--flour)}.button--primary:hover:not(:disabled){background:var(--crust-light);transform:translateY(-1px)}.button--secondary{color:var(--crust);background:0 0}.button:disabled{cursor:wait;opacity:.7}.product-error{margin:-8px 0 18px}.product-list-panel{flex-direction:column;display:flex;overflow:hidden}.product-table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow:auto}.table-actions{justify-content:flex-end}.table-actions button{color:var(--toast);background:0 0;border:0;padding:4px 2px}.table-actions button:hover{color:var(--crust);text-decoration:underline}.table-actions .delete-action{color:var(--jam)}.table-toolbar{justify-content:space-between;align-items:end;gap:12px;margin:-8px 0 12px;display:flex}.date-filter{width:min(100%,260px)}.date-filter span{color:var(--toast);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.date-filter input{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--crust);font:inherit;background:#fffefa;padding:8px 10px;font-size:13px}.clear-filter{color:var(--toast);cursor:pointer;font:inherit;background:0 0;border:0;padding:8px 0;font-size:13px;font-weight:600}.clear-filter:hover{color:var(--crust);text-decoration:underline}.daily-totals{grid-template-columns:.75fr 1.25fr;gap:12px;margin-top:14px;display:grid}.daily-total-card{border:1px solid var(--line);border-top:2px solid var(--honey);border-radius:var(--radius);background:#fffefa;padding:14px 16px}.daily-total-card--accent{background:#c97a2b12}.daily-total-card span{color:var(--toast);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.daily-total-card strong{color:var(--crust);font-family:var(--font-display);font-size:22px;font-weight:600}.summary{background:var(--dough);border:1px solid var(--line);border-top:2px solid var(--honey);border-radius:var(--radius);flex-shrink:0;margin-bottom:32px;animation:.4s ease-out 50ms both riseIn;display:flex;overflow:hidden}.stat{border-right:1px solid var(--line);flex:1;padding:26px 28px}.stat:last-child{border-right:none}.stat--accent{background:#c97a2b0f}.stat-label{color:var(--toast);margin:0 0 8px;font-size:13px}.stat-value{font-family:var(--font-display);color:var(--crust);margin:0;font-size:30px;font-weight:500}.stat-value--warn{color:var(--jam)}.content-grid{flex:1;grid-template-columns:1fr 1fr;gap:24px;min-height:0;display:grid}.panel{background:var(--dough);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:24px 28px;animation:.45s ease-out both riseIn;display:flex;overflow-y:auto}.panel:last-child{animation-delay:80ms}.panel h2{font-family:var(--font-display);border-bottom:1px solid var(--line);margin:0 0 16px;padding-bottom:14px;font-size:18px;font-weight:600}.empty{color:var(--toast);padding:8px 0 20px;font-size:14px}table{border-collapse:collapse;width:100%;min-width:460px;font-size:14px}thead th{text-align:left;color:var(--flour);background:var(--crust-light);white-space:nowrap;padding:9px 12px;font-size:12.5px;font-weight:600}thead th:first-child{border-radius:var(--radius) 0 0 0}thead th:last-child{border-radius:0 var(--radius) 0 0}tbody td{border-bottom:1px solid var(--line);color:var(--crust);vertical-align:middle;padding:11px 12px}tbody tr:last-child td{border-bottom:none}tbody tr:nth-child(2n){background:#c97a2b0a}tbody tr:hover{background:#c97a2b1a}.number-cell,.sales-cell{text-align:right;white-space:nowrap}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=860px){body{overflow:auto}.app{flex-direction:column;height:auto;min-height:100vh}.login-page{grid-template-columns:1fr}.login-intro{min-height:280px;padding:32px 24px}.login-copy{margin:40px 0 0}.login-copy h1{font-size:34px}.login-footer{display:none}.login-panel,.login-card{padding:28px 24px}.sidebar{flex-direction:row;align-items:center;width:100%;height:auto;padding:16px 20px}.logo{border-bottom:none;margin-bottom:0;margin-right:24px;padding-bottom:0}.nav{flex-direction:row}.logout{margin-left:auto}.main{height:auto;padding:0 24px 24px}.topbar{margin:0 -24px 20px;padding:16px 24px 12px}.summary{flex-wrap:wrap}.stat{border-bottom:1px solid var(--line);flex:50%}.content-grid,.products-layout{grid-template-columns:1fr}.product-form-panel,.product-list-panel{padding:20px}.table-toolbar{flex-direction:column;align-items:flex-start}.date-filter{width:100%}.daily-totals{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}body{animation:none}}
