/* App-only preview layout; existing theme tokens remain authoritative. */
body:has([data-app-preview]) { min-width:0; }
body:has([data-app-preview]) .container { min-width:0; }
body:has([data-app-preview]) .phone { zoom:1; max-width:100%; }
body:has([data-app-preview]) .phones,
body:has([data-app-preview]) .phone-pair,
body:has([data-app-preview]) .app-stage { flex-wrap:wrap; gap:48px !important; }
body:has([data-app-preview]) .phone-pair > div,
body:has([data-app-preview]) .app-stage > div { max-width:100%; min-width:0; }
body:has([data-app-preview]) .phone-label { max-width:390px; }
[data-app-preview] { --preview-bg:var(--n1,var(--c1,var(--bg,#fff))); --preview-surface:var(--n2,var(--surface,var(--bg-2,#f6f7f9))); --preview-fg:var(--fg,var(--t1,var(--ink,#14171c))); --preview-muted:var(--fg-2,var(--t2,var(--ink-2,#626872))); --preview-accent:var(--accent,var(--acc,#12151a)); --preview-border:var(--line,#dde1e5); color:var(--preview-fg); }
[data-app-preview="b"] { --preview-accent:var(--ink); }
[data-app-preview] .screen,
[data-app-preview] .app-body { min-height:0; min-width:0; }
[data-app-preview] .app-body { overflow-x:hidden; overflow-y:auto; overscroll-behavior-y:contain; }
[data-app-preview="a"] .status { flex-shrink:0; }
[data-app-preview="a"] .screen { flex:1 1 0; }
[data-app-preview="a"] .tabbar { flex-shrink:0; }
[data-app-preview] [data-app-page] { overflow-wrap:anywhere; }
[data-app-preview] [data-app-page]:not(.is-active) { display:none !important; }
[data-app-preview] [hidden] { display:none !important; }
[data-app-preview] button { min-height:44px; cursor:pointer; }
[data-app-preview] .back,
[data-app-preview] .m-head .ic,
[data-app-preview] .apphead button { min-width:44px; width:44px; height:44px; flex:none; }
[data-app-preview] .tabbar button,
[data-app-preview] .app-tabbar button { min-height:48px; min-width:0; }
[data-app-preview] button:focus-visible,
[data-app-preview] input:focus-visible,
[data-app-preview] select:focus-visible,
[data-app-preview] textarea:focus-visible { outline:2px solid var(--preview-accent); outline-offset:3px; }
[data-app-preview] button[aria-pressed="true"] { color:var(--preview-accent); background:color-mix(in srgb,var(--preview-accent) 15%,var(--preview-surface)); }
[data-app-preview] .m-prod,
[data-app-preview] .app-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
[data-app-preview] .m-prod button,
[data-app-preview] .app-prod { min-width:0; }
[data-app-preview] .m-prod .t b { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
[data-app-preview] .m-cta { flex-wrap:wrap; }
[data-app-preview] .m-row .t b { white-space:normal; }
[data-app-preview] .preview-head { display:flex; align-items:center; gap:8px; padding:8px 16px 14px; }
[data-app-preview] .preview-head button { width:44px; height:44px; border:0; border-radius:50%; display:grid; place-items:center; background:transparent; color:var(--preview-fg); }
[data-app-preview] .preview-head svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; }
[data-app-preview] .preview-head .preview-arrow { display:none; }
[data-app-preview].android .preview-head .preview-arrow { display:block; }
[data-app-preview].android .preview-head .preview-chevron { display:none; }
[data-app-preview] .preview-head h2 { font-family:inherit; font-weight:600; font-size:18px; line-height:1.4; margin:0; }
[data-app-preview] .preview-pad { padding:0 16px 24px; }
[data-app-preview] .preview-stack { display:flex; flex-direction:column; gap:16px; }
[data-app-preview] .preview-card { padding:16px; border:1px solid var(--preview-border); border-radius:14px; background:var(--preview-surface); min-width:0; }
[data-app-preview].android .preview-card { border-radius:12px; }
[data-app-preview] .preview-card h3 { font-size:16px; line-height:1.5; margin:8px 0; }
[data-app-preview] .preview-card p { font-size:14px; line-height:1.6; color:var(--preview-muted); margin:8px 0 0; }
[data-app-preview] .preview-card .preview-button { margin-top:12px; }
[data-app-preview] .preview-summary { display:flex; align-items:center; gap:12px; }
[data-app-preview] .preview-summary img { width:64px; height:64px; object-fit:cover; border-radius:8px; flex:none; }
[data-app-preview] .preview-summary b { display:block; font-size:14px; line-height:1.5; }
[data-app-preview] .preview-summary span { display:block; font-size:13px; margin-top:6px; font-variant-numeric:tabular-nums; }
[data-app-preview] .preview-field { display:flex; flex-direction:column; gap:6px; font-size:14px; color:var(--preview-muted); }
[data-app-preview] .preview-field input,
[data-app-preview] .preview-field select,
[data-app-preview] .preview-field textarea,
[data-app-preview] .preview-search { width:100%; min-width:0; min-height:48px; padding:12px; font:inherit; font-size:15px; color:var(--preview-fg); background:var(--preview-surface); border:1px solid var(--preview-border); border-radius:10px; }
[data-app-preview] .preview-field textarea { resize:vertical; }
[data-app-preview] .preview-field input:user-invalid { border-color:var(--err,#e05151); }
[data-app-preview].android .preview-field input,
[data-app-preview].android .preview-field select,
[data-app-preview].android .preview-field textarea { border-radius:6px; }
[data-app-preview] .preview-search { width:calc(100% - 32px); margin:0 16px 16px; }
[data-app-preview] .preview-coverages { margin:0; padding:12px; border:1px solid var(--preview-border); border-radius:12px; }
[data-app-preview] .preview-coverages legend { font-size:14px; padding:0 4px; }
[data-app-preview] .preview-coverages label { display:flex; align-items:center; gap:10px; min-height:48px; font-size:14px; }
[data-app-preview] .preview-coverages input { accent-color:var(--preview-accent); width:18px; height:18px; flex:none; }
[data-app-preview] .preview-button { display:flex; align-items:center; justify-content:center; gap:6px; width:100%; min-height:48px; padding:12px 16px; border:1px solid transparent; border-radius:14px; background:var(--preview-accent); color:#071019; font-size:15px; font-weight:600; line-height:1.5; }
[data-app-preview="b"] .preview-button { color:#fff; }
[data-app-preview].android .preview-button { border-radius:999px; }
[data-app-preview] .preview-button.secondary { background:transparent; color:var(--preview-fg); border-color:var(--preview-border); }
[data-app-preview] .preview-note { color:var(--preview-muted); font-size:13px; line-height:1.65; margin:0; }
[data-app-preview] .preview-tag { display:inline-flex; font-size:12px; line-height:1.5; color:var(--preview-accent); border:1px solid var(--preview-border); border-radius:6px; padding:4px 8px; }
[data-app-preview] .preview-car { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:12px; }
[data-app-preview] .preview-segments { display:flex; gap:8px; padding:0 16px 16px; }
[data-app-preview] .preview-segments button { flex:1; min-width:0; min-height:48px; border:1px solid var(--preview-border); border-radius:10px; background:var(--preview-surface); color:var(--preview-fg); font-size:13px; padding:6px; }
[data-app-preview] .preview-success { padding-top:40px; text-align:center; }
[data-app-preview] .preview-success h2 { font-size:21px; line-height:1.5; }
[data-app-preview] .preview-success p { line-height:1.65; font-size:14px; }
[data-app-preview] .preview-check { margin:0 auto; display:grid; place-items:center; width:64px; height:64px; border-radius:50%; color:var(--ok,#259866); background:color-mix(in srgb,var(--ok,#259866) 15%,var(--preview-surface)); font-size:30px; }
[data-app-preview] .preview-order-row { display:flex; flex-direction:column; align-items:flex-start; gap:10px; color:var(--preview-fg); text-align:left; width:100%; }
[data-app-preview] .preview-timeline { list-style:none; margin:0 0 0 8px; padding:0 0 0 20px; border-left:2px solid var(--preview-border); }
[data-app-preview] .preview-timeline li { position:relative; padding:0 0 24px; font-size:14px; }
[data-app-preview] .preview-timeline li::before { content:''; position:absolute; top:6px; left:-26px; width:10px; height:10px; border-radius:50%; background:var(--preview-border); }
[data-app-preview] .preview-timeline .is-current::before { background:var(--preview-accent); }
[data-app-preview] .preview-timeline .is-done::before { background:var(--ok,#259866); }
[data-app-preview] .preview-timeline span { display:block; font-size:13px; color:var(--preview-muted); line-height:1.6; margin-top:6px; }
[data-app-preview] .preview-price { font-size:23px; font-variant-numeric:tabular-nums; }
[data-app-preview] .preview-empty { margin:16px; padding:20px; text-align:center; font-size:14px; color:var(--preview-muted); }
[data-app-preview] .preview-local-post { margin:16px; }
@media(max-width:900px) {
  body:has([data-app-preview]) .platform-note { width:100%; max-width:650px; }
  body:has([data-app-preview]) .page-title > .row,
  body:has([data-app-preview="a"]) .container > .row.between.top { flex-direction:column; gap:20px; }
  body:has([data-app-preview]) .page-title .row.gap2 { flex-wrap:wrap; }
}
@media(max-width:600px) {
  body:has([data-app-preview]) .container { padding-left:16px !important; padding-right:16px !important; }
  body:has([data-app-preview]) .phone { width:min(390px,calc(100vw - 32px)); height:844px; }
  body:has([data-app-preview]) .phones,
  body:has([data-app-preview]) .phone-pair,
  body:has([data-app-preview]) .app-stage { flex-direction:column; align-items:center !important; gap:48px !important; }
  body:has([data-app-preview]) .site-actions .small { display:none; }
  body:has([data-app-preview]) .h1,
  body:has([data-app-preview]) .display.d3 { font-size:30px; }
  body:has([data-app-preview]) .lead { font-size:15px; line-height:1.7; }
  body:has([data-app-preview]) .diff-table,
  body:has([data-app-preview="b"]) .table { display:block; min-width:0; width:100%; }
  body:has([data-app-preview]) .diff-table thead,
  body:has([data-app-preview="b"]) .table thead { display:none; }
  body:has([data-app-preview]) .diff-table tbody,
  body:has([data-app-preview="b"]) .table tbody { display:block; width:100%; }
  body:has([data-app-preview]) .diff-table tr,
  body:has([data-app-preview="b"]) .table tr { display:block; width:100%; padding:12px; border-bottom:1px solid var(--line); }
  body:has([data-app-preview]) .diff-table td,
  body:has([data-app-preview="b"]) .table td { display:block; width:100%; min-width:0; padding:6px 0; white-space:normal; overflow-wrap:anywhere; }
  body:has([data-app-preview]) .diff-table td:nth-child(2)::before,
  body:has([data-app-preview="b"]) .table td:nth-child(2)::before { content:'iOS　'; font-weight:600; }
  body:has([data-app-preview]) .diff-table td:nth-child(3)::before,
  body:has([data-app-preview="b"]) .table td:nth-child(3)::before { content:'Android　'; font-weight:600; }
}
@media(prefers-reduced-motion:reduce) { [data-app-preview] *,[data-app-preview] *::before,[data-app-preview] *::after { animation:none !important; transition:none !important; } }
