:root{font-family:Inter,"Noto Sans JP",system-ui,-apple-system,sans-serif;color:#172033;background:#f3f6fa;line-height:1.6}*{box-sizing:border-box}body{margin:0}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}.site-header{background:#fff;border-bottom:1px solid #dbe3ee}.header-inner{display:flex;justify-content:space-between;align-items:center;padding:14px 0}.site-brand-link{display:inline-flex;align-items:center;gap:11px;color:#172033;text-decoration:none;min-width:0}.site-logo{display:block;flex:0 0 auto;border-radius:9px}.site-name,.site-header h1.site-name{font-size:20px;line-height:1.25;margin:0;font-weight:850;letter-spacing:.01em}.version{font-size:12px;background:#eef4fb;padding:5px 9px;border-radius:999px}.hero{padding:52px 0 28px}.hero h2{font-size:clamp(28px,5vw,48px);line-height:1.2;margin:6px 0 16px;max-width:800px}.hero p{max-width:850px}.eyebrow,.step{font-size:12px;font-weight:800;letter-spacing:.12em;color:#41688f;margin:0}.panel{background:#fff;border:1px solid #dce5ef;border-radius:18px;padding:24px;margin:18px 0;box-shadow:0 7px 24px rgba(38,66,92,.05)}.section-title,.entry-head,.result-head,.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-title h2,.dialog-head h2{margin:2px 0 0;font-size:22px}.help,.muted{color:#66758a;font-size:14px}.stack{display:grid;gap:12px}.entry-card{border:1px solid #dbe4ee;border-radius:14px;padding:16px;background:#fbfdff;min-width:0}.grid{display:grid;gap:12px}.fields.six{grid-template-columns:2fr repeat(5,1fr)}.fields.seven{grid-template-columns:2fr repeat(6,minmax(0,1fr))}.fields.three{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#4a5a70}input,select{width:100%;border:1px solid #cbd6e2;border-radius:9px;padding:10px 11px;background:white;font:inherit;color:#172033}select{min-height:44px}input:focus,select:focus{outline:2px solid #9fc6ec;border-color:#6599c7}.primary,.secondary,.link-btn{border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:#255f92;color:#fff;border:1px solid #255f92}.primary:hover{background:#1c527f}.secondary,.link-btn{background:#fff;color:#255f92;border:1px solid #a9c0d5}.text-btn,.icon-btn{border:0;background:transparent;color:#456b90;cursor:pointer}.danger{color:#b34d4d}.two-col{display:grid;grid-template-columns:1fr 1.25fr;gap:36px}.clearance-label{max-width:280px}.saved-box{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eef2f6}.saved-box span{display:block;font-size:12px;color:#728095}.run-panel{text-align:center;padding:30px}.run-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.run-panel .primary{font-size:18px;min-width:280px;padding:14px 24px}.run-panel .secondary{min-width:150px}.run-panel p{font-size:13px;color:#64748b}.legend{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:#526477;margin:12px 0 18px}.legend span{background:#f4f7fa;border-radius:999px;padding:4px 9px}.results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.result-card{border:1px solid #dbe4ee;border-radius:14px;padding:18px;background:#fff}.result-card.top{border:2px solid #5c91bd;box-shadow:0 8px 26px rgba(37,95,146,.12)}.result-head h3{margin:8px 0 0}.result-head p,.box-dims{margin:2px 0;color:#6b7a8d;font-size:13px}.badge{display:inline-block;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:900}.badge.best{background:#e4f2ff;color:#1c598c}.badge.ok{background:#eaf7ed;color:#24723a}.badge.tight,.badge.unsure{background:#fff3d8;color:#936311}.badge.fail{background:#fde9e9;color:#a03d3d}.size-pill{font-size:12px;background:#f1f5f9;border-radius:8px;padding:6px 8px}.metrics{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.metrics span{background:#f4f7fa;border-radius:8px;padding:5px 8px;font-size:12px}.warn{font-size:13px;color:#8c6118;background:#fff8e9;padding:8px 10px;border-radius:8px}.reason{color:#9a3d3d}.result-card .secondary,.result-card .link-btn{margin:10px 8px 0 0}.empty-state{grid-column:1/-1;padding:44px;text-align:center;background:#f8fafc;border-radius:12px;color:#718096}.notes{padding:24px 0 55px}.notes h2{font-size:19px}.notes li{margin:5px 0;color:#566579}dialog{border:0;border-radius:18px;padding:0;box-shadow:0 24px 80px rgba(15,23,42,.28);width:min(720px,calc(100% - 24px))}dialog::backdrop{background:rgba(15,23,42,.48)}.dialog-form{padding:22px;display:grid;gap:16px}.icon-btn{font-size:28px;line-height:1}.viewer-dialog{width:min(1040px,calc(100% - 24px));padding:22px}.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px}.view-presets{display:flex;flex-wrap:wrap;gap:7px}.view-preset,.view-reset{border:1px solid #a9c0d5;background:#fff;color:#255f92;border-radius:9px;padding:8px 12px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.view-preset:hover,.view-reset:hover{background:#f1f6fb}.view-preset.active{background:#255f92;color:#fff;border-color:#255f92}.view3d{width:100%;height:min(62vh,620px);min-height:440px;border:1px solid #d8e1eb;border-radius:12px;overflow:hidden;background:#f8fafc}.viewer-help{margin-bottom:0}footer{border-top:1px solid #dbe3ee;padding:24px 0;color:#718096;font-size:13px;background:#fff}@media(max-width:900px){.fields.six,.fields.seven{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col,.results{grid-template-columns:1fr}.view3d{height:52vh;min-height:360px}}@media(max-width:540px){.wrap{width:min(100% - 20px,1180px)}.panel{padding:16px;border-radius:14px}.fields.six,.fields.three{grid-template-columns:1fr 1fr}.hero{padding-top:34px}.section-title{align-items:center}.result-head{display:block}.size-pill{margin-top:10px}.viewer-dialog{padding:14px}.viewer-toolbar{align-items:stretch;flex-direction:column}.view-presets{display:grid;grid-template-columns:repeat(4,1fr)}.view-preset,.view-reset{padding:8px 6px}.view3d{height:46vh;min-height:300px}}

/* v0.1.3: reusable product library */
.product-title{min-width:0;overflow-wrap:anywhere}.entry-head>*{min-width:0}.grid>*{min-width:0}.product-library-strip{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:4px 0 14px;padding:12px 14px;border:1px solid #dbe4ee;border-radius:12px;background:#f8fbfe}.product-library-strip div{display:grid;gap:2px}.product-library-strip strong{font-size:14px}.product-library-strip span{font-size:12px;color:#6d7b8e}.product-add-actions,.entry-actions,.saved-product-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.library-dialog{padding:22px;width:min(780px,calc(100% - 24px))}.saved-product-list{display:grid;gap:10px;margin-top:16px}.saved-product-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #e9eef4}.saved-product-row>div:first-child{display:grid;gap:3px}.saved-product-row span{font-size:12px;color:#718096}.compact{padding:7px 10px;font-size:12px}.empty-library{padding:30px 18px;text-align:center;color:#718096;background:#f8fafc;border-radius:10px}
@media(max-width:700px){.product-library-strip,.saved-product-row{align-items:stretch;flex-direction:column}.saved-product-actions{justify-content:flex-start}.entry-head{align-items:flex-start}.entry-actions{justify-content:flex-end}.product-add-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:480px){.product-add-actions{grid-template-columns:1fr}.entry-head{display:grid}.entry-actions{justify-content:flex-start}}

/* v0.1.4: persistent clearance and symmetric product registration action */
.section-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.section-title-actions .muted{white-space:nowrap}
@media(max-width:700px){.section-title-actions{align-items:flex-end;flex-direction:column}.section-title-actions .secondary{width:100%}}

/* v0.1.5: free-tier limits, box selection and packing templates */
.box-library-meta{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:8px 0 6px;padding:9px 0;border-bottom:1px solid #eef2f6}.box-library-meta strong{font-size:13px}.inline-check{display:flex;grid-auto-flow:column;align-items:center;justify-content:start;gap:7px;font-weight:700;font-size:12px;color:#526477}.inline-check input,.saved-box-select input{width:auto;accent-color:#255f92}.saved-box{align-items:center}.saved-box-select{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px}.saved-box-info{flex:1;min-width:0}.saved-box-info span{display:block}.saved-box-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.template-panel{border-color:#cfddea;background:linear-gradient(180deg,#fff,#fbfdff)}
@media(max-width:700px){.box-library-meta{align-items:flex-start;flex-direction:column}.saved-box{display:grid;grid-template-columns:auto 1fr;align-items:start}.saved-box-actions{grid-column:2;justify-content:flex-start}.template-panel .section-title{align-items:stretch;flex-direction:column}.template-panel .section-title-actions{align-items:stretch}.template-panel .section-title-actions .secondary{width:100%}}


/* result section subheading */
.results-subhead{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:20px 0 10px;padding-top:16px;border-top:1px solid #e7edf3}.results-subhead h3{margin:0;font-size:18px}.results-subhead p{margin:0}@media(max-width:700px){.results-subhead{display:block}.results-subhead p{margin-top:4px}}
.market-db-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.market-db-dialog{width:min(1120px,calc(100% - 24px));padding:22px}.market-db-summary{display:flex;flex-wrap:wrap;gap:10px 18px;padding:12px 14px;margin:14px 0;border:1px solid #dce5ef;border-radius:12px;background:#f8fbfe}.market-db-summary span,.market-db-summary strong{font-size:13px}.market-db-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:480px}.market-db-sources{border:1px solid #dce5ef;border-radius:12px;overflow:hidden;background:#fbfdff}.db-source-row{width:100%;border:0;border-bottom:1px solid #e8eef4;background:transparent;text-align:left;padding:13px 14px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;cursor:pointer;color:inherit}.db-source-row:last-child{border-bottom:0}.db-source-row:hover,.db-source-row.selected{background:#edf5fc}.db-source-row strong,.db-source-row small{display:block}.db-source-row small{margin-top:3px;color:#718096;font-size:11px;line-height:1.4}.db-source-counts{white-space:nowrap;font-size:11px;color:#65758a}.db-source-counts b{font-size:13px;color:#255f92}.market-db-items{border:1px solid #dce5ef;border-radius:12px;padding:14px;overflow:auto;max-height:62vh;background:#fff}.db-items-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 2px 12px;border-bottom:1px solid #e8eef4}.db-items-head strong,.db-items-head span{display:block}.db-items-head span{font-size:12px;color:#718096}.db-items-head a,.db-item-head a{font-size:12px;color:#255f92}.db-item{padding:13px 2px;border-bottom:1px solid #edf1f5}.db-item:last-child{border-bottom:0}.db-item.reference{opacity:.88}.db-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.db-item-head strong,.db-item-head small{display:block}.db-item-head small{font-size:11px;color:#718096;margin-top:2px}.db-status{display:inline-block;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:900;margin-bottom:4px}.db-status.verified{background:#eaf7ed;color:#24723a}.db-status.reference{background:#fff3d8;color:#936311}.db-dims{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.db-dims span{font-size:11px;background:#f4f7fa;padding:4px 7px;border-radius:7px}.db-item p{font-size:11px;color:#66758a;margin:7px 0}.db-item footer{background:transparent;border:0;padding:0;color:#8491a3;font-size:10px}.db-empty{padding:26px}.db-empty p{color:#66758a}.market-db-note{margin-bottom:0}
@media(max-width:800px){.market-db-layout{grid-template-columns:1fr;min-height:0}.market-db-sources{max-height:260px;overflow:auto}.market-db-items{max-height:52vh}.db-source-row{align-items:center}.market-db-actions{align-items:flex-start;flex-direction:column}}

/* v0.3.1: clearer recommendation cards and folded lower-ranked results */
.box-code{margin:14px 0 10px;padding:9px 11px;border-radius:10px;background:#f7f9fc;display:flex;gap:10px;align-items:baseline}.box-code span{font-size:12px;color:#66758a}.box-code strong{font-size:14px;color:#26384d}.box-dimension-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 12px}.box-dimension-card{border:1px solid #dde7f0;border-radius:12px;padding:12px;background:#fbfdff}.box-dimension-card span,.box-dimension-card small{display:block;color:#66758a;font-size:12px}.box-dimension-card strong{display:block;margin:3px 0;font-size:14px;color:#172033}.result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.result-actions .secondary,.result-actions .link-btn{margin:0}.more-results{display:contents}.results-toggle-wrap{grid-column:1/-1;display:flex;justify-content:center;padding:6px 0 2px}.results-toggle{min-width:280px}.more-results[hidden]{display:none}
@media(max-width:540px){.box-dimension-grid{grid-template-columns:1fr}.results-toggle{width:100%;min-width:0}}

/* v0.3.2: recommendation filtering for large box databases */
.candidate-rank{display:inline-block;margin-right:7px;color:#526477;font-size:12px;font-weight:800}.results-filter-note,.results-message{grid-column:1/-1;border-radius:12px;padding:12px 14px;font-size:13px}.results-filter-note{background:#f7f9fc;color:#64748b;border:1px solid #e4eaf1}.results-message{background:#f3f7fb;color:#435a72;border:1px solid #dce7f1}.warn-message{background:#fff8e9;color:#7a581b;border-color:#f2dfb5}



.results-subhead{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:20px 0 10px;padding-top:16px;border-top:1px solid #e7edf3}.results-subhead h3{margin:0;font-size:18px}.results-subhead p{margin:0}@media(max-width:700px){.results-subhead{display:block}.results-subhead p{margin-top:4px}}

/* v0.4.0: clearer selection logic and rotation constraints */
.recommendation-summary{margin:4px 0 14px}.compact-empty{padding:18px}.recommendation-conclusion{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;border:1px solid #cfe0ee;border-radius:13px;background:#f7fbff}.recommendation-conclusion>div{display:grid;gap:2px}.recommendation-conclusion span{font-size:12px;color:#5f7186}.recommendation-conclusion strong{font-size:23px;color:#194f7c}.recommendation-conclusion small{font-size:11px;color:#936311}.recommendation-conclusion ol{margin:0;padding-left:22px;font-size:12px;color:#526477}.recommendation-conclusion.warning{background:#fffaf0;border-color:#f0dfba}.recommendation-conclusion.warning strong{color:#855d17}.recommendation-conclusion.warning p{margin:0;font-size:12px;color:#745c31}.origin-badge{display:inline-block;margin-right:6px;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800}.origin-badge.custom{background:#eef1ff;color:#4e5b9e}.origin-badge.market{background:#eef7f2;color:#337052}.clearance-ok{background:#edf8f1!important;color:#286c40!important;font-weight:800}
@media(max-width:760px){.recommendation-conclusion{align-items:flex-start;flex-direction:column}.recommendation-conclusion ol{padding-left:20px}.run-actions{display:grid}.run-panel .primary,.run-panel .secondary{width:100%;min-width:0}}

/* v0.4.3: terminology help and per-side packing clearance */
.term-help{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:5px;padding:0;border:1px solid #b9cde0;border-radius:50%;background:#f4f8fc;color:#255f92;font:inherit;font-size:12px;font-weight:900;line-height:1;cursor:pointer;vertical-align:middle}.term-help:hover{background:#e9f3fb;border-color:#8eb1cf}.term-help:focus-visible{outline:2px solid #9fc6ec;outline-offset:2px}.term-help.mini{width:18px;height:18px;margin-left:2px;border:0;background:#eaf2f9;font-size:10px}.term-help-dialog{width:min(520px,calc(100% - 24px));padding:22px}.term-help-body{padding-top:8px}.term-help-body p{margin:0;color:#526477;font-size:14px;line-height:1.8}


/* v0.5.0: SEO guide hub and article pages */
a{color:#255f92}.guide-hub{padding:28px 0 8px}.guide-hub-head{max-width:760px}.guide-hub-head h2{font-size:24px;margin:4px 0 6px}.guide-hub-head>p:last-child{margin:0;color:#66758a}.guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.guide-card{display:grid;gap:5px;padding:17px 18px;border:1px solid #d6e2ed;border-radius:14px;background:#fff;text-decoration:none;color:#172033;box-shadow:0 5px 18px rgba(38,66,92,.04)}.guide-card:hover{border-color:#9ebbd4;box-shadow:0 8px 22px rgba(38,66,92,.08)}.guide-card span{font-size:11px;font-weight:900;color:#41688f;letter-spacing:.04em}.guide-card strong{font-size:16px;line-height:1.45}.guide-card small{font-size:12px;color:#66758a;line-height:1.55}
.article-wrap{width:min(920px,calc(100% - 32px));margin:auto}.article-header{background:#fff;border-bottom:1px solid #dbe3ee}.article-header-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0}.article-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#172033}.article-brand img{display:block;border-radius:8px;flex:0 0 auto}.article-brand strong{font-size:17px;line-height:1.25}.article-tool-link{font-size:13px;font-weight:800;text-decoration:none;border:1px solid #a9c0d5;border-radius:9px;padding:8px 12px;background:#fff}.breadcrumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:20px 0 0;font-size:12px;color:#718096}.breadcrumbs a{text-decoration:none}.article-hero{padding:30px 0 20px}.article-hero .eyebrow{margin-bottom:8px}.article-hero h1{font-size:clamp(28px,5vw,42px);line-height:1.3;margin:0 0 14px}.article-lead{font-size:17px;color:#526477;line-height:1.9;margin:0}.article-meta{font-size:12px;color:#7a8798;margin-top:14px}.article-body{background:#fff;border:1px solid #dce5ef;border-radius:18px;padding:32px;margin:0 0 24px;box-shadow:0 7px 24px rgba(38,66,92,.05)}.article-body h2{font-size:24px;line-height:1.45;margin:36px 0 12px;padding-top:4px}.article-body h2:first-child{margin-top:0}.article-body h3{font-size:18px;margin:26px 0 8px}.article-body p,.article-body li{color:#44566b;line-height:1.9}.article-body ul,.article-body ol{padding-left:1.5em}.article-body li{margin:5px 0}.article-body strong{color:#172033}.article-body table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:14px}.article-body th,.article-body td{border:1px solid #dce5ef;padding:10px 11px;text-align:left;vertical-align:top}.article-body th{background:#f4f8fc;color:#294b69}.article-callout{padding:15px 17px;border-radius:12px;background:#f3f8fc;border:1px solid #cfdfed;margin:18px 0;color:#41576e}.article-example{padding:15px 17px;border-left:4px solid #5c91bd;background:#f8fbfe;margin:16px 0}.article-cta{padding:24px;border-radius:16px;background:linear-gradient(180deg,#f5faff,#fff);border:1px solid #cbddea;margin:24px 0}.article-cta h2{margin:0 0 8px;font-size:21px}.article-cta p{margin:0 0 14px;color:#526477}.article-cta a{display:inline-flex;text-decoration:none}.source-list{font-size:13px}.source-list a{overflow-wrap:anywhere}.related-guides{padding:8px 0 42px}.related-guides h2{font-size:21px}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.related-grid a{display:block;padding:14px 15px;border:1px solid #d6e2ed;border-radius:11px;background:#fff;text-decoration:none;font-weight:800}.article-footer{background:#fff;border-top:1px solid #dbe3ee;color:#718096;font-size:12px}.article-footer .article-wrap{padding:22px 0}.article-note{font-size:12px;color:#748397}.faq-list h3{margin-bottom:4px}.faq-list p{margin-top:0}
@media(max-width:760px){.guide-card-grid{grid-template-columns:1fr}.article-body{padding:22px 18px}.article-header-inner{align-items:flex-start}.article-tool-link{white-space:nowrap}.related-grid{grid-template-columns:1fr}.article-body table{display:block;overflow-x:auto;white-space:nowrap}}

/* v0.5.1: first-visit guidance, examples, FAQ and market-data explanation */
.quick-start,.info-section{margin:18px 0;padding:24px;border:1px solid #dce5ef;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(38,66,92,.04)}
.quick-start{margin-top:0;background:linear-gradient(180deg,#f8fbfe,#fff)}
.content-head{max-width:820px;margin-bottom:16px}
.content-head h2{font-size:24px;margin:4px 0 5px;line-height:1.4}
.content-head>p:last-child{margin:0;color:#66758a}
.quick-step-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;counter-reset:none}
.quick-step-grid li{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #dce5ef;border-radius:13px;background:#fff}
.quick-step-grid li>span{display:inline-flex;flex:0 0 30px;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:#255f92;color:#fff;font-weight:900}
.quick-step-grid strong{display:block;margin:1px 0 3px;font-size:15px}
.quick-step-grid p{margin:0;color:#66758a;font-size:13px;line-height:1.7}
.howto-list{margin:0;padding:0;list-style:none;display:grid;gap:0;counter-reset:howto}
.howto-list li{counter-increment:howto;position:relative;padding:15px 12px 15px 52px;border-top:1px solid #e8eef4}
.howto-list li:first-child{border-top:0}
.howto-list li::before{content:counter(howto);position:absolute;left:8px;top:14px;display:flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:8px;background:#edf5fc;color:#255f92;font-weight:900}
.howto-list strong{display:block;font-size:15px}
.howto-list p{margin:4px 0 0;color:#586a7e;font-size:14px}
.example-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1.25fr;align-items:stretch;gap:10px;margin-top:8px}
.example-flow>div:not(.example-arrow){display:grid;gap:4px;padding:15px;border:1px solid #dce5ef;border-radius:12px;background:#f9fbfd}
.example-flow span{font-size:11px;font-weight:900;color:#41688f}
.example-flow strong{font-size:15px;line-height:1.5}
.example-flow small{font-size:12px;color:#66758a}
.example-arrow{align-self:center;color:#7890a5;font-size:20px;font-weight:900}
.section-note{margin:14px 0 0;color:#66758a;font-size:13px}
.plain-points{margin:0;padding-left:1.35em}
.plain-points li{margin:7px 0;color:#526477}
.faq-accordion{display:grid;gap:8px}
.faq-accordion details{border:1px solid #dce5ef;border-radius:11px;background:#fbfdff;overflow:hidden}
.faq-accordion summary{cursor:pointer;padding:14px 42px 14px 15px;font-weight:800;position:relative;list-style:none}
.faq-accordion summary::-webkit-details-marker{display:none}
.faq-accordion summary::after{content:"＋";position:absolute;right:15px;top:13px;color:#456b90;font-size:18px}
.faq-accordion details[open] summary::after{content:"−"}
.faq-accordion details p{margin:0;padding:0 15px 15px;color:#586a7e;font-size:14px}
.market-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.market-data-grid>div{padding:16px;border:1px solid #dce5ef;border-radius:12px;background:#f9fbfd}
.market-data-grid strong{display:block;margin-bottom:4px;font-size:15px}
.market-data-grid p{margin:0;color:#586a7e;font-size:13px}

@media(max-width:800px){.quick-step-grid,.market-data-grid{grid-template-columns:1fr}.example-flow{grid-template-columns:1fr}.example-arrow{transform:rotate(90deg);justify-self:center;height:20px;line-height:20px}}
@media(max-width:540px){.quick-start,.info-section{padding:18px 16px;border-radius:14px}.content-head h2{font-size:21px}.quick-step-grid li{padding:14px}.howto-list li{padding-right:2px}.example-flow>div:not(.example-arrow){padding:13px}}

/* v0.5.2: generated market DB / Rakuten offer UI */
.purchase-action{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.rakuten-offer-meta{font-size:11px;color:#66758a;background:#f4f7fa;border-radius:7px;padding:4px 7px}.db-purchase{display:flex;align-items:center;gap:8px;margin-top:8px}.db-purchase .link-btn{padding:7px 10px;font-size:12px}.result-actions .purchase-action .link-btn{margin:0}

/* v0.5.3: neutral Rakuten destination UI with pack-size selector */
.purchase-action{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.rakuten-offer-choice{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:12px;color:#66758a}
.rakuten-offer-choice>span{font-weight:700;white-space:nowrap}
.rakuten-offer-select{min-width:128px;max-width:210px;padding:8px 30px 8px 10px;border:1px solid #cbd7e3;border-radius:8px;background:#fff;color:#26384d;font:inherit;font-size:12px}
.rakuten-pack-static{display:inline-flex;align-items:center;min-height:34px;padding:7px 9px;border-radius:8px;background:#f4f7fa;color:#526477;font-size:12px;font-weight:700}
.purchase-action .rakuten-link{white-space:nowrap}
.purchase-action.compact .rakuten-offer-select{min-width:116px;max-width:180px;padding-top:7px;padding-bottom:7px}
.purchase-action.compact .rakuten-link{padding:7px 10px;font-size:12px}
@media(max-width:540px){.purchase-action{width:100%;align-items:stretch}.rakuten-offer-choice{width:100%;justify-content:space-between}.rakuten-offer-select{flex:1;max-width:none}.purchase-action .rakuten-link{width:100%;justify-content:center;text-align:center}.rakuten-pack-static{flex:1}.purchase-action.compact .rakuten-offer-select{max-width:none}}


/* v0.6.1: search controls */
.primary:disabled{cursor:wait;opacity:.72}

.size-pill small{display:block;margin-top:2px;font-size:10px;font-weight:600;color:#66758a;white-space:nowrap}

/* v0.5.6: result decision support */
.ranking-reason{margin-top:10px;padding:9px 11px;border-radius:10px;background:#f7f9fb;border:1px solid #e1e8ef;display:grid;gap:3px}
.ranking-reason strong{font-size:12px;color:#34495e}
.ranking-reason span{font-size:12px;line-height:1.55;color:#5d6c7b}
.recommendation-conclusion{flex-wrap:wrap}

/* v0.5.7: always-high-precision search progress */
.search-progress{position:fixed;inset:0;z-index:80;background:rgba(25,38,52,.34);display:grid;place-items:center;padding:20px;backdrop-filter:blur(2px)}
.search-progress[hidden]{display:none}
.search-progress-card{width:min(520px,100%);display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:16px;background:#fff;box-shadow:0 18px 55px rgba(16,37,56,.22);border:1px solid #d9e4ee}
.search-spinner{width:34px;height:34px;flex:0 0 34px;border:4px solid #dce8f2;border-top-color:#356f9f;border-radius:50%;animation:search-spin .85s linear infinite}
.search-progress-copy{display:grid;gap:4px}.search-progress-copy strong{font-size:16px;color:#26384d}.search-progress-copy span{font-size:13px;color:#405b73}.search-progress-copy small{font-size:12px;line-height:1.5;color:#697b8e}
@keyframes search-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.search-spinner{animation:none;border-top-color:#dce8f2;background:#356f9f}}
@media(max-width:540px){.search-progress-card{align-items:flex-start;padding:18px}.search-spinner{width:28px;height:28px;flex-basis:28px}}

/* v0.6.3: result UX finalization */
#result-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin:0}
.result-summary-chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:#f3f7fb;color:#526477;font-size:12px;font-weight:700;white-space:nowrap}
.recommendation-main{display:grid;gap:3px;min-width:min(420px,100%)}
.recommendation-facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.recommendation-facts span{padding:4px 8px;border-radius:999px;background:#edf5fc;color:#355b7e;font-size:11px;font-weight:800}
.recommendation-conclusion.neutral{background:#f8fbfd;border-color:#d7e3ed}
.decision-details{flex:1 1 330px;border-left:1px solid #dce6ef;padding-left:18px}
.decision-details summary,.ranking-details summary{cursor:pointer;color:#35688f;font-size:12px;font-weight:800}
.decision-details ol{margin:8px 0 0;padding-left:20px;font-size:12px;color:#526477}
.decision-details p{margin:8px 0 0;font-size:12px;color:#526477;line-height:1.7}
.size-pill{display:grid;text-align:right;line-height:1.3;min-width:118px}
.size-pill strong{font-size:13px;color:#2e536f}
.metrics span{display:inline-flex;align-items:center;gap:5px}
.metrics span b{font-size:11px;color:#67788a}
.ranking-details{margin-top:10px;padding:9px 11px;border-radius:10px;background:#fafcfe;border:1px solid #e6edf3}
.ranking-details p{margin:7px 0 0;font-size:12px;line-height:1.65;color:#5d6c7b}
.result-actions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:10px 12px;margin-top:12px}
.result-actions>.view-btn{margin:0;align-self:end;min-height:42px}
.result-sale{display:grid;gap:5px;justify-items:start;min-width:0}
.result-sale-label{font-size:11px;font-weight:800;color:#718096}
.result-sale .purchase-action{margin:0}
.viewer-meta{margin-top:5px;color:#66758a;font-size:13px}
.viewer-meta-grid{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:5px}
.viewer-meta-grid span{display:inline-flex;gap:5px;align-items:baseline}
.viewer-meta-grid b{color:#40566d;font-size:11px}
.viewer-meta p{margin:5px 0 0;font-size:12px;color:#718096}
.viewer-legend{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;margin:10px 0 2px;padding:10px 12px;border:1px solid #e0e8ef;border-radius:10px;background:#fbfdff}
.viewer-legend:empty{display:none}
.viewer-legend-title{font-size:11px;font-weight:900;color:#65758a}
.viewer-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#40566d}
.viewer-legend-item i{width:12px;height:12px;border-radius:3px;background:var(--legend-color);border:1px solid rgba(15,23,42,.35)}
.viewer-legend-item b{font-size:12px}.viewer-legend-item small{font-size:11px;color:#718096}
@media(max-width:760px){#result-summary{justify-content:flex-start;margin-top:8px}.decision-details{border-left:0;border-top:1px solid #dce6ef;padding:10px 0 0;width:100%}.result-actions{grid-template-columns:1fr}.result-actions>.view-btn{width:100%}.result-sale{width:100%}.result-sale .purchase-action{width:100%}}
@media(max-width:540px){.result-summary-chip{font-size:11px}.size-pill{text-align:left;min-width:0}.recommendation-facts{gap:5px}.viewer-meta-grid{display:grid;grid-template-columns:1fr}.viewer-legend{align-items:flex-start}.viewer-legend-title{width:100%}}

/* v0.6.4: scalable market-box database search */
.market-db-dialog{width:min(1180px,calc(100% - 24px));padding:22px;max-height:94vh}
.market-db-summary{align-items:center;margin-bottom:12px}
.market-db-summary strong{font-size:14px;color:#26384d}
.market-db-toolbar{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(130px,.8fr)) auto;gap:10px;align-items:end;padding:12px;border:1px solid #dce5ef;border-radius:12px;background:#f8fbfe;margin-bottom:10px}
.market-db-toolbar label{display:grid;gap:5px;margin:0;min-width:0}
.market-db-toolbar label>span{font-size:11px;font-weight:800;color:#526477}
.market-db-toolbar input,.market-db-toolbar select{width:100%;min-width:0;height:38px;padding:7px 9px;border:1px solid #cbd7e3;border-radius:8px;background:#fff;color:#26384d;font:inherit;font-size:12px}
.market-db-toolbar input:focus,.market-db-toolbar select:focus{outline:2px solid #b9d7ef;outline-offset:1px;border-color:#6f9ec6}
.db-reset-btn{height:38px;align-self:end;white-space:nowrap}
.market-db-result-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:34px;padding:5px 2px 9px;color:#66758a;font-size:12px}
.market-db-result-meta strong{color:#26384d;font-size:13px}
.db-active-filters{display:inline-flex;padding:3px 7px;border-radius:7px;background:#edf5fc;color:#41688f;font-weight:700}
.market-db-items{max-height:58vh;padding:0 14px}
.db-item{padding:14px 2px}
.db-item-head{align-items:flex-start}
.db-item-head>div:first-child{min-width:0}
.db-item-head strong{overflow-wrap:anywhere}
.db-item-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:5px}
.db-source-tag{display:inline-flex;padding:2px 7px;border-radius:999px;background:#eef3f7;color:#5a6b7c;font-size:10px;font-weight:800}
.db-size-summary{flex:0 0 auto;text-align:right;padding:7px 9px;border-radius:10px;background:#f4f8fb;border:1px solid #e1e9f0;min-width:112px}
.db-size-summary strong,.db-size-summary small{display:block}
.db-size-summary strong{font-size:12px;color:#2f5e86}
.db-size-summary small{font-size:10px;color:#718096;margin-top:2px}
.db-dims{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.db-dims span{display:grid;gap:2px;font-size:11px;background:#f5f7fa;padding:7px 8px;border-radius:8px;min-width:0;overflow-wrap:anywhere}
.db-dims b{font-size:10px;color:#718096}
.db-reference-note{padding:8px 10px;border-radius:9px;background:#fff8e7;border:1px solid #f1dfac;color:#7a5a18!important;line-height:1.55}
.db-purchase{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;margin-top:10px;padding-top:10px;border-top:1px dashed #dce5ef}
.db-purchase-label{font-size:11px;font-weight:800;color:#66758a;white-space:nowrap}
.db-purchase .purchase-action{justify-content:flex-start}
.db-item footer{margin-top:9px}
.market-db-more-wrap{display:flex;justify-content:center;padding:12px 0 2px}
.market-db-more-wrap .secondary{min-width:180px}
.market-db-more-wrap .secondary[hidden]{display:none}
.market-db-note{padding-top:4px;line-height:1.65}

@media(max-width:1040px){
  .market-db-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}
  .db-search-field{grid-column:span 2}
  .db-reset-btn{width:100%}
}
@media(max-width:720px){
  .market-db-dialog{width:calc(100% - 12px);padding:16px 14px}
  .market-db-toolbar{grid-template-columns:1fr 1fr;padding:10px}
  .db-search-field{grid-column:1/-1}
  .db-reset-btn{grid-column:1/-1}
  .market-db-items{max-height:55vh;padding:0 10px}
  .db-dims{grid-template-columns:1fr 1fr}
  .db-purchase{grid-template-columns:1fr}
  .db-purchase-label{white-space:normal}
}
@media(max-width:480px){
  .market-db-toolbar{grid-template-columns:1fr}
  .db-search-field,.db-reset-btn{grid-column:auto}
  .db-item-head{gap:8px}
  .db-size-summary{min-width:94px;padding:6px}
  .db-dims{grid-template-columns:1fr}
  .market-db-result-meta{gap:5px 9px}
}

/* v0.6.5 input/storage safeguards */
.storage-warning{display:grid;gap:3px;margin:14px 0;padding:12px 14px;border:1px solid #e3c26f;border-radius:12px;background:#fff9e8;color:#725318;font-size:13px}.storage-warning[hidden]{display:none}.storage-warning strong{font-size:14px}.storage-warning span{color:#806527}.limit-warning{color:#a04444!important;font-weight:800}.secondary:disabled,.primary:disabled,.text-btn:disabled{opacity:.48;cursor:not-allowed}


/* v0.6.8: result candidate cap and compact sales row */
.result-sale{display:flex;align-items:center;min-width:0}
.result-sale .purchase-action{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0}
.purchase-pack-label{font-size:12px;font-weight:700;color:#66758a;white-space:nowrap}
.rakuten-pack-static{font-size:12px;font-weight:700;color:#26384d;white-space:nowrap}
.result-sale .rakuten-offer-choice{flex:0 1 auto;min-width:0}
.result-sale .rakuten-offer-select{min-width:105px;max-width:145px}
.result-sale .rakuten-link{flex:0 0 auto}
@media(max-width:760px){
  .result-sale .purchase-action{width:100%;flex-wrap:wrap}
}
@media(max-width:540px){
  .result-sale .purchase-action{align-items:stretch}
  .result-sale .rakuten-offer-choice{width:auto;flex:1 1 150px;justify-content:flex-start}
  .result-sale .rakuten-offer-select{flex:1 1 auto;max-width:none}
  .result-sale .rakuten-link{width:auto;flex:0 0 auto}
}


/* v0.7.0: public metadata/support pages */
.site-footer .footer-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 16px}.site-footer a{color:#526477;text-decoration:none}.site-footer a:hover{text-decoration:underline}.error-page{min-height:62vh;padding:72px 0}.error-page h2{font-size:clamp(30px,5vw,46px);margin:8px 0 12px}.error-page p{color:#526477;margin-bottom:24px}

/* v0.7.1: Import Doctor-style site branding */
.site-footer{border-top:1px solid #dbe3ee;padding:26px 0;color:#718096;font-size:13px;background:#fff}
.site-footer .footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;flex-wrap:wrap}
.footer-brand-block{display:grid;gap:7px}
.footer-brand{display:inline-flex;align-items:center;gap:9px;color:#172033;text-decoration:none;font-weight:850;font-size:15px}
.footer-brand img{display:block;border-radius:7px;flex:0 0 auto}
.footer-brand-block small{display:block;color:#7a8798;font-size:11px}
.site-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px 18px;padding-top:5px}
.site-footer a{color:#526477;text-decoration:none}
.site-footer .footer-brand{color:#172033}
.site-footer a:hover{text-decoration:underline}
@media(max-width:620px){.header-inner{padding:12px 0}.site-logo{width:34px;height:34px}.site-name,.site-header h1.site-name{font-size:17px}.site-footer .footer-inner{display:grid;gap:18px}.site-footer nav{justify-content:flex-start;padding-top:0;gap:8px 16px}.footer-brand{font-size:14px}}
.article-footer.site-footer{padding:0}

.legal-body a,.policy-page a{color:#255f92}.legal-body .primary{color:#fff}.legal-body .article-note{margin-top:30px}.site-map-list{display:grid;gap:8px}.site-map-list a{font-weight:700;text-decoration:none}.site-map-list a:hover{text-decoration:underline}
