:root{--bg: #03070d;--panel: rgba(7, 17, 28, .78);--panel-2: rgba(10, 23, 37, .88);--border: rgba(90, 210, 255, .16);--text: #e9f7ff;--muted: #93a8b7;--cyan: #7fe8ff;--cyan-2: #22c7ff;--amber: #f4a641;--red: #ff6b6b;--green: #41d98a;--purple: #ab8cff;--lime: #b8f55c;--blue: #63b7ff;--white-soft: #dff8ff}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}body{overflow-x:hidden}button,input,select{font:inherit}button{transition:.18s ease}.app-shell{min-height:100vh;position:relative;padding:20px;background:radial-gradient(circle at top,#1b597eb8,#040b14f5 28%,#02060a)}.bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(127,232,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(127,232,255,.08) 1px,transparent 1px);background-size:28px 28px}.bg-glow{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at center,rgba(34,199,255,.12),transparent 42%),linear-gradient(to bottom,rgba(120,190,255,.06),transparent 22%,transparent 78%,rgba(244,166,65,.08))}.topbar{position:relative;z-index:1;display:flex;gap:20px;justify-content:space-between;align-items:flex-start;margin-bottom:18px;padding:22px;border:1px solid var(--border);background:linear-gradient(180deg,#0a1622f0,#050c14c7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;box-shadow:0 0 24px #22c7ff14,inset 0 1px #ffffff08}.topbar h1{margin:8px 0 0;font-size:2.35rem;letter-spacing:.03em;color:var(--white-soft)}.eyebrow{color:var(--cyan);text-transform:uppercase;font-size:.7rem;letter-spacing:.28em}.topbar-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pill,.tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;border:1px solid rgba(255,255,255,.08);padding:6px 10px;font-size:.8rem;background:#ffffff0a;color:var(--text)}.pill.cyan,.tag-cyan{border-color:#7fe8ff47;background:#22c7ff1f;color:#baf4ff}.pill.amber,.tag-amber{border-color:#f4a6414d;background:#f4a6411f;color:#ffd9a1}.tag-blue{border-color:#63b7ff4d;background:#63b7ff1f;color:#c9e5ff}.tag-red{border-color:#ff6b6b4d;background:#ff6b6b1f;color:#ffd2d2}.tag-green{border-color:#41d98a4d;background:#41d98a1f;color:#c7ffe0}.tag-purple{border-color:#ab8cff52;background:#ab8cff1f;color:#e2d8ff}.tag-lime{border-color:#b8f55c4d;background:#b8f55c1a;color:#ebffc1}.admin-toggle{display:flex;gap:8px;align-items:center;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:#0a121cd1;color:var(--muted)}.stats-grid{position:relative;z-index:1;display:grid;gap:12px;margin-bottom:18px}.stats-grid-8{grid-template-columns:repeat(8,minmax(0,1fr))}.stat-card{border:1px solid var(--border);background:linear-gradient(180deg,#09121ef2,#060e18b8);border-radius:16px;padding:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 16px #22c7ff0d,inset 0 1px #ffffff08}.stat-card span{display:block;color:var(--cyan);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;margin-bottom:6px}.stat-card strong{font-size:1.7rem;font-weight:700}.view-switcher{position:relative;z-index:1;display:flex;gap:10px;margin-bottom:18px}.view-tab{border:1px solid rgba(127,232,255,.16);background:#08101ab8;color:var(--muted);border-radius:14px;padding:12px 16px;cursor:pointer}.view-tab:hover{background:#ffffff08;color:var(--text)}.active-view{color:#dff8ff;border-color:#7fe8ff52;background:linear-gradient(180deg,#22c7ff1f,#08101ad9);box-shadow:0 0 18px #22c7ff14}.layout{position:relative;z-index:1;display:grid;grid-template-columns:320px 1fr 370px;gap:16px}.panel{border:1px solid var(--border);background:linear-gradient(180deg,#08121ef0,#050c14bd);border-radius:18px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 18px #22c7ff0d,inset 0 1px #ffffff05;min-height:760px;overflow:hidden}.middle-panel{min-width:0}.panel-header{padding:18px 18px 10px;border-bottom:1px solid rgba(127,232,255,.08)}.panel-header h2{margin:0 0 6px;color:#dff8ff;font-size:1.12rem}.panel-header p{margin:0;color:var(--muted);font-size:.9rem}.tree-root{padding:14px;max-height:800px;overflow:auto}.root-all{width:100%;justify-content:flex-start;margin-bottom:8px}.tree-node{margin-bottom:4px}.tree-row{display:flex;gap:8px;align-items:center;border-radius:12px}.tree-row.selected{background:#22c7ff14}.tree-main{flex:1;display:flex;align-items:center;gap:8px;background:transparent;border:0;color:var(--text);padding:10px;text-align:left;cursor:pointer;border-radius:12px}.tree-main:hover{background:#ffffff08}.selected-btn{background:#22c7ff14!important}.tree-chevron{width:16px;color:var(--cyan)}.tree-kind{color:var(--cyan);text-transform:uppercase;letter-spacing:.18em;font-size:.62rem}.tree-name{font-size:.92rem;flex:1}.tree-state{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;padding:3px 7px;border-radius:999px}.tree-state.temp{color:#f0d6ff;background:#ab8cff1f;border:1px solid rgba(171,140,255,.22)}.tree-state.perm{color:#bff5ff;background:#22c7ff1f;border:1px solid rgba(34,199,255,.22)}.tree-actions{display:flex;gap:6px;padding-right:8px}.mini-btn{border:1px solid rgba(127,232,255,.22);background:#22c7ff14;color:var(--cyan);border-radius:10px;width:30px;height:30px;cursor:pointer}.mini-btn:hover{background:#22c7ff29}.mini-btn.danger{border-color:#ff6b6b47;background:#ff6b6b14;color:#ffc5c5}.mini-btn.danger:hover{background:#ff6b6b29}.tree-children{margin-left:18px;padding-left:10px;border-left:1px solid rgba(127,232,255,.12)}.toolbar{display:grid;grid-template-columns:1fr 180px;gap:10px;padding:14px 18px 0}.input{width:100%;border-radius:12px;border:1px solid rgba(127,232,255,.14);background:#050e18e6;color:var(--text);padding:11px 12px;outline:none}.input:focus{border-color:#7fe8ff59;box-shadow:0 0 0 2px #22c7ff1a}.selected-unit{margin:12px 18px;display:inline-flex;border-radius:999px;border:1px solid rgba(127,232,255,.24);background:#22c7ff14;color:#baf4ff;padding:7px 12px;font-size:.82rem}.task-board{padding:0 18px 18px;display:flex;flex-direction:column;gap:14px}.task-op-card{border:1px solid rgba(127,232,255,.14);border-radius:18px;padding:14px;background:linear-gradient(180deg,#0c1624e0,#080f18c2),radial-gradient(circle at top right,rgba(34,199,255,.08),transparent 40%);box-shadow:inset 0 0 0 1px #ffffff05}.task-op-header h3{margin:6px 0 0;color:var(--white-soft)}.task-group-grid{margin-top:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.task-group-card{border:1px solid rgba(127,232,255,.12);border-radius:16px;padding:12px;background:#050e18c7}.task-group-title{color:#e8f9ff;font-weight:700}.task-group-sub{color:var(--muted);font-size:.8rem;margin-top:2px}.task-attached-list{margin-top:10px;display:flex;flex-direction:column;gap:8px;min-height:36px}.task-attached-chip{padding:8px 10px;border-radius:12px;background:#22c7ff14;border:1px solid rgba(34,199,255,.16);display:flex;flex-direction:column}.task-attached-chip small{color:var(--muted);margin-top:3px}.task-subnodes{margin-top:10px;display:flex;flex-direction:column;gap:8px}.task-subnode{padding:8px 10px;border-radius:12px;background:#ffffff08;display:flex;justify-content:space-between;gap:8px}.task-subnode span{color:var(--muted);font-size:.8rem}.roster-list{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto;padding:0 18px 18px}.roster-card{width:100%;border:1px solid rgba(127,232,255,.12);background:#08121eb3;color:var(--text);border-radius:16px;padding:14px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;gap:14px}.roster-card:hover{background:#ffffff08}.active-card{border-color:#7fe8ff4d;background:#22c7ff17}.roster-main{min-width:0}.roster-name{font-weight:700;color:#eaf9ff}.roster-sub,.roster-meta{color:var(--muted);font-size:.82rem}.roster-meta{text-align:right;white-space:nowrap}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tag-row.tight{margin-top:6px}.admin-grid{display:grid;gap:12px;padding:0 18px 18px;grid-template-columns:1fr 1fr}.admin-box{border:1px solid rgba(127,232,255,.12);background:#08121eb3;border-radius:16px;padding:14px}.admin-box-wide{grid-column:1 / -1}.admin-box h3{margin-top:0;margin-bottom:10px;color:#dbf6ff}.form-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.qual-selector{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.btn{border:1px solid rgba(127,232,255,.24);background:#22c7ff1f;color:#dff9ff;padding:11px 14px;border-radius:12px;cursor:pointer}.btn:hover{background:#22c7ff2e}.amber-btn{border-color:#f4a64142;background:#f4a6411f;color:#ffe1b4}.amber-btn:hover{background:#f4a6412e}.checkline{display:flex;align-items:center;gap:8px;color:var(--muted);margin:10px 0 12px}.settings-stack{display:flex;flex-direction:column;gap:16px}.mini-title{color:var(--cyan);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;margin-bottom:8px}.inline-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:8px}.dossier{padding:18px}.dossier-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.dossier-top h3{margin:6px 0;font-size:1.35rem}.dossier-top p{margin:0;color:var(--muted)}.dossier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.dossier-box,.notes-box,.helper-box{border:1px solid rgba(127,232,255,.12);background:#08121eb3;border-radius:14px;padding:12px}.dossier-box span{display:block;color:var(--cyan);text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;margin-bottom:6px}.dossier-box strong{font-size:.95rem}.dossier-section{margin-top:16px}.notes-box{color:var(--muted);margin-top:8px;line-height:1.5}.dossier-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.helper-box{margin:0 18px 18px}.helper-box h3{margin-top:0;color:#dcf8ff}.helper-box p,.muted{color:var(--muted)}@media (max-width: 1380px){.stats-grid-8{grid-template-columns:repeat(4,minmax(0,1fr))}.layout{grid-template-columns:1fr}.panel{min-height:auto}}@media (max-width: 900px){.topbar{flex-direction:column}.toolbar,.form-grid,.admin-grid,.dossier-grid{grid-template-columns:1fr}.stats-grid-8{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-card{flex-direction:column}.roster-meta{text-align:left}.inline-form{grid-template-columns:1fr}}
