@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-var-latin-Dx4kXJAl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-500-latin-C8OXljZJ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-600-latin-zEkxB9Mr.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/poppins-700-latin-Qrb0O0WB.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--red: #bc1934;--red-hover: #d02843;--red-soft: rgba(188, 25, 52, .1);--ink: #29292d;--muted: #6b7078;--bg: #f6f6f7;--card: #ffffff;--line: #e3e3e9;--line-strong: #c9ccd4;--radius: 14px;--shadow: 0 1px 2px rgba(41, 41, 45, .05), 0 10px 28px rgba(41, 41, 45, .07);--headerH: 100px;--mock-blur: 2px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;--font-head: "Poppins", var(--font)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.45}h2{font-family:var(--font-head);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:0 0 .6rem}.panel-block+.panel-block{margin-top:1.4rem}h3{font-family:var(--font-head);font-size:.82rem;font-weight:600;color:var(--red);margin:.9rem 0 .35rem}.panel-block h3:first-child{margin-top:0}.topbar{position:sticky;top:0;z-index:40;display:flex;background:#29292d;box-shadow:0 0 4px #0000001a}.header-container{width:100%;max-width:1140px;margin:0 auto;padding:0 15px;display:flex;align-items:stretch}@media (min-width: 1400px){.header-container{max-width:1320px}}.header-container{filter:blur(var(--mock-blur))}.site-header{height:var(--headerH)}.site-logo{position:relative;display:flex;align-items:center;flex:none;padding-right:45px}.site-logo img{height:80px;width:auto;display:block}.site-logo:after{content:"";position:absolute;right:15px;top:10px;bottom:10px;width:2px;background:#50505033}.site-nav{display:flex;align-items:stretch;margin-left:auto;margin-right:-15px}.site-nav span{display:inline-flex;align-items:center;padding:0 40px;font-family:var(--font);font-size:14px;font-weight:400;color:#fff;white-space:nowrap;cursor:default}.site-nav span.active{font-weight:500}.site-nav span:last-child{padding:0 0 0 15px}.site-nav span.has-children:after{content:"";display:inline-block;margin-left:7px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor}.social-wrap{position:relative;display:flex;align-items:center;gap:20px;margin-left:auto;padding-left:60px}.social-wrap:after{content:"";position:absolute;left:30px;top:10px;bottom:10px;width:2px;background:#50505033}.topbar a{text-decoration:none}.social-wrap a{display:inline-flex;align-items:center;color:#9c9c9c;font-size:14px;transition:color .2s}.social-wrap a:hover{color:var(--red)}.social-wrap .cart-icon{font-size:16px}.btn{padding:.5rem .85rem;border-radius:10px;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font-family:var(--font);font-size:.84rem;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.btn:hover{border-color:var(--red);color:var(--red)}.btn.ghost{background:transparent}.btn.small{padding:.32rem .6rem;font-size:.78rem}.layout{display:grid;grid-template-columns:300px minmax(0,1fr) 340px;gap:14px;padding:14px;max-width:1780px;margin:0 auto;align-items:start}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.side-left,.side-right{position:sticky;top:calc(var(--headerH) + 14px);max-height:calc(100vh - var(--headerH) - 30px);overflow-y:auto}.hint{color:var(--muted);font-size:.8rem;margin:.2rem 0 .7rem}.wagon-list{display:flex;flex-direction:column;gap:.5rem}.wagon-card{display:flex;align-items:center;gap:.65rem;text-align:left;padding:.6rem .7rem;background:var(--card);color:var(--ink);border:1px solid var(--line-strong);border-radius:12px;cursor:pointer;font-family:var(--font);transition:border-color .15s,background .15s}.wagon-card:hover{border-color:var(--red)}.wagon-card.active{border-color:var(--red);background:var(--red-soft)}.wagon-mini{width:58px;height:44px;flex:none}.wagon-mini-img{width:58px;height:auto;flex:none;display:block;object-fit:contain}.wagon-info{display:flex;flex-direction:column;gap:.05rem;min-width:0}.wagon-info strong{font-family:var(--font-head);font-size:.9rem}.wagon-info small{color:var(--muted);font-size:.73rem}.wagon-info em{color:var(--muted);font-size:.76rem;font-style:normal}.lib-list{display:flex;flex-direction:column}.lib-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .1rem;border-bottom:1px dashed var(--line)}.lib-row:last-child{border-bottom:0}.lib-icon{width:40px;height:28px;flex:none;display:inline-flex}.lib-icon-img{width:100%;height:100%;object-fit:contain;display:block}.type-icon{width:100%;height:100%}.lib-name{flex:1;min-width:0;font-size:.85rem;font-weight:500}.lib-size{width:4.1rem;padding:.28rem .3rem;border:1px solid var(--line-strong);border-radius:8px;background:var(--card);color:var(--ink);font-family:var(--font);font-size:.8rem}.lib-size:focus{outline:none;border-color:var(--red)}.lib-add{width:28px;height:28px;flex:none;border:none;border-radius:8px;background:var(--red-soft);color:var(--red);font-size:1.05rem;font-weight:700;line-height:1;cursor:pointer;transition:background .15s,color .15s}.lib-add:hover{background:var(--red);color:#fff}.stage{display:flex;flex-direction:column;gap:.6rem;min-width:0}.variant-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:.5rem .6rem}.variant-tab{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.3rem 1.7rem .3rem .7rem;background:var(--card);border:1px solid var(--line-strong);border-radius:10px;cursor:pointer;font-family:var(--font);transition:border-color .15s,background .15s}.variant-tab:hover{border-color:var(--red)}.variant-tab.active{border-color:var(--red);background:var(--red-soft)}.variant-tab .v-name{font-family:var(--font-head);font-size:.82rem;font-weight:600}.variant-tab.active .v-name{color:var(--red)}.variant-tab .v-meta{font-size:.7rem;color:var(--muted)}.variant-actions{margin-left:auto;display:flex;gap:.4rem;flex-wrap:wrap}.variant-del{position:absolute;top:4px;right:4px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.95rem;line-height:1;cursor:pointer;border-radius:6px}.variant-del:hover{color:var(--red);background:var(--red-soft)}.canvas-wrap{position:relative;background:#fbfbfc;border:0;border-radius:var(--radius);overflow:hidden;box-shadow:inset 0 0 0 1px var(--line),var(--shadow)}#canvas{display:block;width:100%;height:auto;touch-action:none;user-select:none;-webkit-user-select:none}.empty-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-size:.95rem;pointer-events:none;padding:1rem}.empty-hint[hidden]{display:none}.empty-hint strong{color:var(--ink);font-family:var(--font-head);font-size:1.05rem}.wagon-title{font-family:var(--font-head);font-size:30px;font-weight:600;fill:var(--ink)}.wagon-note{fill:var(--muted);font-size:24px;letter-spacing:.1em}.item{cursor:grab}.item:active{cursor:grabbing}.item .halo{fill:none;stroke:transparent;stroke-width:4}.item.sel .halo{stroke:var(--red)}.item-label{fill:var(--ink);font-weight:600;font-family:var(--font);pointer-events:none}.item-label.over-image{fill:#fff;paint-order:stroke;stroke:#000000bf;stroke-width:3.5px}.item-label.on-dark{fill:#fff}.selection-toolbar{position:absolute;transform:translate(-50%);display:flex;align-items:center;gap:.3rem;background:var(--ink);border-radius:10px;padding:.32rem;box-shadow:0 8px 24px #29292d59;z-index:30}.selection-toolbar[hidden]{display:none}.st-label{padding:.28rem .55rem;font-size:.78rem;font-weight:600;color:#cfcfd4;white-space:nowrap}.st-btn{background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:7px;padding:.28rem .55rem;font-family:var(--font);font-size:.76rem;font-weight:600;cursor:pointer;white-space:nowrap}.st-btn:hover{background:#ffffff24}.st-btn.danger{color:#ff9aa7;border-color:#ff9aa780}.st-btn.danger:hover{background:#bc193459}.st-btn[hidden]{display:none}.panel-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.9rem}.panel-actions .btn{flex:1}.stage-foot{display:flex;flex-direction:column;gap:.4rem}.weight{display:flex;align-items:center;gap:.7rem;font-size:.85rem;color:var(--muted)}.weight-track{flex:1;height:8px;background:#eceef2;border:1px solid var(--line);border-radius:999px;overflow:hidden}.weight-fill{height:100%;width:0;background:var(--red);transition:width .25s}.weight-fill.warn{background:#e07a1f}.weight-fill.over{background:#a01630}#summary{display:flex;flex-direction:column}.sum-row{display:flex;gap:.5rem;align-items:baseline;padding:.3rem 0;border-bottom:1px dashed var(--line);font-size:.86rem}.sum-row:last-child{border-bottom:0}.sum-row .q{color:var(--red);font-weight:700;min-width:2rem}.sum-row .pos{margin-left:auto;color:var(--muted);font-size:.72rem;text-align:right}.sum-row.wagon{font-size:.9rem}.sum-row.wagon strong{font-family:var(--font-head)}.sum-total{margin-top:.6rem;padding:.55rem .75rem;background:#f8f8fa;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:.25rem;font-size:.86rem}.sum-total div{display:flex;justify-content:space-between;gap:1rem}.sum-total strong{color:var(--red)}.form{display:flex;flex-direction:column;gap:.5rem}input,textarea{width:100%;background:#fbfbfc;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);padding:.55rem .7rem;font-family:var(--font);font-size:.9rem;resize:vertical}input:focus,textarea:focus{outline:none;border-color:var(--red)}input::placeholder,textarea::placeholder{color:#9aa0a8}.sum-actions{display:flex;flex-direction:column;gap:.5rem;margin:.8rem 0 .6rem}.btn.primary{background:var(--red);border-color:var(--red);color:#fff}.btn.primary:hover{background:var(--red-hover);border-color:var(--red-hover);color:#fff}.fineprint{color:var(--muted);font-size:.72rem;margin:.2rem 0 0}.stage-hint{margin:0;text-align:center}kbd{background:#eeeef2;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;padding:0 .35rem;font-size:.73rem;font-family:var(--font)}.toast{position:fixed;left:50%;bottom:1.3rem;transform:translate(-50%,220%);background:var(--ink);color:#fff;padding:.55rem 1.05rem;border-radius:999px;font-size:.84rem;max-width:90vw;transition:transform .25s ease;z-index:60;box-shadow:0 8px 30px #00000059}.toast.show{transform:translate(-50%)}@media (min-width: 1021px){.layout{height:calc(100vh - var(--headerH));grid-template-rows:minmax(0,1fr);align-items:stretch}.stage{min-height:0}.canvas-wrap{flex:1;min-height:0}#canvas{height:100%}}@media (max-width: 1250px){.layout{grid-template-columns:265px minmax(0,1fr) 280px}.site-nav{display:none}}@media (max-width: 1020px){.layout{grid-template-columns:1fr}.stage{order:-1}.side-left,.side-right{position:static;max-height:none;overflow:visible}}@media (max-width: 700px){.site-logo img{height:60px}.social-wrap{display:none}}@media (max-width: 560px){.layout{padding:.6rem;gap:10px}.topbar{padding:0 .8rem}.variant-actions{margin-left:0;width:100%}}
