:root{--alp-bg:#070d1c;--alp-panel:#111a2d;--alp-line:#263653;--alp-text:#eef5ff;--alp-muted:#9fb0ca;--alp-blue:#39c9ff;--alp-green:#23d18b;--alp-red:#ff5b6e;--alp-yellow:#ffc857}
body{background:var(--alp-bg);color:var(--alp-text)}
.final-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid var(--alp-line);border-radius:28px;background:linear-gradient(135deg,#10243a,#0a1729);margin-bottom:1rem}
.final-hero h1{font-size:clamp(2rem,5vw,4rem);margin:.25rem 0}
.final-chip,.button-like{border:1px solid rgba(57,201,255,.5);border-radius:999px;padding:.75rem 1rem;text-decoration:none;color:var(--alp-text);font-weight:800}
.final-layout{display:grid;grid-template-columns:1fr;gap:1rem}
.final-sidebar,.final-panel,.entry-card{border:1px solid var(--alp-line);border-radius:24px;background:rgba(17,26,45,.92);padding:1rem}
.side-title{font-weight:900;letter-spacing:.12em;color:var(--alp-blue);margin-bottom:.75rem;text-transform:uppercase}
.side-link{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--alp-text);padding:.85rem 1rem;border-radius:16px;margin:.35rem 0;border:1px solid transparent}
.side-link.active{border-color:var(--alp-blue);background:rgba(57,201,255,.12)}
.side-link strong{color:var(--alp-blue)}
.final-main{display:grid;gap:1rem}
.sticky-tools{position:sticky;top:0;z-index:4;backdrop-filter:blur(14px)}
.final-search{display:grid;grid-template-columns:1fr;gap:.75rem}
.final-search input,.final-search select,.editor-form textarea,input,select{background:#081123;border:1px solid var(--alp-line);color:var(--alp-text);border-radius:14px;padding:.85rem;width:100%}
button{border:1px solid rgba(57,201,255,.55);background:#0c3152;color:var(--alp-text);border-radius:14px;padding:.85rem 1rem;font-weight:800}
button.danger{border-color:var(--alp-red);background:rgba(255,91,110,.12)}
button.warning{border-color:var(--alp-yellow);background:rgba(255,200,87,.12)}
.control-row{display:flex;gap:.75rem;flex-wrap:wrap}
.entry-grid{display:grid;gap:1rem}
.entry-card.disabled{opacity:.55}
.entry-head{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.75rem}
.entry-head span{color:var(--alp-muted)}
.editor-form{display:grid;gap:.75rem}
.button-row{display:flex;gap:.75rem}
.toggle-line{display:flex;align-items:center;gap:.5rem;color:var(--alp-muted)}
.allocated-list{display:grid;gap:.75rem}
.allocated-card button{width:100%;text-align:left;display:grid;gap:.3rem}
.allocated-card.assigned button{border-color:var(--alp-yellow)}
.allocated-card.completed button{border-color:var(--alp-green);background:rgba(35,209,139,.16)}
.allocated-card span{font-weight:900;letter-spacing:.08em}
.allocated-card.completed span{color:var(--alp-green)}
.allocated-card.assigned span{color:var(--alp-yellow)}
.allocated-card em{font-style:normal;color:var(--alp-muted)}
.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#173657,#070d1c 55%)}
.login-shell{width:min(92vw,460px)}
.login-card{border:1px solid var(--alp-line);border-radius:28px;background:rgba(17,26,45,.96);padding:2rem;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.login-card h1{font-size:3rem;margin:.25rem 0}
.login-form{display:grid;gap:1rem;margin-top:1.25rem}
.login-form label{display:grid;gap:.4rem;color:var(--alp-muted);font-weight:800}
.login-form input{background:#081123;border:1px solid var(--alp-line);border-radius:16px;color:var(--alp-text);padding:1rem}
.login-status{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}
.login-status div{border:1px solid var(--alp-line);border-radius:16px;padding:.8rem}
.login-status span{display:block;color:var(--alp-muted);font-size:.8rem;font-weight:900}
.login-status strong{color:var(--alp-green)}
@media(min-width:980px){.final-layout{grid-template-columns:290px 1fr}.final-sidebar{position:sticky;top:1rem;align-self:start}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-search{grid-template-columns:1fr 160px 120px}}
@media(min-width:1400px){.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
