:root{--ig-gold:#d4af37;--ig-gold-soft:#f3d577;--ig-bg:#07111f;--ig-card:#060b15;--ig-white:#fff}*{box-sizing:border-box}body{margin:0;background:#07111f;color:#fff;font-family:Arial,Helvetica,sans-serif}.auth-hero-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 430px;background:#07111f;color:#fff;overflow:hidden}.auth-hero-visual{position:relative;min-height:100vh;background-image:url('../images/nyito6.png?v=tools0201');background-size:cover;background-position:left center;background-repeat:no-repeat;overflow:hidden}.auth-hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,8,15,.05) 0%,rgba(4,8,15,.12) 42%,rgba(4,8,15,.34) 100%),linear-gradient(180deg,rgba(4,8,15,.05) 0%,rgba(4,8,15,.02) 48%,rgba(4,8,15,.22) 100%);pointer-events:none}.auth-hero-badge{position:absolute;left:22px;top:24px;z-index:2;border:1px solid rgba(212,175,55,.86);color:#f8d86c;border-radius:999px;padding:8px 18px;font-size:12px;line-height:1;font-weight:900;text-transform:uppercase;letter-spacing:.03em;background:rgba(5,9,16,.32)}.auth-hero-copy{position:absolute;z-index:2;left:44%;top:50%;width:min(590px,50vw);transform:translate(-8%,-50%);text-shadow:0 2px 18px rgba(0,0,0,.45)}.auth-brand-title{font-size:clamp(42px,5.2vw,76px);line-height:.95;font-weight:900;letter-spacing:.08em;white-space:nowrap}.auth-brand-title span{color:#fff}.auth-brand-title strong{background:linear-gradient(90deg,#fff 0%,#f5f5f5 30%,#d4af37 62%,#a67c16 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.auth-portal-title{color:var(--ig-gold);font-size:clamp(22px,2.4vw,34px);letter-spacing:.28em;margin-top:18px;text-transform:uppercase}.auth-section-title{font-size:clamp(31px,3.1vw,46px);font-weight:700;margin-top:38px}.auth-hero-text{font-size:clamp(16px,1.2vw,21px);line-height:1.45;max-width:560px;margin:18px 0 0;color:rgba(255,255,255,.94)}.auth-feature-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:58px;padding-top:24px;border-top:1px solid rgba(212,175,55,.22)}.auth-feature-card img{display:block;width:32px;height:32px;object-fit:contain;margin:0 0 10px;filter:drop-shadow(0 3px 8px rgba(212,175,55,.20))}.auth-feature-card b{display:block;color:var(--ig-gold-soft);font-size:13px;font-weight:900;margin-bottom:8px;text-transform:uppercase}.auth-feature-card span{display:block;color:rgba(255,255,255,.9);font-size:12px;line-height:1.35}.auth-login-panel{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 38px;background:#07111f}.auth-login-card{width:100%;max-width:360px;border:1px solid rgba(212,175,55,.55);border-radius:24px;padding:28px 30px;background:rgba(5,10,19,.86);box-shadow:0 24px 60px rgba(0,0,0,.45)}.auth-login-logo{display:flex;align-items:center;gap:14px;margin:8px 0 22px}.auth-login-logo-mark{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe484,#c89524);color:#07111f;font-weight:900;font-size:19px}.auth-login-logo b{display:block;font-size:17px;color:#fff}.auth-login-logo span{display:block;color:#f5cd55;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-top:3px}.auth-login-card h1{font-size:31px;margin:0 0 10px}.auth-login-card .lead{font-size:14px;line-height:1.45;color:rgba(255,255,255,.86);margin:0 0 24px}.auth-login-form label{display:block;color:#fff;font-size:13px;font-weight:800;margin:0 0 15px}.auth-login-form input[type=text],.auth-login-form input[type=password]{width:100%;margin-top:7px;border:0;border-radius:13px;padding:13px 15px;background:#eaf2ff;color:#08111e;outline:none}.tools-password-row{display:flex;gap:8px;align-items:stretch;margin-top:7px}.tools-password-row input{margin-top:0!important;flex:1}.tools-eye{width:48px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:#eaf2ff;color:#07111f;cursor:pointer}.auth-remember{display:flex!important;align-items:center;gap:8px;margin-top:3px!important}.auth-remember input{width:16px!important;height:16px!important;margin:0!important}.auth-login-actions{display:grid;gap:11px;margin-top:6px}.auth-login-actions button{border:0;border-radius:13px;padding:14px 16px;font-weight:900;cursor:pointer;text-align:center}.auth-login-actions .primary{background:linear-gradient(135deg,#ffe278,#c89424);color:#080d14}.auth-login-actions .passkey{background:linear-gradient(180deg,#252b36,#151a24);color:#fff;border:1px solid rgba(255,255,255,.18)}.auth-login-meta{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;margin-top:28px}.auth-login-chip{border:1px solid rgba(212,175,55,.65);border-radius:999px;color:#ffe17b;font-size:10px;font-weight:900;padding:6px 9px}.auth-admin-link{font-size:11px;line-height:1.35;color:rgba(255,255,255,.65);margin-top:15px}.auth-admin-link a{color:#f3d577;font-weight:900}.auth-alert{padding:10px 12px;border-radius:12px;margin:0 0 14px;font-size:13px}.auth-alert-error{background:#3a1018;color:#ffd7df;border:1px solid #9f1239}.tools-app-body{min-height:100vh;background:#f4f7fb;color:#0f172a;font-family:Arial,Helvetica,sans-serif}.tools-topbar{position:sticky;top:0;z-index:50;height:56px;background:linear-gradient(90deg,#07111f,#13213a);color:#fff;display:flex;align-items:center;gap:12px;padding:0 14px;box-shadow:0 3px 18px rgba(15,23,42,.22)}.tools-menu-btn{border:1px solid rgba(212,175,55,.55);border-radius:10px;background:rgba(255,255,255,.08);color:#f3d577;width:42px;height:38px;font-size:22px;cursor:pointer}.tools-top-title{font-weight:900}.tools-top-user{margin-left:auto;color:#cbd5e1;font-size:13px}.tools-dim{display:none;position:fixed;inset:0;background:rgba(2,6,23,.55);z-index:80}.tools-dim.open{display:block}.tools-drawer{position:fixed;top:0;bottom:0;left:-320px;width:300px;background:#07111f;color:#fff;z-index:90;padding:18px 14px;overflow:auto;transition:left .18s ease;box-shadow:14px 0 40px rgba(0,0,0,.35);border-right:1px solid rgba(212,175,55,.35)}.tools-drawer.open{left:0}.tools-drawer-title{font-size:22px;font-weight:900;margin:4px 4px 18px;color:#f3d577}.tools-menu-section{margin:18px 4px 8px;color:#9aa7bd;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.tools-menu-item{display:block;margin:5px 0;padding:11px 12px;border-radius:10px;background:#111827;color:#fff;text-decoration:none;font-weight:700;border:1px solid rgba(255,255,255,.06)}.tools-menu-item:hover{background:#1b2535}.tools-admin-page{padding:22px;max-width:1240px;margin:0 auto}.tools-admin-hero{border-radius:24px;padding:30px;background:linear-gradient(135deg,#111827,#07111f);color:#fff;margin-bottom:20px;border:1px solid rgba(212,175,55,.35)}.tools-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#f3d577;margin-bottom:12px}.tools-admin-hero h1{font-size:clamp(40px,7vw,76px);line-height:.95;margin:0 0 10px;font-weight:900}.tools-admin-hero p{font-size:20px;color:#cbd5e1;margin:0}.tools-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.tools-module-card{display:block;text-decoration:none;color:#0f172a;background:#fff;border:1px solid #dbe4f0;border-radius:18px;padding:18px;min-height:142px;box-shadow:0 12px 32px rgba(15,23,42,.08)}.tools-module-card:hover{transform:translateY(-1px);box-shadow:0 16px 40px rgba(15,23,42,.16)}.tools-module-icon{font-size:30px;margin-bottom:12px}.tools-module-card strong{display:block;font-size:17px;margin-bottom:8px}.tools-module-card span{display:block;color:#64748b;font-size:13px;line-height:1.35}@media(max-width:1100px){.auth-hero-page{grid-template-columns:1fr}.auth-login-panel{min-height:auto;padding:32px 20px 46px}.auth-hero-visual{min-height:720px}.auth-hero-copy{left:44px;right:44px;width:auto;transform:translateY(-50%)}}@media(max-width:900px){.tools-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.auth-hero-visual{min-height:650px;background-position:left center}.auth-hero-copy{left:28px;right:24px;top:auto;bottom:44px;transform:none;width:auto}.auth-brand-title{font-size:34px;letter-spacing:.04em;white-space:normal}.auth-portal-title{font-size:17px;letter-spacing:.18em}.auth-section-title{font-size:30px;margin-top:26px}.auth-feature-row{grid-template-columns:1fr;gap:14px;margin-top:34px}.tools-card-grid{grid-template-columns:1fr}.tools-top-user{display:none}}
/* István Tools Platform v03 shell refinements */
.tools-app-body[data-theme="dark"]{background:#07111f;color:#e5edf8}.tools-app-body[data-theme="dark"] .tools-module-card,.tools-app-body[data-theme="dark"] .tools-info-panel{background:#0c1626;color:#f8fafc;border-color:rgba(212,175,55,.22)}.tools-app-body[data-theme="dark"] .tools-module-card span,.tools-app-body[data-theme="dark"] .tools-info-panel p{color:#cbd5e1}.tools-app-body[data-theme="dark"] .tools-module-card em{background:rgba(212,175,55,.12);color:#f3d577}.tools-app-body[data-theme="light"]{background:#f4f7fb;color:#0f172a}.tools-drawer-brand{display:flex;align-items:center;gap:12px;margin:4px 4px 18px}.tools-drawer-mark,.tools-top-mark{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe484,#c89524);color:#07111f;font-weight:900}.tools-drawer-mark{width:42px;height:42px;border-radius:13px}.tools-drawer-brand strong{display:block;font-size:19px;color:#fff}.tools-drawer-brand span{display:block;color:#f3d577;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.tools-menu-item.active{background:linear-gradient(135deg,rgba(212,175,55,.22),rgba(17,24,39,.92));border-color:rgba(212,175,55,.65);color:#f8df82}.tools-top-title{display:flex;align-items:center;gap:10px}.tools-top-mark{width:30px;height:30px;border-radius:9px;font-size:13px}.tools-top-title small{display:block;color:#f3d577;font-weight:800;font-size:12px}.tools-top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.tools-theme-toggle{border:1px solid rgba(212,175,55,.55);border-radius:999px;background:rgba(255,255,255,.08);color:#f3d577;padding:8px 10px;cursor:pointer}.tools-status-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.tools-status-strip div{border:1px solid rgba(212,175,55,.25);border-radius:16px;background:linear-gradient(135deg,rgba(17,24,39,.98),rgba(7,17,31,.95));padding:15px;color:#fff}.tools-status-strip strong{display:block;color:#f3d577;font-size:14px;margin-bottom:5px}.tools-status-strip span{color:#cbd5e1;font-size:13px}.tools-module-card{position:relative;overflow:hidden}.tools-module-card em{position:absolute;right:12px;bottom:12px;font-style:normal;font-size:10px;text-transform:uppercase;font-weight:900;border-radius:999px;padding:5px 8px;background:#eef2ff;color:#334155}.tools-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tools-info-panel{border:1px solid #dbe4f0;border-radius:18px;background:#fff;padding:20px;box-shadow:0 12px 32px rgba(15,23,42,.08)}.tools-info-panel h2{margin:0 0 10px;font-size:20px}.tools-info-panel p{margin:0;color:#64748b;line-height:1.5}@media(max-width:900px){.tools-status-strip,.tools-panel-grid{grid-template-columns:1fr}.tools-top-actions{gap:8px}.tools-theme-toggle{padding:7px 9px}}

/* TOOLS Dashboard Reorganization v01 */
.tools-module-section{margin:0 0 24px}.tools-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:8px 0 12px;padding:0 4px}.tools-section-head h2{margin:0;font-size:24px;color:#0f172a}.tools-section-head p{margin:0;color:#64748b;font-size:13px;line-height:1.35;text-align:right;max-width:560px}.tools-app-body[data-theme="dark"] .tools-section-head h2{color:#f8fafc}.tools-app-body[data-theme="dark"] .tools-section-head p{color:#cbd5e1}.tools-module-section+.tools-module-section{padding-top:18px;border-top:1px solid rgba(148,163,184,.26)}.tools-app-body[data-theme="dark"] .tools-module-section+.tools-module-section{border-top-color:rgba(212,175,55,.20)}.tools-card-grid{margin-bottom:6px}.tools-module-card[href="#"]{opacity:.72;cursor:not-allowed}.tools-module-card[href="#"]:hover{transform:none}.tools-module-card em{max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tools-menu-item small{display:block;color:#94a3b8;font-size:10px;margin-top:2px;font-weight:700}@media(max-width:760px){.tools-section-head{display:block}.tools-section-head p{text-align:left;margin-top:5px}.tools-section-head h2{font-size:21px}}

/* CHG Tools Login Hero Full Width v01
   Goal: Budapest hero background spans the full viewport width.
   Login panel remains floating on the right side above the image.
   Existing image URL, overlay, text and form markup remain unchanged. */
@media (min-width: 1101px){
  .auth-hero-page{
    position:relative;
    display:block;
    min-height:100vh;
    width:100vw;
    overflow:hidden;
    background:#07111f;
  }
  .auth-hero-visual{
    position:absolute;
    inset:0;
    width:100vw;
    min-height:100vh;
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
  }
  .auth-login-panel{
    position:absolute;
    z-index:5;
    top:0;
    right:0;
    bottom:0;
    width:430px;
    min-height:100vh;
    background:transparent;
  }
  .auth-login-card{
    backdrop-filter:blur(2px);
  }
}

/* CHG Tools Login Hero Left Aligned Copy v02
   Keeps full width Budapest hero and right floating login panel.
   Only moves the hero text/feature block back to the left side. */
@media (min-width: 1101px){
  .auth-hero-copy{
    left:clamp(58px,5.2vw,96px);
    top:50%;
    width:min(680px,48vw);
    transform:translateY(-50%);
    text-align:left;
  }
  .auth-brand-title{
    white-space:nowrap;
  }
  .auth-feature-row{
    max-width:640px;
  }
}


/* TOOLS Dashboard Reorganization v01 - Corporate / Private / Admin groups */
.tools-module-section{margin:0 0 24px}
.tools-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:8px 0 12px;padding:0 4px}
.tools-section-head h2{margin:0;font-size:24px;color:#0f172a}
.tools-section-head p{margin:0;color:#64748b;font-size:13px;line-height:1.35;text-align:right;max-width:620px}
.tools-app-body[data-theme="dark"] .tools-section-head h2{color:#f8fafc}
.tools-app-body[data-theme="dark"] .tools-section-head p{color:#cbd5e1}
.tools-module-section+.tools-module-section{padding-top:18px;border-top:1px solid rgba(148,163,184,.26)}
.tools-app-body[data-theme="dark"] .tools-module-section+.tools-module-section{border-top-color:rgba(212,175,55,.20)}
.tools-module-card[href="#"]{opacity:.72;cursor:not-allowed}
.tools-module-card[href="#"]:hover{transform:none}
.tools-menu-item small{display:block;color:#94a3b8;font-size:10px;margin-top:2px;font-weight:700}
@media(max-width:760px){.tools-section-head{display:block}.tools-section-head p{text-align:left;margin-top:5px}.tools-section-head h2{font-size:21px}}


/* TOOLS Dashboard Group Gold Frames + Favicon v01
   Only visual grouping on dashboard sections. Module links and auth untouched. */
.tools-admin-page{max-width:1320px}
.tools-module-section{
  border:1px solid rgba(212,175,55,.62)!important;
  border-radius:22px;
  padding:18px 18px 20px;
  margin:0 0 26px!important;
  background:linear-gradient(135deg,rgba(12,22,38,.82),rgba(7,17,31,.60));
  box-shadow:0 18px 46px rgba(0,0,0,.18);
}
.tools-module-section+.tools-module-section{
  padding-top:18px!important;
  border-top:1px solid rgba(212,175,55,.62)!important;
}
.tools-section-head{
  padding:0 0 12px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid rgba(212,175,55,.28);
}
.tools-section-head h2{
  color:#f8fafc!important;
  letter-spacing:.01em;
}
.tools-section-head p{
  color:#dbe7f8!important;
}
.tools-card-grid-main{
  padding:0;
}
.tools-app-body[data-theme="light"] .tools-module-section{
  background:linear-gradient(135deg,#ffffff,#f8fafc);
  box-shadow:0 16px 38px rgba(15,23,42,.08);
}
.tools-app-body[data-theme="light"] .tools-section-head h2{color:#0f172a!important}
.tools-app-body[data-theme="light"] .tools-section-head p{color:#475569!important}
@media(max-width:760px){
  .tools-module-section{padding:14px 12px 16px;border-radius:18px}
}

/* Enterprise Login Mobile Scroll Fix v03
   Forces the mobile login page to use a normal vertical document flow.
   The login card is shown first on phones; the hero block follows below.
   This avoids iOS/Chrome touch-scroll lock caused by 100vh + overflow hidden. */
@media (max-width: 1100px){
  html,
  body.auth-hero-page{
    height:auto!important;
    min-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    position:static!important;
  }

  body.auth-hero-page{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    background:#07111f!important;
  }

  .auth-login-panel{
    order:1!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:auto!important;
    height:auto!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    padding:18px 14px 28px!important;
    overflow:visible!important;
    background:#07111f!important;
  }

  .auth-login-card{
    width:min(100%,420px)!important;
    max-width:420px!important;
    margin:0 auto!important;
  }

  .auth-hero-visual{
    order:2!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:360px!important;
    height:auto!important;
    overflow:visible!important;
    display:block!important;
    background-position:left center!important;
  }

  .auth-hero-copy{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:auto!important;
    transform:none!important;
    padding:88px 22px 30px!important;
    margin:0!important;
  }

  .auth-feature-row{
    margin-top:24px!important;
  }
}

@media (max-width: 760px){
  .auth-login-card{
    padding:22px 20px!important;
    border-radius:20px!important;
  }
  .auth-brand-title{
    font-size:32px!important;
  }
  .auth-portal-title{
    font-size:16px!important;
  }
  .auth-section-title{
    font-size:28px!important;
    margin-top:22px!important;
  }
  .auth-feature-row{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}


/* Enterprise Launchpad v01 - quick daily modules replace status cards */
.tools-quick-launch{border-color:rgba(255,216,74,.82)!important;background:linear-gradient(135deg,rgba(15,30,52,.96),rgba(7,17,31,.82))!important}
.tools-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.tools-quick-card{min-height:126px!important;border-color:rgba(255,216,74,.42)!important;background:linear-gradient(135deg,#111c2f,#0b1626)!important;color:#fff!important}
.tools-quick-card strong{font-size:18px!important}
.tools-quick-card span{color:#dbe7f8!important}
.tools-quick-card .tools-module-icon{font-size:34px;margin-bottom:10px}
.tools-header-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tools-header-badge{border:1px solid rgba(32,224,128,.45);border-radius:999px;padding:5px 8px;background:rgba(32,224,128,.08);color:#d8ffe9;font-size:10px;font-weight:900;line-height:1;white-space:nowrap}
.tools-header-badge:before{content:"●";color:#20e080;margin-right:5px}
@media(max-width:1100px){.tools-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.tools-quick-grid{grid-template-columns:1fr!important}.tools-header-badges{width:100%;order:-1}.tools-header-badge{font-size:9px;padding:5px 7px}}
