@charset "UTF-8";:root{--tan: #a98259;--tan-600: #8d6942;--tan-700: #6f5233;--tan-200: #dcc7ad;--tan-100: #efe4d6;--cream: #f6efe6;--paper: #fffaf4;--wine: #6b1510;--wine-700: #4f0f0b;--wine-100: #f3dcd6;--ink: #2e1a12;--muted: #7a6455;--line: #e7dacb;--line-strong: #d6c4b0;--gold: #c88a1e;--ok: #3d7a4a;--ok-100: #e1eee3;--warn: #b26b0e;--warn-100: #f7ead2;--danger: #a8281f;--danger-100: #f6dedb;--font-display: "Fredoka", "Figtree", system-ui, sans-serif;--font-body: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--shadow-sm: 0 1px 2px rgb(46 26 18 / .06), 0 2px 8px rgb(46 26 18 / .05);--shadow: 0 6px 24px rgb(46 26 18 / .1);--ease: cubic-bezier(.2, .8, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--cream);color:var(--ink);font:400 15px/1.5 var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:1.15;margin:0;letter-spacing:-.005em}p{margin:0}a{color:var(--wine)}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2.5px solid var(--wine);outline-offset:2px;border-radius:6px}::selection{background:var(--wine-100)}body.shop-bg{background:#fff}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.num{font-variant-numeric:tabular-nums}.row{display:flex;align-items:center;gap:8px}.spacer{flex:1}.stack{display:grid;gap:12px}.btn{--bg: var(--paper);--fg: var(--ink);--bd: var(--line-strong);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;background:var(--bg);color:var(--fg);border:1.5px solid var(--bd);font:600 14.5px/1 var(--font-body);text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .12s var(--ease),background .15s,border-color .15s,box-shadow .15s}.btn:hover:not(:disabled){border-color:var(--tan-600)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{--bg: var(--wine);--fg: var(--paper);--bd: var(--wine)}.btn--primary:hover:not(:disabled){--bg: var(--wine-700);border-color:var(--wine-700)}.btn--tan{--bg: var(--tan);--fg: #fff;--bd: var(--tan)}.btn--tan:hover:not(:disabled){--bg: var(--tan-600);border-color:var(--tan-600)}.btn--ghost{--bg: transparent;--bd: transparent}.btn--ghost:hover:not(:disabled){--bg: var(--tan-100);border-color:transparent}.btn--danger{--bg: var(--paper);--fg: var(--danger);--bd: #e4bdb8}.btn--danger:hover:not(:disabled){--bg: var(--danger-100);border-color:var(--danger)}.btn--sm{min-height:34px;padding:0 12px;font-size:13.5px}.btn--lg{min-height:54px;padding:0 24px;font-size:16px}.btn--block{width:100%}.btn--icon{padding:0;width:42px}.btn--icon.btn--sm{width:34px}.field{display:grid;gap:6px;min-width:0}.field>span,.field>label{font-size:13px;font-weight:600;color:var(--muted)}.field small{color:var(--muted);font-size:12.5px}.input,.select,.textarea{width:100%;min-height:46px;padding:10px 14px;background:var(--paper);border:1.5px solid var(--line-strong);border-radius:12px;font-size:16px;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--tan-600);box-shadow:0 0 0 4px #a9825933}.input::placeholder,.select::placeholder,.textarea::placeholder{color:#b3a191}.input.is-invalid,.select.is-invalid,.textarea.is-invalid{border-color:var(--danger)}.textarea{min-height:88px;resize:vertical}.select{appearance:none;padding-right:36px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%237a6455' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.check{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:500}.check input{width:20px;height:20px;accent-color:var(--wine)}.switch{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:500}.switch input{position:absolute;opacity:0}.switch i{width:42px;height:24px;border-radius:99px;background:var(--line-strong);position:relative;transition:background .2s;flex:none}.switch i:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s var(--ease);box-shadow:var(--shadow-sm)}.switch input:checked+i{background:var(--ok)}.switch input:checked+i:after{transform:translate(18px)}.switch input:focus-visible+i{outline:2.5px solid var(--wine);outline-offset:2px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--tan-100);color:var(--tan-700);white-space:nowrap}.chip--wine{background:var(--wine-100);color:var(--wine)}.chip--ok{background:var(--ok-100);color:var(--ok)}.chip--warn{background:var(--warn-100);color:var(--warn)}.chip--danger{background:var(--danger-100);color:var(--danger)}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--paper);position:sticky;top:0}.table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover td{background:#fbf4ea}.table .r{text-align:right}.empty{padding:48px 16px;text-align:center;color:var(--muted)}.empty app-icon{color:var(--tan);margin-bottom:8px}.skeleton{background:linear-gradient(90deg,var(--tan-100) 0%,#f7efe5 50%,var(--tan-100) 100%);background-size:200% 100%;animation:shimmer 1.3s infinite linear;border-radius:12px}@keyframes shimmer{to{background-position:-200% 0}}.spinner{width:18px;height:18px;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;inset:0;background:#2e1a1273;z-index:200;display:grid;place-items:center;padding:16px;animation:fade .15s ease-out}.modal{background:var(--paper);border-radius:var(--radius-lg);width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:24px;box-shadow:var(--shadow);animation:rise .2s var(--ease)}.modal h2{font-size:22px;margin-bottom:16px}.modal__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;flex-wrap:wrap}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(12px);opacity:0}}.print-area{display:none}@media print{@page{margin:0}body{background:#fff}body.printing>*:not(.print-root){display:none!important}body.printing .print-root,body.printing .print-area{display:block!important}}.page{padding:20px 16px 48px;max-width:1280px;margin:0 auto;display:grid;gap:16px}@media(min-width:900px){.page{padding:28px 32px 64px;gap:20px}}.page-head{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.page-head h1{font-size:28px;color:var(--ink)}.page-head p{color:var(--muted);margin-top:2px}.page-head .actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--muted);text-decoration:none;font-weight:600;font-size:13.5px}.back-link:hover{color:var(--wine)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.toolbar .input,.toolbar .select{min-height:40px;font-size:14.5px;width:auto}.toolbar .grow{flex:1 1 220px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.panel>h2,.panel>header h2{font-size:18px}.panel--flush{padding:0;overflow:hidden}.panel-head{display:flex;align-items:center;gap:8px;margin-bottom:14px}.panel-head h2{font-size:18px}.panel-head .spacer{flex:1}.kpis{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:1000px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}.kpi{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.kpi .kpi__label{font-size:12.5px;font-weight:600;color:var(--muted)}.kpi .kpi__value{font:500 26px/1.15 var(--font-display);margin-top:6px;font-variant-numeric:tabular-nums}.kpi .kpi__foot{font-size:12.5px;color:var(--muted);margin-top:4px}.form-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-grid .full{grid-column:1/-1}.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.tabs::-webkit-scrollbar{display:none}.tabs button,.tabs a{border:0;background:none;padding:10px 14px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:2.5px solid transparent;margin-bottom:-1px;text-decoration:none;display:inline-flex;gap:6px;align-items:center}.tabs button.active,.tabs a.active{color:var(--wine);border-bottom-color:var(--wine)}.tabs button .count,.tabs a .count{background:var(--tan-100);color:var(--tan-700);border-radius:99px;padding:0 7px;font-size:12px}.pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px;color:var(--muted);font-size:13.5px}.thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;background:var(--tan-100);flex:none}
