:root{
--gold:#d7a526;--gold2:#efbd3c;
--ink:#10151b;--paper:#ffffff;--surface:#ffffff;--soft:#f6f6f2;
--line:#d9dcd9;--muted:#66717b;--shadow:0 16px 45px rgba(17,23,31,.10);
--sticky:rgba(255,255,255,.96);--track:#ecece7;--field-label:#47515a;
--logic-text:#4f5963;--button-surface:#ffffff;--summary-label:#a87600
}
html[data-theme="dark"]{
color-scheme:dark;
--ink:#f4f4f1;--paper:#0f1215;--surface:#15191d;--soft:#1b2025;
--line:#343a40;--muted:#aeb4ba;--shadow:0 16px 45px rgba(0,0,0,.34);
--sticky:rgba(15,18,21,.96);--track:#2b3035;--field-label:#d5d9dd;
--logic-text:#c6ccd1;--button-surface:#15191d;--summary-label:#efbd3c
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);line-height:1.55}
button,input,textarea,select{font:inherit}button{color:inherit}.factory-page{width:min(1440px,100%);margin:auto;padding:0 clamp(16px,3.5vw,54px) 96px}
.factory-intro{position:relative;display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;padding:54px clamp(22px,3vw,42px) 38px;border-bottom:1px solid var(--line);overflow:hidden;background:#10151b;color:#fff;min-height:390px;align-items:end}.factory-intro::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,15,.96),rgba(7,11,15,.76) 52%,rgba(7,11,15,.30)),var(--factory-hero) center/cover no-repeat;z-index:0}.factory-intro>div{position:relative;z-index:1}.factory-intro .muted{color:#d6dce1}
.eyebrow{font-size:12px;font-weight:950;letter-spacing:.16em;color:var(--gold);text-transform:uppercase}.factory-intro h1{margin:10px 0 0;font-size:clamp(43px,5.5vw,76px);line-height:.94;letter-spacing:-.055em;max-width:720px}
.intro-copy{font-size:18px;max-width:760px;color:#f4f6f7}.intro-copy p{margin:0 0 14px}.muted{color:var(--muted)}
.wizard-progress{position:sticky;top:72px;z-index:25;background:var(--sticky);backdrop-filter:blur(12px);padding:14px 0 12px;border-bottom:1px solid var(--line);margin-bottom:12px}
.progress-meta{display:flex;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:.05em}.progress-meta span{font-weight:950;color:var(--gold)}.progress-meta strong{font-weight:900}.progress-track{height:4px;background:var(--track);margin-top:9px}.progress-bar{height:100%;background:var(--gold);width:8.333%;transition:width .25s ease}
.wizard-step{padding:30px 0 22px;min-height:620px}.wizard-step[hidden]{display:none!important}
.step-head{display:grid;grid-template-columns:1fr minmax(280px,430px);gap:55px;align-items:end;margin-bottom:20px}.step-number{display:inline-grid;place-items:center;min-width:70px;height:38px;border:1px solid var(--gold);color:#ad7d00;font-size:12px;font-weight:950;letter-spacing:.08em}.step-head h2{margin:14px 0 0;font-size:clamp(34px,4.7vw,64px);line-height:.96;letter-spacing:-.045em}.step-head p{margin:0;color:var(--muted);font-size:15px}
.logic-note{padding:13px 16px;margin:0 0 16px;border-left:4px solid var(--gold);background:var(--soft);color:var(--logic-text);font-size:13px}
.section-block{padding:18px 0}.section-block h3{font-size:22px;margin:0 0 13px}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.factory-card{position:relative;min-height:190px;border:1px solid var(--line);background:#1d2328 center/cover no-repeat;padding:0;overflow:hidden;text-align:left;cursor:pointer;transition:.18s ease;color:#fff}
.factory-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,11,.08),rgba(5,8,11,.90))}
.factory-card>div{position:absolute;left:0;right:0;bottom:0;padding:17px;z-index:2}.factory-card small{display:block;color:#ffd974;font-size:10px;font-weight:950;letter-spacing:.10em;margin-bottom:7px}.factory-card strong{display:block;font-size:19px;line-height:1.08;text-shadow:0 1px 2px #000}.factory-card span{display:block;margin-top:7px;font-size:12px;line-height:1.42;color:#f0f2f3}
.factory-card i{position:absolute;right:12px;top:12px;width:28px;height:28px;border:1px solid rgba(255,255,255,.62);background:rgba(0,0,0,.36);display:grid;place-items:center;z-index:3;font-style:normal;color:transparent;font-weight:950}
.factory-card:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:var(--shadow)}.factory-card.selected{border-color:var(--gold);box-shadow:inset 0 0 0 2px var(--gold),var(--shadow)}.factory-card.selected i{background:var(--gold);border-color:var(--gold);color:#111}
.conditional-hidden{display:none!important}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.fields.single-line{grid-template-columns:1fr}.fields label{display:grid;gap:7px}.fields label>span{font-size:12px;font-weight:900;color:var(--field-label)}.fields input,.fields textarea,.fields select{width:100%;min-height:50px;padding:13px 14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);outline:none}.fields textarea{min-height:112px;resize:vertical}.fields input:focus,.fields textarea:focus,.fields select:focus{border-color:var(--gold);box-shadow:0 0 0 2px rgba(215,165,38,.12)}.span-2{grid-column:1/-1}
.flow-strip{display:grid;grid-template-columns:repeat(9,auto);gap:8px;align-items:center;justify-content:center;padding:14px;background:#10151b;color:#fff;margin-bottom:16px;font-size:11px;font-weight:900;letter-spacing:.04em}.flow-strip b{color:var(--gold)}
.wizard-actions{position:sticky;bottom:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:13px 0;background:var(--sticky);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.wizard-actions span{text-align:center;color:var(--muted);font-size:12px}.nav-btn{min-width:130px;padding:13px 17px;border:1px solid var(--line);font-weight:950;cursor:pointer}.nav-btn.primary{background:var(--gold);border-color:var(--gold);color:#111}.nav-btn.secondary{background:var(--button-surface);color:var(--ink)}.nav-btn:disabled{opacity:.35;cursor:not-allowed}
.summary-panel{display:grid;grid-template-columns:1fr 340px;gap:22px;margin-top:24px;border:1px solid var(--line);border-top:5px solid var(--gold);padding:24px;background:var(--soft)}.summary-panel h3{font-size:30px;margin:7px 0 14px}.summary-content{display:grid;gap:0;max-height:540px;overflow:auto}.summary-row{padding:10px 0;border-top:1px solid var(--line)}.summary-row:first-child{border-top:0}.summary-row b{display:block;font-size:10px;color:var(--summary-label);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}.summary-row span{font-size:13px}.summary-actions{display:grid;gap:9px;align-content:start}.summary-actions a,.summary-actions button{display:block;width:100%;padding:14px 15px;text-align:center;border:1px solid var(--gold);background:var(--gold);color:#111;text-decoration:none;font-weight:950;cursor:pointer}.summary-actions button{background:var(--button-surface);border-color:var(--line);color:var(--ink)}.summary-actions p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
@media(max-width:1080px){.card-grid{grid-template-columns:repeat(2,1fr)}.factory-intro,.step-head,.summary-panel{grid-template-columns:1fr;gap:22px}.wizard-progress{top:64px}.flow-strip{grid-template-columns:repeat(5,auto)}}
@media(max-width:650px){.factory-page{padding:0 12px 76px}.factory-intro{padding-top:30px}.factory-intro h1{font-size:42px}.card-grid,.fields{grid-template-columns:1fr}.span-2{grid-column:auto}.factory-card{min-height:175px}.wizard-actions{grid-template-columns:1fr 1fr}.wizard-actions span{grid-column:1/-1;grid-row:1}.nav-btn{min-width:0}.flow-strip{display:flex;overflow:auto;justify-content:flex-start;white-space:nowrap}.wizard-step{min-height:0}}


html[data-theme="dark"] body{
  background:var(--paper);
  color:var(--ink);
}
html[data-theme="dark"] .factory-page{
  background:var(--paper);
  color:var(--ink);
}
html[data-theme="dark"] .wizard-progress,
html[data-theme="dark"] .wizard-actions{
  background:var(--sticky);
}
html[data-theme="dark"] .fields input,
html[data-theme="dark"] .fields textarea,
html[data-theme="dark"] .fields select{
  background:var(--surface);
  color:var(--ink);
  border-color:var(--line);
}
html[data-theme="dark"] .fields input::placeholder,
html[data-theme="dark"] .fields textarea::placeholder{
  color:#858d95;
}
html[data-theme="dark"] .nav-btn.secondary{
  background:var(--surface);
  color:var(--ink);
}
html[data-theme="dark"] .summary-actions button{
  background:var(--surface);
  color:var(--ink);
}
html[data-theme="dark"] .logic-note,
html[data-theme="dark"] .summary-panel{
  background:var(--soft);
  color:var(--ink);
}
html[data-theme="dark"] .progress-meta strong,
html[data-theme="dark"] .step-head h2,
html[data-theme="dark"] .section-block h3,
html[data-theme="dark"] .summary-panel h3{
  color:var(--ink);
}
html[data-theme="dark"] .wizard-actions{
  box-shadow:0 -10px 30px rgba(0,0,0,.18);
}



/* ===== KOHLBUILDER FACTORY PREMIUM UI ===== */
:root{
  --kb-glass:rgba(255,255,255,.78);
  --kb-card-overlay:linear-gradient(180deg,rgba(8,11,14,0) 0%,rgba(8,11,14,.08) 42%,rgba(8,11,14,.82) 100%);
  --kb-card-overlay-selected:linear-gradient(180deg,rgba(8,11,14,0) 0%,rgba(8,11,14,.05) 38%,rgba(8,11,14,.78) 100%);
  --kb-elev:0 22px 60px rgba(16,22,29,.12);
}
html[data-theme="dark"]{
  --kb-glass:rgba(15,18,21,.82);
  --kb-elev:0 24px 70px rgba(0,0,0,.36);
}
.factory-page{padding-bottom:118px}
.factory-intro{
  min-height:500px;
  margin-top:18px;
  padding:62px clamp(28px,4vw,62px) 48px;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  gap:88px;
  border:1px solid rgba(255,255,255,.08);
}
.factory-intro::before{
  background:
    radial-gradient(circle at 76% 30%,rgba(215,165,38,.12),transparent 28%),
    linear-gradient(90deg,rgba(6,9,12,.90) 0%,rgba(6,9,12,.70) 44%,rgba(6,9,12,.28) 72%,rgba(6,9,12,.14) 100%),
    var(--factory-hero) center/cover no-repeat;
}
.factory-intro::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;pointer-events:none;z-index:0
}
.hero-copy,.intro-copy{align-self:end}
.factory-intro h1{max-width:780px;font-size:clamp(48px,5.8vw,84px);line-height:.91;text-wrap:balance}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.hero-badges span{border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.055);padding:9px 11px;font-size:10px;line-height:1;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#f2f4f5;backdrop-filter:blur(8px)}
.intro-copy{font-size:17px;max-width:660px}.intro-copy>p:first-child{font-size:19px;line-height:1.72}
.hero-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:28px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.14)}
.hero-proof div{padding:14px;background:rgba(8,12,16,.56);backdrop-filter:blur(8px)}
.hero-proof b{display:block;color:var(--gold2);font-size:11px;letter-spacing:.08em}.hero-proof span{display:block;margin-top:3px;color:#fff;font-size:12px;font-weight:850}

.wizard-progress{top:72px;margin:0;padding:15px 0 13px;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.03)}
.progress-topline{display:flex;align-items:center;justify-content:space-between;gap:20px}
.progress-meta{align-items:center}.progress-meta span{min-width:66px;display:inline-flex;justify-content:center;align-items:center;padding:7px 8px;border:1px solid var(--gold);color:#aa7b00;background:rgba(215,165,38,.06)}
.progress-meta strong{font-size:13px;letter-spacing:.01em}
.reset-project{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:850;cursor:pointer;padding:8px 0 8px 14px}.reset-project:hover{color:var(--gold)}
.progress-track{height:3px;margin-top:11px}
.step-dots{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;margin-top:10px}
.step-dot{height:24px;border:0;background:transparent;color:var(--muted);font-size:9px;font-weight:900;padding:0;cursor:pointer;position:relative}
.step-dot::before{content:"";position:absolute;left:50%;top:0;width:6px;height:6px;transform:translateX(-50%);border-radius:50%;border:1px solid var(--line);background:var(--surface)}
.step-dot.is-active{color:var(--ink)}.step-dot.is-active::before{width:8px;height:8px;background:var(--gold);border-color:var(--gold)}
.step-dot.is-done::before{background:#82724c;border-color:#82724c}.step-dot:disabled{cursor:default;opacity:.45}

.project-context{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;border:1px solid var(--line);border-top:0;background:var(--soft);min-height:74px}
.context-block,.context-state{padding:14px 16px;border-right:1px solid var(--line)}.context-state{border-right:0;display:flex;align-items:center;gap:10px}
.context-block span{display:block;font-size:9px;letter-spacing:.11em;font-weight:950;color:var(--muted)}.context-block strong{display:block;margin-top:4px;font-size:12px;line-height:1.35}
.context-state i{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(215,165,38,.10);flex:0 0 auto}.context-state span{font-size:11px;color:var(--muted);line-height:1.45}

.wizard-step{max-width:1320px;margin:0 auto;padding:46px 0 30px;min-height:650px}
.step-head{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:72px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.step-number{min-width:78px;height:34px;background:rgba(215,165,38,.05);font-size:10px}
.step-head h2{font-size:clamp(38px,4.4vw,62px);max-width:850px;text-wrap:balance}.step-head p{font-size:14px;line-height:1.7;max-width:440px}

.card-grid{gap:14px}.factory-card{min-height:218px;border-color:rgba(125,132,138,.34);box-shadow:0 1px 0 rgba(255,255,255,.03)}
.factory-card::before{background:var(--kb-card-overlay)}
.factory-card::after{content:"";position:absolute;inset:0;z-index:1;border:1px solid transparent;pointer-events:none;transition:.2s ease}
.factory-card>div{padding:19px 18px 18px}.factory-card small{color:#ffd665;margin-bottom:8px;font-size:9px;letter-spacing:.12em}
.factory-card strong{font-size:20px;line-height:1.05;letter-spacing:-.015em;max-width:88%}.factory-card span{font-size:12px;line-height:1.48;color:#edf0f2;max-width:92%}
.factory-card i{width:31px;height:31px;border:1px solid rgba(255,255,255,.55);background:rgba(7,10,13,.46);transition:.18s ease}
.factory-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(10,15,20,.20)}.factory-card:hover::after{border-color:rgba(215,165,38,.44)}
.factory-card.selected{transform:translateY(-2px);box-shadow:0 22px 48px rgba(10,15,20,.24),inset 0 0 0 2px var(--gold)}
.factory-card.selected::before{background:var(--kb-card-overlay-selected)}.factory-card.selected i{background:var(--gold);border-color:var(--gold);color:#111;box-shadow:0 0 0 5px rgba(215,165,38,.16)}.factory-card.selected::after{border-color:var(--gold)}

.logic-note{position:relative;padding:14px 18px 14px 44px;border-left:0;border:1px solid var(--line);background:var(--soft)}
.logic-note::before{content:"◆";position:absolute;left:16px;top:14px;color:var(--gold);font-size:11px}
.section-block{padding:8px 0 18px}.section-block h3{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}

.fields{gap:14px;margin-top:22px}.fields label{padding:14px;border:1px solid var(--line);background:var(--surface)}.fields label>span{font-size:10px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:2px}
.fields input,.fields textarea,.fields select{border:0;border-bottom:1px solid var(--line);padding:10px 2px 7px;background:transparent;min-height:42px}.fields textarea{min-height:92px}
.fields input:focus,.fields textarea:focus,.fields select:focus{border-color:var(--gold);box-shadow:none}

.flow-strip{padding:0;background:var(--surface);color:var(--ink);border:1px solid var(--line);gap:0;margin-bottom:18px}.flow-strip span{padding:15px 18px;min-width:120px;text-align:center;font-size:10px}.flow-strip b{padding:0 4px;color:var(--gold)}

.summary-panel{margin-top:30px;padding:28px;grid-template-columns:minmax(0,1fr) 360px;gap:28px;background:var(--surface);border-top-width:4px;box-shadow:var(--kb-elev)}
.summary-panel h3{font-size:34px;letter-spacing:-.03em}.summary-row{padding:12px 0}.summary-row b{font-size:9px;letter-spacing:.1em}.summary-row span{font-size:13px;line-height:1.55}
.summary-actions a,.summary-actions button{min-height:50px;display:grid;place-items:center;letter-spacing:.01em}.summary-actions a{box-shadow:0 10px 22px rgba(215,165,38,.18)}

.wizard-actions{padding:12px 0;grid-template-columns:150px minmax(0,1fr) 150px;box-shadow:0 -14px 34px rgba(0,0,0,.05)}
.wizard-actions span{font-size:11px}.nav-btn{min-height:48px;border:1px solid var(--line);transition:.18s ease}.nav-btn.primary{box-shadow:0 8px 18px rgba(215,165,38,.16)}
.nav-btn.primary:hover{transform:translateY(-1px);filter:brightness(1.03)}.nav-btn.secondary:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}

html[data-theme="dark"] .factory-intro{border-color:#2a2f34}
html[data-theme="dark"] .project-context{background:#14191d}
html[data-theme="dark"] .factory-card{border-color:#343b42;box-shadow:0 1px 0 rgba(255,255,255,.02)}
html[data-theme="dark"] .factory-card:hover{box-shadow:0 22px 46px rgba(0,0,0,.40)}
html[data-theme="dark"] .fields label{background:#14191d}
html[data-theme="dark"] .logic-note{background:#151a1e}
html[data-theme="dark"] .summary-panel{background:#14191d}
html[data-theme="dark"] .wizard-actions{box-shadow:0 -16px 38px rgba(0,0,0,.28)}

@media(max-width:1180px){
  .factory-intro{grid-template-columns:1fr;min-height:0;gap:30px}.hero-proof{max-width:650px}
  .project-context{grid-template-columns:repeat(2,1fr)}.context-block:nth-child(2){border-right:0}.context-state{border-top:1px solid var(--line);grid-column:2}.context-block:nth-child(3){border-top:1px solid var(--line)}
}
@media(max-width:900px){
  .step-dots{display:none}.wizard-step{padding-top:34px}.step-head{grid-template-columns:1fr;gap:14px}.card-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .factory-intro{margin-top:10px;padding:36px 18px 28px}.factory-intro h1{font-size:42px}.hero-badges{gap:6px}.hero-badges span{font-size:9px}.hero-proof{grid-template-columns:repeat(2,1fr)}
  .project-context{grid-template-columns:1fr}.context-block,.context-state{border-right:0;border-bottom:1px solid var(--line)}.context-state{grid-column:auto}
  .card-grid{grid-template-columns:1fr}.factory-card{min-height:195px}.wizard-actions{grid-template-columns:1fr 1fr}.wizard-actions span{grid-column:1/-1;grid-row:1}.summary-panel{grid-template-columns:1fr;padding:20px}
}

/* Világosabb ipari képkezelés */
.factory-card{background-color:#dfe4e7;background-position:center;background-size:cover}
.factory-card::before{transition:background .2s ease}
.factory-card:hover::before{background:linear-gradient(180deg,rgba(8,11,14,0) 0%,rgba(8,11,14,.04) 38%,rgba(8,11,14,.76) 100%)}


/* ===== KÉSZ TERV FELTÖLTÉS / MINDEN LÉPÉSBŐL ELÉRHETŐ ===== */
.plan-entry-card{
  background:
    radial-gradient(circle at 78% 18%,rgba(239,189,60,.22),transparent 28%),
    linear-gradient(145deg,#202830 0%,#0d1115 68%,#080b0e 100%) !important;
  border-color:rgba(215,165,38,.72);
}
.plan-entry-card::before{
  background:linear-gradient(180deg,rgba(5,8,11,.08),rgba(5,8,11,.72));
}
.plan-entry-card i{
  color:#111;background:var(--gold);border-color:var(--gold);font-size:21px;line-height:1;
}
.plan-entry-card strong{max-width:94%;font-size:21px}
.plan-entry-card:hover{box-shadow:0 18px 44px rgba(215,165,38,.18)}

.plan-upload-fab{
  position:fixed;right:24px;bottom:84px;z-index:80;
  display:flex;align-items:center;gap:10px;
  min-height:50px;padding:8px 14px 8px 8px;
  border:1px solid var(--gold);background:#11171c;color:#fff;
  box-shadow:0 18px 44px rgba(0,0,0,.24);cursor:pointer;font-weight:900;
}
.plan-upload-fab b{
  width:34px;height:34px;display:grid;place-items:center;background:var(--gold);color:#111;
  font-size:23px;line-height:1;font-weight:800;
}
.plan-upload-fab span{font-size:12px;letter-spacing:.015em;white-space:nowrap}
.plan-upload-fab em{
  min-width:22px;height:22px;border-radius:20px;display:grid;place-items:center;
  background:#fff;color:#111;font-size:10px;font-style:normal;font-weight:950;
}
.plan-upload-fab:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(0,0,0,.30)}

.plan-upload-modal[hidden]{display:none!important}
.plan-upload-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}
.plan-upload-backdrop{position:absolute;inset:0;background:rgba(5,8,11,.74);backdrop-filter:blur(7px)}
.plan-upload-dialog{
  position:relative;z-index:1;width:min(720px,100%);max-height:min(760px,92vh);overflow:auto;
  background:var(--surface);color:var(--ink);border:1px solid var(--line);border-top:5px solid var(--gold);
  box-shadow:0 30px 90px rgba(0,0,0,.34);padding:clamp(24px,4vw,42px);
}
.plan-upload-close{
  position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid var(--line);
  background:var(--button-surface);color:var(--ink);font-size:25px;cursor:pointer;
}
.plan-upload-kicker{font-size:10px;font-weight:950;letter-spacing:.16em;color:var(--gold);text-transform:uppercase}
.plan-upload-dialog h2{margin:9px 48px 12px 0;font-size:clamp(32px,5vw,52px);line-height:.96;letter-spacing:-.04em}
.plan-upload-lead{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.65}
.plan-dropzone{
  display:grid;justify-items:center;text-align:center;gap:7px;padding:28px 18px;
  border:1px dashed #b58a1e;background:rgba(215,165,38,.055);cursor:pointer;
}
.plan-dropzone:hover{background:rgba(215,165,38,.095)}
.plan-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.plan-drop-icon{width:48px;height:48px;display:grid;place-items:center;background:var(--gold);color:#111;font-size:29px;line-height:1}
.plan-dropzone strong{font-size:16px}.plan-dropzone small{color:var(--muted);font-size:11px}
.plan-file-list{margin-top:14px;border:1px solid var(--line);background:var(--soft);padding:12px 14px;max-height:180px;overflow:auto}
.plan-file-list p{margin:0;color:var(--muted);font-size:12px}
.plan-file-item{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-top:1px solid var(--line);font-size:12px}
.plan-file-item:first-child{border-top:0}.plan-file-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-file-item span{color:var(--muted);white-space:nowrap}
.plan-upload-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:16px}
.plan-upload-actions button{min-height:50px;padding:12px 14px;border:1px solid var(--line);font-weight:950;cursor:pointer}
.plan-clear{background:var(--button-surface);color:var(--ink)}
.plan-continue{background:var(--gold);border-color:var(--gold)!important;color:#111}
.plan-upload-note{margin:13px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
body.plan-modal-open{overflow:hidden}

html[data-theme="dark"] .plan-upload-dialog{background:#13181c}
html[data-theme="dark"] .plan-file-list{background:#171d21}

@media(max-width:650px){
  .plan-upload-fab{right:12px;bottom:86px;padding-right:9px}
  .plan-upload-fab span{display:none}
  .plan-upload-dialog{padding:26px 17px 22px}
  .plan-upload-actions{grid-template-columns:1fr}
}


/* Gyárak – témához igazodó KohlBuilder logó */
.kb-brand .kb-logo-light{display:block !important}
.kb-brand .kb-logo-dark{display:none !important}
html[data-theme="dark"] .kb-brand .kb-logo-light{display:none !important}
html[data-theme="dark"] .kb-brand .kb-logo-dark{display:block !important}
