:root{
  --bg:#09090a;
  --panel:#111113;
  --panel-2:#171719;
  --panel-3:#1d1d20;
  --border:#29292d;
  --text:#f3f3f4;
  --muted:#93939b;
  --accent:#d7263d;
  --accent-soft:rgba(215,38,61,.14);
  --success:#63d297;
  --warning:#f1c453;
  --info:#69a7ff;
  --danger:#ff6b76;
  --shadow:0 22px 70px rgba(0,0,0,.34);
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.app-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}
.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--border);background:#0d0d0f;padding:28px 20px 20px;display:flex;flex-direction:column;z-index:20}
.brand-wrap{padding:6px 10px 28px}.brand{font-size:25px;font-weight:1000;letter-spacing:-1.2px}.brand span{color:var(--accent)}.brand-sub{margin-top:3px;font-size:9px;letter-spacing:2.3px;color:var(--muted);font-weight:800}
.nav{display:grid;gap:8px}.nav-item,.quick-filter{border:0;background:transparent;color:#a7a7ae;padding:13px 14px;border-radius:12px;text-align:left;font-weight:760;display:flex;gap:12px;align-items:center}.nav-item:hover,.quick-filter:hover{background:#171719;color:#fff}.nav-item.is-active{background:#1c1c1f;color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.nav-item span{width:20px;text-align:center}
.sidebar-section{margin-top:30px;border-top:1px solid var(--border);padding-top:22px}.section-label{font-size:10px;letter-spacing:1.7px;color:#6f6f76;font-weight:900;padding:0 12px 8px}.quick-filter{width:100%;font-size:13px}
.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:18px 8px 2px;color:#6f6f76;font-size:11px}.sync-line{display:flex;align-items:center;gap:8px}.dot{width:8px;height:8px;border-radius:999px;background:var(--success);box-shadow:0 0 0 4px rgba(99,210,151,.08)}.version{font-size:9px;letter-spacing:1px;margin-top:8px}
.main{min-width:0}.topbar{position:sticky;top:0;z-index:15;background:rgba(9,9,10,.93);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);min-height:92px;padding:20px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.top-left{display:flex;align-items:center;gap:12px}.topbar h1{margin:0;font-size:24px;letter-spacing:-.5px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.primary-btn,.secondary-btn,.ghost-btn,.danger-btn,.icon-btn,.pill{border-radius:12px;border:1px solid var(--border);height:42px;padding:0 15px;background:#171719;color:#f5f5f6;font-weight:800}.primary-btn{background:var(--accent);border-color:var(--accent);box-shadow:0 8px 24px rgba(215,38,61,.17)}.secondary-btn:hover,.ghost-btn:hover,.icon-btn:hover{background:#202023}.danger-btn{color:#ff9ba3;background:rgba(255,107,118,.08);border-color:rgba(255,107,118,.25)}.pill{height:34px;border-radius:999px;font-size:10px;letter-spacing:.8px;color:#a7efc8;background:rgba(99,210,151,.08);border-color:rgba(99,210,151,.25)}.icon-btn{width:42px;padding:0}.mobile-only{display:none}
.content{padding:26px 30px 50px;max-width:1800px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:12px;margin-bottom:16px}.stat-card{background:linear-gradient(180deg,#171719,#121214);border:1px solid var(--border);border-radius:16px;padding:17px 18px}.stat-label{font-size:10px;letter-spacing:1.3px;color:#7e7e86;font-weight:900}.stat-value{margin-top:8px;font-size:26px;font-weight:950;letter-spacing:-1px}.stat-help{margin-top:4px;color:#777780;font-size:11px}
.toolbar-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:12px;margin-bottom:18px}.toolbar-row{display:flex;gap:12px;align-items:center}.search-wrap{min-width:260px;flex:1}.search-wrap input,.filters select,.field input,.field select,.field textarea{width:100%;background:#0f0f11;border:1px solid var(--border);color:#eee;border-radius:10px;padding:11px 12px;outline:none}.search-wrap input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#4a4a50;box-shadow:0 0 0 3px rgba(255,255,255,.03)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters select{width:auto;min-width:140px;color:#b8b8bf}.ghost-btn{height:40px;background:#111113}
.view-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.view-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:15px}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#d58a94;font-weight:950}.view-head h2{margin:4px 0 0;font-size:25px;letter-spacing:-.6px}.view-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.head-actions{display:flex;gap:8px;align-items:center}
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(190px,1fr));gap:9px;overflow-x:auto;padding-bottom:8px}.day-column{background:#0d0d0f;border:1px solid #202024;border-radius:15px;min-height:520px;padding:11px;display:flex;flex-direction:column;transition:.18s ease}.day-column.today{border-color:rgba(215,38,61,.55);box-shadow:inset 0 0 0 1px rgba(215,38,61,.08)}.day-column.drag-over{border-color:var(--accent);background:rgba(215,38,61,.055)}.day-head{display:flex;align-items:baseline;justify-content:space-between;padding:2px 3px 10px}.day-title{font-weight:950;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.day-count{font-size:11px;color:#777780}.day-list{display:grid;gap:9px;align-content:start;flex:1}.empty-state{display:grid;place-items:center;text-align:center;color:#65656d;border:1px dashed #2d2d31;border-radius:13px;min-height:120px;padding:16px;font-size:12px}.day-add{margin-top:10px;border:0;background:transparent;color:#8d8d95;text-align:left;padding:9px 6px;font-weight:800}
.piece-card{background:linear-gradient(180deg,#18181b,#131315);border:1px solid #2b2b2f;border-radius:13px;padding:12px;cursor:grab;position:relative;overflow:hidden}.piece-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.8}.piece-card.dragging{opacity:.42}.piece-card:hover{border-color:#3a3a3f;transform:translateY(-1px)}.piece-card-top{display:flex;justify-content:space-between;align-items:start;gap:8px}.badges{display:flex;gap:6px;flex-wrap:wrap}.badge{font-size:9px;padding:4px 6px;border-radius:999px;border:1px solid #34343a;color:#bdbdc3;font-weight:900;letter-spacing:.4px;background:#101012}.badge.account{color:#f3c4cb;border-color:rgba(215,38,61,.24);background:rgba(215,38,61,.07)}.card-menu{border:0;background:transparent;color:#707078;font-weight:900;padding:2px 3px}.piece-time{margin-top:10px;font-size:19px;font-weight:950;letter-spacing:-.5px}.piece-title{margin:5px 0 0;font-size:14px;line-height:1.28}.piece-meta,.piece-people{margin-top:8px;color:#8a8a92;font-size:11px;line-height:1.45}.piece-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px}.status-chip{font-size:9px;border-radius:999px;padding:5px 7px;font-weight:900;letter-spacing:.3px}.status-chip.ready{color:#9ce7bd;background:rgba(99,210,151,.09)}.status-chip.review{color:#f4d47e;background:rgba(241,196,83,.09)}.status-chip.work{color:#95c3ff;background:rgba(105,167,255,.10)}.status-chip.risk{color:#ff9fa7;background:rgba(255,107,118,.10)}.status-chip.published{color:#bbb;background:#232327}.move-btn{border:0;background:transparent;color:#8e8e96;font-size:10px;font-weight:800;padding:4px}
.unscheduled-zone{margin-top:14px;border:1px dashed rgba(215,38,61,.42);background:rgba(215,38,61,.04);border-radius:15px;padding:14px}.unscheduled-zone.drag-over{background:rgba(215,38,61,.10);border-color:var(--accent)}.unscheduled-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.unscheduled-head h3{margin:0;font-size:15px}.unscheduled-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:9px}
.today-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:16px}.timeline{display:grid;gap:10px}.timeline-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;align-items:start}.timeline-time{font-size:17px;font-weight:950;color:#cfcfd3;padding-top:12px}.timeline-row .piece-card{cursor:default}.right-stack{display:grid;gap:16px;align-content:start}.mini-panel{background:#101012;border:1px solid var(--border);border-radius:15px;padding:15px}.mini-panel h3{margin:0 0 12px;font-size:14px}.risk-item,.history-item{padding:10px 0;border-top:1px solid #202024;font-size:12px;color:#aaaab1}.risk-item:first-of-type,.history-item:first-of-type{border-top:0}.risk-item strong{color:#fff}.risk-item span{display:block;color:#7f7f87;margin-top:4px}
.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.month-weekday{font-size:10px;color:#777780;font-weight:900;text-transform:uppercase;padding:4px}.month-day{min-height:110px;border:1px solid #222226;border-radius:12px;padding:9px;background:#0e0e10}.month-day.out{opacity:.32}.month-day.today{border-color:rgba(215,38,61,.55)}.month-number{font-size:12px;font-weight:900}.month-dots{display:grid;gap:5px;margin-top:8px}.month-event{font-size:9px;padding:5px 6px;border-radius:7px;background:#1b1b1e;color:#b7b7be;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:2px solid var(--accent)}
.table-wrap{overflow:auto}.history-table{width:100%;border-collapse:collapse;min-width:760px}.history-table th,.history-table td{border-bottom:1px solid #222226;padding:11px 9px;text-align:left;font-size:12px}.history-table th{color:#7f7f87;font-size:10px;text-transform:uppercase;letter-spacing:.7px}.history-table td{color:#b8b8bf}.history-table td strong{color:#fff}
.dialog{border:0;padding:0;background:transparent;color:var(--text);width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 28px)}.dialog::backdrop{background:rgba(0,0,0,.74);backdrop-filter:blur(5px)}.dialog-card{background:#111113;border:1px solid #2f2f33;border-radius:18px;box-shadow:0 30px 100px rgba(0,0,0,.65);padding:20px;overflow:auto;max-height:calc(100vh - 28px)}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px}.dialog-head h2{margin:4px 0 0;font-size:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:7px}.field span{font-size:10px;letter-spacing:.9px;color:#8d8d95;text-transform:uppercase;font-weight:900}.field textarea{resize:vertical}.span-2{grid-column:1/-1}.dialog-actions{display:flex;gap:10px;align-items:center;margin-top:18px}.spacer{flex:1}.hidden{display:none!important}.checkbox-row{display:flex;align-items:center;gap:10px;color:#b8b8bf;font-size:13px;margin-top:14px}
.toast{position:fixed;right:24px;bottom:24px;background:#1a1a1d;border:1px solid #323237;color:#fff;padding:12px 14px;border-radius:12px;box-shadow:var(--shadow);z-index:99;font-size:12px;animation:toastIn .18s ease}.toast.error{border-color:rgba(255,107,118,.35)}@keyframes toastIn{from{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}
.high-contrast{--panel:#151517;--panel-2:#1d1d20;--border:#3a3a40;--muted:#a6a6ad}
@media (max-width:1200px){.app-shell{grid-template-columns:220px 1fr}.stats-grid{grid-template-columns:repeat(3,1fr)}.toolbar-row{align-items:stretch;flex-direction:column}.filters select{flex:1;min-width:120px}.today-grid{grid-template-columns:1fr}}
@media (max-width:860px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;width:270px;transform:translateX(-102%);transition:.2s ease;box-shadow:0 20px 70px rgba(0,0,0,.65)}.sidebar.open{transform:translateX(0)}.mobile-only{display:inline-grid;place-items:center}.topbar{padding:14px 16px;align-items:flex-start}.topbar h1{font-size:20px}.topbar p{display:none}.top-actions{gap:7px}.top-actions .pill,.top-actions .secondary-btn{display:none}.content{padding:16px}.stats-grid{grid-template-columns:repeat(2,1fr)}.toolbar-card{padding:10px}.filters{display:grid;grid-template-columns:1fr 1fr}.filters select,.ghost-btn{width:100%}.week-grid{grid-template-columns:repeat(7,260px)}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.month-day{min-height:80px}.month-event{display:none}}
@media (max-width:520px){.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:14px}.stat-value{font-size:22px}.filters{grid-template-columns:1fr}.view-card{padding:13px}.timeline-row{grid-template-columns:55px 1fr}.month-grid{gap:4px}.month-day{padding:6px;min-height:60px}.dialog-card{padding:16px}.top-actions .icon-btn{display:none}}
