:root{--bg-900: #070b16;--bg-800: #0b1120;--bg-700: #121a2b;--stroke-500: #24304a;--text-100: #f5f7ff;--text-300: #bac3d9;--text-500: #7e8aa8;--accent-indigo: #6d63ff;--accent-violet: #8b5cff;--accent-cyan: #2fcbff;--accent-mint: #34d399;--error: #f43f5e;--grad-primary: linear-gradient(90deg, #6d63ff 0%, #8b5cff 40%, #2fcbff 100%);--grad-success: linear-gradient(90deg, #2fcbff 0%, #34d399 100%)}*{box-sizing:border-box}body{margin:0;font-family:Plus Jakarta Sans,Segoe UI,sans-serif;background:radial-gradient(circle at 50% -20%,rgba(109,99,255,.2),transparent 35%),var(--bg-900);color:var(--text-100)}.app{min-height:100vh;position:relative}.top-glow{position:absolute;inset:0 auto auto 0;width:100%;height:320px;background:radial-gradient(circle at 50% 0%,#6d63ff40,#070b1600 60%);pointer-events:none}.nav{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;position:sticky;top:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070b16b8;border-bottom:1px solid rgba(36,48,74,.8);z-index:2}.brand{display:flex;align-items:center;gap:12px}.brand-dot{width:14px;height:14px;border-radius:999px;background:var(--grad-primary);box-shadow:0 0 18px #6d63ffcc}.brand-title{margin:0;font-size:20px;font-weight:800}.brand-subtitle{margin:0;font-size:12px;color:var(--text-500)}.badge{border:1px solid var(--stroke-500);border-radius:999px;padding:10px 16px;color:var(--text-300);background:#0f1626b3}.nav-actions{display:flex;gap:10px;align-items:center}.container{width:100%;max-width:none;margin:0;padding:20px 20px 28px}.workspace{display:grid;gap:16px}.sidebar{display:grid;gap:10px;align-content:start}.module-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}.module-toolbar.compact{justify-content:flex-start}.users-filters{flex-wrap:nowrap;align-items:stretch}.users-filters input{flex:1 1 420px;min-width:260px}.users-filters select{flex:0 0 190px}.pages-filters{display:grid;grid-template-columns:1fr 1.3fr 1.3fr 1.1fr 120px 150px 90px;gap:8px;align-items:center}.pages-filters input,.pages-filters select{min-width:0}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.page-header h2{margin:0}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.compact-actions{gap:6px}.icon-action-button{min-width:40px;width:40px;height:40px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.card{border:1px solid var(--stroke-500);border-radius:16px;background:linear-gradient(180deg,#121a2be6,#0b1120e6)}.hero{padding:36px;margin-bottom:22px}.hero h1{margin:0;font-size:clamp(32px,5vw,56px);line-height:1.08}.hero span{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p{color:var(--text-300);max-width:760px;line-height:1.7}.grid{display:grid;grid-template-columns:1fr;gap:18px}.panel{padding:20px}.panel h2{margin-top:0;margin-bottom:14px}.panel h3{margin:22px 0 12px}.filters{display:grid;grid-template-columns:1fr 120px 140px auto;gap:8px;margin:12px 0}.tracking-form{grid-template-columns:2fr 1.4fr 120px 140px 130px auto auto}.form{display:grid;gap:12px;margin-bottom:16px}label,.inline-label{display:grid;gap:8px;color:var(--text-300);font-size:14px}.form-field{display:grid;gap:8px}.form-field-label{color:var(--text-300);font-size:14px}input,select,textarea{width:100%;border:1px solid #2a3550;background:#0e1526;color:var(--text-100);border-radius:12px;min-height:44px;padding:10px 12px;outline:none}.ui-input,.ui-select,.ui-textarea{width:100%}input:focus,select:focus,textarea:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px #2fcbff2e}textarea{min-height:110px;resize:vertical;font-family:inherit}.btn{border:0;color:var(--text-100);min-height:44px;border-radius:999px;padding:0 16px;font-weight:700;cursor:pointer;transition:transform .18s ease-out,filter .18s ease-out}.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}.btn:disabled{opacity:.65;cursor:not-allowed}.btn.primary{background:var(--grad-primary);box-shadow:0 8px 24px #6d63ff4d}.btn.secondary{background:var(--grad-success);box-shadow:0 8px 24px #2fcbff38}.btn.ghost{background:#151f33e6;border:1px solid #2a3550}.btn.danger{background:linear-gradient(90deg,#ef4444,#f97316);box-shadow:0 8px 20px #ef444440}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.stat{border:1px solid var(--stroke-500);background:#090e1ba6;border-radius:12px;padding:12px}.stat p{margin:0 0 8px;color:var(--text-500);font-size:13px}.stat strong{font-size:20px}.stat span{font-size:12px;color:var(--text-300)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid rgba(36,48,74,.65);padding:10px 6px;font-size:13px}th{color:var(--text-500);font-weight:600}.panel-full{grid-column:1 / -1}.opportunities{display:grid;gap:12px}.opportunity{border:1px solid var(--stroke-500);border-radius:12px;background:#0a0f1db3;padding:14px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.opportunity h4{margin:4px 0}.opportunity p{margin:0 0 6px;color:var(--text-300)}.opportunity small{color:var(--text-500)}.opportunity-type{text-transform:uppercase;font-size:11px;letter-spacing:.08em;color:var(--accent-cyan)}.opportunity-actions{display:grid;gap:10px;align-content:center;min-width:150px}.opportunity-actions span{color:var(--text-300);font-size:13px}.error{color:var(--error);margin-top:14px}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:10px;flex-wrap:wrap}.pager-controls{display:flex;gap:8px;align-items:center}.mvp-progress{display:grid;gap:10px}.mvp-criteria{display:grid;gap:8px}.mvp-criteria p{margin:0;font-size:13px}.mvp-ok{color:var(--accent-mint)}.mvp-pending{color:var(--text-300)}.users-layout{display:grid;gap:18px}.user-actions{display:grid;gap:8px;min-width:220px}.user-actions input{min-width:180px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% -10%,rgba(109,99,255,.3),transparent 35%),var(--bg-900)}.auth-card{width:100%;max-width:420px}.auth-card p{color:var(--text-300)}.modal-backdrop{position:fixed;inset:0;background:#02060fbd;display:grid;place-items:center;z-index:100;padding:16px}.modal-card{width:min(680px,100%);max-height:90vh;overflow:auto;border:1px solid var(--stroke-500);border-radius:14px;background:linear-gradient(180deg,#121a2bfa,#0b1120fa)}.modal-sm{width:min(480px,100%)}.modal-lg{width:min(900px,100%)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(36,48,74,.7)}.modal-header h3{margin:0}.modal-body{display:grid;gap:10px;padding:16px}.modal-form-stack{display:grid;gap:12px}.modal-form-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.modal-form-grid-2{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.modal-form-grid-3{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.modal-form-grid-location{display:grid;gap:12px;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr);align-items:start}.modal-form-span-2{grid-column:span 2}.modal-form-span-3{grid-column:1 / -1}.modal-form-note{display:grid;gap:4px;margin-top:-4px;padding:10px 12px;border:1px solid rgba(36,48,74,.65);border-radius:12px;background:#0c14236b}.modal-form-note p{margin:0;font-size:.9rem;opacity:.82}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 16px}.toast-stack{position:fixed;bottom:16px;right:16px;z-index:1200;display:grid;gap:10px;width:min(360px,calc(100vw - 24px))}.toast{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-radius:12px;border:1px solid rgba(36,48,74,.8);padding:12px;box-shadow:0 12px 30px #02060f73;background:#0a0f1dfa}.toast-success{border-color:#34d399b3}.toast-error{border-color:#f43f5eb3}.toast-info{border-color:#2fcbffb3}.toast-warning{border-color:#fb923cb3}.toast-content{display:grid;gap:4px}.toast-title,.toast-message{margin:0}.toast-title{font-size:13px;font-weight:700;color:var(--text-100)}.toast-message{color:var(--text-300);font-size:13px;line-height:1.35}.toast-close{min-width:28px;height:28px;border:1px solid rgba(36,48,74,.8);border-radius:8px;background:#151f33cc;color:var(--text-100);cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.left-sidebar{border-right:1px solid rgba(36,48,74,.8);background:#070b16eb;padding:18px 14px;display:grid;grid-template-rows:auto 1fr auto;gap:18px;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:6px 8px}.menu-list{display:grid;align-content:start;gap:6px}.sidebar-footer{display:grid}.sidebar-logout{width:100%}.menu-item{display:block;color:var(--text-300);text-decoration:none;border:1px solid rgba(36,48,74,.6);border-radius:10px;padding:10px 12px;background:#0f162699}.menu-item:hover{border-color:#2fcbff73}.menu-item.active{color:#fff;border-color:#2fcbffcc;box-shadow:inset 0 0 0 1px #2fcbff59}.main-area{min-width:0;display:grid;grid-template-rows:auto 1fr;min-height:100vh}.topbar{border-bottom:1px solid rgba(36,48,74,.8);background:#070b16b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;position:sticky;top:0;z-index:2}.topbar-actions{display:flex;align-items:center;gap:8px}.content-area{padding:18px;min-width:0}.module-section{min-height:calc(100vh - 110px)}select[multiple]{min-height:140px;border-radius:12px}.multi-select{position:relative}.multi-select-trigger{width:100%;min-height:44px;border:1px solid #2a3550;background:#0e1526;color:var(--text-100);border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px;cursor:pointer}.multi-select-label{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-100)}.multi-select-caret{color:var(--text-500);font-size:12px}.multi-select-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:220px;overflow:auto;border:1px solid #2a3550;border-radius:12px;background:#0e1526;padding:8px;display:grid;gap:4px;box-shadow:0 14px 34px #02060f66}.multi-select-menu-portal{position:fixed;z-index:1300}.multi-select-option{display:flex;align-items:center;gap:8px;padding:6px 4px;border-radius:8px;cursor:pointer}.multi-select-option:hover{background:#2fcbff14}.multi-select-option input{width:16px;height:16px;min-height:16px;padding:0}.multi-select-empty{margin:4px;color:var(--text-500);font-size:13px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.status-pill.published{background:#34d3992e;color:#86efac;border:1px solid rgba(52,211,153,.4)}.status-pill.draft{background:#94a3b82e;color:#cbd5e1;border:1px solid rgba(148,163,184,.35)}.status-pill.queued{background:#38bdf82e;color:#7dd3fc;border:1px solid rgba(56,189,248,.4)}.status-pill.obsolete{background:#f973162e;color:#fdba74;border:1px solid rgba(249,115,22,.4)}.page-preview{display:grid;gap:14px}.preview-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-300);font-size:13px}.preview-article{border:1px solid rgba(36,48,74,.7);border-radius:14px;padding:20px;background:#080d1ab8}.preview-article h1{margin:0 0 16px;font-size:30px;line-height:1.2}.preview-content{color:var(--text-100);white-space:pre-wrap;line-height:1.7}@media(min-width:1024px){.workspace{grid-template-columns:280px 1fr}.grid,.users-layout{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{grid-template-columns:1fr}.left-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid rgba(36,48,74,.8)}.filters,.tracking-form{grid-template-columns:1fr}.module-toolbar,.page-header{flex-direction:column;align-items:stretch}.users-filters{flex-wrap:wrap}.users-filters select,.users-filters input{flex:1 1 auto;min-width:0}.pages-filters{grid-template-columns:1fr}}@media(max-width:900px){.modal-form-grid,.modal-form-grid-3,.modal-form-grid-location{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form-span-3{grid-column:1 / -1}}@media(max-width:640px){.modal-form-grid,.modal-form-grid-2,.modal-form-grid-3,.modal-form-grid-location{grid-template-columns:1fr}.modal-form-span-2,.modal-form-span-3{grid-column:auto}}
