:root{--bg: #e4e8ef;--bg-deep: #cfd6e2;--ink: #12161f;--muted: #5c6578;--line: #b8c0d0;--surface: #f7f8fb;--surface-strong: #ffffff;--brand: #c45a2c;--brand-strong: #9e3f1a;--brand-soft: rgba(196, 90, 44, .14);--steel: #3a5070;--ok: #2a6b4e;--ok-soft: rgba(42, 107, 78, .14);--warn: #9a6b12;--warn-soft: rgba(154, 107, 18, .14);--danger: #a33a3a;--danger-soft: rgba(163, 58, 58, .12);--shadow: 0 18px 40px rgba(18, 22, 31, .1);--radius: 1rem;--font: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--display: "Outfit", ui-sans-serif, system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:radial-gradient(ellipse 80% 45% at 100% -10%,var(--brand-soft),transparent 55%),radial-gradient(ellipse 60% 40% at -5% 20%,rgba(58,80,112,.12),transparent 50%),linear-gradient(165deg,#eef1f6 0%,var(--bg) 45%,var(--bg-deep) 100%);background-attachment:fixed}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{display:flex;align-items:center;gap:1.25rem;padding:.9rem 1.5rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.brand{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--display);font-weight:800;letter-spacing:-.02em;font-size:1.15rem}.brand-mark{width:1.55rem;height:1.55rem;border-radius:.4rem;background:linear-gradient(135deg,var(--brand) 0%,#e08a4f 55%,var(--steel) 100%);box-shadow:inset 0 0 0 1px #ffffff40;animation:mark-glow 4s var(--ease) infinite alternate}@keyframes mark-glow{0%{filter:saturate(1);transform:rotate(0)}to{filter:saturate(1.15);transform:rotate(6deg)}}.nav{display:flex;gap:.35rem;flex:1;flex-wrap:wrap}.nav a{padding:.45rem .8rem;border-radius:999px;color:var(--muted);font-weight:500;transition:background .2s var(--ease),color .2s var(--ease)}.nav a:hover{color:var(--ink);background:#12161f0d}.nav a.active{color:var(--surface-strong);background:var(--steel)}.stack{width:min(1120px,calc(100% - 2rem));margin:1.5rem auto 2.5rem;animation:rise .45s var(--ease) both}.login-screen{display:grid;min-height:100vh;place-items:center;padding:1.5rem}.login-panel{display:grid;width:min(100%,28rem);gap:1rem}.login-panel h1,.login-panel .lede{margin:0}.eyebrow{margin:0;color:var(--brand-strong);font-family:var(--display);font-size:.85rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{font-family:var(--display);font-size:clamp(1.6rem,2.5vw,2.1rem);letter-spacing:-.03em;margin:0 0 .35rem}.lede{color:var(--muted);margin:0 0 1.25rem;max-width:42rem}.panel{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem}.toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end;margin-bottom:1rem}.field{display:grid;gap:.35rem;min-width:10rem}.field label{font-size:.8rem;font-weight:600;color:var(--muted)}.field input,.field select{border:1px solid var(--line);border-radius:.65rem;padding:.55rem .7rem;background:var(--surface-strong);color:var(--ink)}.field input:focus,.field select:focus{outline:2px solid color-mix(in srgb,var(--brand) 45%,transparent);border-color:color-mix(in srgb,var(--brand) 50%,var(--line))}.btn{border:0;border-radius:.7rem;padding:.55rem 1rem;background:var(--brand);color:#fff;font-weight:600;cursor:pointer;transition:background .2s var(--ease),transform .15s var(--ease)}.btn:hover:not(:disabled){background:var(--brand-strong)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.ghost:hover:not(:disabled){background:#12161f0a}.btn.steel{background:var(--steel)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem .55rem;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}tbody tr{animation:row-in .35s var(--ease) both}tbody tr:nth-child(1){animation-delay:.02s}tbody tr:nth-child(2){animation-delay:.05s}tbody tr:nth-child(3){animation-delay:.08s}tbody tr:nth-child(4){animation-delay:.11s}tbody tr:nth-child(5){animation-delay:.14s}@keyframes row-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}tbody tr:hover{background:#3a50700d}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,IBM Plex Mono,monospace;font-size:.9em}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.02em}.badge:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:currentColor;animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.pager{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.muted{color:var(--muted)}.error{color:var(--danger);margin:.5rem 0 0}.success{color:var(--ok);margin:.5rem 0 0;font-weight:600}.notice{margin:0 0 1rem;padding:.75rem .9rem;border-radius:.75rem;border:1px solid var(--line);background:var(--brand-soft)}.grid-2{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.items-editor{display:grid;gap:.65rem}.item-row{display:grid;grid-template-columns:1.4fr .7fr .9fr auto;gap:.5rem;align-items:end}.meta-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.meta-card{padding:.85rem .95rem;border-radius:.85rem;border:1px solid var(--line);background:var(--surface-strong)}.meta-card span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:.25rem;font-weight:600}.meta-card strong{font-size:1.05rem}.empty{padding:2rem 1rem;text-align:center;color:var(--muted)}.create-panel{animation:slide-panel .4s var(--ease) both}@keyframes slide-panel{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.topbar{flex-wrap:wrap}.item-row{grid-template-columns:1fr 1fr}.item-row .field:first-child{grid-column:1 / -1}}
