:root{--bg: #061426;--panel: #0b203a;--panel2: #0f2a4a;--text: #f6f8ff;--muted: #b8c4d6;--border: rgba(255, 255, 255, .12);--oak: #6b4b2a;--oak2: #8a623a;--oak3: #c79a72;--danger: #ff4d4d;--ok: #3ecf8e;--warn: #ffba3b;--font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fs-xs: 11px;--fs-sm: 12px;--fs-code: 12.5px;--fs-md: 13.5px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 28px;--sp0: 2px;--sp1: 4px;--sp2: 6px;--sp3: 8px;--sp4: 10px;--sp5: 12px;--sp6: 14px;--sp7: 18px;--sp8: 24px;--sp9: 32px;--fw-med: 700;--fw-bold: 800;--ls-title: .3px;--ls-caps: .1em;--lh-prose: 1.55;--lh-ui: 1.45;--opacity-disabled: .5;--focus-ring: 0 0 0 3px;--bw-accent: 3px;--r6: 6px;--r8: 8px;--r12: 12px;--r16: 16px;--rpill: 999px;--shadow: 0 14px 36px rgba(0, 0, 0, .4);--bgPanel: rgba(255, 255, 255, .02);--bgInput: rgba(255, 255, 255, .04);--bgCode: rgba(255, 255, 255, .06);--bgHover: rgba(255, 255, 255, .08);--bgOak: rgba(107, 75, 42, .26);--bgOakHover: rgba(107, 75, 42, .36);--bgOakUser: rgba(107, 75, 42, .16);--borderOak: rgba(138, 98, 58, .55);--oakGlow: rgba(138, 98, 58, .35);--shadowOak: rgba(138, 98, 58, .15);--bgDanger: rgba(255, 77, 77, .08);--borderDanger: rgba(255, 77, 77, .35);--bgWarn: rgba(255, 186, 59, .1);--borderWarn: rgba(255, 186, 59, .55);--shadowWarn: rgba(255, 186, 59, .22);--bgCodeBlock: rgba(6, 20, 38, .7)}*{box-sizing:border-box}html,body{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--font)}button,input,select,textarea{font-family:inherit}a{color:var(--oak2)}a:hover{color:var(--oak3)}.panel{background:linear-gradient(180deg,var(--bgPanel),transparent);border:1px solid var(--border);border-radius:var(--r16);box-shadow:var(--shadow)}.panelHeader{padding:var(--sp6) var(--sp7);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);background:var(--bgPanel)}.title{font-weight:var(--fw-bold);letter-spacing:var(--ls-title)}.subtitle{color:var(--muted);font-size:var(--fs-base)}.label{font-size:var(--fs-xs);color:var(--muted);margin-bottom:var(--sp4);text-transform:uppercase;letter-spacing:var(--ls-caps)}.badge{display:flex;gap:var(--sp3);align-items:center;padding:var(--sp2) var(--sp4);border:1px solid var(--border);border-radius:var(--rpill);background:var(--bgInput);color:var(--muted);font-size:var(--fs-sm)}.dot{width:var(--sp3);height:var(--sp3);border-radius:50%;background:var(--oak2);box-shadow:var(--focus-ring) var(--shadowOak)}.dotOk{background:var(--ok)}.dotAlert{background:var(--danger)}.button{padding:var(--sp4) var(--sp6);border-radius:var(--r12);border:1px solid var(--border);background:var(--bgInput);color:var(--text);cursor:pointer;font-size:var(--fs-base)}.button:hover{background:var(--bgHover)}.button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.buttonOak{border-color:var(--borderOak);background:var(--bgOak)}.buttonOak:hover{background:var(--bgOakHover)}.buttonGhost{border-color:transparent;background:transparent}.buttonGhost:hover{background:var(--bgInput)}.buttonSm{padding:var(--sp1) var(--sp4);border-radius:var(--r12);border:1px solid var(--border);background:var(--bgInput);color:var(--text);cursor:pointer;font-size:var(--fs-sm)}.buttonSm:hover{background:var(--bgHover)}.buttonSm:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.select,.input,.inputSmall{border-radius:var(--r12);border:1px solid var(--border);background:var(--bgInput);color:var(--text);outline:none}.select,.input{width:100%;padding:var(--sp4) var(--sp5)}.inputSmall{padding:var(--sp3) var(--sp4)}.select:focus,.input:focus,.inputSmall:focus{border-color:var(--oakGlow);box-shadow:var(--focus-ring) var(--shadowOak)}.errorBox{border:1px solid var(--borderDanger);background:var(--bgDanger);border-radius:var(--r16);padding:var(--sp5)}.errorTitle{color:var(--danger);font-weight:var(--fw-bold);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--ls-caps);margin-bottom:var(--sp2)}.errorText{font-size:var(--fs-sm)}.section{padding:var(--sp6);border-bottom:1px solid var(--border)}.section:last-child{border-bottom:none}.md{font-size:var(--fs-md);line-height:var(--lh-prose)}.md p{margin:0 0 var(--sp4) 0}.md p:last-child{margin-bottom:0}.md h1,.md h2,.md h3{margin:var(--sp5) 0 var(--sp3) 0}.md ul,.md ol{margin:0 0 var(--sp4) 22px}.md code{font-family:var(--mono);font-size:var(--fs-code);padding:var(--sp0) var(--sp2);border-radius:var(--r6);background:var(--bgCode);border:1px solid var(--bgHover)}.md pre{font-family:var(--mono);font-size:var(--fs-code);padding:var(--sp5);border-radius:var(--r16);background:var(--bgCodeBlock);border:1px solid var(--border);overflow:auto}.md pre code{padding:0;border:none;background:transparent}.md blockquote{margin:var(--sp4) 0;padding:var(--sp3) var(--sp5);border-left:var(--bw-accent) solid var(--borderOak);background:var(--bgPanel);border-radius:var(--r12);color:var(--muted)}.md table{border-collapse:collapse;width:100%;margin:var(--sp4) 0;overflow:hidden;border-radius:var(--r12)}.md th,.md td{border:1px solid var(--border);padding:var(--sp3)}.md th{background:var(--bgInput)}.md strong code{color:var(--oak2);font-weight:var(--fw-med)}.empty{color:var(--muted);font-size:var(--fs-base);padding:var(--sp7);border:1px dashed var(--border);border-radius:var(--r16);background:var(--bgPanel)}.row{display:flex;gap:var(--sp4);align-items:center}.col{display:flex;flex-direction:column;gap:var(--sp4)}.muted{color:var(--muted)}.small{font-size:var(--fs-sm)}.oakText{color:var(--oak2)}:root{--cream-bg: #ece6d5;--cream-panel: #faf8f5;--cream-panel2: #f0ede8;--cream-muted: #4e6077;--navy: #061426;--navyText: #f6f8ff;--navyMuted: rgba(246, 248, 255, .6);--navyBorder: rgba(246, 248, 255, .12);--navyBg: rgba(6, 20, 38, .96);--navyOverlay: rgba(6, 20, 38, .62);--navyBorderLight: rgba(6, 20, 38, .22);--navyBgPanel: rgba(6, 20, 38, .02);--navyBgInput: rgba(6, 20, 38, .04);--navyBgCode: rgba(6, 20, 38, .06);--navyBgHover: rgba(6, 20, 38, .07);--navyShadow: 0 4px 24px rgba(6, 20, 38, .08);--navyShadowSm: rgba(6, 20, 38, .12);--navyShadowMd: rgba(6, 20, 38, .16);--bgOakLight: rgba(138, 98, 58, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-base);line-height:1.5}.shell{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:var(--sp7);padding:0 var(--sp7);height:48px;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0}.topbarBrand{font-size:var(--fs-lg);font-weight:600;color:var(--oak3);letter-spacing:.04em;padding-right:var(--sp5);border-right:1px solid var(--border)}.topbarNav{display:flex;align-items:center;gap:var(--sp7)}.navSection{display:flex;align-items:center;gap:var(--sp3)}.navSectionLabel{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding-right:var(--sp2)}.navSectionItems{display:flex;align-items:center;gap:var(--sp1)}.navItem{padding:var(--sp2) var(--sp4);border-radius:var(--r8);border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:var(--fs-sm);font-family:var(--font)}.navItem:hover:not(.navDisabled){background:var(--panel2);color:var(--text)}.navItem.active{background:var(--panel2);color:var(--text);border-bottom:2px solid var(--oak3);border-radius:0}.navItem.navDisabled{opacity:.35;cursor:not-allowed}.content{flex:1;overflow:auto;padding:var(--sp7)}.adminPage{display:flex;flex-direction:column;gap:var(--sp6)}.adminHeader{display:flex;align-items:center;gap:var(--sp5);flex-wrap:wrap}.adminTitle{font-size:var(--fs-xl);font-weight:600;flex:1}.adminActions{display:flex;align-items:center;gap:var(--sp4)}.adminMuted{color:var(--muted);font-size:var(--fs-sm);padding:var(--sp4)}.tableWrap{overflow-x:auto}.productTable{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.productTable th{text-align:left;padding:var(--sp3) var(--sp4);border-bottom:1px solid var(--border);color:var(--muted);font-weight:500;white-space:nowrap}.productTable th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.productTable th.sortable:hover{color:var(--text)}.productTable td{padding:var(--sp2) var(--sp4);border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle;white-space:nowrap}.productTable tr:hover td{background:var(--panel2)}.mono{font-family:var(--mono)}.cellNil{color:var(--muted);opacity:.4}.rowActions{display:flex;gap:var(--sp2);white-space:nowrap}.btn{padding:var(--sp3) var(--sp5);border-radius:var(--r8);border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;font-size:var(--fs-sm);white-space:nowrap;display:flex;align-items:center;gap:var(--sp2)}.btn:hover:not(:disabled){background:var(--panel2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btnOak{border-color:var(--oak2);background:var(--oak);color:var(--text)}.btnOak:hover:not(:disabled){background:var(--oak2)}.iconBtn{padding:var(--sp3)}.btnSm{padding:var(--sp1) var(--sp3);border-radius:var(--r8);border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:var(--fs-xs)}.btnSm:hover{background:var(--panel2);color:var(--text)}.btnDanger{color:var(--danger)}.btnDanger:hover{border-color:var(--danger);background:#ff4d4d1a}.filterInput,.filterSelect{padding:var(--sp3) var(--sp4);border-radius:var(--r8);border:1px solid var(--border);background:var(--panel2);color:var(--text);font-size:var(--fs-sm);font-family:var(--font);outline:none}.filterInput{width:180px}.filterInput:focus,.filterSelect:focus{border-color:var(--oak2)}input.filterInput[type=date]::-webkit-clear-button{display:none}@keyframes spin{to{transform:rotate(360deg)}}.spinning{animation:spin .8s linear infinite}.formPanel{max-width:540px;display:flex;flex-direction:column;gap:var(--sp4)}.formTitle{font-size:var(--fs-lg);font-weight:600;margin-bottom:var(--sp3)}.formSection{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:var(--sp2);margin-top:var(--sp3)}.formRow{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:var(--sp4)}.formLabel{font-size:var(--fs-sm);color:var(--muted)}.formInput{padding:var(--sp3) var(--sp4);border-radius:var(--r8);border:1px solid var(--border);background:var(--panel2);color:var(--text);font-size:var(--fs-sm);font-family:var(--mono);outline:none;width:100%}.formInput:focus{border-color:var(--oak2)}.formInput:read-only{opacity:.6;cursor:not-allowed}.formActions{display:flex;gap:var(--sp4);margin-top:var(--sp5)}.formError{padding:var(--sp3) var(--sp4);border:1px solid var(--danger);border-radius:var(--r8);background:#ff4d4d1a;font-size:var(--fs-sm);color:var(--danger)}.pageError{padding:var(--sp4) var(--sp5);border:1px solid var(--danger);border-radius:var(--r8);background:#ff4d4d1a;font-size:var(--fs-sm);color:var(--danger)}.pager{display:flex;align-items:center;gap:var(--sp4);padding:var(--sp3) 0}.expiryTabs{display:flex;flex-wrap:wrap;gap:var(--sp2)}.btnSm.active{background:var(--panel2);color:var(--text);border-color:var(--oak2)}.chartPanel{border:1px solid var(--border);border-radius:var(--r8);background:var(--panel);padding:var(--sp6)}.chartTitle{font-size:var(--fs-base);font-weight:600;margin-bottom:var(--sp4)}.modalBackdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200}.modalPanel{background:var(--panel);border:1px solid var(--border);border-radius:var(--r8);padding:var(--sp7);width:min(90vw,600px);max-height:85vh;overflow-y:auto}
