:root{--bg:#f3f2ef;--stage:#e8e7e3;--surface:#fff;--surface-2:#faf9f7;--ink:#26221e;--muted:#6d6559;--faint:#a09884;--border:#e6e2d8;--border-strong:#d4cec0;--accent:#b3402f;--accent-strong:#8f3021;--accent-soft:#f7e9e6;--font:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", Meiryo, system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.7}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hidden{display:none}.spacer{flex:1}#app{flex-direction:column;height:100vh;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:10px;padding:10px 16px;display:flex}.logo{letter-spacing:.02em;align-items:center;gap:9px;font-size:16px;font-weight:800;display:inline-flex}.logo-mark{background:var(--accent);background-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);background-position:5px 6px,5px 10px,5px 14px;background-repeat:no-repeat;background-size:12px 2px,12px 2px,8px 2px;border-radius:6px;width:22px;height:22px;display:inline-block}.beta{color:var(--accent-strong);background:var(--accent-soft);vertical-align:2px;border-radius:4px;margin-left:7px;padding:1px 5px;font-size:10px;font-weight:700}.boost-link{color:var(--muted);margin-right:6px;font-size:12px;text-decoration:none}.boost-link:hover{color:var(--accent);text-decoration:underline}.btn{cursor:pointer;border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-family:inherit;font-size:13.5px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--faint)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #8f30214d}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.workbench{flex:1;min-height:0;display:flex}.editor{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;width:400px;display:flex;overflow-y:auto}.ed-section{border-bottom:1px solid var(--border);padding:18px 18px 6px}.ed-label{letter-spacing:.08em;color:var(--faint);align-items:center;margin-bottom:10px;font-size:11.5px;font-weight:800;display:flex}.ed-label-gap{margin-top:16px}.ed-section:last-of-type{border-bottom:none}.grid2{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}input[type=text],input[type=number]{color:var(--ink);border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:14px}input[type=text]:hover,input[type=number]:hover{border-color:var(--faint)}select{color:var(--ink);border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;padding:7px 9px;font-family:inherit;font-size:13px}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-family:inherit;font-size:12px;font-weight:600}.link-btn:hover{text-decoration:underline}.link-btn.danger{color:#a03024}.file-btn{cursor:pointer;flex-direction:row;align-items:center;display:inline-flex}.btn-add{width:100%;color:var(--muted);background:var(--surface);border-style:dashed;margin:2px 0 14px;font-weight:600}.btn-add:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.item-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:8px;padding:10px 12px}.item-card:hover{border-color:var(--border-strong)}.item-row1{align-items:flex-end;gap:10px;display:flex}.item-row1 .title{flex:1}.item-row2{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:8px;display:flex}.item-row2 .price{width:92px}.item-row2 .note{flex:1;min-width:110px}.chk{flex-direction:row;align-items:center;gap:5px;padding-bottom:8px;font-size:12px}.thumb{border:1px dashed var(--border-strong);background:var(--surface-2);width:58px;height:58px;color:var(--faint);cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1.3;display:flex;overflow:hidden}.thumb:hover{border-color:var(--accent);color:var(--accent)}.thumb.has-img{border-style:solid}.thumb-img{object-fit:cover;width:100%;height:100%;display:block}.item-tools{gap:2px;margin-left:auto;display:flex}.tool-btn{cursor:pointer;color:var(--faint);background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 7px;font-family:inherit;font-size:13px}.tool-btn:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--ink)}.tool-btn.danger:hover{color:#a03024}.swatches{gap:10px;margin-bottom:4px;display:flex}.swatch{cursor:pointer;text-align:center;background:0 0;border:2px solid #0000;border-radius:12px;padding:4px;font-family:inherit}.swatch:hover .chip{transform:translateY(-1px)}.swatch[aria-checked=true]{border-color:var(--accent)}.swatch .chip{border:1px solid #00000014;border-radius:8px;width:84px;height:56px;transition:transform .12s;display:block;position:relative;overflow:hidden}.swatch .chip:before{content:"";height:16px;position:absolute;top:0;left:0;right:0}.swatch .chip:after{content:"";border-radius:5px;position:absolute;inset:23px 9px 9px}.swatch .sl{color:var(--muted);margin-top:4px;font-size:11px;font-weight:600;display:block}.swatch[aria-checked=true] .sl{color:var(--accent-strong)}.swatch-shiro .chip{background:#faf8f4}.swatch-shiro .chip:before{background:#b3402f}.swatch-shiro .chip:after{background:#fff;border:1px solid #e5e0d6}.swatch-yoru .chip{background:#15181d}.swatch-yoru .chip:before{background:#c9a24b}.swatch-yoru .chip:after{background:#1f242c;border:1px solid #343b46}.swatch-haru .chip{background:#fdf6f7}.swatch-haru .chip:before{background:#e58ba0}.swatch-haru .chip:after{background:#fff;border:1px solid #f2d9de}.segmented{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:9px;gap:2px;margin-bottom:14px;padding:3px;display:inline-flex}.seg-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:7px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.seg-btn:hover{color:var(--ink)}.seg-btn[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #26221e1f}.shape{border:1.6px solid;border-radius:2.5px;display:inline-block}.shape-wide{width:19px;height:11px}.shape-square{width:14px;height:14px}.shape-tall{width:11px;height:19px}.ed-foot{border-top:1px solid var(--border);background:var(--surface-2);margin-top:auto;padding:14px 18px 20px}.msg{min-height:18px;color:var(--accent-strong);font-size:12px}.foot-links{flex-wrap:wrap;gap:10px;margin:4px 0 8px;display:flex}.privacy-note{color:var(--faint);font-size:11px}.sister{color:var(--faint);margin-top:6px;font-size:11px}.sister a{color:var(--muted)}.stage{background:var(--stage);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;min-width:0;padding:28px;display:flex;overflow:auto}.artboard{max-width:min(100%,900px);max-height:calc(100% - 40px);display:flex}#preview{border-radius:4px;max-width:100%;height:auto;max-height:100%;box-shadow:0 4px 24px #26221e2e,0 1px 3px #26221e1f}.stage-info{color:var(--faint);font-size:12px}.stage-info .dot{margin:0 4px}@media (width<=860px){#app{height:auto}.workbench{flex-direction:column-reverse}.editor{border-right:none;border-top:1px solid var(--border);width:100%}.stage{padding:16px}.topbar{flex-wrap:wrap}.boost-link{display:none}}.print-area{display:none}@media print{body>#app{display:none}.print-area{display:block}.sheet{page-break-after:always;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:210mm;height:296mm;display:grid}.tagcard{text-align:center;border:.3mm dashed #bbb;flex-direction:column;justify-content:center;align-items:center;padding:10mm;display:flex;position:relative}.tagcard .kind{border:.5mm solid #333;border-radius:3mm;margin-bottom:6mm;padding:1mm 6mm;font-size:13pt;font-weight:700}.tagcard .kind.r18:after{content:"  R-18";color:#a03024}.tagcard .t-title{word-break:break-word;margin-bottom:4mm;font-size:20pt;font-weight:800;line-height:1.4}.tagcard .t-note{color:#555;margin-bottom:6mm;font-size:12pt}.tagcard .t-price{letter-spacing:-.02em;font-size:44pt;font-weight:900}.tagcard .t-circle{color:#888;font-size:10pt;position:absolute;bottom:8mm}}
