:root{
  --surface-2:#ffffff;--surface-1:#f5f4ef;--surface-0:#eeece4;
  --border:rgba(0,0,0,0.10);--border-strong:rgba(0,0,0,0.18);
  --text-primary:#1f1f1d;--text-secondary:#5f5e5a;--text-muted:#888780;
  --bg-accent:#e2effb;--text-accent:#0b57a4;
  --bg-success:#e1f5ee;--text-success:#0f6e56;
  --bg-danger:#fcebeb;--text-danger:#a32d2d;
  --bg-warning:#faeeda;--text-warning:#854f0b;
  --akoria-dark:#0b57a4;--akoria-light:#29abe2;
  --radius:8px;
  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
@media (prefers-color-scheme:dark){:root{
  --surface-2:#2d2d2a;--surface-1:#242422;--surface-0:#1b1b19;
  --border:rgba(255,255,255,0.12);--border-strong:rgba(255,255,255,0.22);
  --text-primary:#f1efe8;--text-secondary:#b4b2a9;--text-muted:#888780;
  --bg-accent:#0b3d70;--text-accent:#7fbdea;
  --bg-success:#085041;--text-success:#9fe1cb;
  --bg-danger:#791f1f;--text-danger:#f7c1c1;
  --bg-warning:#633806;--text-warning:#fac775;
}}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-sans);background:var(--surface-0);color:var(--text-primary);padding:24px}
.wrap{max-width:1040px;margin:0 auto}
a{color:var(--text-accent)}
.ak-nav{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:9px 11px;border:none;background:transparent;border-radius:var(--radius);font-size:14px;color:var(--text-secondary);cursor:pointer;font-family:inherit}
.ak-nav:hover{background:var(--surface-1)}
.ak-nav.active{background:var(--bg-accent);color:var(--text-accent)}
.ak-badge{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:500;white-space:nowrap}
.ak-btn{font-size:13px;padding:6px 12px;border-radius:var(--radius);border:0.5px solid var(--border-strong);background:transparent;cursor:pointer;color:var(--text-primary);font-family:inherit}
.ak-btn:hover{background:var(--surface-1)}
.ak-btn:active{transform:scale(0.98)}
.ak-btn.primary{background:var(--bg-accent);color:var(--text-accent);border-color:transparent;font-weight:500}
.ak-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:0.5px solid var(--border)}
select,input{font-family:inherit;color:var(--text-primary);background:var(--surface-2);border:0.5px solid var(--border-strong);border-radius:var(--radius);padding:0 8px;height:34px}
label{font-size:11px;color:var(--text-muted)}
.cal-cell{flex:1;height:20px;border-right:0.5px solid var(--surface-2)}
.cal-bar{position:absolute;top:5px;height:22px;border-radius:6px;display:flex;align-items:center;padding:0 7px;font-size:11px;font-weight:500;overflow:hidden;white-space:nowrap;z-index:2}
.cal-band{position:absolute;top:0;height:32px;z-index:0}
.cal-track{position:relative;flex:1;height:32px;background:var(--surface-1);border-radius:6px;overflow:hidden}
.cal-leg{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary)}
.cal-sw{width:12px;height:12px;border-radius:3px;display:inline-block}
.ma-f{display:flex;flex-direction:column;gap:3px}
.ma-f input,.ma-f select{width:100%}
/* Login */
.login-card{max-width:380px;margin:8vh auto 0;background:var(--surface-2);border:0.5px solid var(--border);border-radius:12px;padding:28px 26px}
.login-card h1{font-size:18px;font-weight:500;margin:14px 0 2px}
.login-field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.login-field input{height:38px}
.login-err{background:var(--bg-danger);color:var(--text-danger);font-size:13px;padding:8px 10px;border-radius:var(--radius);margin-bottom:12px}
.muted{color:var(--text-muted)}
