
.koyo-ed-cn-shell{--ink:#161a17;--muted:#68706a;--line:#d9ded9;--soft:#f5f7f4;--green:#315f4b;width:100%;margin:clamp(24px,5vw,60px) auto;color:var(--ink);font-family:inherit}
.koyo-ed-cn-app{width:min(100%,860px);margin:auto}.koyo-ed-cn-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(26px,5vw,52px)}
.koyo-ed-cn-eyebrow,.koyo-ed-cn-step{font-size:11px;letter-spacing:.12em;color:var(--green);text-transform:uppercase}.koyo-ed-cn-panel h1{font-size:clamp(32px,4.8vw,48px);line-height:1.18;margin:10px 0 14px}.koyo-ed-cn-panel h2{font-size:20px;margin:30px 0 14px}.koyo-ed-cn-lead{font-size:16px;line-height:1.8;color:#414842}
.koyo-ed-cn-trust{display:flex;margin:20px 0 14px}.koyo-ed-cn-trust span{font-size:13px;padding:0 14px;border-right:1px solid var(--line)}.koyo-ed-cn-trust span:first-child{padding-left:0}.koyo-ed-cn-trust span:last-child{border:0}.koyo-ed-cn-info{background:var(--soft);border-left:3px solid var(--green);padding:14px 16px;font-size:14px;line-height:1.7}
.koyo-ed-cn-audience{display:grid;grid-template-columns:1fr 1fr;gap:14px}.koyo-ed-cn-audience button{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;text-align:left;cursor:pointer}.koyo-ed-cn-audience strong,.koyo-ed-cn-audience small,.koyo-ed-cn-audience b{display:block}.koyo-ed-cn-audience strong{font-size:20px}.koyo-ed-cn-audience small{font-size:13px;color:var(--muted);margin-top:7px}.koyo-ed-cn-audience b{font-size:13px;color:var(--green);margin-top:18px}
.koyo-ed-cn-resume{margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.koyo-ed-cn-inline{display:flex;gap:10px}.koyo-ed-cn-inline input{flex:1;padding:13px;border:1px solid var(--line);border-radius:9px;font:inherit}.koyo-ed-cn-inline button,.koyo-ed-cn-primary,.koyo-ed-cn-secondary{border-radius:9px;padding:13px 18px;font:inherit;cursor:pointer}.koyo-ed-cn-inline button,.koyo-ed-cn-primary{background:var(--green);color:#fff;border:1px solid var(--green)}.koyo-ed-cn-secondary{background:#fff;border:1px solid var(--line)}
.koyo-ed-cn-id-input{flex:1;display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.koyo-ed-cn-id-input:focus-within{border-color:var(--green);box-shadow:0 0 0 2px rgba(49,95,75,.12)}.koyo-ed-cn-id-input span{padding-left:13px;font-weight:650;letter-spacing:.04em;white-space:nowrap}.koyo-ed-cn-id-input input{min-width:0;border:0!important;border-radius:0!important;box-shadow:none!important;padding-left:2px!important;text-transform:uppercase}
.koyo-ed-cn-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.koyo-ed-cn-check-grid label{border:1px solid var(--line);border-radius:10px;padding:15px;display:flex;gap:10px;cursor:pointer}.koyo-ed-cn-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.koyo-ed-cn-field{display:block;margin:17px 0}.koyo-ed-cn-field>span{display:block;font-weight:650;margin-bottom:7px}.koyo-ed-cn-field input,.koyo-ed-cn-field select{width:100%;box-sizing:border-box;padding:13px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit}.koyo-ed-cn-input-unit{display:flex;align-items:center;gap:9px}.koyo-ed-cn-input-unit b{font-size:14px;color:var(--muted)}
.koyo-ed-cn-error{font-size:13px;color:#9f332d;margin-top:10px}.koyo-ed-cn-idbox{margin:22px 0;padding:15px 18px;background:var(--soft);border-radius:10px}.koyo-ed-cn-idbox span,.koyo-ed-cn-idbox small{display:block;font-size:12px;color:var(--muted)}.koyo-ed-cn-idbox strong{display:block;font-size:20px;letter-spacing:.08em}.koyo-ed-cn-levelbox{display:flex;gap:10px}
.koyo-ed-cn-report-head{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:22px}.koyo-ed-cn-report-head h1{font-size:42px}.koyo-ed-cn-meta{font-size:12px;color:var(--muted)}.koyo-ed-cn-print{background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 14px}.koyo-ed-cn-level-card{padding:22px;background:var(--soft);border-radius:12px;margin:24px 0}.koyo-ed-cn-level-top{display:flex;justify-content:space-between}.koyo-ed-cn-level-track{height:5px;background:#dfe4df;border-radius:999px;margin:14px 0;overflow:hidden}.koyo-ed-cn-level-track i{display:block;height:100%;background:var(--green)}
.koyo-ed-cn-report-section{margin:30px 0}.koyo-ed-cn-finding{padding:18px 0;border-top:1px solid var(--line)}.koyo-ed-cn-finding>div{display:flex;justify-content:space-between}.koyo-ed-cn-finding span{font-size:12px;color:var(--green)}.koyo-ed-cn-finding p{font-size:14px;line-height:1.75;color:#4f5650}.koyo-ed-cn-next-level{padding:22px;border:1px solid var(--line);border-radius:12px}.koyo-ed-cn-signature{margin:30px 0;padding:24px;background:#f1f4f0;border-top:3px solid var(--green)}.koyo-ed-cn-security{font-size:11px;color:var(--muted)}.koyo-ed-cn-report-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.koyo-ed-cn-cta{background:var(--green);color:#fff!important;text-decoration:none;border-radius:999px;padding:13px 20px;font-weight:650}.koyo-ed-cn-linkbtn{border:0;background:transparent;text-decoration:underline;cursor:pointer}.koyo-ed-cn-linkbtn.danger{color:#8a3b36}
.koyo-ed-cn-entry{text-align:center;margin:34px 0}.koyo-ed-cn-entry-btn{display:inline-block;background:#111;color:#fff!important;text-decoration:none;padding:16px 28px;border-radius:999px;font-weight:650}.koyo-ed-cn-entry p{font-size:13px;color:#777}
@media(max-width:680px){.koyo-ed-cn-panel{padding:26px 20px}.koyo-ed-cn-audience,.koyo-ed-cn-check-grid{grid-template-columns:1fr}.koyo-ed-cn-inline{display:block}.koyo-ed-cn-inline button{width:100%;margin-top:8px}.koyo-ed-cn-report-head{display:block}.koyo-ed-cn-print{margin-top:16px}}
@media print{body *{visibility:hidden!important}.koyo-ed-cn-report,.koyo-ed-cn-report *{visibility:visible!important}.koyo-ed-cn-report{position:absolute;left:0;top:0;width:100%!important;border:0!important;padding:10mm!important}.koyo-ed-cn-print,.koyo-ed-cn-report-actions{display:none!important}@page{size:A4;margin:10mm}}


/* v0.8.6 checkbox/focus polish */
.koyo-ed-cn-check-grid label{
  position:relative;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.koyo-ed-cn-check-grid label:has(input:checked){
  border-color:var(--green);
  background:#f7faf7;
}
.koyo-ed-cn-check-grid label:has(input:focus-visible){
  border-color:var(--green);
  box-shadow:0 0 0 3px rgba(49,95,75,.14);
}
.koyo-ed-cn-check-grid input[type="checkbox"]{
  width:18px;
  height:18px;
  flex:0 0 18px;
  accent-color:var(--green);
  outline:none;
}
.koyo-ed-cn-check-grid input[type="checkbox"]:focus{
  outline:none;
}
.koyo-ed-cn-check-grid input[type="checkbox"]:focus-visible{
  outline:none;
}


/* v0.8.9 Native Start UI — start screen only */
.koyo-ed-cn-panel:has(.koyo-native-start){
  border-radius:8px;
  box-shadow:none;
  padding:clamp(28px,5vw,52px);
}

.koyo-native-start{
  --native-green:#315f4b;
  --native-line:#d9ddd9;
  --native-muted:#68706a;
}

.koyo-native-start::before{
  content:"";
  display:block;
  width:100%;
  height:2px;
  background:var(--native-green);
  margin:0 0 30px;
}

.koyo-native-eyebrow{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
  color:var(--native-green);
  font-size:11px;
  letter-spacing:.11em;
}

.koyo-native-eyebrow span:first-child{
  padding-right:12px;
  border-right:1px solid var(--native-line);
}

.koyo-native-start h2{
  margin:0 0 12px;
  font-size:clamp(28px,3.2vw,40px);
  line-height:1.28;
  font-weight:500;
  letter-spacing:.01em;
}

.koyo-native-lead{
  max-width:650px;
  margin:0 0 32px;
  color:#555;
  font-size:14px;
  line-height:1.9;
}

.koyo-native-choices{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.koyo-native-choice{
  appearance:none;
  background:#fff;
  color:#111;
  border:1px solid var(--native-line);
  border-radius:6px;
  padding:22px;
  text-align:left;
  cursor:pointer;
  box-shadow:none;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}

.koyo-native-choice:hover{
  background:#f8faf8;
  border-color:#adb8b1;
}

.koyo-native-choice:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(49,95,75,.14);
  border-color:var(--native-green);
}

.koyo-native-choice span,
.koyo-native-choice strong,
.koyo-native-choice small,
.koyo-native-choice b{
  display:block;
}

.koyo-native-num{
  color:var(--native-green);
  font-size:10px;
  letter-spacing:.1em;
  margin-bottom:10px;
}

.koyo-native-choice strong{
  font-size:20px;
  font-weight:600;
  margin-bottom:7px;
}

.koyo-native-choice small{
  min-height:3.2em;
  color:var(--native-muted);
  font-size:13px;
  line-height:1.6;
}

.koyo-native-choice b{
  margin-top:18px;
  color:var(--native-green);
  font-size:13px;
  font-weight:600;
}

.koyo-native-resume{
  margin-top:30px;
  padding-top:22px;
  border-top:1px solid var(--native-line);
}

.koyo-native-resume-toggle{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  text-align:left;
  cursor:pointer;
  font:inherit;
}

.koyo-native-resume-toggle span{
  color:#666;
  font-size:13px;
}

.koyo-native-resume-toggle strong{
  color:var(--native-green);
  font-size:13px;
  font-weight:500;
}

.koyo-native-resume-toggle:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(49,95,75,.14);
}

.koyo-native-resume-body{
  display:none;
  padding-top:18px;
}

.koyo-native-resume-body.is-open{
  display:block;
}

.koyo-native-resume-body p{
  margin:0 0 10px;
  color:var(--native-muted);
  font-size:13px;
}

@media(max-width:700px){
  .koyo-native-start::before{margin-bottom:24px}
  .koyo-native-start h2{font-size:28px}
  .koyo-native-choices{grid-template-columns:1fr}
  .koyo-native-choice small{min-height:0}
  .koyo-native-resume-toggle{
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
  }
}


/* v0.8.10 polish: enlarge key start/resume labels only */
.koyo-native-eyebrow{
  font-size:15px;
  letter-spacing:.09em;
  font-weight:600;
  margin-bottom:18px;
}
.koyo-native-eyebrow span:first-child{
  padding-right:14px;
}

.koyo-native-resume-toggle span{
  font-size:16px;
  font-weight:500;
  color:#222;
}
.koyo-native-resume-toggle strong{
  font-size:17px;
  font-weight:600;
  color:var(--native-green);
}
.koyo-native-resume-toggle{
  padding:4px 0;
}

@media(max-width:700px){
  .koyo-native-eyebrow{
    font-size:13px;
    margin-bottom:16px;
  }
  .koyo-native-resume-toggle span{
    font-size:15px;
  }
  .koyo-native-resume-toggle strong{
    font-size:16px;
  }
}

/* CN V0.2.0 enterprise commercial diagnosis flow */
.koyo-ed-cn-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.koyo-ed-cn-four{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:10px}.koyo-ed-cn-hint{font-size:13px;line-height:1.7;color:var(--muted)}
.koyo-ed-cn-paths{display:grid;gap:12px;margin-top:24px}.koyo-ed-cn-path{width:100%;text-align:left;padding:19px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font:inherit}.koyo-ed-cn-path strong,.koyo-ed-cn-path span{display:block}.koyo-ed-cn-path strong{font-size:17px}.koyo-ed-cn-path span{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.6}.koyo-ed-cn-path:hover,.koyo-ed-cn-path.is-selected{border-color:var(--green);background:#f7faf7}
.koyo-ed-cn-subsection{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.koyo-ed-cn-subhead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.koyo-ed-cn-subhead h2{margin:0 0 6px}.koyo-ed-cn-subhead p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.koyo-ed-cn-tou{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fbfcfb}.koyo-ed-cn-tou-head{display:flex;justify-content:space-between;align-items:center}.koyo-ed-cn-intervals{display:grid;gap:8px;margin:8px 0}.koyo-ed-cn-interval{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.koyo-ed-cn-interval label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.koyo-ed-cn-interval input{padding:9px;border:1px solid var(--line);border-radius:8px;font:inherit}.koyo-ed-cn-small{padding:8px 12px;font-size:13px}
.koyo-ed-cn-summary{margin:24px 0;padding:24px;background:var(--soft);border-radius:12px}.koyo-ed-cn-summary h2{margin:0 0 14px}.koyo-ed-cn-cost{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.koyo-ed-cn-cost strong{font-size:34px;font-weight:600}.koyo-ed-cn-cost span{font-size:15px}.koyo-ed-cn-cost small{width:100%;color:var(--muted)}.koyo-ed-cn-service-box{margin:30px 0;padding:22px;border:1px solid var(--line);border-radius:12px}.koyo-ed-cn-service-box h2{margin:7px 0 16px}.koyo-ed-cn-service-list{display:grid;gap:10px}.koyo-ed-cn-service-list>div{padding:14px;background:var(--soft);border-radius:8px}.koyo-ed-cn-service-list strong,.koyo-ed-cn-service-list span{display:block}.koyo-ed-cn-service-list span{margin-top:5px;font-size:13px;line-height:1.7;color:#505650}
.koyo-ed-cn-project-preview{margin:18px 0;padding:15px 18px;background:var(--soft);border-radius:10px}.koyo-ed-cn-project-preview span,.koyo-ed-cn-project-preview strong{display:block}.koyo-ed-cn-project-preview span{font-size:11px;color:var(--muted);margin-bottom:4px}.koyo-ed-cn-choice-list{display:grid;gap:11px;margin:22px 0}.koyo-ed-cn-choice{width:100%;padding:18px 20px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left;font:inherit;cursor:pointer}.koyo-ed-cn-choice strong,.koyo-ed-cn-choice span{display:block}.koyo-ed-cn-choice span{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.6}.koyo-ed-cn-choice:hover,.koyo-ed-cn-choice.is-selected{border-color:var(--green);background:#f7faf7}.koyo-ed-cn-choice.is-selected{box-shadow:0 0 0 2px rgba(49,95,75,.10)}.koyo-ed-cn-choice-note{min-height:22px;color:#48534c;font-size:13px;line-height:1.7}.koyo-ed-cn-month-change{margin:18px 0;padding:18px;border:1px solid #d8c9a8;border-radius:10px;background:#fffaf0}.koyo-ed-cn-month-change strong,.koyo-ed-cn-month-change label{display:block}.koyo-ed-cn-month-change label{margin-top:10px;font-size:14px}
@media(max-width:760px){.koyo-ed-cn-two,.koyo-ed-cn-four{grid-template-columns:1fr}.koyo-ed-cn-subhead{display:block}.koyo-ed-cn-subhead button{margin-top:12px}}

/* CN V0.2.2 independent diagnosis report */
.koyo-ed-cn-report-toolbar{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin:0 0 18px;flex-wrap:wrap}.koyo-ed-cn-report{background:#fff;border:1px solid var(--line);border-radius:14px;padding:34px}.koyo-ed-cn-report-date{text-align:right;font-size:12px;color:var(--muted);line-height:1.6}.koyo-ed-cn-report-date strong{font-size:14px;color:#252b27}.koyo-ed-cn-report-identity{margin:24px 0;padding:18px 20px;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1.4fr 1fr;gap:12px 24px}.koyo-ed-cn-report-identity>div span,.koyo-ed-cn-report-fact span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.koyo-ed-cn-report-identity>div strong{font-size:15px;overflow-wrap:anywhere}.koyo-ed-cn-report-identity p{grid-column:1/-1;margin:2px 0 0;font-size:11px;line-height:1.7;color:var(--muted)}.koyo-ed-cn-report-kicker{font-size:11px;letter-spacing:.08em;color:var(--green);font-weight:650;margin-bottom:7px}.koyo-ed-cn-report-intro,.koyo-ed-cn-report-note{font-size:13px;line-height:1.75;color:var(--muted)}.koyo-ed-cn-report-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden}.koyo-ed-cn-report-fact{background:#fff;padding:13px 15px;min-width:0}.koyo-ed-cn-report-fact strong{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.koyo-ed-cn-table-wrap{overflow-x:auto}.koyo-ed-cn-report-table{width:100%;border-collapse:collapse;font-size:12px}.koyo-ed-cn-report-table th,.koyo-ed-cn-report-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.koyo-ed-cn-report-table th{font-size:11px;color:var(--muted);font-weight:600}.koyo-ed-cn-report-disclaimer{margin:30px 0 18px;padding:18px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.koyo-ed-cn-report-disclaimer strong{font-size:13px}.koyo-ed-cn-report-disclaimer p{margin:7px 0 0;font-size:11px;line-height:1.75;color:var(--muted)}.koyo-ed-cn-report-footer{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding-top:8px}.koyo-ed-cn-report-footer>div{display:grid;gap:3px}.koyo-ed-cn-report-footer>div:last-child{text-align:right}.koyo-ed-cn-report-footer span{font-size:10px;color:var(--muted)}.koyo-ed-cn-report-footer strong{font-size:13px;overflow-wrap:anywhere}
@media(max-width:680px){.koyo-ed-cn-report{padding:24px 18px}.koyo-ed-cn-report-toolbar{justify-content:flex-start}.koyo-ed-cn-report-date{text-align:left;margin-top:14px}.koyo-ed-cn-report-identity,.koyo-ed-cn-report-facts{grid-template-columns:1fr}.koyo-ed-cn-report-footer{display:grid}.koyo-ed-cn-report-footer>div:last-child{text-align:left}}
@media print{body *{visibility:hidden!important}.koyo-ed-cn-report,.koyo-ed-cn-report *{visibility:visible!important}.koyo-ed-cn-report{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}.koyo-ed-cn-report-toolbar,.koyo-ed-cn-report-actions{display:none!important}.koyo-ed-cn-report-section,.koyo-ed-cn-summary,.koyo-ed-cn-service-box,.koyo-ed-cn-report-disclaimer{break-inside:avoid}.koyo-ed-cn-report-table{font-size:10px}.koyo-ed-cn-report-head h1{font-size:28px!important}@page{size:A4;margin:14mm}}

/* V0.2.3 unified input, report ending and voluntary report contact */
.koyo-ed-cn-report-end{margin:34px 0 18px;padding:26px;border:1px solid var(--line);border-radius:12px;background:#f7f9f7}
.koyo-ed-cn-report-end h2{margin:6px 0 8px}.koyo-ed-cn-report-end>p{color:#59605b;line-height:1.75}
.koyo-ed-cn-report-end-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:18px}
.koyo-ed-cn-delivery-box{margin-top:20px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:10px}
.koyo-ed-cn-delivery-box h3{margin-top:0}.koyo-ed-cn-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.6;color:#4f5650}
.koyo-ed-cn-consent input{margin-top:4px}.koyo-ed-cn-delivery-success{padding:4px 0}.koyo-ed-cn-delivery-success p{margin-bottom:0;color:#59605b}
@media(max-width:680px){.koyo-ed-cn-report-end-actions>*{width:100%;text-align:center}.koyo-ed-cn-report-end{padding:20px 16px}}
@media print{.koyo-ed-cn-report-toolbar,.koyo-ed-cn-report-end,.koyo-ed-cn-report-actions{display:none!important}}
