:root{--bg:#f5f6fb;--card:#fff;--text:#141833;--muted:#667085;--line:#e6e8f0;--soft:#f1f2f9;--brand:#5b4bff;--brand2:#4534e6;--brand-soft:#eeecff;--accent:#ff4d8d;--ok:#0f8a4b;--okbg:#dff7ea;--bad:#c62828;--badbg:#fde7e7;--warn:#9a6700;--warnbg:#fff3cd;--radius:16px;--shadow:0 1px 2px rgba(20,24,51,.05),0 8px 24px rgba(20,24,51,.06);--grad:linear-gradient(135deg,#5b4bff,#9a4bff 55%,#ff4d8d)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:1.7rem;line-height:1.2;letter-spacing:-.02em;margin:0 0 18px;font-weight:800}h2{font-size:1.12rem;letter-spacing:-.01em;margin:0 0 12px;font-weight:700}h3{font-size:1rem;margin:0 0 8px}:focus-visible{outline:3px solid rgba(91,75,255,.35);outline-offset:2px;border-radius:6px}.top{background:hsla(0,0%,100%,.86);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:20}.top .in{max-width:1240px;margin:0 auto;padding:12px 20px;display:flex;gap:6px 18px;align-items:center;flex-wrap:wrap}.top .in>a:not(.brand):not(.btn){color:var(--text);font-weight:600;font-size:.93rem;padding:6px 4px}.top .in>a:not(.brand):not(.btn):hover{color:var(--brand);text-decoration:none}.brand{font-weight:800;font-size:1.25rem;letter-spacing:-.02em;color:var(--text);margin-right:auto;display:flex;align-items:center;gap:10px}.brand:hover{text-decoration:none}.brand:before{content:"";width:30px;height:30px;border-radius:9px;background:var(--grad);box-shadow:0 4px 12px rgba(91,75,255,.35)}.wrap{max-width:1240px;margin:0 auto;padding:28px 20px 72px;min-height:70vh}.footer{border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:.88rem}.footer .in{max-width:1240px;margin:0 auto;padding:22px 20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.narrow{max-width:440px;margin:48px auto}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:20px;box-shadow:var(--shadow)}.grid{display:grid;grid-gap:22px;gap:22px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.stats{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));margin-bottom:22px}.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--grad)}.stat b{display:block;font-size:1.55rem;letter-spacing:-.02em;line-height:1.2}.stat span{color:var(--muted);font-size:.84rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--brand);color:#fff;border:0;border-radius:11px;padding:10px 18px;font:inherit;font-size:.94rem;font-weight:700;cursor:pointer;transition:transform .08s,box-shadow .15s,background .15s;box-shadow:0 4px 14px rgba(91,75,255,.28)}.btn:hover{background:var(--brand2);text-decoration:none;box-shadow:0 6px 18px rgba(91,75,255,.36)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn.ghost{background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.ghost:hover{background:var(--soft)}.btn.sm{padding:6px 12px;font-size:.82rem;border-radius:9px}.btn.danger{background:var(--bad);box-shadow:none}.link{background:none;border:0;color:var(--brand);cursor:pointer;padding:0;font:inherit;font-weight:600}.link:hover{text-decoration:underline}label{display:block;font-size:.84rem;font-weight:650;margin-bottom:14px;color:#2a2f4a}input,select,textarea{display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid #d5d9e6;border-radius:11px;font:inherit;font-weight:400;background:#fff;color:var(--text);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(91,75,255,.14)}input::placeholder{color:#a0a6b8}input[type=checkbox]{display:inline;width:17px;height:17px;margin:0 8px 0 0;accent-color:var(--brand)}label.check{font-weight:400;display:inline-flex;align-items:center;margin-right:16px}.row{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:var(--soft);font-weight:700}thead th:first-child{border-radius:10px 0 0 10px}thead th:last-child{border-radius:0 10px 10px 0}tbody tr:hover{background:#fafaff}tbody tr:last-child td{border-bottom:0}.num{text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--muted);font-size:.88rem}.tag{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.7rem;font-weight:800;letter-spacing:.03em;background:#e9ebf3;color:#3b4160;white-space:nowrap}.tag.ok{background:var(--okbg);color:var(--ok)}.tag.bad{background:var(--badbg);color:var(--bad)}.tag.warn{background:var(--warnbg);color:var(--warn)}.flash{padding:13px 16px;border-radius:12px;margin-bottom:18px;font-weight:600;border:1px solid transparent}.flash.ok{background:var(--okbg);color:var(--ok);border-color:#b6ebcd}.flash.error{background:var(--badbg);color:var(--bad);border-color:#f6c4c4}.panel{display:grid;grid-template-columns:232px 1fr;grid-gap:26px;gap:26px;align-items:start}.panel>*{min-width:0}.side{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 10px;box-shadow:var(--shadow);position:-webkit-sticky;position:sticky;top:76px}.side a{display:block;padding:9px 12px;border-radius:10px;color:#2a2f4a;font-weight:600;font-size:.92rem}.side a:hover{background:var(--soft);text-decoration:none}.side a.active{background:var(--brand-soft);color:var(--brand)}.hero{background:var(--grad);color:#fff;border-radius:24px;padding:44px 36px;margin-bottom:28px;position:relative;overflow:hidden;box-shadow:0 18px 40px rgba(91,75,255,.28)}.hero:after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;background:hsla(0,0%,100%,.12)}.hero h1{font-size:2.3rem;margin-bottom:8px;max-width:640px}.hero h1,.hero p{position:relative;z-index:1}.hero p{margin:0 0 22px;opacity:.92;max-width:560px}.hero input{max-width:460px;border:0;padding:14px 18px;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.18);position:relative;z-index:1}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.chip{border:1px solid var(--line);background:#fff;border-radius:99px;padding:7px 15px;font:inherit;font-size:.86rem;font-weight:650;cursor:pointer;color:#2a2f4a}.chip:hover{border-color:var(--brand)}.chip.on{background:var(--text);color:#fff;border-color:var(--text)}.ecard{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;color:inherit;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s}.ecard:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(20,24,51,.06),0 18px 40px rgba(20,24,51,.14);text-decoration:none}.ecard .img{height:170px;background:var(--grad);background-size:cover;background-position:50%;position:relative}.ecard .date{position:absolute;left:14px;top:14px;background:#fff;border-radius:12px;padding:6px 11px;text-align:center;font-weight:800;line-height:1.1;box-shadow:0 4px 12px rgba(0,0,0,.15)}.ecard .date small{display:block;font-size:.64rem;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.ecard .flag{position:absolute;right:14px;top:14px}.ecard .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:3px;flex:1 1}.ecard h2{margin:0;font-size:1.08rem}.ecard .foot{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;align-items:center}.price{font-weight:800;font-size:1.05rem}.cover{width:100%;height:160px;object-fit:cover;border-radius:18px;background:var(--grad);display:block;margin-bottom:16px}.between{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}details summary{cursor:pointer;color:var(--brand);font-weight:700;font-size:.88rem}details[open] summary{margin-bottom:12px}.steps{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px}.step{flex:1 1;min-width:110px;padding:9px 12px;border-radius:11px;background:var(--soft);font-size:.8rem;font-weight:700;color:var(--muted)}.step.done{background:var(--okbg);color:var(--ok)}.pass{display:flex;gap:18px;align-items:center;border-radius:20px;padding:16px 18px;margin-bottom:14px;background:#fff;flex-wrap:wrap;border:1px solid var(--line);box-shadow:var(--shadow);position:relative;overflow:hidden}.pass:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:var(--grad)}.pass img{width:170px;height:170px;border-radius:12px;border:1px solid var(--line);padding:6px;background:#fff}.scanres{padding:24px;border-radius:18px;text-align:center;font-size:1.3rem;font-weight:800;margin:14px 0;box-shadow:var(--shadow)}.scanres.ok{background:#12a150;color:#fff}.scanres.bad{background:#dc2626;color:#fff}.scanwait{padding:16px;border-radius:14px;background:var(--warnbg);color:var(--warn);font-weight:700;margin:14px 0}.stickers{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));grid-gap:10px;gap:10px}.sticker{border:1px dashed #94a3b8;border-radius:10px;padding:8px;text-align:center;background:#fff;font-size:.72rem;page-break-inside:avoid;break-inside:avoid}.sticker svg{width:110px;height:110px;display:block;margin:0 auto 4px}@media (max-width:820px){.panel{grid-template-columns:1fr}.side{position:static;display:flex;gap:4px;overflow-x:auto;padding:8px;white-space:nowrap}.side>div{display:none}.hero{padding:30px 22px;border-radius:20px}.hero h1{font-size:1.7rem}h1{font-size:1.4rem}.card{padding:16px}}@media print{.footer,.noprint,.side,.top{display:none!important}body{background:#fff}.card,.pass{box-shadow:none}}