:root{--ink:#1f2933;--muted:#52606d;--line:#d9e0e7;--bg:#f5f7fa;--card:#fff;--accent:#0b6e4f;--warn-bg:#fff4d6;--warn-line:#e0b84a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--ink);background:var(--bg);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.45}.site-header,main,.notice,.site-footer{max-width:1280px;margin:0 auto;padding:0 16px}.site-header{padding-top:20px}.site-header h1{margin:0;font-size:1.6rem}.tag{vertical-align:middle;background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:600}.sub{color:var(--muted);margin:4px 0 12px}.notice{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:8px;width:calc(100% - 32px);margin:0 auto 16px;padding:10px 14px;font-size:.95rem}main{gap:16px;padding-bottom:24px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;min-width:0;padding:16px}.card h2{margin:0 0 10px;font-size:1.05rem}.label{color:var(--muted);margin-bottom:6px;font-size:.85rem;display:block}textarea{width:100%;font:inherit;resize:vertical;border:1px solid #b8c2cc;border-radius:8px;min-height:64px;padding:10px 12px}textarea:focus-visible,button:focus-visible{outline-offset:1px;outline:3px solid #7cc4a8}.examples{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.examples button{background:#eef2f6;border-radius:999px;padding:6px 12px;font-size:.85rem}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}button{font:inherit;cursor:pointer;min-height:40px;color:var(--ink);background:#fff;border:1px solid #b8c2cc;border-radius:8px;padding:9px 14px}button:hover{background:#e8eef3}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover{background:#095c42}.status{color:var(--muted);font-size:.9rem}.brief-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 16px;margin:0 0 10px;display:grid}.brief-grid div{border-left:3px solid var(--line);padding-left:8px}.brief-grid dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem}.brief-grid dd{margin:0;font-weight:600}.msgs{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.msgs li{border-radius:6px;padding:6px 10px;font-size:.9rem}.msgs .assumption{background:#eef2f6}.msgs .note{background:#e6f4ee}.msgs .warning{background:var(--warn-bg);border:1px solid var(--warn-line)}.msgs .kind{margin-right:6px;font-weight:700}.hint{color:var(--muted);margin:8px 0 0;font-size:.85rem}.views{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.plan2d{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:auto}.plan2d svg{width:100%;min-width:560px;height:auto;max-height:78vh;display:block}.plan3d{border:1px solid var(--line);background:#eef2f6;border-radius:8px;width:100%;height:min(70vh,560px);min-height:320px;overflow:hidden}.plan3d .fallback{color:var(--muted);padding:16px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:7px 10px}th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-size:.78rem}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tfoot td{border-top:2px solid var(--ink);border-bottom:none;font-weight:700}.swatch{vertical-align:-1px;border:1px solid #7b8794;width:12px;height:12px;margin-right:8px;display:inline-block}.site-footer{color:var(--muted);padding-bottom:28px;font-size:.85rem}@media (width<=900px){.views{grid-template-columns:minmax(0,1fr)}.plan3d{height:min(60vh,440px)}.plan2d svg{max-height:none}}.scroll-hint{color:var(--muted);margin:6px 0 0;font-size:.82rem;display:none}@media (width<=640px){.scroll-hint{display:block}table{font-size:.84rem}th,td{padding:6px 5px}tfoot td{white-space:normal}.swatch{margin-right:5px}}
