/* EduPress app additions on top of base.css */
*,*::before,*::after{box-sizing:border-box}
.views>section{padding-top:0}
.login{min-height:100%;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:32px max(20px, env(safe-area-inset-left, 0px)) 32px max(20px, env(safe-area-inset-right, 0px));background:radial-gradient(120% 70% at 85% 0%,#3446a8,#1d2a6b 55%,#111a4a);color:#fff}
.login h1{font-family:var(--display);font-size:36px;line-height:1.02;letter-spacing:-.02em;margin:0;text-wrap:balance}
.login p{margin:0;color:#c8cdf0}
.field{display:grid;gap:6px}
.field label{font-size:13px;font-weight:600}
.field input,.field select,.field textarea{font:inherit;border:1.5px solid var(--line);border-radius:12px;padding:11px 12px;background:var(--surface);color:var(--ink);width:100%}
.login .field input{background:#ffffff14;border-color:#ffffff40;color:#fff}
.login .field input::placeholder{color:#a9afd6}
.err{background:#c4423a22;color:var(--bad);border-radius:10px;padding:10px 12px;font-size:14px}
.login .err{background:#ffffff1a;color:#ffd0ca}
.form{display:grid;gap:12px}
.list{display:grid;gap:8px}
.list .row{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px}
.list .row small{color:var(--muted)}
.list button.row{width:100%;text-align:left;cursor:pointer}
.score-in{width:62px;font:inherit;border:1px solid var(--line);border-radius:8px;padding:6px;text-align:right;background:var(--paper);color:var(--ink);font-variant-numeric:tabular-nums}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.toolbar select{font:inherit;border:1px solid var(--line);border-radius:10px;padding:8px;background:var(--surface);color:var(--ink);min-width:0;flex:1}
.offline{position:absolute;left:0;right:0;top:0;z-index:40;background:var(--warn);color:#1b1306;text-align:center;font-size:12px;font-weight:700;padding:4px}
.empty{text-align:center;color:var(--muted);padding:40px 16px}
.video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.kv{display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:14px}
.kv span{color:var(--muted)}
@media print{.tabbar,.toolbar,.noprint,.feedtop{display:none!important}.phone{max-width:none;box-shadow:none;border:0}.view{position:static;overflow:visible}body{background:#fff;color:#000}}
