/* =========================================================
   Nikko-Kikai integrated finder skin
   EDM / WEDM overview pages only
   Aligns visual hierarchy with machining-center / lathe finders.
   ========================================================= */

body[data-view="overview"]{
  --finder-ink:#10263b;
  --finder-muted:#64778a;
  --finder-line:rgba(16,38,59,.13);
  --finder-soft:#f4f7fa;
  --finder-accent:#0874b9;
  --finder-accent-2:#18a9c6;
  background:#fff;
}
body[data-view="overview"] main{overflow:visible}

/* Hero: compact, catalog-led rather than campaign/LP-led */
body[data-view="overview"] .edms-hero{
  min-height:0;
  display:block;
  padding:calc(var(--navH) + clamp(58px,7vw,92px)) max(4vw,calc((100vw - 1240px)/2)) clamp(58px,7vw,82px);
  background:
    radial-gradient(circle at 85% 18%,rgba(54,180,212,.13),transparent 27%),
    linear-gradient(180deg,#fbfdff 0%,#f4f8fb 100%);
  border-bottom:1px solid var(--finder-line);
}
body[data-view="overview"] .edms-hero::before{
  background-image:linear-gradient(rgba(37,93,137,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,93,137,.045) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to right,transparent 0,black 22%,black 78%,transparent 100%);
}
body[data-view="overview"] .hero-copy{max-width:1100px}
body[data-view="overview"] .hero-copy h1{
  max-width:980px;
  margin:12px 0 22px;
  font-size:clamp(42px,6.2vw,78px);
  line-height:1.06;
  letter-spacing:-.055em;
}
body[data-view="overview"] .hero-copy h1 .hero-title-line{display:block;white-space:normal}
body[data-view="overview"] .hero-copy h1 .hero-title-main{color:var(--finder-ink)}
body[data-view="overview"] .hero-copy h1 .hero-title-accent{
  margin-top:.06em;
  color:transparent;
  background:linear-gradient(90deg,#0b4f8f 0%,#087fb2 54%,#13a8b8 100%);
  -webkit-background-clip:text;background-clip:text;
  text-shadow:none;filter:none;
}
body[data-view="overview"] .hero-lead{
  max-width:930px;
  margin:0;
  color:#50677b;
  font-size:clamp(15px,1.45vw,19px);
  line-height:1.9;
}
body[data-view="overview"] .hero-actions{margin-top:28px}
body[data-view="overview"] .hero-actions .btn-secondary{background:#fff}
body[data-view="overview"] .hero-main-image{display:none}

.finder-hero-metrics{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:0;
  margin-top:38px;
  max-width:760px;
  border-top:1px solid var(--finder-line);
  border-bottom:1px solid var(--finder-line);
}
.finder-hero-metric{
  min-width:170px;
  padding:18px 34px 18px 0;
  margin-right:34px;
  position:relative;
}
.finder-hero-metric:not(:last-child)::after{
  content:"";position:absolute;right:0;top:19px;bottom:19px;width:1px;background:var(--finder-line);
}
.finder-hero-metric strong{display:block;color:var(--finder-ink);font-size:clamp(26px,3vw,38px);line-height:1;font-weight:900;letter-spacing:-.035em}
.finder-hero-metric span{display:block;margin-top:7px;color:var(--finder-muted);font-size:11px;font-weight:800;letter-spacing:.03em}
.finder-hero-note{max-width:820px;margin:18px 0 0;color:var(--finder-muted);font-size:12px;line-height:1.75}

/* In-page navigation */
body[data-view="overview"] .local-nav{
  top:60px;
  justify-content:center;
  gap:0;
  padding:0 14px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 28px rgba(28,61,91,.045);
}
body[data-view="overview"] .local-nav a{
  border-radius:0;
  padding:14px 18px 12px;
  color:#51697d;
  border-bottom:2px solid transparent;
  font-size:12px;
}
body[data-view="overview"] .local-nav a:hover{background:transparent;color:var(--finder-accent);border-bottom-color:var(--finder-accent)}

/* Section rhythm */
body[data-view="overview"] .section{max-width:min(1240px,92vw);margin:clamp(68px,8vw,108px) auto}
body[data-view="overview"] .section-heading{max-width:900px;margin-bottom:30px}
body[data-view="overview"] .section-heading h2{font-size:clamp(30px,4.2vw,50px);color:var(--finder-ink)}
body[data-view="overview"] .section-heading p{max-width:850px;color:var(--finder-muted)}
body[data-view="overview"] .eyebrow{color:var(--finder-accent)}

/* Manufacturer overview - compact finder cards */
.maker-overview-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(215px,1fr));
  gap:12px;
}
.maker-overview-card{
  position:relative;
  min-height:260px;
  display:flex;
  flex-direction:column;
  padding:22px;
  border:1px solid var(--finder-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(23,55,83,.045);
  overflow:hidden;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.maker-overview-card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--maker-accent,var(--finder-accent));opacity:.9}
.maker-overview-card:hover{transform:translateY(-3px);border-color:rgba(8,116,185,.26);box-shadow:0 16px 38px rgba(23,55,83,.09)}
.maker-overview-card.maker-sodick{--maker-accent:var(--sodick)}
.maker-overview-card.maker-mitsubishi{--maker-accent:var(--mitsubishi)}
.maker-overview-card.maker-makino{--maker-accent:var(--makino)}
.maker-overview-card.maker-fanuc{--maker-accent:var(--fanuc,#b58a00)}
.maker-overview-card.maker-seibu{--maker-accent:var(--seibu,#087e9a)}
.maker-overview-index{font-size:11px;font-weight:900;letter-spacing:.14em;color:#8292a0}
.maker-overview-code{margin-top:28px;font-size:10px;font-weight:900;letter-spacing:.11em;color:#7b8d9c;text-transform:uppercase}
.maker-overview-card h3{margin:6px 0 17px;font-size:24px;color:var(--finder-ink);letter-spacing:-.025em}
.maker-overview-stats{display:grid;gap:7px;margin:0 0 20px;padding:0;list-style:none}
.maker-overview-stats li{font-size:12px;color:#566d80;line-height:1.55}
.maker-overview-stats strong{color:var(--finder-ink);font-weight:900}
.maker-overview-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:16px;border-top:1px solid var(--finder-line)}
.maker-filter-button,.maker-detail-link{
  min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:9px;font-size:11px;font-weight:900;cursor:pointer
}
.maker-filter-button{border:1px solid rgba(8,116,185,.22);background:#eef7fc;color:#075e95}
.maker-detail-link{border:1px solid var(--finder-line);background:#fff;color:#496477}
.maker-filter-button:hover,.maker-detail-link:hover{transform:none;background:#e7f2f8}

/* Selection guide: same hierarchy as other machine finders */
body[data-view="overview"] .selection-guide{
  max-width:min(1240px,92vw);
  padding:0;
  color:var(--finder-ink);
  background:transparent;
}
body[data-view="overview"] .selection-guide .section-heading p{color:var(--finder-muted)}
body[data-view="overview"] .selection-guide .eyebrow{color:var(--finder-accent)}
body[data-view="overview"] .guide-grid{gap:12px}
body[data-view="overview"] .guide-card{
  position:relative;
  min-height:300px;
  display:flex;
  flex-direction:column;
  padding:25px 22px;
  border:1px solid var(--finder-line);
  border-radius:17px;
  color:var(--finder-ink);
  background:#fff;
  box-shadow:none;
}
body[data-view="overview"] .guide-card:hover{background:#f8fbfd;border-color:rgba(8,116,185,.25);transform:translateY(-2px)}
body[data-view="overview"] .guide-number{color:var(--finder-accent)}
body[data-view="overview"] .guide-card h3{margin:26px 0 10px;font-size:20px}
body[data-view="overview"] .guide-card p{min-height:0;margin:0;color:var(--finder-muted);line-height:1.75}
.guide-examples{display:block;margin-top:16px;color:#76899a;font-size:10px;line-height:1.55}
body[data-view="overview"] .guide-card strong{display:block;margin-top:auto;padding-top:18px;color:var(--finder-accent);font-size:11px}

/* Finder */
body[data-view="overview"] .selector-section{padding-top:2px}
body[data-view="overview"] .filter-panel{
  border-radius:18px;
  background:#f8fafc;
  box-shadow:none;
  border-color:var(--finder-line);
}
body[data-view="overview"] .filter-group{grid-template-columns:120px 1fr}
body[data-view="overview"] .filter-chip{border-radius:9px;padding:8px 12px;background:#fff}
body[data-view="overview"] .filter-chip.is-active{background:#153c5a;color:#fff}
body[data-view="overview"] .reset-button{background:#fff}

.finder-result-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 3px 14px}
.finder-result-copy{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin:0;color:var(--finder-muted);font-size:12px}
.finder-result-copy strong{font-size:25px;color:var(--finder-ink)}
.finder-result-tools{display:flex;align-items:center;gap:12px}
.finder-result-tools .compare-hint{margin:0;color:var(--finder-muted);font-size:11px}
.view-switch{display:inline-flex;border:1px solid var(--finder-line);border-radius:10px;overflow:hidden;background:#fff}
.view-switch button{min-width:58px;height:36px;border:0;border-right:1px solid var(--finder-line);background:#fff;color:#607486;font-size:11px;font-weight:900;cursor:pointer}
.view-switch button:last-child{border-right:0}
.view-switch button.is-active{background:#153c5a;color:#fff}

/* Default overview is list view, cards remain available */
body[data-view="overview"] .model-grid{display:grid;grid-template-columns:1fr;gap:10px}
body[data-view="overview"] .model-grid.is-card{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
body[data-view="overview"] .model-grid.is-list .model-card{
  display:grid;
  grid-template-columns:minmax(190px,.85fr) minmax(165px,.7fr) minmax(440px,2.25fr) minmax(170px,.8fr);
  grid-template-areas:
    "head title specs compare"
    "feature feature feature cta";
  gap:12px 18px;
  align-items:center;
  min-height:0;
  padding:16px 18px 14px 21px;
  border-radius:14px;
  box-shadow:none;
}
body[data-view="overview"] .model-grid.is-list .model-card:hover{transform:none;border-color:rgba(8,116,185,.25);box-shadow:0 8px 22px rgba(23,55,83,.05)}
body[data-view="overview"] .model-grid.is-list .model-card-top{grid-area:head;display:block}
body[data-view="overview"] .model-grid.is-list .model-card-top .compare-check{position:absolute;right:15px;top:15px}
body[data-view="overview"] .model-grid.is-list .model-title-row{grid-area:title;display:block;margin:0;padding-right:0}
body[data-view="overview"] .model-grid.is-list .model-title-row h3{font-size:23px}
body[data-view="overview"] .model-grid.is-list .purpose-badge{display:inline-block;margin-top:8px}
body[data-view="overview"] .model-grid.is-list .spec-list{
  grid-area:specs;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  border:0;
  gap:0;
}
body[data-view="overview"] .model-grid.is-list .spec-list div{display:block;padding:0 10px;border:0;border-left:1px solid var(--finder-line)}
body[data-view="overview"] .model-grid.is-list .spec-list dt{display:block;margin-bottom:5px;font-size:9px}
body[data-view="overview"] .model-grid.is-list .spec-list dd{text-align:left;font-size:11px;line-height:1.45}
body[data-view="overview"] .model-grid.is-list .model-feature{grid-area:feature;min-height:0;margin:0;color:#617588}
body[data-view="overview"] .model-grid.is-list .model-cta{grid-area:cta;margin:0;padding:10px 12px;border-radius:9px;background:#eef6fb;justify-content:center;text-align:center}
body[data-view="overview"] .model-grid.is-list .model-cta span{display:none}
body[data-view="overview"] .model-grid.is-card .model-card{box-shadow:0 9px 27px rgba(28,66,99,.055)}

body[data-view="overview"] .compare-tray{width:min(900px,calc(100vw - 26px));background:rgba(18,50,75,.96)}
body[data-view="overview"] .contact-section{border-radius:20px;background:linear-gradient(120deg,#153c5a,#0d718a);box-shadow:none}

@media(max-width:1120px){
  body[data-view="overview"] .model-grid.is-list .model-card{
    grid-template-columns:minmax(175px,.8fr) minmax(155px,.7fr) minmax(300px,1.55fr);
    grid-template-areas:"head title specs" "feature feature cta";
  }
  body[data-view="overview"] .model-grid.is-card{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-view="overview"] .model-grid.is-list .model-card-top .compare-check{right:14px;top:14px}
}

@media(max-width:760px){
  body[data-view="overview"] .edms-hero{padding:calc(var(--navH-small) + 42px) 5vw 44px}
  body[data-view="overview"] .hero-copy h1{font-size:clamp(34px,10.7vw,48px)}
  .finder-hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);width:100%;margin-top:28px}
  .finder-hero-metric{min-width:0;margin:0;padding:15px 10px 15px 0}
  .finder-hero-metric:not(:last-child)::after{top:14px;bottom:14px}
  .finder-hero-metric strong{font-size:25px}
  .finder-hero-metric span{font-size:9px}
  body[data-view="overview"] .local-nav{top:52px;justify-content:flex-start}
  body[data-view="overview"] .local-nav a{padding:12px 13px 10px}
  .maker-overview-grid{grid-template-columns:1fr}
  .maker-overview-card{min-height:0}
  body[data-view="overview"] .guide-card{min-height:0}
  body[data-view="overview"] .filter-group{grid-template-columns:1fr}
  .finder-result-bar{align-items:flex-start;flex-direction:column}
  .finder-result-tools{width:100%;justify-content:space-between}
  .finder-result-tools .compare-hint{max-width:none;text-align:left}
  body[data-view="overview"] .model-grid.is-list,
  body[data-view="overview"] .model-grid.is-card{grid-template-columns:1fr}
  body[data-view="overview"] .model-grid.is-list .model-card{
    display:block;
    padding:18px;
  }
  body[data-view="overview"] .model-grid.is-list .model-card-top{display:flex}
  body[data-view="overview"] .model-grid.is-list .model-card-top .compare-check{position:static}
  body[data-view="overview"] .model-grid.is-list .model-title-row{display:flex;margin:17px 0}
  body[data-view="overview"] .model-grid.is-list .purpose-badge{margin-top:0}
  body[data-view="overview"] .model-grid.is-list .spec-list{display:block;border-top:1px solid var(--finder-line)}
  body[data-view="overview"] .model-grid.is-list .spec-list div{display:grid;grid-template-columns:39% 61%;padding:8px 0;border-left:0;border-bottom:1px solid rgba(13,27,42,.075)}
  body[data-view="overview"] .model-grid.is-list .spec-list dt{margin:0}
  body[data-view="overview"] .model-grid.is-list .spec-list dd{text-align:right}
  body[data-view="overview"] .model-grid.is-list .model-feature{margin:14px 0}
  body[data-view="overview"] .model-grid.is-list .model-cta{display:flex;margin:14px -18px -18px;padding:14px 18px;border-radius:0;justify-content:space-between}
  body[data-view="overview"] .model-grid.is-list .model-cta span{display:inline}
}

@media(prefers-reduced-motion:reduce){
  .maker-overview-card{transition:none}
}


/* ===== Rich specification viewer (AD35L / AD55L and future detailed models) ===== */
.detail-available{
  display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:4px 7px;border-radius:999px;
  background:#edf8f2;color:#087447;font-size:9px;font-weight:900;letter-spacing:.03em;
}
.detail-available::before{content:"";width:6px;height:6px;border-radius:50%;background:#0aa766;box-shadow:0 0 0 3px rgba(10,167,102,.10)}
.model-actions{display:grid;gap:7px;margin:14px -20px -20px;padding:0;background:#fff}
.model-actions .model-cta{margin:0;padding:14px 20px}
.model-detail-button{
  width:calc(100% - 40px);min-height:40px;margin:0 20px;padding:9px 13px;border:1px solid rgba(8,116,185,.22);border-radius:10px;
  display:flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:#075f98;font:inherit;font-size:11px;font-weight:900;cursor:pointer;transition:.18s ease;
}
.model-detail-button:hover{background:#edf7fc;border-color:rgba(8,116,185,.38);transform:translateY(-1px)}
.detail-dot{width:7px;height:7px;border-radius:50%;background:#0a8bc3;box-shadow:0 0 0 4px rgba(10,139,195,.10)}

.spec-detail-dialog{
  width:min(980px,calc(100vw - 28px));max-height:min(900px,calc(100vh - 28px));padding:0;border:0;border-radius:24px;background:#fff;
  color:#142a3e;box-shadow:0 35px 100px rgba(7,31,50,.30);overflow:hidden;
}
.spec-detail-dialog::backdrop{background:rgba(8,29,45,.56);backdrop-filter:blur(4px)}
.spec-dialog-shell{max-height:min(900px,calc(100vh - 28px));overflow:auto;overscroll-behavior:contain}
.spec-dialog-head{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;gap:22px;padding:28px 30px 22px;border-bottom:1px solid rgba(16,38,59,.12);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.spec-dialog-head h2{margin:5px 0 7px;font-size:clamp(34px,5vw,52px);line-height:1;letter-spacing:-.045em}
.spec-dialog-head p{max-width:680px;margin:0;color:#627688;font-size:12px;line-height:1.65}
.spec-dialog-close{flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(16,38,59,.13);border-radius:50%;background:#f7fafc;color:#24445e;font-size:25px;line-height:1;cursor:pointer}
.spec-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;padding:0 30px;background:rgba(16,38,59,.10)}
.spec-quick-grid>div{min-height:91px;padding:17px 18px;background:#f7fafc}
.spec-quick-grid span{display:block;margin-bottom:7px;color:#718395;font-size:9px;font-weight:900;letter-spacing:.04em}
.spec-quick-grid strong{display:block;color:#17344c;font-size:14px;line-height:1.5;word-break:break-word}
.spec-accordion-stack{display:grid;gap:10px;padding:25px 30px}
.spec-accordion{border:1px solid rgba(16,38,59,.12);border-radius:15px;background:#fff;overflow:hidden}
.spec-accordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;cursor:pointer;background:#f8fafc;user-select:none}
.spec-accordion summary::-webkit-details-marker{display:none}
.spec-accordion summary span:first-child{display:grid;gap:2px}
.spec-accordion summary small{color:#0b78b5;font-size:8px;font-weight:900;letter-spacing:.13em}
.spec-accordion summary strong{font-size:15px;color:#17344c}
.spec-accordion-icon{font-size:20px;color:#638094;transition:transform .18s ease}
.spec-accordion[open] .spec-accordion-icon{transform:rotate(45deg)}
.spec-detail-list{margin:0;padding:4px 19px 12px}
.spec-detail-row{display:grid;grid-template-columns:minmax(180px,31%) 1fr;gap:20px;padding:11px 2px;border-bottom:1px solid rgba(16,38,59,.085)}
.spec-detail-row:last-child{border-bottom:0}
.spec-detail-row dt{color:#6a7e90;font-size:10px;line-height:1.55}
.spec-detail-row dd{margin:0;color:#1e3b53;font-size:12px;font-weight:800;line-height:1.7;word-break:break-word}
.spec-source-box{margin:0 30px 24px;padding:17px 19px;border:1px solid rgba(16,38,59,.11);border-radius:14px;background:#fbfcfd}
.spec-source-box strong{font-size:11px;color:#203f59}
.spec-source-box p{margin:6px 0 0;color:#6a7c8c;font-size:10px;line-height:1.65}
.spec-source-box .spec-source-note{color:#4f687c}
.spec-source-box .spec-source-caution{padding-top:8px;border-top:1px solid rgba(16,38,59,.08)}
.spec-dialog-actions{position:sticky;bottom:0;z-index:3;display:flex;justify-content:flex-end;gap:9px;padding:17px 30px;border-top:1px solid rgba(16,38,59,.12);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.spec-dialog-actions .btn{min-height:42px}

body[data-view="overview"] .model-grid.is-list .model-actions{grid-area:cta;margin:0;padding:0;background:transparent;align-self:stretch;align-content:center}
body[data-view="overview"] .model-grid.is-list .model-actions .model-cta{margin:0;padding:10px 12px;border-radius:9px;justify-content:center;text-align:center}
body[data-view="overview"] .model-grid.is-list .model-detail-button{width:100%;margin:0;min-height:36px;padding:8px 10px}
body[data-view="overview"] .model-grid.is-list .model-cta span{display:none}

@media (max-width:760px){
  .model-actions{margin:14px -18px -18px}
  .model-detail-button{width:calc(100% - 36px);margin:0 18px}
  body[data-view="overview"] .model-grid.is-list .model-actions{margin:14px -18px -18px;padding:0;background:#fff;align-content:normal}
  body[data-view="overview"] .model-grid.is-list .model-detail-button{width:calc(100% - 36px);margin:0 18px}
  body[data-view="overview"] .model-grid.is-list .model-actions .model-cta{margin:0;padding:14px 18px;border-radius:0;justify-content:space-between;text-align:left}
  body[data-view="overview"] .model-grid.is-list .model-cta span{display:inline}
  .spec-detail-dialog{width:calc(100vw - 12px);max-height:calc(100vh - 12px);border-radius:17px}
  .spec-dialog-shell{max-height:calc(100vh - 12px)}
  .spec-dialog-head{padding:20px 18px 17px}
  .spec-dialog-head h2{font-size:36px}
  .spec-dialog-close{width:38px;height:38px}
  .spec-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 18px}
  .spec-quick-grid>div{min-height:80px;padding:14px 12px}
  .spec-accordion-stack{padding:18px}
  .spec-detail-row{grid-template-columns:1fr;gap:4px;padding:10px 0}
  .spec-source-box{margin:0 18px 18px}
  .spec-dialog-actions{padding:14px 18px;flex-direction:column-reverse}
  .spec-dialog-actions .btn{width:100%;justify-content:center}
}
