:root{--paper: #f3efe6;--paper-2: #fffdf8;--ink: #1c1915;--muted: #6f685e;--line: #e3dcd0;--mark: #b6402c;--mark-soft: #f8e7e2;--shadow: 0 18px 50px rgba(48, 36, 18, .08);--sans: "Instrument Sans", "Avenir Next", "Segoe UI", sans-serif;--serif: "Newsreader", "Iowan Old Style", Palatino, Georgia, serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.45}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input{font:inherit;color:inherit}button{cursor:pointer}.page{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:36px 0 64px}.mast{max-width:38rem;margin-bottom:28px}.eyebrow{margin:0 0 8px;color:var(--mark);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}h1{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,5vw,3.6rem);font-weight:560;letter-spacing:-.03em;line-height:.95}.lede{margin:14px 0 0;color:var(--muted);font-size:1.05rem}.sheet-setup{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 28px;margin:22px 0 26px}.workspace{display:grid;gap:22px}.picker-tools{display:grid;gap:12px}.search{display:grid;gap:6px}.search-label{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.search input{width:min(100%,420px);padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper-2)}.search input:focus-visible,.proportion input:focus-visible,.chip:focus-visible,.format:focus-visible,.flag-card:focus-visible,.slot-remove:focus-visible,.clear:focus-visible,.download:focus-visible,.preview-nav button:focus-visible{outline:2px solid var(--mark);outline-offset:2px}.regions{display:flex;flex-wrap:wrap;gap:8px}.chip,.format,.clear,.preview-nav button{border:1px solid var(--line);background:var(--paper-2);border-radius:999px}.chip,.format{padding:7px 12px}.chip.is-on,.format.is-on{background:var(--ink);border-color:var(--ink);color:#f7f3ea}.result-count,.empty-filter,.sheet-empty,.sheet-note{color:var(--muted)}.result-count{margin:16px 0 10px;font-size:.92rem}.flag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));align-items:start;gap:12px;margin:0;padding:0;list-style:none}.flag-card{display:grid;gap:8px;width:100%;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--paper-2);text-align:left}.flag-card.is-selected{border-color:var(--mark);background:var(--mark-soft)}.flag-card:disabled{cursor:default;opacity:.4}.flag-art,.slot-flag{display:flex;justify-content:center;width:100%}.flag-image{position:relative;display:block}.flag-image img{display:block;width:100%;height:100%;object-fit:fill;background:#fff;border:1px solid #000}.order-badge{position:absolute;top:6px;left:6px;min-width:1.5rem;padding:2px 6px;border-radius:999px;background:var(--ink);color:#f7f3ea;font-size:.75rem;font-weight:600;text-align:center}.flag-name{min-width:0;overflow:hidden;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.flag-kind{color:var(--muted);font-size:.75rem;letter-spacing:.03em}.flag-kind.is-regional{color:var(--mark)}.flag-meta{color:var(--muted);font-size:.78rem;letter-spacing:.04em}.sheet{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--paper-2);box-shadow:var(--shadow)}.sheet-head h2{margin:0;font-family:var(--serif);font-size:1.8rem;font-weight:560}.sheet-count-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:6px}.sheet-count-row p{margin:0}.proportion{display:grid;gap:4px;margin:0;padding:0;border:0;font-size:.82rem}.proportion legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.proportion label{display:flex;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap}.proportion input{margin:0}.sheet-empty,.sheet-note{margin:6px 0 0}.sheet-facts{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:32px;row-gap:8px;align-items:center;margin:0}.sheet-facts dt{margin:0;color:var(--muted);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.sheet-facts dd{margin:0;font-weight:600}.sheet-facts .format-picker{font-weight:500}.format-picker{display:flex;flex-wrap:wrap;gap:8px}.preview-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;font-size:.88rem}.preview-nav{display:flex;gap:6px}.preview-nav button,.clear{padding:6px 10px;border-radius:999px}.preview-nav button:disabled{opacity:.4;cursor:default}.preview{display:grid;align-items:start;gap:14px 8px;margin:12px 0 0;padding:0;list-style:none}.slot{display:grid;grid-template-rows:1.3em auto 28px;align-content:start;gap:4px;min-width:0}.slot-name{min-width:0;overflow:hidden;font-size:.72rem;font-weight:600;line-height:1.25;white-space:nowrap;text-overflow:ellipsis}.slot.is-empty .slot-name{visibility:hidden}.slot-flag{align-items:flex-start}.slot-empty{color:var(--muted);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}.slot-remove{justify-self:end;display:grid;place-items:center;padding:0;border:0;background:transparent;line-height:0;color:var(--ink)}.slot-remove svg{width:28px;height:28px}.slot-remove:hover{color:var(--mark)}.slot-remove-spacer{display:block}.clear{margin-top:12px}.sheet-footer{margin-top:28px}.download{width:min(100%,420px);margin-top:0;padding:10px 14px;border:0;border-radius:999px;background:var(--ink);color:#f7f3ea;font-weight:600}.download:disabled{cursor:default;opacity:.4}.download-error{margin:8px 0 0;color:var(--mark);font-size:.88rem}.sheet-note{margin-top:10px;font-size:.88rem}.hem-sample{color:var(--ink);font-weight:600}@media(min-width:960px){.workspace{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.sheet{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}}
