:root{color-scheme:dark;--bg:#0b1020;--panel:#111a2c;--panel-soft:#16233b;--border:rgba(255,255,255,0.1);--text:#eff5ff;--muted:#a9b8d1;--accent:#84c3ff;--accent-strong:#2d6fd2;--ok:#83d9a5;--warn:#ffd479;--danger:#ff9d9d}*{box-sizing:border-box}body,html{margin:0;min-height:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(132,195,255,.12),transparent 22rem),radial-gradient(circle at top right,rgba(255,212,121,.08),transparent 24rem),linear-gradient(180deg,#09111f,#0b1020);color:var(--text)}button,input,select,textarea{font:inherit}.shell{width:calc(100vw - 48px);max-width:none;margin:0 auto;padding:32px 0 48px}.shell--login{min-height:100vh;display:grid;place-items:center}.login-card,.metric-card,.panel{border:1px solid var(--border);background:rgba(17,26,44,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:24px;box-shadow:0 18px 45px rgba(0,0,0,.22)}.login-card{width:min(520px,100%);padding:32px}.form-grid,.kanban-card-head,.metrics,.panel-header,.planning-layout,.tabbar,.topbar,.topbar-actions{display:flex;gap:16px}.panel-header,.topbar{justify-content:space-between;align-items:center}.metrics,.planning-layout,.tabbar{margin-top:24px}.metrics{display:grid;grid-template-columns:repeat(4,1fr)}.metric-card{padding:20px}.metric-card span{display:block;color:var(--muted);font-size:14px}.metric-card strong{display:block;margin-top:10px;font-size:34px}.tabbar{flex-wrap:wrap}.ghost-button,.primary-button,.secondary-button,.tab-button{border-radius:999px;border:1px solid var(--border);padding:12px 18px;cursor:pointer;transition:.18s ease}.ghost-button,.secondary-button,.tab-button{background:rgba(22,35,59,.75);color:var(--text)}.primary-button,.tab-button.is-active{background:linear-gradient(135deg,#4f80ff,#2358c5);border-color:rgba(132,195,255,.4);color:white}.ghost-button:hover,.primary-button:hover,.secondary-button:hover,.tab-button:hover{transform:translateY(-1px)}.planning-layout{align-items:start;flex-wrap:wrap}.planning-layout>.panel{flex:1 1 520px;padding:24px}.planning-layout>.panel.panel--kanban{flex-basis:100%}.planning-layout--two>.panel{flex-basis:620px}.login-card h1,.panel h2{margin:0;font-size:30px}.eyebrow{margin:0 0 6px;color:#f4c88c;font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.helper-text,.muted{color:var(--muted)}.banner,.stock-card{margin-top:20px;padding:16px 18px;border-radius:18px;border:1px solid rgba(132,195,255,.24);background:rgba(28,46,76,.72)}.error-text{color:var(--danger)}.form-grid{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--two label.wide{grid-column:1/-1}label{display:flex;flex-direction:column;gap:8px;min-width:0}label span{color:var(--muted);font-size:14px}input,select,textarea{width:100%;border-radius:16px;border:1px solid var(--border);background:rgba(8,13,24,.62);color:var(--text);padding:12px 14px}textarea{min-height:100px;resize:vertical}.kanban-board{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:14px;gap:14px}.kanban-column{border:1px solid var(--border);border-radius:22px;padding:14px;background:rgba(12,19,33,.7)}.kanban-column header{display:flex;align-items:center;justify-content:space-between}.kanban-cards{margin-top:10px;display:flex;flex-direction:column;gap:10px}.kanban-card{width:100%;text-align:left;border:1px solid var(--border);border-radius:16px;padding:12px;background:rgba(17,26,44,.9);color:var(--text);cursor:pointer}.kanban-card.status-completed{background:rgba(131,217,165,.16);border-color:rgba(131,217,165,.42)}.kanban-card.status-confirmed{background:rgba(132,195,255,.16)}.kanban-card.status-cancelled{background:rgba(255,157,157,.12)}.kanban-card p{margin:8px 0 0;font-size:18px;font-weight:700;line-height:1.25}.kanban-card dl{margin:10px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 10px;gap:8px 10px}.kanban-card dt{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.kanban-card dd{margin:2px 0 0;font-size:14px}.kanban-card-head strong{font-size:15px}.kanban-card-head span{font-size:12px}.table-card{margin-top:18px;overflow:auto;border:1px solid var(--border);border-radius:18px}table{width:100%;border-collapse:collapse}td,th{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:top}th{position:-webkit-sticky;position:sticky;top:0;background:rgba(11,16,32,.96);text-align:left;color:var(--muted)}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;border:1px solid var(--border)}.status-pill--ok{background:rgba(131,217,165,.16)}.status-pill--shortage{background:rgba(255,212,121,.14)}.status-pill--incomplete{background:rgba(255,157,157,.14)}.upload-box{margin-top:20px;padding:26px;border-radius:20px;border:1px dashed rgba(132,195,255,.45);background:rgba(28,46,76,.4)}.upload-box input{margin-top:12px}.summary-list{display:grid;grid-gap:14px;gap:14px}.summary-list dt{color:var(--muted);font-size:13px}.summary-list dd{margin:4px 0 0}@media (max-width:1200px){.metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.shell{width:min(100vw - 24px,1600px)}.form-grid,.kanban-card dl,.metrics{grid-template-columns:1fr}}