:root{font-family:-apple-system,BlinkMacSystemFont,"Yu Gothic UI","Meiryo",sans-serif;font-size:16px;line-height:1.65;color:#223147;background:#f5f7fb;--blue:#245bc4;--border:#e1e7ef;--muted:#68768a}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}header{min-height:76px;padding:14px max(28px,4vw);padding-top:max(14px,env(safe-area-inset-top));background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:700;color:#223147;text-decoration:none;letter-spacing:.02em}.mark{display:grid;place-items:center;width:36px;height:36px;background:var(--blue);color:white;border-radius:10px;font-size:23px}.header-note{font-size:13px;color:var(--muted)}.header-note b{font-weight:500;padding:4px 8px;background:#f3f5f8;border-radius:5px;margin-left:10px}main{max-width:1440px;margin:auto;padding:24px 36px 36px;padding-bottom:max(36px,env(safe-area-inset-bottom))}.view-nav{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--border);margin-bottom:28px}.view-nav button{background:transparent;border:0;border-radius:0;color:var(--muted);padding:13px 18px;border-bottom:2px solid transparent;font-size:15px}.view-nav .active{color:var(--blue);border-bottom-color:var(--blue)}.view-nav .install-help{margin-left:auto;font-size:14px;font-weight:500}.title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}h1{font-size:26px;line-height:1.45;letter-spacing:.02em;margin:0 0 7px;font-weight:700}h2{font-size:18px;margin:0}h3{font-size:17px;margin:0}p{margin:8px 0}.eyebrow{display:none}.muted,.hint{color:var(--muted)}.small,.hint{font-size:14px}.title-row p{font-size:14px;margin:0}.catalog-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid var(--border);padding:12px 16px;border-radius:10px;margin:0 0 24px;font-size:14px}.catalog-bar label{display:flex;align-items:center;gap:12px;font-weight:600;flex-shrink:0}.catalog-bar select{font-size:14px}.catalog-bar #catalog-status{color:var(--muted);margin-left:auto;font-size:13px}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:26px;align-items:start}aside,.management-panel{background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px}aside{box-shadow:0 4px 16px #20355303}.section-heading{display:flex;gap:10px;align-items:center}.number{display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--blue);background:#edf3ff;border-radius:6px;width:27px;height:27px;flex-shrink:0}fieldset{border:0;padding:0;margin:24px 0}legend,.field{font-weight:600;font-size:14px}legend{margin-bottom:10px}.field{display:block;margin:18px 0 0}.unit-input{display:flex;align-items:center;overflow:hidden;border:1px solid #cad4e1;border-radius:7px;margin-top:8px;background:white}.unit-input input{width:100%;min-width:0;border:0;background:transparent;padding:11px 12px;font-size:16px}.unit-input span{color:var(--muted);padding-right:12px;flex-shrink:0;white-space:nowrap;font-size:14px;font-weight:400}select,.field>input,.field>textarea{background:#fff;color:inherit;border:1px solid #cad4e1;border-radius:7px;padding:10px 12px;min-height:44px;font-size:16px}.field>input,.field>textarea,.field select{width:100%;display:block;margin-top:8px}#category{width:100%}textarea{resize:vertical}.hint{font-weight:400;line-height:1.75}#consult>.hint{font-size:12px;margin-top:10px}.priorities{display:grid;gap:8px;font-size:14px}.priorities label{display:flex;align-items:center;gap:8px;padding:5px 0;cursor:pointer}input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue);flex-shrink:0;margin:0}button{border-radius:7px;padding:10px 16px;min-height:44px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--blue);border:1px solid var(--blue);color:#fff}.primary:hover{background:#1748a5}.secondary{background:#fff;border:1px solid #ccd6e3;color:#52637a;font-size:14px}.secondary:hover{background:#f3f6fa}.compact{display:inline-flex;width:auto;justify-content:center}.text-danger{background:none;border:0;color:#b33d46;font-size:14px}.danger{background:#b73543;border:1px solid #b73543;color:white}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.table-wrap:focus-visible{outline:3px solid #91b3f4;outline-offset:3px}.unit-input:focus-within{outline:3px solid #91b3f4;outline-offset:2px}.unit-input input:focus{outline:none}.result-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 10px}#count{font-size:12px}#summary{font-size:13px;margin:0 0 18px;line-height:1.8}#cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.card.best{border-color:#a6bee9}.card-top{padding:10px 16px;font-size:12px;font-weight:600;background:#f4f6fa;color:#687b95}.card.best .card-top{background:#edf3ff;color:var(--blue)}.card-body{padding:18px 16px;flex:1}.model{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.card h3{font-size:18px;line-height:1.5;margin:8px 0;overflow-wrap:anywhere}.spec{font-size:13px;color:var(--muted)}.price{font-size:25px;letter-spacing:-.03em;font-weight:750;margin:18px 0}.price span{font-size:12px;font-weight:400;margin-left:5px;letter-spacing:0;color:var(--muted)}.reason{border-top:1px solid #edf0f5;padding-top:14px;font-size:14px;line-height:1.8}.reason strong{font-size:14px;font-weight:600}.reason p{margin:8px 0}.tag{display:inline-block;padding:2px 7px;background:#f0f4fa;color:#536b8e;border-radius:4px;font-size:12px;margin:4px 4px 0 0}.compare-toggle{display:flex;align-items:center;gap:9px;border-top:1px solid var(--border);padding:13px 16px;cursor:pointer;font-size:14px}.compare-toggle:has(input:checked){background:#f8faff}.comparison-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 14px}.comparison-heading>.small{font-size:12px}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;background:white}table{border-collapse:collapse;width:100%;font-size:14px;min-width:470px}th,td{padding:15px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #e9edf4;overflow-wrap:anywhere}thead th{background:#f1f5fc;color:#395780;font-weight:600}tbody th{width:135px;color:var(--muted);font-weight:500}tr:last-child>*{border-bottom:0}.checklist{margin-top:22px;padding:18px 20px;background:#edf1f7;border-radius:10px}.checklist h3{font-size:14px;font-weight:600}.checklist p{font-size:13px;color:#61738a;line-height:1.8;margin-bottom:0}.empty{grid-column:1/-1;padding:30px 24px;background:white;border:1px solid var(--border);border-radius:10px}.empty h3{font-size:16px}.empty p{font-size:14px;color:var(--muted);max-width:580px;line-height:1.8}.manage-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:24px}.managed-product{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--border);padding:20px 0;overflow-wrap:anywhere}.managed-product:last-child{border-bottom:0}.managed-product p{font-size:14px}.row-actions{display:flex;gap:6px;flex-shrink:0}.genre-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--border);font-size:14px}.genre-item span{font-size:12px}.genre-item:last-child{margin-bottom:18px}.management-panel>.field{max-width:340px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.required{font-size:11px;color:#8b6470;font-weight:500;margin-left:8px}.horizontal{display:flex;flex-wrap:wrap;gap:16px}dialog{border:1px solid var(--border);border-radius:14px;padding:28px;width:min(680px,calc(100vw - 32px));max-height:90dvh;overflow:auto;color:inherit;box-shadow:0 24px 90px #172d4930}dialog::backdrop{background:#182a4266;backdrop-filter:blur(3px)}.dialog-heading,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading{padding-bottom:14px;border-bottom:1px solid var(--border)}.dialog-actions{justify-content:flex-end;margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.dialog-heading .close-dialog{border:0;background:#f3f5f9;font-size:20px;padding:5px 12px}.error{color:#b73543;font-size:14px}#genre-dialog,#delete-dialog{max-width:520px}#install-dialog{max-width:580px}#install-dialog li{margin:14px 0}.demo{padding:12px 16px;background:#fff5e4;border:1px solid #ecdec0;border-radius:8px;font-size:14px;margin-bottom:20px}#notice{font-size:14px;color:var(--blue)}#dirty{font-size:13px;color:#9a661d;margin-bottom:0}footer{display:flex;justify-content:space-between;padding-top:30px;color:#8490a1;font-size:12px}@media(max-width:1180px){#cards{grid-template-columns:1fr}.card-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 18px}.model,.card h3,.spec{grid-column:1}.card-body .price{grid-column:2;grid-row:1/4;align-self:center;margin:0}.reason{grid-column:1/-1;margin-top:16px}.workspace{grid-template-columns:280px minmax(0,1fr);gap:20px}main{padding:22px 26px}.catalog-bar #catalog-status{margin-left:0}.brand{font-size:18px}.genre-item{align-items:flex-start;flex-direction:column;gap:3px}}@media(max-width:760px){header{padding:12px 18px;min-height:66px}.brand{font-size:16px;gap:9px}.mark{width:32px;height:32px;font-size:21px}.header-note{font-size:12px}.header-note b{margin-left:4px}main{padding:16px}.view-nav{margin-bottom:22px;flex-wrap:wrap}.view-nav button{font-size:14px;padding:10px 12px}.view-nav .install-help{font-size:12px;padding:10px 6px}h1{font-size:23px}.title-row{align-items:flex-start;gap:14px;flex-wrap:wrap}.title-row .secondary{padding:8px 12px}.catalog-bar{padding:12px;margin-bottom:18px;gap:8px}.catalog-bar label{width:100%;justify-content:space-between}.catalog-bar select{max-width:65%}.workspace,.manage-grid{grid-template-columns:1fr}.workspace{gap:24px}aside,.management-panel{padding:20px}.priorities{grid-template-columns:1fr 1fr;gap:10px}#consult>.hint{max-width:560px}.card-body{grid-template-columns:minmax(0,1fr) auto}.price{font-size:23px}.comparison-heading{gap:8px}.comparison-heading>.small{font-size:12px}.form-grid{grid-template-columns:1fr}dialog{padding:22px}.managed-product{align-items:flex-start;flex-direction:column;gap:8px}.genre-item{flex-direction:row;align-items:center}.horizontal{display:flex}.result-top{flex-wrap:wrap}.empty{padding:24px 20px}footer span{display:none}}@media(max-width:390px){.header-note{display:none}.view-nav .install-help{margin-left:0}.card-body{display:block}.card-body .price{margin:12px 0}}@media(display-mode:standalone){.install-help{display:none}}@media(prefers-reduced-motion:reduce){button{transition:none}}
.image-field{padding:18px;border:1px dashed #cbd6e5;border-radius:10px;background:#f8faff}.image-field input[type=file]{max-width:100%;font-size:14px}.upload-preview{display:block;max-width:100%;max-height:200px;margin:12px 0;object-fit:contain;border-radius:8px}.image-button{display:block;position:relative;width:100%;border:0;border-radius:0;background:#fff;padding:12px;overflow:hidden}.image-button img{display:block;width:100%;height:180px;object-fit:contain}.image-button span{display:block;font-size:11px;color:var(--muted);margin-top:5px;font-weight:400}.image-button:hover{background:#f8faff}.product-guarantees{padding:0 16px 16px;display:flex;align-items:flex-start;flex-direction:column;gap:5px}.warranty-link{font-size:14px;min-height:44px;background:#edf3ff;color:var(--blue);border:0;padding:8px 12px;text-align:left;overflow-wrap:anywhere}.managed-info{display:flex;gap:14px;align-items:center;min-width:0}.managed-info>div{min-width:0}.managed-thumb{width:64px;height:72px;object-fit:contain;flex-shrink:0}.genre-item{flex-wrap:wrap}.genre-item p{font-size:12px;margin:2px 0}.genre-item .row-actions{gap:2px}.genre-item .row-actions button{padding:8px 10px}.warranty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.warranty-card{overflow:hidden;background:white;border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;min-width:0}.warranty-card-body{padding:22px;display:flex;flex-direction:column;align-items:flex-start;flex:1;gap:12px}.warranty-card h2{overflow-wrap:anywhere}.warranty-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;font-size:15px}.warranty-excerpt{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);margin:0;max-height:112px}.warranty-card .row-actions{margin-top:auto;padding-top:8px}.reference-image{display:block;width:auto;max-width:100%;height:auto;margin:18px auto}.reference-image,.upload-preview{background:#f6f8fb}#reference-dialog{width:min(960px,calc(100vw - 32px))}#reference-content{padding-top:12px}#master-delete-dialog{max-width:520px}@media(max-width:1100px){.warranty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.warranty-grid{grid-template-columns:1fr}.genre-item{align-items:flex-start;gap:12px}.view-nav .install-help{margin-left:0}#product-warranties{grid-template-columns:1fr}.managed-info{width:100%}}

.needs-list{display:grid;gap:16px}.need-group-title{font-size:12px;font-weight:600;color:var(--muted);margin:0 0 8px;padding-top:12px;border-top:1px solid var(--border)}.need-group:first-child .need-group-title{border-top:0;padding-top:0}.need-group .priorities{gap:4px;grid-template-columns:1fr}.need-group .priorities label{min-height:40px;line-height:1.5;padding:6px 8px;border:1px solid transparent;border-radius:7px}.need-group label:has(input:checked){background:#edf3ff;border-color:#c7d8f5}.product-needs .priorities{grid-template-columns:1fr 1fr}.needs-hint{margin-top:14px}@media(max-width:760px){.need-group .priorities{grid-template-columns:1fr 1fr}}@media(max-width:390px){.product-needs .priorities{grid-template-columns:1fr}}
