.app-shell { background: #0b1020; color: #eef2ff; min-height: 100vh; }
.app-nav { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.5rem; position:sticky; top:0; background:rgba(7,10,20,.85); backdrop-filter:blur(16px); border-bottom:1px solid rgba(255,255,255,.08); z-index:10; }
.app-nav-links, .app-nav-actions { display:flex; align-items:center; gap:.9rem; flex-wrap:wrap; }
.app-nav a { color:#e5e7eb; text-decoration:none; }
.nav-user { color:#9ca3af; font-size:.95rem; }
.app-main { width:min(1100px, calc(100% - 2rem)); margin:2rem auto 4rem; }
.notice { padding:1rem 1.1rem; border-radius:14px; margin-bottom:1rem; border:1px solid transparent; }
.notice-error { background:rgba(239,68,68,.12); color:#fecaca; border-color:rgba(239,68,68,.25); }
.notice-success { background:rgba(34,197,94,.12); color:#bbf7d0; border-color:rgba(34,197,94,.22); }
.panel { background:rgba(17,24,39,.75); border:1px solid rgba(255,255,255,.08); border-radius:22px; padding:1.4rem; box-shadow:0 18px 60px rgba(0,0,0,.25); }
.panel-grid { display:grid; gap:1rem; }
@media (min-width: 900px){ .panel-grid.two { grid-template-columns: 1.2fr .8fr; } .panel-grid.three { grid-template-columns: repeat(3, 1fr); } }
.field-grid { display:grid; gap:1rem; }
@media (min-width: 720px){ .field-grid.two { grid-template-columns: 1fr 1fr; } }
.label { display:block; font-size:.95rem; color:#cbd5e1; margin-bottom:.35rem; }
.input { width:100%; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.04); color:#fff; padding:.9rem 1rem; outline:none; }
.input:focus { border-color:#38bdf8; box-shadow:0 0 0 3px rgba(56,189,248,.15); }
.helper { color:#94a3b8; font-size:.92rem; }
.actions { display:flex; gap:.75rem; align-items:center; flex-wrap:wrap; margin-top:1rem; }
.hero-mini { display:flex; flex-direction:column; gap:.65rem; margin-bottom:1rem; }
.kicker { color:#38bdf8; text-transform:uppercase; letter-spacing:.12em; font-size:.8rem; font-weight:700; }
.metric { font-size:2rem; font-weight:800; line-height:1.1; }
.metric-sub { color:#94a3b8; }
.list { margin:0; padding-left:1.1rem; color:#d1d5db; }
.card { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:18px; padding:1rem; }
