/* ===== 20 Oct evening (owner): the quest panel — the blue card under the chapter tracker (js/client/78-quest-trk.js, sim/67-quest-pool.js) ===== */
#questTrk{position:absolute;right:16px;top:54px;width:300px;padding:0;overflow:hidden;z-index:2;border-color:#7fa6d8;box-shadow:0 0 0 1px #000,0 4px 14px #000a;background:linear-gradient(180deg,#0e1726,#0a111c)}
#questTrk .th{display:flex;align-items:baseline;gap:8px;padding:6px 10px;background:linear-gradient(90deg,#17345e,#0f2038 75%,#0a1424);border-bottom:1px solid #7fa6d8}
#questTrk .th span{font:600 12px var(--f-ui);color:#a9c4e8;flex:none}
#questTrk .th b{font:700 14px/1.15 var(--f-ui);color:#dbeaff;text-shadow:1px 1px 0 #000;flex:1;min-width:0}
#questTrk .th .btn{flex:none;padding:0 6px;font-size:12px;line-height:18px;border-color:#3f6494;color:#a9c4e8;background:#0b1726}
#questTrk .tg{display:flex;align-items:flex-start;gap:8px;padding:7px 10px 3px;font:600 13.5px/1.3 var(--f-ui);color:var(--ink)}
#questTrk .tg i{flex:none;width:16px;height:16px;margin-top:1px;display:grid;place-items:center;font-style:normal;background:#4aa3ff;transform:rotate(45deg)}
#questTrk .tg i b{display:block;transform:rotate(-45deg);font:800 11px/1 var(--f-ui);color:#06101c}
#questTrk .tg span{flex:1;min-width:0}
#questTrk .tg em{font-style:normal;color:#7fc0ff;flex:none;font-weight:700}#questTrk .tg em.ok{color:var(--good)}
#questTrk .tbar{height:4px;margin:3px 10px 2px 34px;background:#0006;border:1px solid #0008}
#questTrk .tbar i{display:block;height:100%;background:linear-gradient(90deg,#2a6fd0,#7fc0ff);transition:width .4s}
#questTrk .tw{padding:3px 10px 2px 34px;font-size:12px;line-height:1.35;color:var(--dim)}
#questTrk .tq{padding:2px 10px 6px 34px;font:600 12px var(--f-ui);color:#a9c4e8}
#questTrk .tq b{font-weight:800}#questTrk .tq b.ok{color:var(--good)}#questTrk .tq b.mid{color:var(--gold)}#questTrk .tq b.bad{color:#ff7a7a}#questTrk .tq b.hand{color:#c9a4ff}
#questTrk .tact{display:flex;gap:6px;padding:0 8px 8px}
#questTrk .tact .btn{padding:4px 9px;font-size:12.5px;border-color:#3f6494;background:#0b1726;color:#dbeaff}
#questTrk .tact .btn:hover{border-color:#7fc0ff}
#questTrk .tact .btn.hot{flex:1;background:linear-gradient(180deg,#2a6fd0,#1b4a92);border-color:#7fc0ff;color:#fff;font-weight:700}
#questTrk .tact .btn.stop{flex:1;background:#2a1a1a;border-color:#8a4a4a;color:#ffb3a7}
#questTrk .tact .btn.qd{flex:1;background:#14243a;border-color:#4a6f9e;color:#a9c4e8}
/* 21 Oct night (owner): taking quests — «Взять ближайшие · N», or the hero collecting them (js/client/78-quest-trk.js, sim/67-quest-pool.js) */
#questTrk .tact2{display:flex;align-items:center;gap:6px;margin-top:-2px;padding:0 8px 8px;font:600 12px var(--f-ui);color:#a9c4e8}
#questTrk .tact2 span{flex:1;min-width:0}#questTrk .tact2 span b{color:#dbeaff}
#questTrk .tact2 .btn{padding:4px 9px;font-size:12.5px;border-color:#3f6494;background:#0b1726;color:#dbeaff}
#questTrk .tact2 .btn:hover{border-color:#7fc0ff}
#questTrk.tk .tg i{background:#5b6b80}#questTrk.tk .th b{color:#b9c8dc}
#questTrk .tact2 .btn.near{flex:1;background:linear-gradient(180deg,#1f6a45,#14462e);border-color:#5fd39a;color:#eafff3;font-weight:700}
#questTrk.on{border-color:#7fc0ff;box-shadow:0 0 0 1px #000,0 0 18px #4aa3ff66,0 4px 14px #000a}
#questTrk.on .th{background:linear-gradient(90deg,#2a5aa0,#17345e 70%,#0f2038)}
@media (prefers-reduced-motion:no-preference){#questTrk.on{animation:qpOn 2.2s ease-in-out infinite}}
@keyframes qpOn{50%{box-shadow:0 0 0 1px #000,0 0 28px #4aa3ffaa,0 4px 14px #000a}}
/* 28 Oct (owner: «маленькую синюю панельку квестов, чтобы по нажатию он бежал делать квесты»): the phone's small card (78-quest-trk.js QP_MINI) —
   one row under the chapter tracker, right-aligned like it; it used to be hidden under 700 px and full size on a phone held sideways */
#questTrk.mini{width:min(270px,62vw);right:max(6px,env(safe-area-inset-right));border-width:2px;animation:none}
#questTrk .qm{display:flex;align-items:center;gap:3px;padding:3px}
#questTrk .qm .btn{flex:none;padding:0 8px;height:26px;line-height:22px;font:700 12px var(--f-ui);border-color:#3f6494;background:#0b1726;color:#dbeaff;min-width:0}
#questTrk .qm .btn.ar{width:24px;padding:0;font-size:10px}
#questTrk .qm .btn.hot{background:linear-gradient(180deg,#2a6fd0,#1b4a92);border-color:#7fc0ff;color:#fff}
#questTrk .qm .btn.stop{background:#2a1a1a;border-color:#8a4a4a;color:#ffb3a7}
#questTrk .qm .btn.qd{background:#14243a;border-color:#4a6f9e;color:#a9c4e8}
#questTrk .qmt{flex:1;min-width:0;display:flex;align-items:center;gap:6px;padding:0 4px;height:26px;cursor:pointer;font:600 11.5px/1.15 var(--f-ui);color:var(--ink)}
#questTrk .qmt span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#questTrk .qmt i{flex:none;width:11px;height:11px;display:grid;place-items:center;font-style:normal;background:#4aa3ff;transform:rotate(45deg)}
#questTrk .qmt i b{display:block;transform:rotate(-45deg);font:800 8px/1 var(--f-ui);color:#06101c}
#questTrk .qmt em{flex:none;font-style:normal;color:#7fc0ff;font-weight:700}#questTrk .qmt em.ok{color:var(--good)}
#questTrk.mini.tk .qmt i{background:#5b6b80}
#questTrk.mini .tbar{height:3px;margin:0 6px 3px 32px}
#questTrk.mini.on{box-shadow:0 0 0 1px #000,0 0 12px #4aa3ff88}
#questTrk .tgl{color:var(--ink);padding-bottom:0}
/* 22 Oct (owner): «все задания подряд» (the right button on the panel, 78-quest-trk.js qpAll) and the journal's «Взятые» tab (30-journal.js) */
#questTrk .tact2.qall span{color:#9fe0a8}#questTrk .tact2.qall span::before{content:'▶ ';color:var(--good)}
.jallRow{align-items:center;margin:4px 0 8px}.jallRow .jdim{margin:0}
.jtaken .jq span b.ok{color:var(--good)}.jtaken .jq span b.mid{color:var(--gold)}.jtaken .jq span b.bad{color:#ff7a7a}.jtaken .jq span b.hand{color:#c9a4ff}
/* 31 Oct (owner): the phone's small card as wide as the chapter tracker (78-quest-trk.js sets the width), «▶ Делать квесты» and ▾; the big card
   (the computer's, with ✕) opened from it */
#questTrk.mini .qmt.go{color:#dbeaff;font-weight:700}#questTrk.mini .qmt.go i{background:var(--good)}
#questTrk.mini .qm .btn.ar{width:26px;font-size:12px}
#questTrk.mini{box-sizing:border-box}
#questTrk.big{width:min(300px,calc(100vw - 12px));right:max(6px,env(safe-area-inset-right));z-index:6;animation:none;max-height:calc(100dvh - var(--hudH,70px) - 84px);overflow-y:auto;overscroll-behavior:contain}
#questTrk .th .btn.qx{color:#ffb3a7;border-color:#8a4a4a;background:#2a1a1a}
#questTrk .tact2 .btn.qa{flex:1}
/* 31 Oct (owner): the developer's live rates — the banner under the top bar for everybody (92-rates-ui.js) */
#rateBan{box-sizing:border-box;position:absolute;left:50%;transform:translateX(-50%);z-index:3;pointer-events:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 7px;max-width:min(560px,92vw);padding:4px 12px;border:2px solid #ffd24a;border-radius:999px;background:linear-gradient(180deg,#3a2a08ee,#1e1606ee);box-shadow:0 0 0 1px #000,0 0 16px #ffd24a55;font:700 12.5px/1.25 var(--f-ui);color:#fff2c0;text-shadow:1px 1px 0 #000;white-space:nowrap}
#rateBan b{color:#ffd24a}#rateBan span.up{color:#a8ffb0}#rateBan span.dn{color:#ffb3a7}#rateBan em{font-style:normal;color:#c9b37a}#rateBan i{font-style:normal;font-weight:600;color:#d9c89a}
@media (prefers-reduced-motion:no-preference){#rateBan{animation:rateGlow 2.4s ease-in-out infinite}}
@keyframes rateGlow{50%{box-shadow:0 0 0 1px #000,0 0 26px #ffd24a99}}
@media (orientation:portrait) and (max-width:500px){#rateBan{left:6px;transform:none;max-width:calc(100vw - 48vw - 24px);justify-content:flex-start;white-space:normal;font-size:10.5px;padding:3px 8px;border-radius:12px}}
@media (orientation:landscape) and (max-height:500px){#rateBan{font-size:10.5px;padding:2px 9px}}
