:root{--bg:#0b1020;--panel:#121a2e;--panel2:#18223a;--text:#eef3ff;--muted:#9ca9c4;--line:#2b3857;--blue:#0ea5e9;--cyan:#38bdf8;--green:#22c55e}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:linear-gradient(180deg,#09101f,#0d1426 55%,#0a0f1b);color:var(--text);font:15px/1.5 Inter,"Segoe UI",Arial,sans-serif}
header{min-height:72px;padding:0 max(4vw,calc((100vw - 1450px)/2));display:flex;align-items:center;gap:42px;position:sticky;top:0;z-index:10;background:rgba(9,16,31,.97);border-bottom:1px solid var(--line);box-shadow:0 8px 28px #0003}.brand{color:#fff;text-decoration:none;font-weight:900;letter-spacing:.09em;white-space:nowrap}nav{display:flex;align-items:center;gap:28px;flex:1}nav a{color:#dbeafe;text-decoration:none;transition:color .2s}nav a:hover{color:var(--cyan)}nav .disabled{color:#64748b}.linkbtn{border:0;background:transparent;color:#bfdbfe;cursor:pointer;white-space:nowrap}.linkbtn:hover{color:#fff}main{min-height:calc(100vh - 72px)}
.hero{max-width:1450px;margin:0 auto;padding:70px 22px 54px}.hero h1,.pagehead h1{margin:7px 0 17px;font-size:clamp(35px,4.5vw,62px);line-height:1.04;letter-spacing:-.04em}.hero p{color:var(--muted);font-size:18px}.eyebrow{margin-bottom:8px!important;color:var(--cyan)!important;font-size:12px!important;font-weight:850;letter-spacing:.18em}
.modules{max-width:1450px;margin:0 auto;padding:0 22px 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.module{min-height:260px;padding:28px;display:flex;flex-direction:column;color:var(--text);text-decoration:none;background:rgba(18,26,46,.96);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 45px #0002;transition:transform .2s,border-color .2s,box-shadow .2s}.module.active{border-top:3px solid var(--blue)}.module.weather{border-top-color:var(--green)}.module.active:hover{transform:translateY(-3px);border-color:var(--cyan);box-shadow:0 18px 45px #0ea5e91a}.module b{color:#71809d;font-size:13px}.module h2{margin:28px 0 10px;font-size:25px}.module p{min-height:65px;color:var(--muted)}.module span{margin-top:auto;color:#7dd3fc;font-weight:800}.module:not(.active) span{color:#71809d}
.pagehead{max-width:1450px;margin:0 auto;padding:48px 22px 24px}.pagehead h1{font-size:clamp(34px,4vw,52px)}.pagehead>p:last-child{color:var(--muted);font-size:16px}.formgrid{max-width:1450px;margin:0 auto;padding:18px 22px 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}
fieldset,.preview{margin:0;padding:25px;color:var(--text);background:rgba(18,26,46,.96);border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 35px #0002}fieldset{border-top:3px solid var(--blue)}legend{padding:0 9px;color:#7dd3fc;font-weight:850;letter-spacing:.03em}label{display:block;margin:0 0 17px;color:#dbeafe;font-size:13px;font-weight:750}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid #3a4968;border-radius:9px;outline:none;background:#f8fafc;color:#0f172a;font:inherit;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #38bdf829}textarea{resize:vertical}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.formactions{grid-column:1/-1;padding:18px 20px;display:flex;justify-content:flex-end;align-items:center;gap:24px;color:var(--muted);background:#0d1c31;border:1px solid var(--line);border-radius:13px}.formactions p{margin:0}.primary,.button{padding:12px 18px;border:0;border-radius:10px;background:var(--blue);color:#04111d;font-weight:850;text-decoration:none;cursor:pointer}.primary:hover,.button:hover{filter:brightness(1.08)}.secondary{background:#24324d;color:#fff}
.preview{max-width:1250px;margin:28px auto 60px}.preview textarea{min-height:440px}.actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.error{padding:12px 14px;color:#fecaca;background:#431b1b;border:1px solid #7f1d1d;border-radius:10px}.error.wide{max-width:1406px;margin:0 auto 12px}
.login{width:min(430px,calc(100% - 32px));margin:10vh auto;padding:38px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 60px #0005}.login .logo{width:58px;height:58px;display:grid;place-items:center;border-radius:13px;background:var(--blue);color:#04111d;font-weight:900}.login h1{font-size:30px;line-height:1.1}.stack{margin-top:30px}.muted{color:var(--muted)}
.dashboard{display:block;width:100%;height:calc(100vh - 72px);min-height:800px;border:0;background:var(--bg)}
@media(max-width:900px){header{min-height:auto;padding:16px;flex-wrap:wrap;gap:14px 24px}nav{order:3;width:100%;overflow-x:auto;gap:20px}.modules,.formgrid{grid-template-columns:1fr}.hero,.pagehead{padding-left:18px;padding-right:18px}.modules,.formgrid{padding-left:16px;padding-right:16px}.formactions{align-items:stretch;flex-direction:column}.dashboard{height:900px}.actions{justify-content:stretch}.actions>*{flex:1;text-align:center}}
@media(max-width:560px){.brand{font-size:13px}.linkbtn{padding:0}.hero{padding-top:44px}.hero h1{font-size:38px}.twocol{grid-template-columns:1fr;gap:0}fieldset{padding:20px}}

/* IXO-RQ hatósági korlátozás */
.restriction-head{padding-bottom:18px}.contact-strip{max-width:1406px;margin:0 auto 16px;padding:14px 16px;display:grid;grid-template-columns:.8fr 1.15fr 1.2fr 1.35fr;gap:14px;align-items:end;background:#0d1c31;border:1px solid var(--line);border-radius:14px}.contact-strip>div,.contact-strip>label{min-width:0;margin:0}.contact-strip span,.contact-strip label{display:block;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.contact-strip a,.contact-strip strong{display:block;margin-top:4px;color:#7dd3fc;text-decoration:none;font-size:13px}.contact-strip select{margin-top:5px}.afis-result strong{color:#fca5a5;white-space:normal}.warning{padding:12px 14px;color:#fde68a;background:#4a3510;border:1px solid #a16207;border-radius:10px}.warning.wide{max-width:1406px;margin:0 auto 12px}.warning ul,.error ul{margin:7px 0}.warning p{margin:7px 0 0}.restriction-layout{max-width:1406px;margin:0 auto;padding:0 0 70px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(390px,.8fr);gap:16px;align-items:start}.restriction-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.restriction-fields fieldset{height:100%}.field-help{margin:8px 0 0;color:var(--muted);font-size:12px}.map-panel{position:sticky;top:88px;padding:18px;background:rgba(18,26,46,.96);border:1px solid var(--line);border-top:3px solid var(--green);border-radius:16px}.map-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.map-panel-head h2{margin:3px 0 0;font-size:20px}.map-panel-head .eyebrow{margin:0!important}.map-panel-head button{flex:0 0 auto}#restrictionMap{height:470px;border:1px solid var(--line);border-radius:12px;background:#18223a;overflow:hidden}.map-status{margin-top:12px;padding:11px 12px;color:#bae6fd;background:#10243d;border:1px solid #2563a8;border-radius:9px;font-size:12px}.restriction-actions{grid-column:1/-1}
@media(max-width:1250px){.contact-strip{margin-left:16px;margin-right:16px;grid-template-columns:1fr 1fr}.restriction-layout{padding-left:16px;padding-right:16px;grid-template-columns:1fr}.map-panel{position:static}.restriction-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.restriction-fields{grid-template-columns:1fr}.contact-strip{grid-template-columns:1fr}.restriction-layout{padding-left:16px;padding-right:16px}#restrictionMap{height:420px}}
.datetime-row{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:end}.datetime-row input{min-width:0}.mini-button{height:43px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:#24324d;color:#fff;font-size:11px;font-weight:800;cursor:pointer}
