:root{--bg:#f6f7f6;--card:#fff;--ink:#1c2321;--mut:#617069;--line:#dde3df;--acc:#00772f;--acc-ink:#fff;--acc-soft:#e2f2e8;--gold:#c0a465;--heart:#b5261e;--warn:#b4531a;--warn-soft:#fbeadd;--bad:#b3261e;--r:10px}
@media(prefers-color-scheme:dark){:root{--bg:#121715;--card:#1a211e;--ink:#e8eeeb;--mut:#93a39b;--line:#2d3833;--acc:#4cc27a;--acc-ink:#06210f;--acc-soft:#17301f;--gold:#c0a465;--heart:#ef6f66;--warn:#f0a066;--warn-soft:#3a2819;--bad:#ff8a80}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--acc)}
.wrap{max-width:900px;margin:0 auto;padding:0 16px}
main.wrap{padding-top:20px;padding-bottom:40px}
main.bare{max-width:520px;padding-top:12vh}
.foot{color:var(--mut);font-size:13px;padding-bottom:24px;text-align:center}
h1{font-size:1.5rem;margin:.2em 0 .6em}h2{font-size:1.15rem;margin:1.2em 0 .5em}
.top{background:var(--card);border-bottom:3px solid var(--gold)}
.top-in{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;color:var(--acc);line-height:1.15}
.brand img{height:48px;width:auto;display:block}
.brand small{display:block;font-weight:400;color:var(--mut);font-size:12px}
.nav{display:flex;gap:4px;flex-wrap:wrap;flex:1}
.nav a{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--ink)}
.nav a.on{background:var(--acc-soft);color:var(--acc);font-weight:600}
.badge{background:var(--acc);color:var(--acc-ink);border-radius:20px;font-size:12px;padding:1px 7px;margin-left:6px}
.logout{display:flex;align-items:center;gap:8px;margin:0}.who{color:var(--mut);font-size:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin:0 0 12px;display:block;color:inherit;text-decoration:none}
.narrow{max-width:480px;margin-left:auto;margin-right:auto}
.center-card{text-align:left}
.empty{text-align:center;color:var(--mut)}
.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}.wrap-s{flex-wrap:wrap}
.muted{color:var(--mut)}.small{font-size:14px}
.btn{display:inline-block;background:var(--acc);color:var(--acc-ink);border:1px solid var(--acc);border-radius:8px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn.small{padding:5px 12px;font-size:14px}.btn.ghost{background:transparent;color:var(--acc)}
.form label,.form legend{display:block;font-weight:600;margin:12px 0 4px}
.form label.check,label.check{font-weight:400;display:flex;gap:8px;align-items:center;margin:10px 0}
input,select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 10px}
input[type=radio],input[type=checkbox]{width:auto}
input:focus,select:focus,textarea:focus,.btn:focus-visible,a:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
fieldset{border:0;padding:0;margin:0}
.form .btn{margin-top:14px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.grid2{grid-template-columns:1fr}.top-in{gap:8px}}
.bad input,.bad select,.bad textarea{border-color:var(--bad)}.err{color:var(--bad)}
.flash{border-radius:8px;padding:10px 14px;margin:0 0 12px;background:var(--acc-soft);border:1px solid var(--acc)}
.flash.warn{background:var(--warn-soft);border-color:var(--warn)}
.urg{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}
.urg-opt{display:flex!important;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-weight:400!important;margin:0!important;cursor:pointer}
.urg-opt small{display:block;color:var(--mut)}
.urg-opt:has(input:checked){border-color:var(--acc);background:var(--acc-soft)}
.chip{display:inline-block;border-radius:20px;padding:1px 10px;font-size:13px;background:var(--acc-soft);color:var(--acc);white-space:nowrap}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:6px}
.cu-azonnali{color:#b3261e}.cu-surgos{color:#b4531a}.cu-normal{color:#00772f}.cu-rer{color:#617069}
.chip.cu-azonnali{background:#fbe3e1}.chip.cu-surgos{background:#fbeadd}.chip.cu-normal{background:#e2f2e8}.chip.cu-rer{background:#eceeed}
@media(prefers-color-scheme:dark){.cu-azonnali{color:#ff8a80}.cu-surgos{color:#f0a066}.cu-normal{color:#4cc27a}.cu-rer{color:#93a39b}.chip.cu-azonnali{background:#3d1f1d}.chip.cu-surgos{background:#3a2819}.chip.cu-normal{background:#17301f}.chip.cu-rer{background:#262e2b}}
.chip.s-uj{background:#e4ecfb;color:#2a4fa5}.chip.s-folyamatban{background:#fff1cf;color:#8a6200}.chip.s-varakozik{background:#eee3fa;color:#6a3da8}.chip.s-megoldva,.chip.s-lezarva{background:var(--acc-soft);color:var(--acc)}
@media(prefers-color-scheme:dark){.chip.s-uj{background:#1c2a4a;color:#9db8f5}.chip.s-folyamatban{background:#3a3016;color:#f0cd6a}.chip.s-varakozik{background:#2c2142;color:#c4a4f0}}
.chip.new-msg{background:var(--acc);color:var(--acc-ink)}
.ticket-row{transition:border-color .15s}.ticket-row:hover{border-color:var(--acc)}
.ticket-row.unread{border-left:4px solid var(--acc)}
.last{margin:6px 0 0;color:var(--mut)}
.stepper{display:flex;list-style:none;padding:0;margin:12px 0 4px;gap:4px}
.stepper li{flex:1;text-align:center;font-size:13px;color:var(--mut);border-top:4px solid var(--line);padding-top:4px}
.stepper li.done{border-color:var(--acc);color:var(--acc)}.stepper li.cur{border-color:var(--acc);color:var(--ink);font-weight:600}
.meta{display:grid;grid-template-columns:110px 1fr;gap:4px 12px;margin:12px 0}.meta dt{color:var(--mut)}.meta dd{margin:0}
.desc{white-space:normal}
.photos,.previews{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.photos img,.previews img{width:110px;height:110px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.thread{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.msg{max-width:88%;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 14px}
.msg.mine{align-self:flex-end;background:var(--acc-soft);border-color:transparent}
.msg.internal{border-style:dashed;border-color:var(--warn);background:var(--warn-soft)}
.msg-h{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:4px}
.sys{text-align:center;color:var(--mut);font-size:13px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:10px 14px}.stat b{font-size:1.6rem;display:block}.stat span{color:var(--mut);font-size:14px}.stat.hot b{color:var(--bad)}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;align-items:center}
.filters .btn{margin:0}
.pager{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:12px}
.brow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--line)}
.brow:first-of-type{border-top:0}
.brow input[name=name],.brow input[name=email]{flex:1 1 200px;width:auto}.brow select{width:auto}.brow .num{width:80px}
.brow .uname{flex:1 1 220px}
.inline-admin .btn{margin-top:8px}
@media(max-width:700px){.nav{order:3;flex:1 0 100%}.logout{margin-left:auto}.who{display:none}.form legend{margin-top:14px}}

.logo-big{display:block;margin:0 auto 12px;height:140px;width:auto}
.center-card h1{text-align:center}.center-card>.muted{text-align:center}
.bare .card{border-top:4px solid var(--heart)}
.btn:hover{filter:brightness(1.08)}
