:root { color-scheme: dark; --bg:#0b0d10; --panel:#14181d; --panel2:#1a2027; --text:#f5f7fa; --muted:#9aa6b2; --line:#2b333d; --accent:#79a8ff; --danger:#ff7272; --success:#62d7a1; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; background:linear-gradient(180deg,#0a0c0f,#10141a); color:var(--text); min-height:100vh; }
a { color:inherit; text-decoration:none; }
.container { width:min(1180px,calc(100% - 32px)); margin:0 auto; }
.topbar { position:sticky; top:0; z-index:10; backdrop-filter:blur(14px); background:rgba(11,13,16,.86); border-bottom:1px solid var(--line); }
.nav-wrap { min-height:64px; display:flex; align-items:center; justify-content:space-between; }
.brand { font-weight:800; letter-spacing:.2px; }
.nav-links { display:flex; gap:18px; color:var(--muted); font-size:14px; }
.main-content { padding:48px 0 80px; }
.hero,.page-head { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; margin-bottom:28px; }
h1 { font-size:clamp(30px,5vw,50px); line-height:1.05; margin:8px 0 12px; letter-spacing:-1.5px; }
h2 { margin:6px 0 18px; }
p { color:var(--muted); line-height:1.65; }
.eyebrow { color:var(--accent); text-transform:uppercase; letter-spacing:.12em; font-size:12px; font-weight:800; }
.card,.form-card { background:rgba(20,24,29,.96); border:1px solid var(--line); border-radius:18px; padding:24px; box-shadow:0 18px 50px rgba(0,0,0,.18); }
.form-card { width:min(620px,100%); margin:0 auto; }
.form-card.wide { width:min(760px,100%); }
.form-card.compact { width:100%; margin:0; height:max-content; }
.grid-two { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr); gap:24px; align-items:start; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:10px 16px; border:1px solid var(--line); border-radius:10px; background:var(--panel2); color:var(--text); cursor:pointer; font-weight:700; }
.button:hover { filter:brightness(1.08); }
.button.primary { background:var(--accent); color:#08111f; border-color:transparent; }
.button.danger { color:#ffd7d7; border-color:#653838; background:#331d22; }
.button.small { min-height:34px; padding:7px 11px; font-size:13px; }
.button.full { width:100%; }
.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; }
th,td { padding:15px 12px; border-bottom:1px solid var(--line); text-align:left; white-space:nowrap; }
th { color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.actions { display:flex; gap:8px; align-items:center; justify-content:flex-end; }
.actions form { margin:0; }
.badge,.count-pill { display:inline-flex; align-items:center; border-radius:999px; padding:5px 10px; font-size:12px; font-weight:800; }
.badge.done { background:rgba(98,215,161,.14); color:var(--success); }
.badge.pending { background:rgba(121,168,255,.13); color:#a9c6ff; }
.count-pill { background:#232b34; color:#d4dbe3; min-width:30px; justify-content:center; }
.task-link { font-weight:800; }
.task-link:hover { color:var(--accent); }
.alert { border-radius:12px; padding:14px 16px; margin:0 0 20px; border:1px solid var(--line); }
.alert.success { background:rgba(98,215,161,.1); color:#b9f2d8; border-color:rgba(98,215,161,.28); }
.alert.error { background:rgba(255,114,114,.1); color:#ffd0d0; border-color:rgba(255,114,114,.28); }
label { display:block; margin:18px 0 8px; font-weight:750; }
input[type="text"],input[type="file"],input:not([type]) { width:100%; border:1px solid var(--line); background:#0f1318; color:var(--text); border-radius:10px; padding:12px 13px; }
input[type="file"] { padding:12px; }
.checkbox-row { display:flex; align-items:center; gap:10px; }
.checkbox-row input { width:18px; height:18px; }
.form-actions { display:flex; gap:10px; margin-top:24px; }
.validation { color:#ffaaaa; margin-top:6px; }
.help,.muted { font-size:14px; color:var(--muted); }
.empty { padding:28px 0; text-align:center; }
.back-link { color:var(--muted); font-size:14px; }
.meta-row { display:flex; flex-wrap:wrap; gap:12px; align-items:center; color:var(--muted); font-size:14px; }
.section-head { display:flex; justify-content:space-between; align-items:center; }
.attachment-list { display:flex; flex-direction:column; gap:10px; }
.attachment-item { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px; border:1px solid var(--line); border-radius:12px; background:#101419; }
.attachment-info { min-width:0; display:flex; flex-direction:column; gap:5px; }
.attachment-info strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.attachment-info span { color:var(--muted); font-size:13px; }
@media (max-width:850px) { .grid-two{grid-template-columns:1fr;} .hero,.page-head{flex-direction:column;} table{min-width:760px;} }
@media (max-width:620px) { .attachment-item{align-items:flex-start; flex-direction:column;} .attachment-item .actions{width:100%; justify-content:flex-start;} .main-content{padding-top:28px;} }
