:root{
  --ink:#0b1324;
  --blue:#155eef;
  --blue-dark:#0b4ed8;
  --blue-soft:#eef4ff;
  --muted:#667085;
  --line:#e4e7ec;
  --line-strong:#d0d5dd;
  --bg:#f8fafc;
  --white:#fff;
  --success:#067647;
  --success-bg:#ecfdf3;
  --warn:#8a6100;
  --warn-bg:#fff6db;
  --danger:#b42318;
  --danger-bg:#fff1f0;
  --shadow:0 18px 55px rgba(16,24,40,.08);
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;line-height:1.45}
button,input,select,textarea{font:inherit}
a{color:inherit}
.it-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px max(22px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.it-brand{text-decoration:none;display:flex;align-items:center;gap:12px;font-weight:900;color:var(--ink)}
.it-brand-mark{width:34px;height:34px;border:2px solid var(--blue);border-radius:50%;display:grid;place-items:center;color:var(--blue);font-size:13px;font-weight:900}
.it-brand-copy{line-height:1.05}.it-brand-copy strong{display:block;font-size:15px}.it-brand-copy span{display:block;margin-top:5px;font-size:9px;letter-spacing:.18em;color:#667085;text-transform:uppercase;font-weight:800}
.it-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.it-nav-label{font-size:13px;color:var(--muted);margin-right:4px}
.it-btn,.it-btn-outline,.it-btn-danger,.it-btn-soft{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;padding:11px 17px;font-weight:800;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:.15s ease}
.it-btn{background:var(--blue);color:#fff}.it-btn:hover{background:var(--blue-dark)}
.it-btn-outline{background:#fff;border-color:var(--line-strong);color:var(--ink)}.it-btn-outline:hover{border-color:#98a2b3;background:#f9fafb}
.it-btn-soft{background:var(--blue-soft);color:#1849a9}.it-btn-soft:hover{background:#dbe8ff}
.it-btn-danger{background:#fff;border-color:#f4c7c3;color:var(--danger)}
.it-wrap{width:min(1180px,100%);margin:0 auto;padding:54px 22px 80px}
.it-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;padding:7px 11px;border:1px solid #dbe7ff;border-radius:999px;background:#fff;color:#344054;font-size:12px;font-weight:750}.it-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--blue)}
.it-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:28px}.it-hero h1{font-size:clamp(42px,6.2vw,76px);line-height:.98;letter-spacing:-.045em;margin:0;max-width:900px}.it-hero p{margin:16px 0 0;color:var(--muted);font-size:16px;max-width:680px}
.it-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 1px 1px rgba(16,24,40,.02);margin-bottom:20px}
.it-card h2{margin:0 0 7px;font-size:26px;letter-spacing:-.02em}.it-card h3{margin:0 0 6px}.it-sub{color:var(--muted);margin:0;line-height:1.65}
.it-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}.it-stat{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.it-stat span{display:block;color:var(--muted);font-size:12px;font-weight:800}.it-stat strong{display:block;margin-top:5px;font-size:27px;letter-spacing:-.03em}
.it-grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.it-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.it-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.it-field label{display:block;margin:0 0 7px;font-size:13px;font-weight:850;color:#344054}.it-field input,.it-field select,.it-field textarea{width:100%;padding:13px 14px;border:1px solid var(--line-strong);border-radius:13px;background:#fff;color:var(--ink);outline:none}.it-field input:focus,.it-field select:focus,.it-field textarea:focus{border-color:#84adff;box-shadow:0 0 0 4px #eef4ff}.it-field input:disabled{background:#f9fafb;color:#98a2b3}
.it-form-row{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:12px;align-items:end}.it-form-row-3{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:12px;align-items:end}
.it-flash{margin-bottom:20px;padding:13px 15px;border-radius:14px;border:1px solid}.it-flash.success{background:var(--success-bg);border-color:#abefc6;color:var(--success)}.it-flash.error{background:var(--danger-bg);border-color:#f4c7c3;color:var(--danger)}
.it-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:850;white-space:nowrap}.it-badge.blue{background:var(--blue-soft);color:#1849a9}.it-badge.green{background:var(--success-bg);color:var(--success)}.it-badge.yellow{background:var(--warn-bg);color:var(--warn)}.it-badge.gray{background:#f2f4f7;color:#475467}.it-badge.red{background:var(--danger-bg);color:var(--danger)}
.it-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0}.it-toolbar input{min-width:280px;flex:1}.it-toolbar input,.it-toolbar select{padding:11px 13px;border:1px solid var(--line-strong);border-radius:12px;background:#fff}
.it-table{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:22px}.it-table table{width:100%;border-collapse:collapse;min-width:980px}.it-table th{padding:13px 14px;background:#f9fafb;text-align:left;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.it-table td{padding:14px;border-top:1px solid var(--line);vertical-align:top}.it-table .meta{color:var(--muted);font-size:12px;line-height:1.55;margin-top:5px}.it-table input,.it-table select{padding:9px 10px;border:1px solid var(--line-strong);border-radius:10px;background:#fff}.it-actions{display:flex;gap:7px;flex-wrap:wrap}.it-actions form{margin:0}.it-actions button{padding:8px 11px;font-size:12px}
.it-empty{padding:38px;text-align:center;color:var(--muted)}
.it-login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);background:#fff}.it-login-art{padding:70px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#0b1324 0%,#10234a 56%,#155eef 160%);color:#fff}.it-login-art .it-brand{color:#fff}.it-login-art .it-brand-mark{border-color:#fff;color:#fff}.it-login-art .it-brand-copy span{color:#c7d7ff}.it-login-art h1{font-size:clamp(54px,6vw,92px);line-height:.92;letter-spacing:-.055em;margin:50px 0 0}.it-login-art h1 em{font-style:normal;background:var(--blue);padding:0 .08em}.it-login-art p{max-width:530px;color:#d0d5dd;font-size:17px;line-height:1.7}
.it-login-panel{display:grid;place-items:center;padding:42px;background:#fff}.it-login-card{width:min(470px,100%)}.it-login-card h2{font-size:40px;line-height:1.05;letter-spacing:-.035em;margin:12px 0}.it-login-card .it-field{margin:17px 0}.it-login-card .it-btn{width:100%;padding:14px 20px}.it-login-links{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:13px}.it-login-links a{color:#344054;text-decoration:none;font-weight:750}.it-login-links a:hover{color:var(--blue)}
.it-payment{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}.it-payment-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.it-amount{font-size:38px;font-weight:900;letter-spacing:-.04em;margin:10px 0}.it-bank{margin:16px 0;padding:17px;border-radius:16px;background:#f8fafc;line-height:1.65}.it-reference{padding:13px 14px;border:1px dashed #98a2b3;border-radius:13px;background:#fff;font-weight:900;word-break:break-word}.it-note{color:var(--muted);font-size:13px;line-height:1.6}.it-total{padding:12px 16px;border-radius:999px;background:var(--blue-soft);color:#1849a9;font-weight:850}
.it-admin-chip{display:inline-flex;align-items:center;gap:6px;background:#eef4ff;color:#1849a9;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;margin-left:7px}
.it-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.it-spacer{height:8px}
@media(max-width:900px){.it-login-shell{grid-template-columns:1fr}.it-login-art{display:none}.it-login-panel{min-height:100vh}.it-stats{grid-template-columns:1fr 1fr}.it-grid4,.it-grid3,.it-grid2,.it-form-row,.it-form-row-3{grid-template-columns:1fr 1fr}.it-form-row .it-btn,.it-form-row-3 .it-btn{grid-column:1/-1}.it-hero{align-items:flex-start;flex-direction:column}.it-nav-label{display:none}}
@media(max-width:620px){.it-top{padding:13px 14px}.it-brand-copy span{display:none}.it-wrap{padding:34px 14px 60px}.it-hero h1{font-size:46px}.it-stats,.it-grid4,.it-grid3,.it-grid2,.it-form-row,.it-form-row-3{grid-template-columns:1fr}.it-card{padding:20px;border-radius:20px}.it-nav .it-btn-outline,.it-nav .it-btn-soft{padding:9px 12px;font-size:12px}.it-nav-label{display:none}.it-toolbar{align-items:stretch}.it-toolbar input{min-width:100%}.it-login-panel{padding:24px 18px}.it-login-card h2{font-size:34px}}


/* v4.1 – egyszerű belépési oldal */
.it-login-simple-body{min-height:100vh;background:#fff}
.it-login-simple{min-height:100vh;display:grid;place-items:center;padding:24px}
.it-login-simple-card{width:min(420px,100%);padding:34px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}
.it-login-simple-brand{font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:20px}
.it-login-simple-card h1{margin:0 0 24px;font-size:40px;line-height:1;letter-spacing:-.035em}
.it-login-simple-card .it-field{margin:16px 0}
.it-login-simple-card .it-btn{width:100%;margin-top:6px;padding:14px 20px}
@media(max-width:620px){.it-login-simple{padding:18px}.it-login-simple-card{padding:24px;border-radius:18px;box-shadow:none}.it-login-simple-card h1{font-size:34px}}

/* v4.2 – admin felulet: attekintheto, gorgetes nelkuli kartyak */
.it-admin-body{background:#f6f8fb}
.it-admin-wrap{width:min(1240px,100%);padding-top:38px}
.it-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.it-admin-heading h1{margin:0;font-size:clamp(36px,5vw,58px);line-height:1;letter-spacing:-.045em}
.it-admin-heading .it-kicker{margin-bottom:14px}
.it-btn-sm{padding:8px 12px;font-size:12px;min-height:36px}
.it-admin-stats{margin-bottom:20px}
.it-invite-card{padding:22px 24px}
.it-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.it-section-head h2{margin:0;font-size:24px;letter-spacing:-.025em}
.it-owner-note{display:inline-flex;align-items:center;border-radius:999px;background:var(--blue-soft);color:#1849a9;padding:7px 11px;font-size:12px;font-weight:800;white-space:nowrap}
.it-invite-grid{display:grid;grid-template-columns:1.1fr 1.25fr .9fr 130px auto;gap:10px;align-items:end}
.it-invite-grid .it-btn{min-height:46px;white-space:nowrap}
.it-admin-toolbar{margin:18px 0 26px}
.it-admin-toolbar input{min-width:0}
.it-admin-section{margin-top:24px}
.it-member-list,.it-payment-admin-list{display:grid;gap:14px}
.it-member-card,.it-payment-admin-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 1px 1px rgba(16,24,40,.02)}
.it-member-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid #edf0f4}
.it-member-title{min-width:0}
.it-member-title strong{display:block;font-size:20px;line-height:1.2;letter-spacing:-.02em}
.it-member-title span{display:block;margin-top:4px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.it-member-badges{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.it-member-fields{display:grid;grid-template-columns:1.05fr 1.25fr .8fr .8fr 110px auto;gap:10px;align-items:end;padding:16px 0}
.it-member-fields .it-field label{font-size:11px;text-transform:uppercase;letter-spacing:.045em;color:#667085}
.it-member-fields .it-field input{padding:10px 11px;border-radius:11px;min-height:42px}
.it-year-field input{min-width:0}
.it-save-btn{min-height:42px;white-space:nowrap}
.it-member-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid #edf0f4}
.it-member-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:12px}
.it-member-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.it-member-actions form{margin:0}
.it-member-actions .it-btn-outline,.it-member-actions .it-btn-soft,.it-member-actions .it-btn-danger{border-radius:10px;font-weight:750}
.it-payment-admin-card{padding:18px 20px}
.it-payment-admin-main{display:grid;grid-template-columns:minmax(220px,1fr) 150px auto;gap:16px;align-items:center}
.it-payment-admin-person strong{display:block;font-size:17px}
.it-payment-admin-person span{display:block;margin-top:3px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.it-payment-admin-amount strong{display:block;font-size:22px;letter-spacing:-.02em}
.it-payment-admin-amount span{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.it-payment-reference{margin-top:12px;padding:11px 13px;border-radius:11px;background:#f8fafc;color:#475467;font-size:12px;overflow-wrap:anywhere}
.it-payment-reference strong{color:var(--ink)}
.it-payment-admin-form{display:grid;grid-template-columns:190px minmax(220px,1fr) auto;gap:10px;align-items:end;margin-top:13px}
.it-payment-admin-form .it-field label{font-size:11px;text-transform:uppercase;letter-spacing:.045em;color:#667085}
.it-payment-admin-form select,.it-payment-admin-form input{min-height:42px}
.it-payment-admin-form .it-btn-outline{min-height:42px;white-space:nowrap}
.it-payment-times{margin-top:11px;color:var(--muted);font-size:11px;line-height:1.5}

/* Belépés: szandekosan minimalis */
.it-login-only .it-field input{width:100%;padding:13px 14px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;color:var(--ink);outline:none}
.it-login-only .it-field input:focus{border-color:#84adff;box-shadow:0 0 0 4px #eef4ff}

@media(max-width:1080px){
  .it-invite-grid{grid-template-columns:1fr 1fr}
  .it-invite-grid .it-btn{grid-column:1/-1;justify-self:start}
  .it-member-fields{grid-template-columns:1fr 1fr 1fr}
  .it-member-fields .it-save-btn{grid-column:3}
}
@media(max-width:820px){
  .it-admin-heading{align-items:flex-start;flex-direction:column}
  .it-section-head{flex-direction:column}
  .it-owner-note{white-space:normal}
  .it-member-head{flex-direction:column}
  .it-member-badges{justify-content:flex-start}
  .it-member-fields{grid-template-columns:1fr 1fr}
  .it-member-fields .it-save-btn{grid-column:1/-1;justify-self:start}
  .it-member-foot{align-items:flex-start;flex-direction:column}
  .it-member-actions{justify-content:flex-start}
  .it-payment-admin-main{grid-template-columns:1fr auto}
  .it-payment-admin-person{grid-column:1/-1}
  .it-payment-admin-form{grid-template-columns:1fr 1fr}
  .it-payment-admin-form .it-btn-outline{grid-column:1/-1;justify-self:start}
}
@media(max-width:620px){
  .it-admin-wrap{padding-top:26px}
  .it-admin-heading h1{font-size:38px}
  .it-admin-stats{grid-template-columns:1fr 1fr}
  .it-invite-grid,.it-member-fields,.it-payment-admin-form{grid-template-columns:1fr}
  .it-invite-grid .it-btn,.it-member-fields .it-save-btn,.it-payment-admin-form .it-btn-outline{grid-column:auto;width:100%;justify-self:stretch}
  .it-member-card,.it-payment-admin-card{padding:16px;border-radius:16px}
  .it-member-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .it-member-actions form,.it-member-actions button{width:100%}
  .it-payment-admin-main{grid-template-columns:1fr}
  .it-payment-admin-person{grid-column:auto}
}
