@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--ink:#172033;--muted:#667085;--line:#dde3ed;--panel:#fff;--canvas:#f5f7fb;--blue:#155eef;--ok:#067647;--bad:#b42318;--focus:#155eef}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.6 "Noto Sans JP",system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:7px;padding:8px 10px;font-weight:600}button:hover{border-color:#98a2b3}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb,var(--focus),transparent 65%);outline-offset:2px}.quiet{background:transparent;border:0;color:var(--muted)}header{height:72px;background:var(--panel);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1440px)/2));position:sticky;top:0;z-index:5}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:inherit}.logo{display:grid;place-items:center;background:var(--blue);color:#fff;border-radius:9px;width:34px;height:34px;font-size:21px}.brand b{display:block;font-size:16px}.brand small{color:var(--muted);font-size:11px}.header-actions{display:flex;gap:8px}main{max-width:1440px;margin:auto;padding:32px 24px 60px}.intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.intro h1{font-size:30px;margin:2px 0}.intro p{margin:0;color:var(--muted)}.eyebrow{font-weight:700;color:var(--blue);letter-spacing:.08em;font-size:11px;text-transform:uppercase}.ratio-card{background:#172033;color:white;padding:18px 22px;border-radius:9px;min-width:300px}.ratio-card span{display:block;color:#b9c3d4;font-size:12px}.ratio-card strong{display:block;font-size:32px;line-height:1.2;margin:3px 0}.ratio-card i{font-style:normal;font-size:15px}.ratio-card b{color:#9fe2bf;font-size:12px}.workspace{display:grid;grid-template-columns:310px minmax(420px,1fr) 280px;gap:16px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:18px;box-shadow:0 1px 2px #10182808}.panel h2{font-size:15px;margin:0 0 14px}.controls{position:sticky;top:88px}.color-card{border:1px solid var(--line);border-radius:8px;padding:12px;margin:12px 0}.card-title{display:flex;align-items:center;gap:7px}.card-title small{margin-left:auto;color:var(--muted);font-size:10px}.dot{width:12px;height:12px;border-radius:50%;border:1px solid #98a2b3}.fg{background:#1a1a1a}.bg{background:#fff}.color-card>label{display:block;font-size:11px;color:var(--muted);margin-top:9px}.hex{width:100%;border:0;border-bottom:1px solid var(--line);font:600 16px ui-monospace,monospace;padding:4px 0;background:transparent;color:inherit}.channels{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:9px}.channels label{font-size:10px;color:var(--muted)}.channels input{width:100%;border:1px solid var(--line);border-radius:5px;padding:5px;background:transparent;color:inherit}.hsl{font:11px ui-monospace,monospace;color:var(--muted);margin:8px 0 0}.color-actions{display:flex;gap:7px;margin-top:10px}.color-actions input{width:37px;height:31px;padding:2px;border:1px solid var(--line);border-radius:6px}.eyedrop{font-size:11px;flex:1}.field-error{margin:5px 0 0;color:var(--bad);font-size:11px;min-height:16px}.swap{width:100%;border-style:dashed;color:var(--blue);margin:1px 0}.swap kbd{font-size:9px;color:var(--muted);float:right}.note,.muted{font-size:11px;color:var(--muted)}.select-label{display:block;margin-top:13px;font-weight:600}.select-label select{margin-top:5px;width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:transparent;color:inherit}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-head h2{margin:0}.section-head label{font-size:11px;color:var(--muted)}.section-head input,.section-head select{max-width:80px;padding:3px;border:1px solid var(--line);border-radius:4px;background:transparent;color:inherit}.verdicts{margin-bottom:16px}.verdict-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.verdict{border:1px solid var(--line);border-radius:7px;padding:10px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.verdict small{display:block;color:var(--muted)}.pass{color:var(--ok)}.fail{color:var(--bad)}.large-note{font-size:10px;color:var(--muted);margin-bottom:0}.preview-panel{overflow:hidden}.preview{padding:28px;border-radius:7px;margin-top:16px;transition:background .15s,color .15s}.preview .tiny{font-size:10px;letter-spacing:.12em}.preview h2{font-size:24px;margin:12px 0}.preview a{font-weight:700}.preview-row{display:flex;gap:10px;margin:18px 0}.preview button{padding:8px 14px}.preview .outline{background:transparent}.preview label{font-size:11px;display:block}.preview label input{display:block;padding:8px;width:min(260px,100%);margin-top:4px;background:transparent;border:1px solid currentColor;border-radius:5px;color:inherit}.icon-demo{display:inline-block;margin-top:13px;padding:5px;border:2px solid currentColor;border-radius:50%;font-size:10px}.right{display:grid;gap:16px}.suggestion{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;border-top:1px solid var(--line);padding:10px 0;font-size:11px}.suggestion:first-child{border-top:0}.swatch{width:27px;height:27px;border-radius:5px;border:1px solid #98a2b3}.suggestion b{display:block}.suggestion small{color:var(--muted)}.blackwhite p{font-size:12px}.black-swatch,.white-swatch{display:inline-flex;justify-content:space-between;width:100%;padding:7px 9px;border-radius:4px;margin:3px 0}.black-swatch{background:#000;color:#fff}.white-swatch{background:#fff;color:#111;border:1px solid var(--line)}.copy{display:grid;grid-template-columns:1fr 1fr;gap:7px}.copy h2{grid-column:1/-1}.copy button{font-size:11px}.image-tool{margin-top:16px}.image-grid{display:grid;grid-template-columns:minmax(300px,2fr) 220px;gap:16px}.segmented{display:flex}.segmented button{border-radius:0;font-size:11px}.segmented button:first-child{border-radius:6px 0 0 6px}.segmented button:last-child{border-radius:0 6px 6px 0}.segmented .active{background:var(--blue);color:#fff;border-color:var(--blue)}#dropzone{min-height:280px;background:#f8fafc;border:1px dashed #98a2b3;border-radius:7px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:var(--muted)}#dropzone.drag{border-color:var(--blue);background:#eef4ff}#canvas{display:none;max-width:100%;max-height:420px;cursor:crosshair;transform-origin:top left}#marker{position:absolute;width:14px;height:14px;border:2px solid white;box-shadow:0 0 0 2px #111;border-radius:50%;pointer-events:none;display:none}#loupe{width:220px;height:220px;border:1px solid var(--line);border-radius:6px;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/16px 16px}.mono{font:11px ui-monospace,monospace}.zoom{display:flex;gap:6px}.measurements{border-top:1px solid var(--line);margin-top:15px;padding-top:12px}.measurements h3{margin:0;font-size:13px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{font:11px ui-monospace,monospace;border:1px solid var(--line);border-radius:15px;padding:4px 8px}.chip button{border:0;padding:0 0 0 5px;background:transparent;color:var(--bad)}.bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.saved-list{display:grid;gap:7px}.saved{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;font-size:11px;border-top:1px solid var(--line);padding-top:7px}.saved .pair{display:flex}.saved .pair i{display:block;width:17px;height:17px;border:1px solid #aaa}.saved button{padding:2px 6px;font-size:10px}.guide{margin:16px 2px;color:var(--muted);font-size:12px}.guide summary{cursor:pointer;font-weight:600;color:var(--ink)}dialog{border:0;border-radius:9px;box-shadow:0 20px 50px #0004;max-width:420px;color:var(--ink)}dialog::backdrop{background:#0005}#toast{color:var(--ok);font-size:11px;height:0;overflow:hidden;transition:.2s}#toast.show{height:18px}body.dark{--ink:#f5f7fa;--muted:#a9b4c5;--line:#344054;--panel:#1f2937;--canvas:#111827;--blue:#84adff}body.dark .ratio-card{background:#0b1220}body.dark button{background:#253046;color:var(--ink)}body.dark #dropzone{background:#182231}body.dark .white-swatch{color:#111}body.dark dialog{background:#1f2937;color:#fff}@media(max-width:1050px){.workspace{grid-template-columns:290px 1fr}.right{grid-column:1/-1;grid-template-columns:1.5fr 1fr 1fr}.controls{position:static}}@media(max-width:700px){header{padding:0 14px}.brand small{display:none}.header-actions button:first-child{display:none}main{padding:20px 14px}.intro{align-items:start;flex-direction:column}.ratio-card{width:100%}.workspace,.image-grid,.bottom-grid{display:block}.center,.right,.bottom-grid>.panel{margin-top:14px}.right{display:grid;grid-template-columns:1fr}.controls{position:static}.section-head{align-items:flex-start;flex-wrap:wrap}.image-grid>div+div{margin-top:15px}.verdict-grid{grid-template-columns:1fr}.channels{grid-template-columns:repeat(4,1fr)}}
