*{box-sizing:border-box}body{margin:0;font:20px/1.4 system-ui,-apple-system,sans-serif;background:#f2f4f7;color:#0b0b0b}
header{background:#0b1f3a;color:#fff;padding:16px 18px calc(12px);padding-top:max(16px,env(safe-area-inset-top))}h1{margin:0;font-size:30px}.sub{margin:2px 0 0;opacity:.85;font-size:17px}
main{padding:12px;max-width:640px;margin:auto}.card{background:#fff;border-radius:16px;padding:16px;margin-bottom:14px;box-shadow:0 1px 3px #0002}
h2{font-size:22px;margin:4px 0 10px}label{display:block;font-weight:600;margin:10px 0;flex:1}
input,select{width:100%;font-size:21px;padding:12px;border:2px solid #555;border-radius:10px;margin-top:4px;background:#fff;color:#000}
.row{display:flex;gap:10px;align-items:flex-end}.btn{display:block;width:100%;font-size:21px;font-weight:700;padding:16px;border:0;border-radius:12px;background:#0b5cff;color:#fff;margin-top:10px;min-height:56px}
.btn.big{font-size:23px;background:#0a7a2f}.btn.sec{background:#e3e8f0;color:#0b1f3a;border:2px solid #0b1f3a}.btn.small{width:auto;padding:12px;margin:4px 0 0;font-size:18px}
.btn.danger{background:#b00020}.note{background:#fff6d6;border:2px solid #c99a00;border-radius:10px;padding:10px;font-size:18px}.hint{font-size:16px;color:#333}
details{margin:8px 0;font-size:19px}summary{font-weight:700;padding:8px 0}
.opt{border:3px solid #999;border-radius:14px;padding:12px;margin-bottom:12px;background:#fff}
.opt.best{border:5px solid #0a7a2f;background:#e5f8eb}.badge{display:inline-block;background:#0a7a2f;color:#fff;font-weight:900;font-size:24px;padding:4px 12px;border-radius:8px;letter-spacing:1px}
.up{font-size:28px;font-weight:800}.best .up{color:#0a6a27;font-size:34px}.more{color:#b00020;font-weight:800;font-size:21px}
.meta{font-size:17px;color:#222}.links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.links a{flex:1 1 40%;text-align:center;padding:10px;border:2px solid #0b1f3a;border-radius:10px;color:#0b1f3a;font-weight:700;text-decoration:none;font-size:17px}
.acts{display:flex;gap:8px}.acts .btn{font-size:17px;padding:10px;min-height:46px}
.saved{display:flex;gap:8px;align-items:center;border-bottom:1px solid #ccc;padding:8px 0}.saved span{flex:1;font-weight:700}.saved .btn{width:auto;margin:0;font-size:17px;padding:10px 14px;min-height:46px}
dialog{width:94vw;border:0;border-radius:16px;padding:12px}video{width:100%;border-radius:10px;background:#000}
#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#111;color:#fff;padding:12px 18px;border-radius:10px;font-size:18px;opacity:0;transition:.3s;pointer-events:none}#toast.on{opacity:1}
.chip{display:inline-block;margin:4px;padding:6px 10px;border-radius:20px;font-weight:700;border:2px solid #0b1f3a;background:#fff;font-size:17px}.chip.pref{background:#e5f8eb;border-color:#0a7a2f}.chip.excl{background:#fde7ea;border-color:#b00020}
.opt.filtered{opacity:.55;border-style:dashed}.chk{display:flex;gap:10px;align-items:center}
[hidden]{display:none!important}
