:root{--ink:#142b43;--muted:#66788a;--line:#dce5ef;--navy:#153b61;--blue:#386ec6;--light:#f3f7fb;--cream:#fff7e8;--green:#16816b}*{box-sizing:border-box}body{margin:0;background:#f5f8fc;color:var(--ink);font:15px/1.65 -apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif}button,input,select{font:inherit}button{cursor:pointer}.container{max-width:1210px;margin:auto;padding:0 24px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:70px}.brand{display:flex;align-items:center;gap:12px;line-height:1.25}.brand-mark{display:grid;place-items:center;background:var(--navy);color:#fff;width:38px;height:38px;border-radius:10px;font-size:25px}.brand strong,.brand small{display:block}.brand strong{font-size:17px}.brand small{font-size:11px;color:var(--muted);letter-spacing:.04em}.header-pill{font-size:12px;color:#4674a6;background:#e8f2ff;padding:5px 12px;border-radius:20px}.hero{padding:50px 0 35px}.eyebrow{font-weight:700;color:#5278a4;font-size:12px;letter-spacing:.12em}.hero h1{font-size:clamp(29px,3.5vw,46px);line-height:1.35;letter-spacing:-.04em;margin:12px 0}.hero h1 span{color:#3472b2}.hero p{color:#52687c;font-size:16px;margin:0}.hero-facts{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.hero-facts span{background:#eaf1f9;border-radius:99px;padding:6px 13px;color:#385b7e;font-size:12px}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.controls,.results-col{display:grid;gap:20px}.card{background:#fff;border:1px solid #e3eaf1;border-radius:18px;box-shadow:0 7px 30px rgba(31,67,105,.045);padding:24px}.card-heading{display:flex;gap:14px;align-items:center;margin-bottom:20px}.card-heading h2,.import-card h2{margin:0;font-size:20px;line-height:1.3}.card-heading p,.import-card p{margin:4px 0 0;color:var(--muted);font-size:13px}.step{background:#e9f1fc;color:#366baa;font-weight:800;border-radius:10px;width:40px;height:40px;display:grid;place-items:center;flex:none}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-weight:700;font-size:13px}select,input[type=number],input[type=search]{display:block;width:100%;border:1px solid #cfdbe8;background:white;border-radius:10px;margin-top:6px;padding:10px 12px;min-height:44px;color:var(--ink);outline-color:#6c9cdb}.slot-preview{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 15px}.slot-pill{font-size:12px;padding:5px 10px;border-radius:7px;background:#f2f5fa;color:#3a536c;border:1px solid var(--line)}.cost-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px}.cost-line strong{font-size:21px;color:#1a598d}.override-label{margin-top:14px}.hint{font-size:12px;color:#738396;margin:8px 0 0}.warning{color:#a35b00}.inventory-tools{display:flex;align-items:end;gap:12px}.inventory-tools input{margin:0}.selected-count{white-space:nowrap;font-size:12px;color:#4870a0;font-weight:700}.quick-actions{display:flex;gap:16px;margin:12px 0}.text-button{border:0;background:none;color:#3067a5;padding:0;font-weight:700;font-size:12px}.memory-list{max-height:390px;overflow:auto;border:1px solid var(--line);border-radius:12px}.memory-row{display:grid;grid-template-columns:26px minmax(0,1fr) 110px;gap:8px;align-items:center;padding:9px 12px;border-bottom:1px solid #edf1f5;min-height:53px}.memory-row:last-child{border-bottom:0}.memory-row:nth-child(even){background:#f9fbfd}.memory-row input{accent-color:#3274bd;width:17px;height:17px}.memory-name{min-width:0}.memory-name strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.memory-name small{display:block;color:#8191a1;font-size:11px}.memory-row select{margin:0;padding:3px 5px;min-height:32px;font-size:12px}.color-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}.color-赤{background:#e87a78}.color-青{background:#6b99db}.color-黄{background:#e7bd55}.color-緑{background:#62b58b}.color-紫{background:#a284c8}.objective-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.objective{border:1px solid #d5e1ed;background:#fff;text-align:left;padding:10px 12px;border-radius:9px;font-weight:700;color:#3b556e}.objective.selected{background:#e7f1fd;border-color:#6e9bd0;color:#1a568e}.primary-button{width:100%;border:0;background:#1d578a;color:#fff;padding:15px 20px;border-radius:12px;font-weight:800;font-size:16px;display:flex;justify-content:space-between;box-shadow:0 8px 16px rgba(20,73,126,.18)}.primary-button:hover{background:#16456e}.result-step{background:#eaf5ee;color:#28876a}.empty-result{text-align:center;padding:70px 30px;color:#718396}.empty-symbol{font-size:40px;color:#9bbad9}.empty-result h3{color:#395573;font-size:17px;margin:6px 0}.empty-result p{font-size:13px}.result-item{border:1px solid #d9e5f1;border-radius:12px;margin-bottom:13px;overflow:hidden}.result-item:first-child{border-color:#7ba5cf;box-shadow:0 4px 14px #dceafa}.result-top{display:flex;justify-content:space-between;align-items:center;background:#f3f8fd;padding:10px 14px}.result-top b{color:#2d679d}.result-top strong{font-size:23px;color:#174a77}.result-top small{font-size:12px;color:#7890a6}.result-body{padding:10px 14px}.slot-row{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid #edf1f5;font-size:13px}.slot-row:last-child{border:0}.slot-row small{color:#728399}.matched{color:#19866f!important}.totals{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.totals span{background:#f2f5f9;padding:3px 8px;border-radius:5px;font-size:11px;color:#536b81}.result-note{font-size:12px;color:#687f94;margin-top:16px}.method-card h2{font-size:16px;margin:0 0 8px}.method-card p{font-size:13px;color:#687a8b;margin:8px 0}.import-card{margin-top:28px}.import-intro{display:flex;align-items:center;justify-content:space-between;gap:25px}.file-button,.secondary-button{white-space:nowrap;background:#e8f1fc;border:1px solid #bed3e9;border-radius:9px;padding:10px 16px;color:#235b92;font-weight:800;cursor:pointer}.import-status{background:#f5f8fb;border-radius:9px;margin-top:18px;padding:13px 15px;color:#536b81;font-size:13px}.import-status.error{background:#fff0ed;color:#a24132}.import-status.success{background:#e9f7f1;color:#216d50}.secondary-button{margin-top:12px;background:#1d578a;color:#fff;border:0}footer{padding:34px 0 45px;font-size:12px;color:#8191a0}@media(max-width:850px){.layout{grid-template-columns:1fr}.hero{padding-top:35px}.import-intro{display:block}.file-button{display:inline-block;margin-top:16px}}@media(max-width:500px){.container{padding:0 15px}.card{padding:18px}.field-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:29px}.memory-row{grid-template-columns:22px minmax(0,1fr) 82px}.inventory-tools{display:block}.selected-count{display:block;margin-top:5px}.header-pill{display:none}}
/* Public v1.1 usability additions */
.howto-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px;max-width:650px}.howto-strip a{display:flex;align-items:center;gap:9px;text-decoration:none;background:#fff;border:1px solid #d7e3ef;border-radius:12px;padding:10px 12px;color:#405e79;font-size:12px;font-weight:700;line-height:1.35}.howto-strip b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e8f2fd;color:#276298;flex:none}.howto-strip a:last-child{background:#1d578a;color:#fff;border-color:#1d578a}.howto-strip a:last-child b{background:#fff;color:#1d578a}
.transfer-box{margin:14px 0;padding:14px;border:1px solid #d6e4f2;border-radius:12px;background:#f5f9fd}.transfer-box>strong{font-size:13px}.transfer-box>p{font-size:12px;color:#64798e;margin:3px 0 10px}.transfer-box>div{display:flex;gap:8px;flex-wrap:wrap}.mini-button{border:1px solid #b9d0e5;background:#fff;color:#245d93;border-radius:8px;padding:8px 11px;font-size:12px;font-weight:800}.mini-button.secondary{background:#e7f0fa}.transfer-status{min-height:0!important;margin:8px 0 0!important;color:#19725d!important}.transfer-status:empty{display:none}.transfer-status.error{color:#a44135!important}.result-heading{align-items:center}.copy-result{margin-left:auto}.result-heading>div{min-width:0}
@media(max-width:560px){.howto-strip{grid-template-columns:repeat(2,1fr);margin-top:16px}.howto-strip a{min-height:52px}.transfer-box>div{display:grid}.mini-button{min-height:44px}.result-heading{flex-wrap:wrap}.copy-result{margin-left:54px}}
