:root{
    --bg:#0d1117; --panel:#161b22; --panel2:#1c2333; --border:#30363d;
    --text:#e6edf3; --muted:#8b949e; --accent:#2f81f7; --accent2:#1f6feb;
    --green:#3fb950; --red:#f85149; --amber:#d29922; --purple:#a371f7;
  }
  *{box-sizing:border-box}
  body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
       background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}
  a{color:var(--accent);text-decoration:none;cursor:pointer} a:hover{text-decoration:underline}
  header{background:linear-gradient(90deg,#0b213f,#101826);border-bottom:1px solid var(--border);
         padding:12px 24px;display:flex;align-items:center;gap:20px;position:sticky;top:0;z-index:10}
  header .brand{font-weight:700;font-size:16px;color:#fff;display:flex;align-items:center;gap:8px}
  header nav{display:flex;gap:16px;flex:1}
  header nav a{color:var(--muted);font-weight:500}
  header nav a:hover{color:#fff;text-decoration:none}
  header .user{color:var(--muted);font-size:13px}
  .badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}
  .badge.admin{background:rgba(163,113,247,.15);color:var(--purple);border:1px solid rgba(163,113,247,.4)}
  .badge.user{background:rgba(47,129,247,.15);color:var(--accent);border:1px solid rgba(47,129,247,.4)}
  .container{max-width:1100px;margin:24px auto;padding:0 24px}
  .panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:20px}
  h1{font-size:22px;margin:0 0 4px} h2{font-size:16px;margin:0 0 12px;color:#fff}
  h3{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:20px 0 8px;border-bottom:1px solid var(--border);padding-bottom:6px}
  label{display:block;font-size:12px;color:var(--muted);margin:12px 0 4px;font-weight:600}
  input,select,textarea{width:100%;background:#0d1117;border:1px solid var(--border);border-radius:6px;
       color:var(--text);padding:8px 10px;font-size:14px;font-family:inherit}
  input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}
  textarea{resize:vertical;min-height:70px}
  .row{display:flex;gap:16px;flex-wrap:wrap} .row>div{flex:1;min-width:170px}
  .btn{display:inline-block;background:var(--accent2);color:#fff;border:none;border-radius:6px;
       padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}
  .btn:hover{background:var(--accent);text-decoration:none}
  .btn.secondary{background:#21262d;border:1px solid var(--border)}
  .btn.danger{background:#b62324}
  .btn.small{padding:5px 10px;font-size:12px}
  table{width:100%;border-collapse:collapse;font-size:13px}
  th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border)}
  th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}
  tr.clickable{cursor:pointer} tr.clickable:hover td{background:var(--panel2)}
  .flash{padding:10px 14px;border-radius:8px;margin-bottom:14px;font-size:13px}
  .flash.success{background:rgba(63,185,80,.12);border:1px solid rgba(63,185,80,.4);color:var(--green)}
  .flash.error{background:rgba(248,81,73,.12);border:1px solid rgba(248,81,73,.4);color:var(--red)}
  .flash.info{background:rgba(47,129,247,.12);border:1px solid rgba(47,129,247,.4);color:var(--accent)}
  .st{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}
  .st.Open{background:rgba(248,81,73,.15);color:var(--red)}
  .st.InProgress{background:rgba(210,153,34,.15);color:var(--amber)}
  .st.Contained{background:rgba(163,113,247,.15);color:var(--purple)}
  .st.Resolved{background:rgba(63,185,80,.15);color:var(--green)}
  .st.Closed{background:rgba(139,148,158,.15);color:var(--muted)}
  .sev.Critical{color:var(--red);font-weight:700} .sev.High{color:#ff7b72;font-weight:600}
  .sev.Medium{color:var(--amber)} .sev.Low{color:var(--green)} .sev.Informational{color:var(--muted)}
  .muted{color:var(--muted)}
  .counter{font-size:12px;color:var(--muted)} .counter.over{color:var(--red);font-weight:700}
  .grid2{display:grid;grid-template-columns:170px 1fr;gap:6px 16px;font-size:13px} .grid2 .k{color:var(--muted)}
  .thumb{display:inline-block;margin:6px;text-align:center;vertical-align:top}
  .thumb img{max-width:150px;max-height:110px;border:1px solid var(--border);border-radius:6px;display:block}
  .thumb .cap{font-size:11px;color:var(--muted);max-width:150px}
  .pill{display:inline-block;background:var(--panel2);border:1px solid var(--border);border-radius:6px;padding:6px 10px;margin:4px 4px 0 0;font-size:12px}
  .empty{color:var(--muted);text-align:center;padding:30px;font-style:italic}
  .login-wrap{max-width:360px;margin:8vh auto}
  .ioc-row{display:flex;gap:8px;margin-bottom:8px;align-items:flex-start}
  .ioc-row select{max-width:180px}
  code{background:#0d1117;border:1px solid var(--border);padding:1px 6px;border-radius:4px;font-size:12px}
  .tlp{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.4px;margin-right:4px;border:1px solid}
  .tlp.WHITE{background:#f0f0f0;color:#111;border-color:#ccc}
  .tlp.GREEN{background:rgba(63,185,80,.15);color:var(--green);border-color:rgba(63,185,80,.5)}
  .tlp.AMBER{background:rgba(210,153,34,.18);color:var(--amber);border-color:rgba(210,153,34,.5)}
  .tlp.RED{background:rgba(248,81,73,.18);color:var(--red);border-color:rgba(248,81,73,.5)}
  .tag{display:inline-block;background:var(--panel2);border:1px solid var(--border);border-radius:4px;padding:1px 8px;margin:0 4px 4px 0;font-size:11px;color:var(--muted)}
  .progress{height:8px;background:#0d1117;border:1px solid var(--border);border-radius:6px;overflow:hidden;margin:10px 0 16px}
  .progress .bar{height:100%;background:linear-gradient(90deg,var(--accent2),var(--green));transition:width .3s}
  .phase{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--accent);margin:16px 0 6px;font-weight:700}
  .task{border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:8px;background:var(--panel2)}
  .task.done{opacity:.6}
  .task-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
  .task-desc{font-size:12px;color:var(--muted);margin-top:6px;white-space:pre-wrap}
  .task-log{font-size:12px;color:var(--green);margin-top:6px}
  .tstat{display:inline-block;padding:1px 7px;border-radius:10px;font-size:10px;font-weight:600;margin-right:6px}
  .tstat.Waiting{background:rgba(139,148,158,.18);color:var(--muted)}
  .tstat.InProgress{background:rgba(210,153,34,.18);color:var(--amber)}
  .tstat.Completed{background:rgba(63,185,80,.18);color:var(--green)}
  .tstat.Cancelled{background:rgba(248,81,73,.18);color:var(--red)}
  .cst,.ist{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}
  .cst.Draft,.cst.Cancelled,.cst.Closed{background:rgba(139,148,158,.15);color:var(--muted)}
  .cst.Submitted{background:rgba(47,129,247,.15);color:var(--accent)}
  .cst.UnderReview{background:rgba(210,153,34,.15);color:var(--amber)}
  .cst.Approved,.cst.Implemented{background:rgba(63,185,80,.15);color:var(--green)}
  .cst.Scheduled{background:rgba(163,113,247,.15);color:var(--purple)}
  .cst.InProgress{background:rgba(210,153,34,.22);color:var(--amber);font-weight:700}
  .cst.Rejected,.cst.Failed{background:rgba(248,81,73,.15);color:var(--red)}
  .ist.New{background:rgba(248,81,73,.15);color:var(--red)}
  .ist.Investigating{background:rgba(210,153,34,.15);color:var(--amber)}
  .ist.RootCauseIdentified{background:rgba(163,113,247,.15);color:var(--purple)}
  .ist.WorkaroundAvailable{background:rgba(47,129,247,.15);color:var(--accent)}
  .ist.Resolved{background:rgba(63,185,80,.15);color:var(--green)}
  .ist.Closed,.ist.OnHold{background:rgba(139,148,158,.15);color:var(--muted)}
  .crit.Critical{color:var(--red);font-weight:700} .crit.High{color:#ff7b72;font-weight:600} .crit.Medium{color:var(--amber)} .crit.Low{color:var(--green)}
  .livebadge{display:inline-block;padding:1px 7px;border-radius:10px;font-size:10px;font-weight:700;background:rgba(248,81,73,.2);color:#ff7b72;animation:pulse 1.6s infinite;margin-left:6px}
  @keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
  .cd{font-variant-numeric:tabular-nums}
  .board{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  @media(max-width:760px){.board{grid-template-columns:1fr}}
  .cardbox{border:1px solid var(--border);border-radius:8px;padding:12px;margin-bottom:10px;background:var(--panel2)}
  .appr{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--border);border-radius:6px;padding:6px 10px;margin-bottom:6px}
  .actlog{border-left:2px solid var(--border);padding-left:12px;margin-top:8px}
  .actlog .it{font-size:12px;margin-bottom:6px} .actlog .it .t{color:var(--muted)}
  select[multiple]{min-height:96px}
  .stat-num{font-size:22px;font-weight:700}
  .inline{display:flex;gap:6px;align-items:center}
