:root{--bg:#f5f2ea;--paper:#fffdf8;--ink:#1c271f;--muted:#677069;--line:#d9d5c9;--accent:#216b45;--accent2:#dceade;--warn:#9a5b16;--warnbg:#fff3df;--shadow:0 12px 35px rgba(39,51,43,.08)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% 0,#e5eee5 0,transparent 35%),var(--bg);color:var(--ink);font-family:Inter,"Hiragino Sans","Yu Gothic UI",Meiryo,sans-serif;line-height:1.65}.shell{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:52px 0 80px}.hero{padding:22px 4px 30px}.brand{font-weight:800;letter-spacing:.02em}.brand span{font-size:11px;padding:3px 7px;background:var(--ink);color:white;border-radius:999px;margin-left:7px}.hero h1{font-size:clamp(38px,6vw,68px);line-height:1.08;letter-spacing:-.045em;margin:24px 0 20px;max-width:880px}.hero h1 em{font-style:normal;color:var(--accent)}.lead{max-width:800px;font-size:18px;color:#4f5a52}.privacy-strip{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;margin-top:24px;font-size:13px}.privacy-strip strong{background:var(--accent2);color:#155636;border-radius:999px;padding:4px 9px}.panel{background:rgba(255,253,248,.93);border:1px solid var(--line);border-radius:22px;padding:28px;margin-top:18px;box-shadow:var(--shadow)}.upload-panel{text-align:center;border-style:dashed;border-width:2px;padding:52px 24px;cursor:pointer;transition:.18s}.upload-panel.drag{border-color:var(--accent);background:#f3faf4;transform:translateY(-2px)}.drop-icon{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;margin:0 auto 14px;background:var(--accent);color:white;font-weight:900;font-size:26px}.upload-panel h2{margin:3px 0 4px;font-size:26px}.upload-panel p{margin:0 0 8px}.upload-panel small{color:var(--muted)}button{font:inherit}.link-button{border:0;background:none;color:var(--accent);font-weight:800;text-decoration:underline;cursor:pointer}.hidden{display:none!important}.row{display:flex;align-items:center}.between{justify-content:space-between}.muted{color:var(--muted);font-size:14px}.progress-track{height:10px;background:#e9e5dc;border-radius:999px;overflow:hidden}.progress-bar{height:100%;width:0;background:var(--accent);transition:width .25s}.verdict-panel{display:flex;justify-content:space-between;gap:24px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--muted);font-weight:800}.verdict-panel h2,.section-head h2{margin:4px 0;font-size:25px}.verdict-badge{padding:12px 17px;border-radius:999px;font-weight:800;white-space:nowrap}.verdict-badge.ok{background:var(--accent2);color:#155636}.verdict-badge.partial{background:var(--warnbg);color:var(--warn)}.metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:18px}.metric{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:18px}.metric b{display:block;font-size:25px;letter-spacing:-.03em}.metric span{font-size:12px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-card{border:1px solid var(--line);border-radius:17px;padding:18px 20px;background:white}.report-card.warning{background:#fffbf2}.report-card.question{background:#f4f8f4}.report-card h3{margin:0 0 9px;font-size:16px}.report-card ul,.report-card ol{margin:0;padding-left:20px}.report-card li+li{margin-top:7px}.primary,.secondary{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer}.primary{background:var(--accent);color:white}.secondary{background:#ece9e0;color:var(--ink)}.primary:disabled{opacity:.5;cursor:wait}.toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}details{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}summary{cursor:pointer;font-weight:700}pre{max-height:320px;overflow:auto;background:#17221b;color:#d6eadb;padding:16px;border-radius:14px;font-size:11px;white-space:pre-wrap}.ai-row{display:flex;align-items:center;gap:14px;margin-top:18px}.ai-output{margin-top:18px;border-radius:16px;border:1px solid #a9c5af;background:#f4faf5;padding:20px;white-space:pre-wrap}.compact{padding:22px 28px}.compact h2{font-size:18px;margin:0 0 6px}.compact p{margin:0;color:var(--muted)}@media(max-width:800px){.metrics{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr}.verdict-panel,.section-head,.ai-row{align-items:flex-start;flex-direction:column}.shell{width:min(100% - 20px,1080px);padding-top:24px}.panel{padding:20px}.hero h1{font-size:42px}}


.boundary-note{background:#f8f6ef;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:14px 0 0}
.preview-report{position:relative;margin-top:16px;border:1px solid var(--line);border-radius:17px;background:white;padding:20px;overflow:hidden;min-height:270px}
.preview-report h3{margin:0 0 10px}.preview-report p{margin:8px 0}
.preview-fade{position:relative;max-height:145px;overflow:hidden}
.preview-fade:after{content:"";position:absolute;left:0;right:0;bottom:0;height:58px;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.38) 72%,rgba(255,255,255,.62))}
.preview-blur{filter:blur(1.7px);user-select:none;opacity:.82}
.value-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
@media(max-width:800px){.value-split{grid-template-columns:1fr}}

.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.plan-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff}
.plan-card.featured{border-width:2px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.plan-card h3{margin:6px 0 8px}.plan-card p{min-height:5.2em}.plan-card strong{display:block;margin-top:14px;font-size:1.05rem}
.free-detail{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.free-detail summary{cursor:pointer;font-weight:700}
@media(max-width:760px){.plan-grid{grid-template-columns:1fr}.plan-card p{min-height:0}}


/* v0.9: warmer, more colorful product UI */
body{
  background:
    radial-gradient(circle at 8% 4%, rgba(255,216,128,.34), transparent 28rem),
    radial-gradient(circle at 92% 8%, rgba(125,211,252,.26), transparent 30rem),
    #fffaf3;
}
.hero{background:linear-gradient(135deg,#fff7dd 0%,#fff 48%,#edf8ff 100%);border-color:#efdca8}
.drop{background:linear-gradient(135deg,#fffdf7,#f3fbff);border-color:#c9dce7}
.metric:nth-child(1){background:#fff4cc}
.metric:nth-child(2){background:#e8f6ff}
.metric:nth-child(3){background:#eef8e7}
.metric:nth-child(4){background:#fff0f3}
.metric:nth-child(5){background:#f2edff}
.report-card:nth-child(1){border-top:5px solid #4da36b;background:#f6fff8}
.report-card:nth-child(2){border-top:5px solid #3f8fc4;background:#f5fbff}
.report-card.warning{border-top:5px solid #d89b32;background:#fffaf0}
.report-card.question{border-top:5px solid #9a70c9;background:#fbf7ff}
.preview-report{background:linear-gradient(135deg,#fff8df,#fff 55%,#eef9ff);border:1px solid #ead8a2}
.paid-output-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.paid-output-grid>div{padding:13px 14px;border-radius:13px;border:1px solid var(--line);background:#fff}
.paid-output-grid>div:nth-child(1){border-left:5px solid #e9a23b}
.paid-output-grid>div:nth-child(2){border-left:5px solid #4b9ed1}
.paid-output-grid>div:nth-child(3){border-left:5px solid #df6d72}
.paid-output-grid>div:nth-child(4){border-left:5px solid #7c6bc4}
.paid-output-grid b,.paid-output-grid span{display:block}.paid-output-grid span{margin-top:4px;color:var(--muted);font-size:.92rem}
.preview-subhead{margin:20px 0 8px}.preview-note{font-size:.86rem;color:var(--muted);margin-top:10px}
.plan-card:nth-child(1){background:#f4fbf3;border-color:#a9d6a7}
.plan-card:nth-child(2){background:linear-gradient(180deg,#fff7d7,#fff);border-color:#e5ad38}
.plan-card:nth-child(3){background:#f5f0ff;border-color:#baa6df}
.plan-card:nth-child(1) .eyebrow{color:#3e8147}
.plan-card:nth-child(2) .eyebrow{color:#a76700}
.plan-card:nth-child(3) .eyebrow{color:#7254a8}
.plan-card.featured{box-shadow:0 10px 26px rgba(176,123,23,.14)}
.primary{background:linear-gradient(135deg,#e89a22,#df6a3a);border-color:#c85c25}
@media(max-width:760px){.paid-output-grid{grid-template-columns:1fr}}


/* v0.10: B/43-inspired warm editorial base + strong CTA */
:root{
  --ink:#252321;
  --muted:#68625d;
  --coral:#ef6f61;
  --orange:#f29b38;
  --cream:#fff7ea;
  --blue:#1769aa;
  --green:#31795b;
}
body{
  color:var(--ink);
  background:#fffdfa;
  background-image:
    linear-gradient(115deg,rgba(239,111,97,.07) 0 16%,transparent 16% 100%),
    linear-gradient(300deg,rgba(242,155,56,.06) 0 13%,transparent 13% 100%);
}
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(120deg,#fff1e9 0%,#fffaf1 54%,#ffffff 54%);
  border:2px solid #2c2926;
  box-shadow:8px 8px 0 #f2a23a;
}
.hero:after{
  content:"";position:absolute;width:170px;height:170px;border-radius:50%;
  right:-55px;top:-65px;background:var(--coral);opacity:.92;
}
.hero h1{font-size:clamp(2.25rem,5vw,4.3rem);line-height:1.08;letter-spacing:-.045em;max-width:760px}
.hero-lead{font-size:1.08rem;max-width:760px;line-height:1.8}
.hero-flow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0 8px}
.hero-flow span{background:#fff;border:1.5px solid #2c2926;border-radius:999px;padding:8px 13px;font-weight:700}
.hero-flow b{color:var(--coral)}
.hero-note{font-size:.88rem;color:var(--muted)}
.eyebrow{color:#b64e43;font-weight:800;letter-spacing:.04em}
.proof-panel{
  border:2px solid #2c2926;background:#fff;
  box-shadow:6px 6px 0 #dbe9e2;
}
.proof-panel h2{max-width:720px}
.proof-sentence{font-size:1.08rem;font-weight:700;margin:12px 0 14px}
.proof-chips{display:flex;flex-wrap:wrap;gap:8px}
.proof-chips span{padding:8px 11px;border-radius:7px;border:1px solid #bfb7ae;background:#fffaf1;font-weight:700;font-size:.9rem}
.preview-report{border:2px solid #2c2926;background:#fff;box-shadow:6px 6px 0 #ffd8cc}
.paid-output-grid>div{border-radius:8px;border:1px solid #bfb7ae;background:#fff}
.paid-output-grid>div:nth-child(1){border-left:7px solid #ef6f61}
.paid-output-grid>div:nth-child(2){border-left:7px solid #f29b38}
.paid-output-grid>div:nth-child(3){border-left:7px solid #31795b}
.paid-output-grid>div:nth-child(4){border-left:7px solid #1769aa}
.cost-note{padding:12px 14px;border-left:5px solid #f29b38;background:#fff7e8}
.plan-grid{align-items:stretch}
.plan-card{border-radius:9px;background:#fff!important;border:1.5px solid #9f9890}
.plan-card:nth-child(1){border-top:7px solid #6b9b7c}
.plan-card:nth-child(2){border:2px solid #2c2926;border-top:9px solid #f29b38;transform:translateY(-5px);box-shadow:7px 7px 0 #ffd479}
.plan-card:nth-child(3){border-top:7px solid #7555a4}
.plan-card strong{font-size:1.35rem}
.plan-card small{display:block;font-weight:600;color:var(--muted);margin-top:3px}
.primary{
  background:#1674d1!important;color:#fff!important;border:2px solid #0d4f91!important;
  border-radius:8px!important;box-shadow:0 5px 0 #0d4f91!important;
  font-weight:900!important;font-size:1.03rem!important;padding:15px 20px!important;
}
.primary:hover{transform:translateY(2px);box-shadow:0 3px 0 #0d4f91!important}
.ai-row{margin-top:22px;padding:18px;background:#fff6d9;border:2px solid #2c2926;border-radius:10px}
.panel{border-radius:12px}
@media(max-width:760px){.hero:after{width:100px;height:100px}.plan-card:nth-child(2){transform:none}}


/* v0.11 — stronger A/B direction: saturated accents, white space, hard contrast */
:root{
  --ab-ink:#202020;
  --ab-coral:#f05a4f;
  --ab-orange:#ffad24;
  --ab-blue:#0877d1;
  --ab-navy:#17324d;
  --ab-green:#17845b;
  --ab-paper:#fff;
  --ab-warm:#fff7e6;
}
body{
  background:#f7f5f0!important;
  background-image:none!important;
  color:var(--ab-ink);
}
.hero.hero-compact{
  padding:22px 26px!important;
  background:#fff!important;
  border:2px solid var(--ab-ink)!important;
  box-shadow:7px 7px 0 var(--ab-orange)!important;
}
.hero.hero-compact:after{display:none!important}
.hero-kicker{
  display:inline-block;margin:12px 0 8px;padding:5px 9px;
  background:var(--ab-coral);color:#fff;font-weight:900;font-size:.88rem;
}
.hero.hero-compact h1{
  margin:4px 0 8px!important;
  font-size:clamp(1.65rem,3.3vw,2.65rem)!important;
  line-height:1.18!important;letter-spacing:-.035em!important;
}
.hero.hero-compact h1 em{color:var(--ab-blue);font-style:normal}
.hero.hero-compact .hero-lead{margin:0!important;font-size:1rem!important;line-height:1.55!important}
.privacy-mini{margin-top:10px;font-size:.82rem;color:#625d57}
.privacy-mini b{color:var(--ab-green)}
.drop{
  margin-top:18px!important;
  min-height:250px;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  background:#fff!important;
  border:3px dashed var(--ab-blue)!important;
  box-shadow:0 0 0 7px rgba(8,119,209,.07);
}
.drop:hover{background:#f8fcff!important}
.drop-kicker{
  background:var(--ab-orange);color:#211b11;font-weight:900;
  padding:5px 10px;margin-bottom:7px;border-radius:3px;
}
.drop h2{font-size:1.65rem;margin:4px 0 10px}
.drop p{font-size:1.05rem}
.drop p span{font-size:.9rem;color:#666}
.panel,.preview-report,.proof-panel{
  background:#fff!important;
}
.metric:nth-child(n){background:#fff!important;border-top:4px solid var(--ab-blue)}
.metric:nth-child(2){border-top-color:var(--ab-coral)}
.metric:nth-child(3){border-top-color:var(--ab-orange)}
.metric:nth-child(4){border-top-color:var(--ab-green)}
.metric:nth-child(5){border-top-color:var(--ab-navy)}
.proof-panel{box-shadow:6px 6px 0 #d7d3ca!important}
.proof-chips span{background:#fff!important;border:1.5px solid #aaa!important}
.preview-report{box-shadow:7px 7px 0 var(--ab-coral)!important}
.paid-output-grid>div{background:#fff!important}
.plan-card:nth-child(n){background:#fff!important}
.plan-card:nth-child(1){border-top:8px solid var(--ab-green)!important}
.plan-card:nth-child(2){
  border:2px solid var(--ab-ink)!important;border-top:10px solid var(--ab-orange)!important;
  box-shadow:8px 8px 0 var(--ab-orange)!important;
}
.plan-card:nth-child(3){border-top:8px solid #6847a8!important}
.purchase-row{
  display:grid!important;grid-template-columns:1fr auto;gap:10px 18px;align-items:center;
  background:var(--ab-navy)!important;color:#fff!important;
  border:0!important;border-radius:8px!important;padding:20px!important;
}
.cta-copy b{display:block;font-size:1.2rem}.cta-copy span{display:block;margin-top:4px;color:#dce8f3;font-size:.9rem}
.purchase-row .primary{
  background:var(--ab-orange)!important;color:#17120a!important;
  border:2px solid #fff!important;box-shadow:4px 4px 0 #fff!important;
  font-size:1.08rem!important;white-space:nowrap;
}
.purchase-row .primary:hover{box-shadow:2px 2px 0 #fff!important}
.cta-sub{grid-column:1/-1;color:#dce8f3;font-size:.8rem;text-align:right}
.cta-sub span{opacity:.75}
.cost-note{background:#fff!important;border:2px solid var(--ab-orange)!important;border-left:8px solid var(--ab-orange)!important}
@media(max-width:760px){
 .hero.hero-compact{padding:18px!important}
 .drop{min-height:220px}
 .purchase-row{grid-template-columns:1fr!important}
 .cta-sub{grid-column:auto;text-align:left}
}


.completion-panel{
  border:2px solid #202020!important;
  box-shadow:8px 8px 0 #ffad24!important;
  padding:24px!important;
}
.completion-panel h2{
  font-size:clamp(1.8rem,3.5vw,2.8rem)!important;
  margin:5px 0 6px!important;
  letter-spacing:-.035em!important;
}
.completion-panel #summaryText{font-size:1rem;margin:0 0 15px;color:#555}
.metrics{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;margin:14px 0 13px!important;
}
.metric{
  min-height:112px!important;padding:15px!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  border:0!important;border-radius:5px!important;color:#fff!important;
}
.metric:nth-child(1){background:#0877d1!important}
.metric:nth-child(2){background:#ef5a4f!important}
.metric:nth-child(3){background:#ffad24!important;color:#20170a!important}
.metric:nth-child(4){background:#17845b!important}
.metric:nth-child(5){background:#17324d!important}
.metric b{
  font-size:clamp(1.55rem,2.7vw,2.35rem)!important;
  line-height:1!important;font-weight:950!important;letter-spacing:-.045em!important;
}
.metric span{font-size:.8rem!important;font-weight:900!important;margin-top:9px!important}
.analysis-proof{
  padding:11px 13px;border-left:6px solid #202020;background:#f7f5f0;
  font-size:.93rem;line-height:1.65;
}
.analysis-proof b{font-weight:900}
.completion-note{font-size:.76rem!important;color:#777!important;margin:9px 0 0!important}
@media(max-width:760px){
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .metric:last-child{grid-column:1/-1}
}


.experiment-badge{display:inline-block;margin-left:7px;padding:3px 7px;border:1px solid #777;border-radius:999px;color:#666;background:#fff;font-size:.68rem;vertical-align:middle}

.parse-error{margin:16px auto 0;max-width:680px;text-align:left;padding:12px 14px;border:2px solid #c9433b;background:#fff;color:#202020;border-radius:6px}
.parse-error b,.parse-error span{display:block}.parse-error b{color:#b22d26;margin-bottom:3px}.parse-error span{font-size:.9rem}


/* v0.14 — explicit AI transmission gate */
.ai-gate{border:2px solid #202020!important}
.send-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.send-summary>div{padding:13px 14px;border:1.5px solid #202020;border-radius:7px;background:#fff}
.send-summary b,.send-summary span{display:block}
.send-summary b{font-size:.82rem;margin-bottom:5px}
.send-ok{border-top:7px solid #17845b!important}.send-ok b{color:#116443}
.send-no{border-top:7px solid #ef5a4f!important}.send-no b{color:#b5352e}
.semantic-choice{display:flex;gap:12px;align-items:flex-start;padding:15px;border:2px solid #0877d1;border-radius:7px;background:#fff;cursor:pointer}
.semantic-choice input{margin-top:4px;transform:scale(1.25)}
.semantic-choice b,.semantic-choice small{display:block}
.semantic-choice small{margin-top:5px;color:#666;line-height:1.55}
.semantic-notice{margin-top:9px;padding:9px 11px;background:#f2f2f2;border-left:5px solid #777;font-size:.86rem}
.semantic-notice.on{background:#fff5dc;border-left-color:#ffad24}
.payload-details{margin-top:13px}.payload-details summary{cursor:pointer;font-weight:800}
.payload-details pre{max-height:280px;overflow:auto}
.ai-action{margin-top:18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
@media(max-width:760px){.send-summary{grid-template-columns:1fr}}


/* v0.15 — paid-report output prototype */
.ai-output{margin-top:22px;border:2px solid #202020;background:#fff;padding:0;overflow:hidden;border-radius:8px}
.karte-head{padding:22px;background:#17324d;color:#fff}
.karte-head .eyebrow{color:#ffbd43}.karte-head h2{margin:5px 0 7px}.karte-head p{margin:0;color:#e6eef5}
.karte-section{padding:18px 20px;border-bottom:1px solid #ddd}
.karte-section h3{margin:7px 0 9px}.karte-section p{line-height:1.7}
.karte-section li{margin:6px 0;line-height:1.55}
.karte-tag{display:inline-block;padding:4px 8px;border-radius:3px;font-size:.72rem;font-weight:900;color:#fff}
.karte-tag.fact{background:#0877d1}.karte-tag.infer{background:#e05b45}.karte-tag.check{background:#c77a00}.karte-tag.ask{background:#6847a8}
.karte-caution{font-size:.84rem;color:#666;border-left:4px solid #e05b45;padding-left:9px}
.karte-section.next{background:#fff4d1;border-bottom:0}
.prototype-note{padding:11px 15px;background:#f1efeb;color:#666;font-size:.78rem}


/* v0.16 — report quality boundary */
.karte-contract{display:grid;gap:7px;padding:14px 20px;background:#f4f6f7;border-bottom:2px solid #202020;font-size:.84rem}
.karte-contract b{margin-bottom:2px}.karte-contract span{display:flex;align-items:center;gap:8px}
.dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 10px}
.dot.fact{background:#0877d1}.dot.infer{background:#e05b45}.dot.unknown{background:#666}.dot.ask{background:#6847a8}
.karte-tag.unknown{background:#666}
.karte-section h4{margin:14px 0 6px;font-size:.9rem}

.purchase-gate-message{display:flex;flex-direction:column;gap:4px;max-width:560px;font-size:.9rem;color:var(--muted)}.purchase-gate-message b{color:var(--ink)}.purchase-gate-message strong{color:#8a3d32}.purchase-row .primary:disabled{cursor:not-allowed;box-shadow:none!important;transform:none!important;opacity:.48}

/* MG5-04 legal / checkout review */
.legal-shell{max-width:860px}.legal-head{padding:8px 2px 20px}.legal-head h1{font-size:clamp(30px,5vw,46px);line-height:1.15;margin:18px 0 8px}.legal-home{color:var(--accent);font-weight:800}.legal-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.legal-nav a{display:inline-block;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:700}.legal-card{background:rgba(255,253,248,.96);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.legal-section+.legal-section{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.legal-section h2{font-size:18px;margin:0 0 8px}.legal-section p{margin:0;color:#4f5a52}.legal-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;font-size:13px}.legal-links a{color:var(--accent);font-weight:700}.checkout-review{width:min(680px,calc(100% - 24px));border:0;border-radius:22px;padding:0;box-shadow:0 24px 80px rgba(23,34,27,.28);background:var(--paper)}.checkout-review::backdrop{background:rgba(23,34,27,.5)}.checkout-review-inner{padding:28px}.checkout-review h2{margin:4px 0 8px}.checkout-review-list{display:grid;gap:9px;margin:18px 0;padding:0;list-style:none}.checkout-review-list li{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:8px}.checkout-review-list b{font-size:13px}.checkout-review-list span{text-align:right}.checkout-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:14px;background:white}.checkout-consent input{margin-top:5px}.checkout-marketing-consent{margin-top:-8px;background:#fbfaf6}.checkout-marketing-consent b{font-size:12px;color:var(--accent)}.checkout-review-actions{display:flex;justify-content:flex-end;gap:10px}.checkout-review-note{font-size:13px;color:var(--muted)}@media(max-width:600px){.checkout-review-list li{display:block}.checkout-review-list span{display:block;text-align:left;margin-top:2px}.checkout-review-actions{flex-direction:column-reverse}.checkout-review-actions button{width:100%}}
.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:24px;padding:18px 4px;color:var(--muted);font-size:13px;border-top:1px solid var(--line)}@media(max-width:600px){.site-footer{align-items:flex-start;flex-direction:column}}
.contact-card h2{margin-top:0}.contact-action-row{margin:22px 0 12px}.contact-action{display:inline-flex;text-decoration:none}.contact-note{font-size:13px}

/* v0.52 candidate — two-layer handover report */
.handover-map-details{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.handover-map-details>summary{font-weight:900}.handover-map-card{margin-top:14px;border:2px solid #202020;border-radius:8px;overflow:hidden;background:#fff}.map-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:18px 20px;background:#f2eee5;border-bottom:1px solid #cfc8bd}.map-head h3{margin:3px 0 0;font-size:21px}.local-badge{display:inline-flex;border:1px solid #2f6f53;background:#edf8f0;color:#245640;padding:5px 8px;border-radius:999px;font-size:.75rem;font-weight:800}.map-lead{margin:0;padding:14px 20px;color:#4f5a52;border-bottom:1px solid #ddd}.map-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-bottom:1px solid #ddd}.map-metrics>div{padding:14px 12px;border-right:1px solid #ddd}.map-metrics>div:last-child{border-right:0}.map-metrics b,.map-metrics span{display:block}.map-metrics b{font-size:1.3rem}.map-metrics span{font-size:.75rem;color:var(--muted)}.map-facts{display:flex;flex-wrap:wrap;gap:7px;padding:12px 20px;border-bottom:1px solid #ddd}.map-facts span{border:1px solid #cfc8bd;background:#faf8f3;padding:4px 7px;border-radius:4px;font-size:.78rem}.map-sheet-details,.map-dependency-details{margin:0;padding:14px 20px;border-top:0}.map-sheet-details+ .map-dependency-details{border-top:1px solid #ddd}.map-table-wrap{overflow:auto;margin-top:12px;border:1px solid #d7d1c8}.map-table{width:100%;border-collapse:collapse;min-width:880px;font-size:.78rem}.map-table th,.map-table td{padding:8px 9px;text-align:left;vertical-align:top;border-bottom:1px solid #e4dfd7;border-right:1px solid #eee9e2}.map-table thead th{position:sticky;top:0;background:#f5f2eb;z-index:1}.map-table tbody th{background:#fbfaf7;white-space:nowrap}.map-dependency-list{margin:10px 0 0;padding-left:20px}.map-dependency-list li{display:flex;justify-content:space-between;gap:16px;padding:5px 0}.map-dependency-list b{white-space:nowrap}.map-empty{color:var(--muted)}
.ai-output{white-space:normal}.karte-items>li{margin:10px 0}.karte-item-text{font-weight:650}.karte-evidence{margin:5px 0 0;padding:0;border-top:0}.karte-evidence summary{font-size:.78rem;color:#4e6577;font-weight:800}.karte-evidence ul{margin:5px 0 0;padding:8px 10px 8px 26px;background:#f6f8fa;border-left:3px solid #9bb2c5;font-size:.78rem;color:#4c5963}.karte-evidence li{margin:3px 0}
@media(max-width:760px){.map-head{flex-direction:column}.map-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.map-metrics>div{border-bottom:1px solid #ddd}.map-dependency-list li{display:list-item}.map-dependency-list b{display:block;margin-top:2px}}

/* v0.58 — paid handover report export */
.karte-actions{margin-top:16px;padding:14px 16px;border:2px solid #17324d;border-radius:8px;background:#f5f9fc;display:flex;align-items:center;justify-content:space-between;gap:18px}
.karte-actions>div{display:grid;gap:3px}.karte-actions span{font-size:.84rem;color:#53616d}.secondary-action{border:2px solid #17324d;background:#fff;color:#17324d;border-radius:7px;padding:11px 14px;font-weight:900;cursor:pointer;white-space:nowrap}.secondary-action:hover{background:#edf4f9}
.karte-print-sheet{display:none}
@media(max-width:760px){.karte-actions{align-items:stretch;flex-direction:column}.secondary-action{width:100%}}
@media print{
  @page{size:A4;margin:12mm}
  body>*{display:none!important}
  #kartePrintSheet{display:block!important;color:#111;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;font-size:10pt;line-height:1.45}
  #kartePrintSheet *{box-shadow:none!important}
  .print-report-head{border-bottom:3px solid #17324d;padding:0 0 10mm;margin-bottom:7mm}
  .print-brand{font-weight:900;color:#17324d;font-size:9pt}.print-report-head h1{margin:2mm 0 3mm;font-size:22pt;letter-spacing:-.03em}
  .print-meta{margin:0;display:grid;gap:1.5mm}.print-meta div{display:grid;grid-template-columns:25mm 1fr;gap:3mm}.print-meta dt{font-weight:800;color:#555}.print-meta dd{margin:0;overflow-wrap:anywhere}
  .print-report-part{margin:0 0 8mm;break-inside:auto}.print-part-label{font-weight:900;color:#17324d;border-left:4px solid #ffad24;padding-left:3mm;margin-bottom:3mm}
  #kartePrintSheet .handover-map-card{border:1px solid #777;border-radius:0;overflow:visible;break-inside:auto}
  #kartePrintSheet .map-head{padding:4mm;background:#f2f2f2!important}.local-badge{border:1px solid #555;background:#fff!important;color:#222!important}
  #kartePrintSheet .map-metrics{grid-template-columns:repeat(5,1fr)}#kartePrintSheet .map-metrics>div{padding:2.5mm}
  #kartePrintSheet .map-table-wrap{overflow:visible;border:1px solid #aaa}#kartePrintSheet .map-table{min-width:0;font-size:7.2pt;table-layout:fixed}#kartePrintSheet .map-table th,#kartePrintSheet .map-table td{padding:1.5mm;overflow-wrap:anywhere}
  #kartePrintSheet details{display:block!important}#kartePrintSheet details>summary{display:none!important}#kartePrintSheet details>*:not(summary){display:block!important}
  #kartePrintSheet .karte-head{background:#17324d!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:5mm}
  #kartePrintSheet .karte-section{padding:4mm;break-inside:avoid-page}#kartePrintSheet .karte-tag{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  #kartePrintSheet .karte-evidence ul{background:#f7f7f7!important;border-left:2px solid #888}
  #kartePrintSheet .karte-section.next{background:#fff7dd!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .print-report-foot{border-top:1px solid #aaa;margin-top:8mm;padding-top:3mm;color:#666;font-size:8pt}
}

/* v0.59 — same-device paid report recovery */
.local-karte-recovery{margin:0 0 16px;padding:16px;border:2px solid #31795b;border-radius:9px;background:#f1faf5}.local-recovery-head>div{display:grid;gap:3px}.local-recovery-head span{font-size:.82rem;color:#50665b}.local-recovery-list{display:grid;gap:9px;margin-top:12px}.local-recovery-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;background:#fff;border:1px solid #b6cabc;border-radius:7px}.local-recovery-item>div:first-child{display:grid;gap:2px;min-width:0}.local-recovery-item b{overflow-wrap:anywhere}.local-recovery-item span{font-size:.77rem;color:#69756e}.local-recovery-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.local-recovery-buttons button{border:1px solid #31795b;background:#fff;color:#225c43;border-radius:6px;padding:8px 10px;font-weight:800;cursor:pointer}.local-recovery-buttons .danger-link{border-color:#b65d55;color:#934138}
@media(max-width:760px){.local-recovery-item{align-items:stretch;flex-direction:column}.local-recovery-buttons{justify-content:flex-start}}
@media print{.local-karte-recovery{display:none!important}}

/* v0.60 — server recovery link */
.karte-action-buttons{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.server-recovery-status{grid-column:1/-1;font-size:.82rem;color:#3d586b;background:#fff;border-left:4px solid #31795b;padding:9px 11px}
@media(max-width:760px){.karte-action-buttons{justify-content:stretch}.karte-action-buttons button{width:100%}}
@media print{.server-recovery-status,.karte-action-buttons{display:none!important}}


/* MG6-03 — problem-intent SEO guides */
.guide-shell{max-width:900px}.guide-head{padding:8px 2px 18px}.guide-head .eyebrow{margin-top:24px}.guide-head h1{font-size:clamp(32px,5vw,52px);line-height:1.16;letter-spacing:-.035em;margin:8px 0 14px}.guide-lead{max-width:820px;font-size:1.05rem;color:#4f5a52}.guide-card{background:#fff;border:2px solid #202020;border-radius:12px;padding:clamp(22px,4vw,42px);box-shadow:7px 7px 0 #e7dfd1}.guide-body h2{font-size:1.35rem;margin:34px 0 10px}.guide-body p{margin:0 0 14px}.guide-body li+li{margin-top:7px}.guide-callout,.guide-summary{margin:20px 0;padding:18px 20px;border-radius:9px}.guide-callout{background:#fff4d8;border-left:6px solid #f29b38}.guide-callout p{margin:5px 0 0}.guide-summary{background:#f1f7f3;border:1px solid #b8d1c0}.guide-summary h2{margin-top:0}.guide-split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.guide-split>section{border:1px solid #d4cec4;border-radius:9px;padding:18px;background:#fbfaf7}.guide-split h2{margin-top:0;font-size:1.08rem}.guide-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:34px 0 18px;padding:20px;border:2px solid #17324d;border-radius:10px;background:#f2f8fc}.guide-cta p{margin:4px 0 0}.guide-cta-button{display:inline-flex;flex:0 0 auto;text-decoration:none;background:#1674d1;color:#fff;border:2px solid #0d4f91;border-radius:8px;padding:12px 16px;font-weight:900;box-shadow:0 4px 0 #0d4f91}.guide-source{font-size:.82rem;color:var(--muted)}.guide-related{display:grid;gap:10px;margin-top:18px}.guide-related a{display:block;padding:15px 17px;background:#fff;border:1px solid var(--line);border-radius:9px;color:var(--accent);font-weight:800;text-decoration:none}@media(max-width:700px){.guide-split{grid-template-columns:1fr}.guide-cta{align-items:stretch;flex-direction:column}.guide-cta-button{justify-content:center}}

.guide-entry-panel h2{margin:5px 0 14px}.guide-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.guide-entry-grid a{display:grid;gap:5px;text-decoration:none;color:var(--ink);padding:16px;border:1px solid var(--line);border-radius:9px;background:#fff}.guide-entry-grid a:hover{border-color:#8d857b;transform:translateY(-1px)}.guide-entry-grid span{font-size:.82rem;color:var(--muted)}@media(max-width:760px){.guide-entry-grid{grid-template-columns:1fr}}
