:root {
  --ink: #0b0b0a;
  --paper: #f7f4ec;
  --surface: #ffffff;
  --yellow: #f9c61c;
  --yellow-strong: #ffd400;
  --line: #c9c4b8;
  --muted: #66635d;
  --display-font: Impact, Haettenschweiler, "Arial Narrow Bold", "Arial Narrow", sans-serif;
  --ui-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color-scheme: light;
}

* { box-sizing: border-box; }
[hidden] { display:none!important; }
html { scroll-behavior: smooth; background: var(--paper); }
body {
  margin: 0;
  min-width: 320px;
  background: radial-gradient(circle at 50% 0%, rgba(255,255,255,.9), transparent 38rem), var(--paper);
  color: var(--ink);
  font-family: var(--ui-font);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-underline-offset: .2em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.skip-link { position:fixed; z-index:1000; top:10px; left:10px; min-height:44px; display:flex; align-items:center; padding:9px 14px; border:3px solid #fff; border-radius:5px; background:var(--ink); color:#fff; font-weight:800; text-decoration:none; transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
.site-shell { min-height: 100vh; }
.site-header { background:var(--ink); color:#fff; border-bottom:4px solid var(--yellow); }
.header-inner,.footer-inner,.footer-bottom-inner,.catalogue,.how-it-works { width:min(1312px,calc(100% - 48px)); margin-inline:auto; }
.header-inner { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.brand-lockup { min-width:0; display:flex; align-items:center; gap:20px; text-decoration:none; }
.brand-logo { width:132px; height:62px; object-fit:contain; filter:invert(1); flex:0 0 auto; }
.brand-divider { width:1px; height:38px; background:#4c4c49; flex:0 0 auto; }
.product-name { min-width:0; font-family:"Arial Narrow",Arial,sans-serif; font-size:clamp(1.05rem,1.5vw,1.45rem); letter-spacing:.01em; white-space:nowrap; }
.product-name strong { color:var(--yellow-strong); font-weight:800; }
.header-actions { min-width:0; margin-left:auto; display:flex; align-items:center; justify-content:flex-end; gap:clamp(10px,1.6vw,22px); }
.header-workshop-link { min-height:44px; padding:9px 14px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); font-size:.76rem; font-weight:850; line-height:1.15; text-align:center; text-decoration:none; white-space:nowrap; transition:background 120ms ease-out,transform 80ms ease-out; }
.header-workshop-link:hover { background:#ffe04d; text-decoration:none; }
.header-workshop-link:active { transform:scale(.97); }
.privacy-badge { position:relative; font-size:.9rem; font-weight:650; white-space:nowrap; }
.privacy-badge summary { min-height:44px; display:flex; align-items:center; gap:8px; color:#fff; cursor:pointer; list-style:none; }
.privacy-badge summary::-webkit-details-marker { display:none; }
.privacy-badge summary::marker { content:""; }
.privacy-badge-long { color:#cfcdc6; }
.privacy-badge-info { position:absolute; z-index:30; top:calc(100% + 8px); right:0; width:min(340px,calc(100vw - 32px)); margin:0; padding:13px 15px; border:1px solid #6c685f; border-radius:6px; background:#171715; color:#efede7; box-shadow:0 8px 24px rgba(0,0,0,.28); font-size:.74rem; font-weight:600; line-height:1.55; white-space:normal; }
.privacy-badge-info a { color:var(--yellow-strong); font-weight:800; }
.privacy-badge:not([open]) .privacy-badge-info { display:none; }
.shield-check { width:28px; height:28px; display:inline-grid; place-items:center; color:var(--yellow-strong); border:2px solid var(--yellow-strong); border-radius:50%; font-size:.9rem; font-weight:900; }
.breadcrumb { width:min(1180px,calc(100% - 48px)); margin:26px auto 0; color:#666158; font-size:.78rem; font-weight:680; }
.breadcrumb ol { margin:0; padding:0; display:flex; flex-wrap:wrap; align-items:center; gap:7px; list-style:none; }
.breadcrumb li { display:flex; align-items:center; gap:7px; }
.breadcrumb li:not(:last-child)::after { content:"›"; color:#9a9489; }
.breadcrumb a { color:#3f3c36; }
.breadcrumb span[aria-current="page"] { color:#5f5a52; }
.breadcrumb + .hero { padding-top:clamp(30px,4vw,52px); }

.hero { width:min(1180px,calc(100% - 48px)); margin-inline:auto; padding:clamp(44px,6vw,78px) 0 34px; text-align:center; }
.eyebrow,.section-kicker { margin:0 0 12px; color:#6b6252; font-size:.78rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.hero h1 { max-width:1080px; margin:0 auto; font-family:var(--display-font); font-size:clamp(3.25rem,7vw,6.4rem); font-stretch:condensed; font-weight:900; letter-spacing:.005em; line-height:.94; text-transform:uppercase; }
.hero-lead { margin:20px 0 30px; font-size:clamp(1.35rem,2.6vw,2.1rem); font-weight:780; line-height:1.2; }
.hero-description { max-width:760px; margin:-14px auto 28px; color:#59564f; font-size:.95rem; line-height:1.65; }
.search-panel { position:relative; width:min(1056px,100%); height:72px; margin:0 auto; display:flex; background:var(--surface); border:2px solid var(--ink); border-radius:9px; box-shadow:8px 8px 0 rgba(11,11,10,.08); overflow:hidden; transition:box-shadow 140ms ease-out; }
.search-panel:focus-within { outline:3px solid var(--ink); outline-offset:3px; box-shadow:0 0 0 6px var(--yellow),8px 8px 0 rgba(11,11,10,.1); }
.search-panel input { min-width:0; flex:1; border:0; outline:0; background:transparent; color:var(--ink); padding:0 68px 0 28px; font-size:clamp(1rem,2vw,1.25rem); }
.search-panel input::placeholder { color:#77736b; opacity:1; }
.search-panel input::-webkit-search-cancel-button { display:none; }
.search-panel.is-loading::after { content:""; position:absolute; right:98px; top:50%; width:18px; height:18px; margin-top:-9px; border:2px solid #aaa398; border-top-color:var(--ink); border-radius:50%; animation:search-loading 650ms linear infinite; }
.search-panel.is-loading .clear-search { visibility:hidden; }
.clear-search { position:absolute; right:88px; top:50%; width:38px; height:38px; transform:translateY(-50%); border:0; border-radius:50%; background:transparent; color:#5f5b54; cursor:pointer; font-size:1.8rem; line-height:1; }
.clear-search:hover { background:#efede7; color:var(--ink); }
.search-button { width:86px; flex:0 0 86px; display:grid; place-items:center; border:0; border-left:2px solid var(--ink); background:var(--yellow-strong); cursor:pointer; }
.search-button:hover { background:#ffe04d; }
.search-button:disabled { cursor:progress; opacity:.72; }
.search-icon { position:relative; width:30px; height:30px; display:block; border:4px solid var(--ink); border-radius:50%; }
.search-icon::after { content:""; position:absolute; width:14px; height:4px; right:-11px; bottom:-6px; border-radius:2px; background:var(--ink); transform:rotate(48deg); transform-origin:left center; }
.keyboard-hint { margin:15px 0 0; color:var(--muted); font-size:.78rem; }
.search-scope { width:min(1056px,100%); margin:14px auto 0; padding:0; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 10px; border:0; }
.search-scope legend { width:100%; margin:0 0 2px; color:#5d5951; font-size:.72rem; font-weight:780; text-align:center; }
.search-scope label { min-height:44px; padding:8px 12px; display:inline-flex; align-items:center; gap:8px; border:1px solid #aaa398; border-radius:99px; background:#fff; color:#37342f; cursor:pointer; font-size:.77rem; line-height:1.25; }
.search-scope label:has(input:checked) { border-color:var(--ink); background:#fff4bc; box-shadow:inset 0 0 0 1px var(--ink); }
.search-scope input { width:17px; height:17px; margin:0; accent-color:var(--ink); }
.search-scope>p { flex-basis:100%; margin:0; color:#706b62; font-size:.68rem; text-align:center; }
@keyframes search-loading { to { transform:rotate(360deg); } }
kbd { min-width:22px; display:inline-block; padding:1px 5px; border:1px solid var(--line); border-bottom-width:2px; border-radius:4px; background:#fff; color:#413e38; font:700 .7rem var(--ui-font); }

.catalogue { padding:10px 0 72px; }
.combination-section { margin:0 0 58px; padding:clamp(26px,4vw,44px); border-top:8px solid var(--yellow-strong); border-radius:10px; background:var(--ink); color:#fff; box-shadow:10px 10px 0 rgba(11,11,10,.1); }
.combination-heading { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr); align-items:end; gap:clamp(24px,6vw,80px); }
.combination-kicker { margin:0 0 10px; color:var(--yellow-strong); font-size:.72rem; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }
.combination-heading h2 { margin:0; font-size:clamp(1.8rem,3.3vw,3.1rem); line-height:1.02; }
.combination-heading>p { margin:0; color:#cfcdc6; font-size:.92rem; line-height:1.65; }
.combination-menu { display:flex; flex-wrap:wrap; gap:8px; margin:30px 0 22px; padding:18px 0; border-top:1px solid #3d3d39; border-bottom:1px solid #3d3d39; }
.combination-menu-button { min-height:44px; display:inline-flex; align-items:center; gap:9px; padding:8px 12px; border:1px solid #66645e; border-radius:99px; background:#1d1d1b; color:#fff; cursor:pointer; font-size:.78rem; font-weight:760; text-decoration:none; transition:background 120ms ease-out,border-color 120ms ease-out,transform 120ms ease-out; }
.combination-menu-button:hover { transform:translateY(-1px); border-color:var(--yellow-strong); }
.combination-menu-button>span:last-child { min-width:21px; padding:2px 6px; border-radius:99px; background:#3c3b37; color:#ddd9cf; font-size:.64rem; font-variant-numeric:tabular-nums; text-align:center; }
.combination-menu-button.active { border-color:var(--yellow-strong); background:var(--yellow-strong); color:var(--ink); }
.combination-menu-button.active>span:last-child { background:var(--ink); color:var(--yellow-strong); }
.combination-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.combination-card { position:relative; min-width:0; min-height:270px; display:flex; flex-direction:column; overflow:hidden; border:1px solid #5b5953; border-radius:8px; background:#fff; color:var(--ink); scroll-margin-top:24px; transition:border-color 140ms ease-out,box-shadow 140ms ease-out,transform 140ms ease-out; }
.combination-card:target { border-color:var(--yellow-strong); box-shadow:0 0 0 4px var(--yellow-strong),0 12px 30px rgba(0,0,0,.28); }
.combination-symbols { min-height:72px; display:grid; place-items:center; padding:14px 56px 14px 12px; border-bottom:1px solid var(--line); background:#f5f1e7; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:clamp(1.55rem,2.4vw,2rem); line-height:1.2; white-space:nowrap; }
.combination-copy { padding:15px 16px 13px; }
.combination-complexity { display:inline-block; margin:0 0 8px; padding:3px 7px; border-radius:99px; background:#eeeae0; color:#56524b; font-size:.62rem; font-weight:820; letter-spacing:.04em; text-transform:uppercase; }
.combination-copy h3 { margin:0 0 6px; font-size:.94rem; line-height:1.25; }
.combination-copy p { margin:0; color:#5f5b54; font-size:.75rem; line-height:1.45; }
.combination-actions { margin-top:auto; padding:0 12px 12px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:8px; }
.combination-copy-button { width:100%; min-width:0; min-height:44px; margin:0; padding:7px 8px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font-size:.72rem; font-weight:820; line-height:1.15; text-align:center; }
.combination-copy-button:hover { background:#ffe04d; }
.combination-copy-button:active { transform:scale(.98); }
.combination-copy-button.copied { border-color:#1c7a45; background:#dff4e7; color:#145d35; }
.combination-link-button { min-width:0; min-height:44px; padding:7px 8px; display:inline-flex; align-items:center; justify-content:center; gap:6px; border:1px solid #817c72; border-radius:5px; background:#fff; color:#312f2a; cursor:pointer; font-size:.69rem; font-weight:790; line-height:1.15; text-align:center; }
.combination-link-button:hover { border-color:var(--ink); background:#f3f0e8; }
.combination-link-button:active { transform:scale(.98); }
.combination-link-button.copied { border-color:#1c7a45; background:#dff4e7; color:#145d35; }
.combination-tip { margin:22px 0 0; color:#aaa79f; font-size:.74rem; line-height:1.5; text-align:center; }
.combination-tip strong { color:var(--yellow-strong); }
.combination-preview-actions { margin:22px 0 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 20px; font-size:.8rem; font-weight:760; }
.combination-preview-actions a { color:#fff; }
.combination-preview-actions .combination-primary-link { min-height:44px; display:inline-flex; align-items:center; padding:9px 15px; border-radius:5px; background:var(--yellow-strong); color:var(--ink); text-decoration:none; }
.combination-preview-actions .combination-primary-link:hover { background:#ffe04d; }
.combination-promo { margin:0 0 38px; padding:22px 24px; display:grid; grid-template-columns:minmax(220px,.85fr) minmax(280px,1.25fr) auto; align-items:center; gap:22px 34px; border-top:6px solid var(--yellow-strong); border-radius:8px; background:var(--ink); color:#fff; }
.combination-promo h2 { margin:0; font-size:1.25rem; line-height:1.15; }
.combination-promo p { margin:0; color:#cfcdc6; font-size:.82rem; line-height:1.55; }
.combination-promo>a { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:9px 14px; border-radius:5px; background:var(--yellow-strong); color:var(--ink); font-size:.78rem; font-weight:820; text-decoration:none; white-space:nowrap; }
.combination-promo>a:hover { background:#ffe04d; }
.combination-catalogue { padding-top:0; }
.combination-directory { padding:clamp(24px,4vw,42px); border-top:8px solid var(--yellow-strong); border-radius:10px; background:#fff; box-shadow:10px 10px 0 rgba(11,11,10,.08); }
.combination-directory-heading { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr); align-items:end; gap:clamp(24px,6vw,80px); margin-bottom:28px; }
.combination-directory-heading h2 { margin:0; font-size:clamp(1.7rem,3vw,2.65rem); line-height:1.08; }
.combination-directory-heading>p { margin:0; color:#625e56; font-size:.9rem; line-height:1.65; }
.combination-category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.combination-category-card { min-width:0; display:flex; flex-direction:column; padding:22px; border:1px solid var(--line); border-radius:9px; background:#faf8f2; }
.combination-category-count { margin:0 0 7px!important; color:#786c50!important; font-size:.67rem!important; font-weight:820; letter-spacing:.09em; text-transform:uppercase; }
.combination-category-card h3 { margin:0 0 9px; font-size:1.18rem; line-height:1.2; }
.combination-category-card>p { margin:0; color:#5f5b54; font-size:.78rem; line-height:1.55; }
.combination-category-examples { margin:17px 0 18px; padding:0; display:grid; gap:7px; list-style:none; }
.combination-category-examples li { min-width:0; display:flex; align-items:center; gap:9px; padding:8px 9px; border-radius:5px; background:#fff; }
.combination-category-examples li span:first-child { flex:0 0 auto; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:1rem; white-space:nowrap; }
.combination-category-examples li span:last-child { min-width:0; overflow:hidden; color:#504c45; font-size:.68rem; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }
.combination-category-link { min-height:44px; margin-top:auto; display:inline-flex; align-items:center; justify-content:center; padding:9px 12px; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); font-size:.76rem; font-weight:820; text-align:center; text-decoration:none; }
.combination-category-link:hover { background:#ffe04d; }
.combination-section-page { margin-bottom:0; }
.combination-page-actions { margin-top:30px; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:16px 24px; font-size:.82rem; font-weight:760; }
.combination-page-actions .load-more { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }

.favorite-toggle { position:absolute; z-index:6; top:8px; right:8px; width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid #9c978d; border-radius:50%; background:rgba(255,255,255,.96); color:#4f4b44; box-shadow:0 2px 7px rgba(11,11,10,.1); cursor:pointer; font-family:"Segoe UI Symbol",Arial,sans-serif; font-size:1.55rem; line-height:1; transition:background 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out,transform 80ms ease-out; }
.favorite-toggle:hover { border-color:var(--ink); background:#fff8d7; color:var(--ink); }
.favorite-toggle:active { transform:scale(.94); }
.favorite-toggle[aria-pressed="true"] { border-color:#b28b00; background:var(--yellow-strong); color:var(--ink); }
.favorite-toggle:disabled { cursor:not-allowed; filter:grayscale(1); opacity:.45; }

.emoji-brand-actions { position:static; z-index:6; width:100%; min-height:44px; margin-bottom:4px; display:flex; justify-content:flex-end; gap:5px; }
.emoji-brand-toggle { width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid #9c978d; border-radius:50%; background:rgba(255,255,255,.96); color:#4f4b44; box-shadow:0 2px 7px rgba(11,11,10,.1); cursor:pointer; font-family:"Segoe UI Symbol",Arial,sans-serif; font-size:1.25rem; line-height:1; transition:background 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out,transform 80ms ease-out; }
.emoji-brand-toggle:hover { border-color:var(--ink); background:#fff8d7; color:var(--ink); }
.emoji-brand-toggle:active { transform:scale(.94); }
.emoji-brand-frequent[aria-pressed="true"] { border-color:#b28b00; background:var(--yellow-strong); color:var(--ink); }
.emoji-brand-avoid[aria-pressed="true"] { border-color:#a23b33; background:#ffe3df; color:#76241e; }
.emoji-brand-toggle:disabled { cursor:not-allowed; filter:grayscale(1); opacity:.45; }
.emoji-brand-actions + .emoji-visual .emoji-glyph { padding-top:0; }
.emoji-card.is-brand-frequent,.emoji-card.is-frequent { border-color:#b28b00; box-shadow:inset 0 4px 0 var(--yellow-strong); }
.emoji-card.is-brand-avoided,.emoji-card.is-avoided { border-color:#9a817d; background:#f4f0eb; }
.emoji-card.is-brand-avoided .emoji-glyph,.emoji-card.is-avoided .emoji-glyph { filter:grayscale(.75); opacity:.62; }
.emoji-brand-status { min-height:23px; margin:-4px 0 2px; padding:3px 7px; border-radius:99px; background:#fff3b8; color:#554300; font-size:.61rem; font-weight:850; line-height:1.35; }
.emoji-card.is-avoided .emoji-brand-status { background:#ffe3df; color:#76241e; }

.combination-search-tool { margin:0 0 38px; padding:clamp(22px,4vw,38px); border:1px solid var(--line); border-top:8px solid var(--yellow-strong); border-radius:10px; background:rgba(255,255,255,.94); box-shadow:8px 8px 0 rgba(11,11,10,.07); }
.combination-search-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.8fr); align-items:end; gap:18px 48px; margin-bottom:22px; }
.combination-search-heading h2,.combination-search-tool>h2 { margin:0; font-size:clamp(1.55rem,3vw,2.45rem); line-height:1.08; }
.combination-search-heading p,.combination-search-tool>p { margin:0; color:#625e56; font-size:.86rem; line-height:1.6; }
.combination-search-panel { position:relative; min-height:60px; display:flex; align-items:stretch; border:2px solid var(--ink); border-radius:7px; background:#fff; box-shadow:5px 5px 0 rgba(11,11,10,.08); }
.combination-search-panel:focus-within { outline:3px solid var(--ink); outline-offset:3px; box-shadow:0 0 0 6px var(--yellow-strong),5px 5px 0 rgba(11,11,10,.08); }
.combination-search-panel label { cursor:text; }
.combination-search-panel input,[data-combination-search-input] { width:100%; min-width:0; min-height:56px; padding:10px 58px 10px 18px; border:0; border-radius:5px; outline:0; background:transparent; color:var(--ink); font-size:1rem; }
.combination-search-panel input::placeholder,[data-combination-search-input]::placeholder { color:#77736b; opacity:1; }
.combination-search-panel input:focus-visible,[data-combination-search-input]:focus-visible { outline:0; box-shadow:none; }
.combination-search-clear,[data-combination-search-clear] { position:absolute; top:50%; right:8px; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:transparent; color:#5f5b54; cursor:pointer; font-size:1.55rem; line-height:1; transform:translateY(-50%); }
.combination-search-clear:hover,[data-combination-search-clear]:hover { background:#efede7; color:var(--ink); }
.combination-search-examples { margin:18px 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.combination-search-examples>span,.combination-search-examples>p { margin:0 3px 0 0; color:#666158; font-size:.75rem; font-weight:700; }
.combination-search-examples button,[data-combination-query] { min-height:44px; padding:8px 14px; border:1px solid #a39e94; border-radius:99px; background:#faf8f2; color:var(--ink); cursor:pointer; font-size:.78rem; font-weight:760; }
.combination-search-examples button:hover,[data-combination-query]:hover { border-color:var(--ink); background:#fff3b8; }
.combination-results { margin-top:30px; padding-top:26px; border-top:1px solid var(--line); }
.combination-results-heading { min-height:44px; margin-bottom:14px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.combination-results-heading h2,.combination-results-heading h3,.combination-results>h2,.combination-results>h3 { margin:0; font-size:1.15rem; line-height:1.3; }
.combination-result-count,[data-combination-result-count] { margin:0; color:#504c45; font-size:.88rem; font-weight:760; font-variant-numeric:tabular-nums; }
.combination-result-grid,[data-combination-result-grid] { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.combination-search-card { border-color:var(--line); background:#fff; }
.combination-result-category { min-height:44px; margin-top:10px; display:inline-flex; align-items:center; color:#544c3a; font-size:.69rem; font-weight:760; }
.combination-results .empty-state,[data-combination-empty] { margin:0; padding:36px 20px; }

.combination-builder { margin:0 0 42px; padding:clamp(22px,4vw,38px); border:1px solid var(--line); border-top:8px solid var(--ink); border-radius:10px; background:#fff; box-shadow:8px 8px 0 rgba(11,11,10,.07); }
.combination-builder-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.85fr); align-items:end; gap:18px 48px; margin-bottom:24px; }
.combination-builder-heading h2,.combination-builder>h2 { margin:0; font-size:clamp(1.55rem,3vw,2.45rem); line-height:1.08; }
.combination-builder-heading p,.combination-builder>p { margin:0; color:#625e56; font-size:.86rem; line-height:1.6; }
.combination-builder-layout,.builder-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr); gap:clamp(20px,4vw,38px); align-items:start; }
.builder-picker,.builder-workspace { min-width:0; }
.builder-picker label,.builder-workspace label,.combination-builder label,.builder-sequence-label { display:block; margin:0 0 8px; color:#3f3c36; font-size:.78rem; font-weight:800; }
.builder-search,[data-builder-search] { width:100%; min-height:50px; padding:10px 14px; border:2px solid var(--ink); border-radius:6px; background:#fff; color:var(--ink); }
.builder-candidates,[data-builder-candidates] { max-height:360px; margin-top:12px; padding:10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(118px,1fr)); gap:8px; overflow:auto; overscroll-behavior:contain; border:1px solid var(--line); border-radius:7px; background:#f5f1e7; scrollbar-width:thin; }
[data-builder-load] { min-height:48px; padding:9px 14px; border:1px solid var(--ink); border-radius:6px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font-size:.76rem; font-weight:820; }
[data-builder-load]:hover { background:#ffe04d; }
.builder-loading { grid-column:1 / -1; margin:0; padding:18px; color:#625e56; font-size:.78rem; line-height:1.5; text-align:center; }
.builder-emoji-option { min-width:0; min-height:58px; padding:7px 8px; display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:8px; border:1px solid #b8b2a7; border-radius:6px; background:#fff; color:var(--ink); cursor:pointer; text-align:left; }
.builder-emoji-option:hover { border-color:var(--ink); background:#fff8d7; }
.builder-emoji-option>span:first-child { font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:1.55rem; line-height:1; text-align:center; }
.builder-emoji-option>span:last-child { min-width:0; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.68rem; font-weight:700; line-height:1.25; }
.builder-emoji-option:disabled { cursor:not-allowed; filter:grayscale(.65); opacity:.45; }
.builder-selected,[data-builder-selected] { min-height:62px; margin:0; padding:0; display:grid; gap:8px; list-style:none; }
.builder-selected:empty,[data-builder-selected]:empty { border:1px dashed #aaa398; border-radius:7px; }
.builder-selected-item { min-width:0; min-height:58px; padding:7px 8px; display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:8px; border:1px solid var(--line); border-radius:7px; background:#faf8f2; }
.builder-selected-glyph { display:grid; place-items:center; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:1.7rem; line-height:1; }
.builder-selected-label { min-width:0; overflow:hidden; font-size:.74rem; font-weight:760; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.builder-selected-controls { display:grid; grid-template-columns:repeat(3,44px); gap:4px; }
.builder-selected-controls button { width:44px; height:44px; padding:0; border:1px solid #9c978d; border-radius:5px; background:#fff; cursor:pointer; font-size:1.05rem; font-weight:800; }
.builder-selected-controls button:hover { border-color:var(--ink); background:#fff3b8; }
.builder-selected-controls button:disabled { cursor:not-allowed; opacity:.35; }
.builder-preview { min-height:100px; margin-top:16px; padding:18px; display:grid; place-items:center; overflow-wrap:anywhere; border-radius:8px; background:var(--ink); color:#fff; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:clamp(1.65rem,4vw,2.7rem); line-height:1.35; text-align:center; }
.builder-status,[data-builder-status] { min-height:24px; margin:9px 0 0; color:#615d55; font-size:.76rem; font-weight:700; line-height:1.45; }
.builder-actions { margin-top:15px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr) auto; gap:8px; }
.builder-actions button,[data-builder-copy],[data-builder-favorite],[data-builder-clear] { min-height:44px; padding:8px 12px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid #817c72; border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font-size:.76rem; font-weight:800; line-height:1.2; text-align:center; }
.builder-actions [data-builder-copy],[data-builder-copy] { border-color:#c19a00; background:var(--yellow-strong); }
.builder-actions [data-builder-copy]:hover,[data-builder-copy]:hover { background:#ffe04d; }
.builder-actions .favorite-toggle,.builder-favorite,[data-builder-favorite] { position:static; width:auto; height:auto; border-radius:5px; box-shadow:none; font-family:inherit; font-size:.76rem; }
.builder-actions [data-builder-favorite][aria-pressed="true"],[data-builder-favorite][aria-pressed="true"] { border-color:#b28b00; background:#fff3b8; }
.builder-actions button:hover,[data-builder-favorite]:hover,[data-builder-clear]:hover { border-color:var(--ink); background:#f3f0e8; }
.builder-actions button:disabled,[data-builder-copy]:disabled,[data-builder-favorite]:disabled,[data-builder-clear]:disabled { cursor:not-allowed; filter:grayscale(1); opacity:.45; }

.category-guide { margin:0 0 34px; padding:clamp(22px,4vw,34px); display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); gap:clamp(24px,5vw,58px); border-left:8px solid var(--yellow-strong); border-radius:8px; background:#fff; box-shadow:7px 7px 0 rgba(11,11,10,.06); }
.category-guide h2 { margin:0 0 12px; font-size:clamp(1.35rem,2.6vw,2rem); line-height:1.15; }
.category-guide p { margin:0; color:#57534c; font-size:.88rem; line-height:1.7; }
.category-guide h3 { margin:0 0 11px; font-size:.92rem; }
.category-guide ul,.category-tips { margin:0; padding:0; display:grid; gap:9px; list-style:none; counter-reset:category-tip; }
.category-guide li,.category-tips li { position:relative; min-height:44px; padding:8px 8px 8px 42px; display:flex; align-items:center; border-radius:6px; background:#f5f1e7; color:#49463f; font-size:.78rem; line-height:1.45; counter-increment:category-tip; }
.category-guide li::before,.category-tips li::before { content:counter(category-tip); position:absolute; left:9px; top:50%; width:25px; height:25px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:var(--yellow-strong); font-size:.66rem; font-weight:850; transform:translateY(-50%); }

.related-categories { margin:38px 0 0; padding:clamp(22px,4vw,34px); border:1px solid var(--line); border-radius:9px; background:#fff; }
.related-categories-heading { margin-bottom:18px; }
.related-categories h2 { margin:0 0 7px; font-size:clamp(1.35rem,2.6vw,2rem); line-height:1.15; }
.related-categories-heading p,.related-categories>p { margin:0; color:#625e56; font-size:.83rem; line-height:1.6; }
.related-categories-grid,.related-category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.related-category-card { min-width:0; min-height:132px; padding:18px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:7px; background:#faf8f2; color:var(--ink); text-decoration:none; transition:border-color 120ms ease-out,background 120ms ease-out,transform 120ms ease-out; }
.related-category-card:hover { border-color:var(--ink); background:#fff8d7; transform:translateY(-2px); }
.related-category-card h3 { margin:0 0 7px; font-size:1rem; line-height:1.25; }
.related-category-card p { margin:0 0 13px; color:#5f5b54; font-size:.74rem; line-height:1.5; }
.related-category-card span:last-child { min-height:44px; margin-top:auto; display:flex; align-items:center; color:#423b2b; font-size:.72rem; font-weight:820; }

.single-emoji-heading { padding:0 2px 16px; }
.single-emoji-heading .section-kicker { margin-bottom:8px; }
.single-emoji-heading h2 { margin:0; font-size:clamp(1.45rem,2.7vw,2.2rem); line-height:1.12; }
.category-list { display:flex; flex-wrap:wrap; gap:10px; padding:8px 0 24px; transition:mask-image 120ms ease-out,-webkit-mask-image 120ms ease-out; }
.category-list.has-overflow-end { -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 54px),transparent 100%); mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 54px),transparent 100%); }
.category-list.has-overflow-start { -webkit-mask-image:linear-gradient(to right,transparent 0,#000 54px,#000 100%); mask-image:linear-gradient(to right,transparent 0,#000 54px,#000 100%); }
.category-list.has-overflow-start.has-overflow-end { -webkit-mask-image:linear-gradient(to right,transparent 0,#000 54px,#000 calc(100% - 54px),transparent 100%); mask-image:linear-gradient(to right,transparent 0,#000 54px,#000 calc(100% - 54px),transparent 100%); }
.category-button { min-height:46px; display:inline-flex; align-items:center; gap:9px; padding:9px 15px; border:1px solid #9c978d; border-radius:7px; background:rgba(255,255,255,.74); color:var(--ink); cursor:pointer; font-size:.89rem; font-weight:720; text-decoration:none; transition:transform 140ms ease-out,border-color 140ms ease-out,background 140ms ease-out; }
.category-button:hover { transform:translateY(-1px); border-color:var(--ink); background:#fff; }
.category-button.curated { border-color:#b79100; background:#fff8d7; }
.category-button.curated .category-count { background:#ffe36b; color:var(--ink); }
.category-button.active { border-color:var(--ink); background:var(--ink); color:var(--yellow-strong); }
.category-count { min-width:25px; padding:3px 6px; border-radius:99px; background:#ece9e1; color:#504d47; font-size:.67rem; font-variant-numeric:tabular-nums; }
.category-button.active .category-count { background:var(--yellow-strong); color:var(--ink); }
.catalogue-toolbar { min-height:46px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 2px 14px; }
.result-count,.local-search-note { margin:0; }
.result-count { font-size:1rem; }
.result-count strong { font-size:1.32rem; font-variant-numeric:tabular-nums; }
.local-search-note { display:flex; align-items:center; gap:8px; color:#57544e; font-size:.8rem; font-weight:650; }
.status-dot { width:9px; height:9px; border-radius:50%; background:#238f4f; box-shadow:0 0 0 4px rgba(35,143,79,.12); }

.emoji-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.emoji-card { position:relative; min-width:0; min-height:198px; display:flex; flex-direction:column; align-items:center; padding:18px 16px 15px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.87); transition:transform 140ms ease-out,border-color 140ms ease-out,box-shadow 140ms ease-out; }
.emoji-card:hover { position:relative; z-index:4; transform:translateY(-2px); border-color:var(--ink); box-shadow:0 7px 0 rgba(11,11,10,.08); }
.emoji-card:focus-within { position:relative; z-index:4; border-color:var(--ink); }
.emoji-visual { position:relative; width:100%; cursor:help; }
.emoji-glyph { min-height:78px; display:grid; place-items:center; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:clamp(3.4rem,5vw,4.55rem); line-height:1; user-select:text; }
.emoji-tooltip { position:absolute; z-index:10; left:50%; bottom:calc(100% + 9px); width:max-content; max-width:min(250px,calc(100vw - 36px)); padding:10px 12px; border:1px solid var(--yellow-strong); border-radius:6px; background:var(--ink); color:#fff; box-shadow:0 7px 18px rgba(0,0,0,.2); font-size:.76rem; font-weight:600; line-height:1.4; text-align:left; transform:translate(-50%,6px); opacity:0; visibility:hidden; pointer-events:auto; transition:opacity 120ms ease-out,transform 120ms ease-out,visibility 120ms; }
.emoji-tooltip::after { content:""; position:absolute; left:50%; top:100%; width:9px; height:9px; border-right:1px solid var(--yellow-strong); border-bottom:1px solid var(--yellow-strong); background:var(--ink); transform:translate(-50%,-5px) rotate(45deg); }
.emoji-visual:hover .emoji-tooltip,.emoji-visual:focus-within .emoji-tooltip { opacity:1; visibility:visible; transform:translate(-50%,0); }
.emoji-visual.is-tooltip-open .emoji-tooltip { opacity:1; visibility:visible; transform:translate(-50%,0); }
.emoji-visual.is-tooltip-dismissed .emoji-tooltip { opacity:0; visibility:hidden; transform:translate(-50%,6px); }
.emoji-visual[data-emoji-tooltip-enhanced="true"] { border-radius:6px; touch-action:manipulation; }
.emoji-visual[data-emoji-tooltip-enhanced="true"]:focus-visible { outline:3px solid var(--yellow-strong); outline-offset:3px; }
.emoji-card h3 { width:100%; min-height:43px; margin:9px 0 12px; display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#171715; font-size:.92rem; font-weight:760; line-height:1.35; text-align:center; }
.emoji-help-toggle { min-height:38px; margin:-5px 0 9px; padding:6px 10px; border:0; border-radius:5px; background:transparent; color:#534e44; cursor:pointer; font-size:.72rem; font-weight:780; text-decoration:underline; text-decoration-color:#aaa398; text-underline-offset:3px; }
.emoji-help-toggle:hover,.emoji-help-toggle[aria-expanded="true"] { background:#f2eee4; color:var(--ink); text-decoration-color:var(--ink); }
.copy-button { width:100%; min-height:44px; margin-top:auto; display:inline-flex; align-items:center; justify-content:center; gap:9px; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font-size:.88rem; font-weight:820; transition:background 120ms ease-out,transform 80ms ease-out; }
.copy-button:hover { background:#ffe04d; }
.copy-button:active { transform:scale(.98); }
.copy-button.copied { border-color:#1c7a45; background:#dff4e7; color:#145d35; }
.copy-icon { position:relative; width:15px; height:17px; display:inline-block; border:2px solid currentColor; border-radius:2px; }
.copy-icon::before { content:""; position:absolute; width:11px; height:13px; left:-6px; top:-6px; border:2px solid currentColor; border-radius:2px; background:transparent; }
.load-more-wrap { padding:36px 0 0; text-align:center; }
.load-more { min-width:260px; min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:12px 24px; border:2px solid var(--ink); border-radius:7px; background:var(--ink); color:#fff; cursor:pointer; font-weight:800; text-decoration:none; }
.load-more:hover { background:var(--yellow-strong); color:var(--ink); }
.page-previous { min-height:44px; margin-right:18px; display:inline-flex; align-items:center; padding:9px 14px; color:#3f3c36; font-size:.82rem; font-weight:760; }
.load-more-wrap p { margin:10px 0 0; color:var(--muted); font-size:.77rem; }
.empty-state { padding:64px 24px; border:1px dashed #aaa398; border-radius:10px; background:rgba(255,255,255,.65); text-align:center; }
.empty-state>span { font-size:3.5rem; }
.empty-state h3 { margin:14px 0 7px; font-size:1.4rem; }
.empty-state p { margin:0 auto 20px; color:var(--muted); }
.empty-state button { min-height:44px; padding:9px 18px; border:1px solid var(--ink); border-radius:5px; background:var(--yellow-strong); cursor:pointer; font-weight:800; }

.workshop-teaser { width:min(1312px,calc(100% - 48px)); margin:0 auto 38px; padding:22px 24px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:18px 34px; border-top:6px solid var(--yellow-strong); border-radius:8px; background:var(--ink); color:#fff; box-shadow:7px 7px 0 rgba(11,11,10,.08); }
.catalogue .workshop-teaser { width:100%; }
.workshop-teaser h2 { margin:0 0 6px; color:#fff; font-size:clamp(1.2rem,2.4vw,1.7rem); line-height:1.15; }
.workshop-teaser p { margin:0; color:#cfcdc6; font-size:.82rem; line-height:1.55; }
.workshop-teaser>a,.workshop-teaser>button { min-height:44px; padding:9px 15px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font-size:.76rem; font-weight:850; line-height:1.2; text-align:center; text-decoration:none; white-space:nowrap; }
.workshop-teaser>a:hover,.workshop-teaser>button:hover { background:#ffe04d; }
.workshop-shell { width:min(1312px,calc(100% - 48px)); margin:0 auto 72px; padding:clamp(24px,4vw,42px); overflow:hidden; border-top:8px solid var(--yellow-strong); border-radius:10px; background:var(--ink); color:#fff; box-shadow:10px 10px 0 rgba(11,11,10,.1); }
.workshop-shell .section-kicker { color:var(--yellow-strong); }
.workshop-heading { margin-bottom:26px; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); align-items:end; gap:18px 48px; }
.workshop-heading h2 { margin:0; font-size:clamp(1.7rem,3vw,2.65rem); line-height:1.08; }
.workshop-heading>p { margin:0; color:#cfcdc6; font-size:.86rem; line-height:1.65; }
.workshop-shell>h2,.workshop-shell header h2 { margin:0; font-size:clamp(1.7rem,3vw,2.65rem); line-height:1.08; }
.workshop-shell>p,.workshop-shell header p { max-width:800px; margin:12px 0 26px; color:#cfcdc6; font-size:.9rem; line-height:1.7; }
.workshop-step-nav { position:sticky; z-index:8; top:8px; min-width:0; margin:0 0 22px; padding:7px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; border:1px solid #55534e; border-radius:9px; background:rgba(23,23,21,.97); box-shadow:0 8px 22px rgba(0,0,0,.22); backdrop-filter:blur(8px); }
.workshop-step-nav a { min-width:0; min-height:58px; padding:8px 10px; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; column-gap:9px; border:2px solid transparent; border-radius:6px; color:#dedbd4; text-decoration:none; }
.workshop-step-nav a:hover { border-color:#77736b; background:#242421; color:#fff; }
.workshop-step-nav a[aria-current="step"] { border-color:var(--yellow-strong); background:#fff3b8; color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.workshop-step-nav a>span { grid-row:1/3; width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:#3a3935; color:#fff; font-size:.78rem; font-weight:900; }
.workshop-step-nav a[aria-current="step"]>span { background:var(--ink); color:var(--yellow-strong); }
.workshop-step-nav strong { min-width:0; color:inherit; font-size:.78rem; font-weight:900; line-height:1.25; overflow-wrap:anywhere; }
.workshop-step-nav small { min-width:0; color:#aaa79f; font-size:.63rem; font-weight:650; line-height:1.25; overflow-wrap:anywhere; }
.workshop-step-nav a[aria-current="step"] small { color:#5f4a00; }
.workshop-controls { min-width:0; display:grid; gap:20px; }
.workshop-step { min-width:0; scroll-margin-top:92px; }
.workshop-step--writing { padding:18px; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); grid-template-areas:"heading heading" "field preview" "stats preview" "actions actions"; align-items:start; gap:14px clamp(20px,4vw,38px); border:1px solid #55534e; border-radius:8px; background:#121210; }
.workshop-step--checking { padding:18px; display:grid; grid-template-areas:"heading" "alerts" "assistant" "quality" "suggestions" "draft"; gap:14px; border:1px solid #55534e; border-radius:8px; background:#121210; }
.workshop-step-heading { min-width:0; grid-area:heading; padding-bottom:2px; }
.workshop-step-heading h3 { margin:0; color:#fff; font-size:1.08rem; line-height:1.3; }
.workshop-step-heading>p:last-child { max-width:900px; margin:6px 0 0; color:#b9b6ae; font-size:.78rem; line-height:1.55; }
.workshop-step[data-workshop-step-active] { border-color:#8f8a80; }
.workshop-field { min-width:0; grid-area:field; }
.workshop-template { min-width:0; margin:0 0 13px; padding:14px 15px; border:1px solid #55534e; border-left:5px solid var(--yellow-strong); border-radius:7px; background:#171715; }
.workshop-template-heading { min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:10px 18px; }
.workshop-template-heading h3 { margin:0; color:#fff; font-size:.9rem; line-height:1.35; }
.workshop-template-heading>span { flex:0 0 auto; padding:4px 8px; border:1px solid #c19a00; border-radius:99px; background:#2d2d29; color:var(--yellow-strong); font-size:.66rem; font-weight:850; line-height:1.2; }
.workshop-template-picker { min-width:0; margin:11px 0 12px; padding:0; border:0; }
.workshop-template-picker>legend { margin:0 0 7px; padding:0; color:#fff; font-size:.74rem; font-weight:850; line-height:1.35; }
.workshop-template-options { min-width:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.workshop-field label.workshop-template-option,.workshop-template-option { position:relative; width:100%; min-width:0; min-height:58px; margin:0; padding:8px 9px; display:grid; grid-template-columns:18px minmax(0,1fr); align-items:start; justify-content:stretch; gap:7px; border:2px solid #77736b; border-radius:6px; background:#242421; color:#fff; cursor:pointer; text-align:left; }
.workshop-template-option:hover { border-color:#c19a00; background:#302f2a; }
.workshop-template-option input { width:17px; height:17px; margin:1px 0 0; accent-color:var(--yellow-strong); cursor:pointer; }
.workshop-field .workshop-template-option>span,.workshop-template-option>span { min-width:0; display:grid; gap:2px; color:inherit; text-align:left; }
.workshop-template-option strong { color:inherit; font-size:.72rem; font-weight:900; line-height:1.25; }
.workshop-field .workshop-template-option small,.workshop-template-option small { color:#c9c6bf; font-size:.61rem; font-weight:650; line-height:1.3; text-align:left; overflow-wrap:anywhere; }
.workshop-template-option:has(input:checked) { border-color:var(--yellow-strong); background:#fff3b8; color:var(--ink); box-shadow:inset 0 0 0 2px var(--ink); }
.workshop-field .workshop-template-option:has(input:checked) small,.workshop-template-option:has(input:checked) small { color:#4d3900; }
.workshop-template-option:has(input:focus-visible) { border-color:var(--yellow-strong); outline:3px solid var(--yellow-strong); outline-offset:3px; box-shadow:inset 0 0 0 2px var(--ink),0 0 0 2px #fff; }
.workshop-template-picker>p { margin:8px 0 0; color:#aaa79f; font-size:.67rem; font-weight:650; line-height:1.45; }
.workshop-template>p { margin:9px 0; color:#c9c6bf; font-size:.74rem; line-height:1.5; }
.workshop-template pre { min-width:0; max-height:230px; margin:0; padding:12px 13px; overflow:auto; white-space:pre-wrap; border:1px solid #77736b; border-radius:6px; background:#fff; color:var(--ink); font:650 .78rem/1.55 var(--ui-font); overflow-wrap:anywhere; }
.workshop-template-actions { margin-top:10px; display:flex; align-items:center; gap:9px 14px; }
.workshop-template-actions button { flex:0 0 auto; min-width:44px; min-height:44px; padding:8px 13px; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font:850 .75rem/1.25 var(--ui-font); }
.workshop-template-actions button:hover { background:#ffe04d; }
.workshop-template-actions p { min-width:0; margin:0; color:#aaa79f; font-size:.7rem; font-weight:680; line-height:1.4; overflow-wrap:anywhere; }
.workshop-template-actions p[data-state="success"] { color:#9fe0bc; }
.workshop-template-actions p[data-state="warning"],.workshop-template-actions p[data-state="error"] { color:#ffd274; }
.workshop-field label { min-height:44px; margin:0; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#fff; font-size:.78rem; font-weight:820; line-height:1.35; }
.workshop-field label span:last-child { color:#aaa79f; font-size:.75rem; font-weight:680; text-align:right; }
.workshop-textarea { width:100%; min-width:0; min-height:248px; max-height:70vh; padding:16px 17px; resize:vertical; border:2px solid #8d8980; border-radius:7px; outline:0; background:#fff; color:var(--ink); caret-color:var(--ink); font:400 1rem/1.65 var(--ui-font); overflow-wrap:anywhere; }
.workshop-textarea::placeholder { color:#77736b; opacity:1; }
.workshop-textarea:hover { border-color:#c7c1b5; }
.workshop-textarea:focus { border-color:var(--yellow-strong); box-shadow:0 0 0 3px var(--ink),0 0 0 6px var(--yellow-strong); }
.workshop-textarea:focus-visible { outline:3px solid var(--yellow-strong); outline-offset:3px; }
.workshop-privacy-note { margin:11px 0 0; display:flex; align-items:center; gap:10px; color:#b9b6ae; font-size:.75rem; font-weight:680; line-height:1.45; }
.workshop-privacy-note .status-dot { flex:0 0 auto; }
.workshop-mode { min-width:0; margin:0 0 13px; padding:14px 15px; border:1px solid #55534e; border-left:5px solid var(--yellow-strong); border-radius:7px; background:#171715; color:#fff; }
.workshop-mode>legend,.workshop-mode>h3 { max-width:100%; margin:0 0 7px; padding:0; color:#fff; font-size:.9rem; font-weight:850; line-height:1.35; }
.workshop-mode>p { margin:0 0 11px; color:#c9c6bf; font-size:.74rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-mode-options { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.workshop-field .workshop-mode-option,.workshop-mode-option { position:relative; width:100%; min-width:0; min-height:56px; margin:0; padding:10px 12px; display:grid; grid-template-columns:24px minmax(0,1fr); align-items:start; justify-content:stretch; gap:10px; border:2px solid #77736b; border-radius:6px; background:#242421; color:#fff; cursor:pointer; font-size:.78rem; font-weight:700; line-height:1.35; text-align:left; transition:border-color 120ms ease-out,background 120ms ease-out,color 120ms ease-out,box-shadow 120ms ease-out; }
.workshop-mode-option:hover { border-color:#c19a00; background:#302f2a; }
.workshop-mode-option input { width:22px; height:22px; margin:1px 0 0; accent-color:var(--yellow-strong); cursor:pointer; }
.workshop-mode-copy { min-width:0; display:grid; gap:3px; color:inherit; text-align:left; }
.workshop-mode-copy strong { color:inherit; font-size:.8rem; font-weight:880; line-height:1.3; }
.workshop-mode-copy span,.workshop-field .workshop-mode-copy span:last-child { color:#c9c6bf; font-size:.7rem; font-weight:640; line-height:1.45; text-align:left; overflow-wrap:anywhere; }
.workshop-mode-option:has(input:checked) { border-color:var(--yellow-strong); background:#fff3b8; color:var(--ink); box-shadow:inset 0 0 0 2px var(--ink); }
.workshop-mode-option:has(input:checked) .workshop-mode-copy span,.workshop-field .workshop-mode-option:has(input:checked) .workshop-mode-copy span:last-child { color:#4d3900; }
.workshop-mode-option:has(input:focus-visible) { border-color:var(--yellow-strong); outline:3px solid var(--yellow-strong); outline-offset:3px; box-shadow:inset 0 0 0 2px var(--ink),0 0 0 2px #fff; }
.workshop-seo-panel { min-width:0; grid-column:1/-1; margin:0; padding:18px; border:1px solid #55534e; border-left:6px solid var(--yellow-strong); border-radius:8px; background:#171715; color:#fff; }
.workshop-seo-panel>h3,.workshop-seo-panel header h3 { margin:0 0 7px; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-seo-panel>p,.workshop-seo-panel header p { max-width:900px; margin:0 0 14px; color:#c9c6bf; font-size:.78rem; line-height:1.55; overflow-wrap:anywhere; }
.workshop-seo-grid { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.workshop-field label.workshop-seo-field,.workshop-seo-field { min-width:0; min-height:0; margin:0; display:grid; align-content:start; align-items:stretch; justify-content:stretch; gap:7px; text-align:left; }
.workshop-seo-field--wide { grid-column:1/-1; }
.workshop-field .workshop-seo-field label,.workshop-seo-field>label,.workshop-seo-field>span:first-child { min-height:0; margin:0; display:block; color:#fff; font-size:.76rem; font-weight:820; line-height:1.35; text-align:left; }
.workshop-seo-field>span:first-child { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:5px 12px; }
.workshop-seo-field input,.workshop-seo-field textarea { width:100%; min-width:0; padding:10px 12px; border:2px solid #8d8980; border-radius:6px; outline:0; background:#fff; color:var(--ink); caret-color:var(--ink); font:600 .86rem/1.5 var(--ui-font); }
.workshop-seo-field input { min-height:48px; }
.workshop-seo-field textarea { min-height:116px; max-height:50vh; resize:vertical; }
.workshop-seo-field input::placeholder,.workshop-seo-field textarea::placeholder { color:#77736b; opacity:1; font-weight:520; }
.workshop-seo-field input:hover,.workshop-seo-field textarea:hover { border-color:#c7c1b5; }
.workshop-seo-field input:focus-visible,.workshop-seo-field textarea:focus-visible { border-color:var(--yellow-strong); outline:3px solid var(--yellow-strong); outline-offset:3px; box-shadow:0 0 0 2px var(--ink); }
.workshop-seo-field small { color:#c9c6bf; font-size:.7rem; font-weight:560; line-height:1.5; overflow-wrap:anywhere; }
.workshop-seo-counter { min-height:20px; margin:0; color:#cfcdc6; font-size:.7rem; font-weight:760; line-height:1.4; text-align:right; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.workshop-seo-counter[data-state="warning"] { color:#ffd274; }
.workshop-seo-counter[data-state="caution"] { color:#ffe7a3; }
.workshop-seo-counter[data-state="ok"] { color:#9fe0bc; }
.workshop-seo-note { margin:11px 0 0; color:#aaa79f; font-size:.72rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-seo-summary { min-width:0; min-height:44px; margin:14px 0 0; padding:10px 12px 10px 42px; position:relative; display:flex; align-items:center; border:1px solid #77736b; border-left:5px solid #77736b; border-radius:6px; background:#242421; color:#dedbd4; font-size:.76rem; font-weight:720; line-height:1.45; overflow-wrap:anywhere; }
.workshop-seo-summary::before,.workshop-seo-card::before { content:"i"; position:absolute; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-weight:900; line-height:1; }
.workshop-seo-summary::before { left:11px; top:50%; width:22px; height:22px; font-size:.68rem; transform:translateY(-50%); }
.workshop-seo-summary[data-state="warning"] { border-color:#c19a00; border-left-color:#8a6800; background:#403714; color:#fff3b8; }
.workshop-seo-summary[data-state="warning"]::before,.workshop-seo-card[data-state="warning"]::before { content:"!"; }
.workshop-seo-summary[data-state="ok"] { border-color:#278555; border-left-color:#1c7045; background:#173d29; color:#bce8cd; }
.workshop-seo-summary[data-state="ok"]::before,.workshop-seo-card[data-state="ok"]::before { content:"✓"; }
.workshop-seo-summary[data-state="info"] { border-color:#4d82a8; border-left-color:#236c99; background:#173448; color:#dcefff; }
.workshop-seo-list { min-width:0; margin-top:10px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.workshop-seo-card { position:relative; min-width:0; min-height:86px; padding:12px 12px 12px 44px; border:1px solid #77736b; border-left:5px solid #77736b; border-radius:6px; background:#f4f1e9; color:var(--ink); }
.workshop-seo-card::before { left:12px; top:13px; width:21px; height:21px; color:var(--ink); font-size:.66rem; }
.workshop-seo-card[data-state="warning"] { border-color:#c19a00; border-left-color:#8a6800; background:#fff3b8; color:#403714; }
.workshop-seo-card[data-state="ok"] { border-color:#278555; border-left-color:#1c7045; background:#dff4e7; color:#145d35; }
.workshop-seo-card[data-state="info"] { border-color:#4d82a8; border-left-color:#236c99; background:#dcefff; color:#173d57; }
.workshop-seo-card h4 { margin:0 0 5px; color:inherit; font-size:.84rem; line-height:1.35; }
.workshop-seo-card p { margin:0; color:inherit; font-size:.76rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-seo-card a,.workshop-seo-panel .workshop-seo-source { width:max-content; max-width:100%; min-height:44px; margin-top:7px; padding:7px 9px; display:inline-flex; align-items:center; border:1px solid currentColor; border-radius:5px; color:inherit; font-size:.7rem; font-weight:820; line-height:1.3; text-decoration:underline; overflow-wrap:anywhere; }
.workshop-seo-card a:hover,.workshop-seo-panel .workshop-seo-source:hover { border-color:var(--ink); background:#fff; color:var(--ink); }
.workshop-textarea.workshop-textarea--jumped { border-color:var(--ink); outline:0; box-shadow:0 0 0 3px var(--ink),0 0 0 7px var(--yellow-strong); animation:workshop-jump-highlight 520ms ease-out 1; }
@keyframes workshop-jump-highlight { 0% { box-shadow:0 0 0 3px var(--ink),0 0 0 11px var(--yellow-strong); } 100% { box-shadow:0 0 0 3px var(--ink),0 0 0 7px var(--yellow-strong); } }
.workshop-stats { min-width:0; grid-area:stats; display:grid; grid-template-columns:repeat(auto-fit,minmax(108px,1fr)); gap:8px; }
.workshop-stat { min-width:0; min-height:72px; padding:10px 12px; display:flex; flex-direction:column; justify-content:center; border:1px solid #55534e; border-radius:6px; background:#242421; }
.workshop-stat strong,.workshop-stat output { overflow:hidden; color:var(--yellow-strong); font-size:1.2rem; font-weight:850; line-height:1.1; font-variant-numeric:tabular-nums; text-overflow:ellipsis; white-space:nowrap; }
.workshop-stat span,.workshop-stat small { margin-top:4px; color:#b9b6ae; font-size:.75rem; font-weight:700; line-height:1.3; }
.workshop-alerts { min-width:0; grid-area:alerts; display:grid; gap:8px; }
.workshop-alert { min-width:0; min-height:44px; padding:10px 12px 10px 42px; position:relative; display:flex; align-items:center; border:1px solid #77736b; border-radius:6px; background:#f4f1e9; color:var(--ink); font-size:.75rem; font-weight:690; line-height:1.45; overflow-wrap:anywhere; }
.workshop-alert::before { content:"i"; position:absolute; left:11px; top:50%; width:22px; height:22px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:#fff; font-size:.68rem; font-weight:900; transform:translateY(-50%); }
.workshop-alert--warning { border-color:#c19a00; background:#fff3b8; color:#403714; }
.workshop-alert--warning::before { content:"!"; background:#8a6800; }
.workshop-alert--ok { border-color:#278555; background:#dff4e7; color:#145d35; }
.workshop-alert--ok::before { content:"✓"; background:#1c7045; }
.workshop-repetition-content { width:100%; min-width:0; display:grid; gap:8px; }
.workshop-repetition-item { min-width:0; }
.workshop-repetition-content>.workshop-repetition-heading { margin:0; display:block; color:#625a40; font-size:.8rem; font-weight:760; line-height:1.45; }
.workshop-repetition-card { min-width:0; padding:11px; display:grid; gap:9px; border:1px solid #c6a42a; border-radius:6px; background:#fffdf4; color:var(--ink); }
.workshop-repetition-heading,.workshop-repetition-card-heading { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:8px 14px; }
.workshop-repetition-word { min-width:0; overflow-wrap:anywhere; font-size:.78rem; font-weight:880; line-height:1.35; }
.workshop-repetition-count { flex:0 0 auto; padding:4px 7px; border-radius:99px; background:var(--ink); color:var(--yellow-strong); font-size:.75rem; font-weight:850; line-height:1.2; }
.workshop-repetition-detail { margin:0; color:#625a40; font-size:.8rem; line-height:1.45; overflow-wrap:anywhere; }
.workshop-repetition-actions { min-width:0; display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.workshop-jump { max-width:100%; min-width:44px; min-height:44px; padding:7px 10px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--ink); border-radius:5px; background:var(--ink); color:#fff; cursor:pointer; font:800 .75rem/1.25 var(--ui-font); text-align:center; overflow-wrap:anywhere; white-space:normal; vertical-align:middle; }
.workshop-jump:hover { border-color:#4b4943; background:#34332f; }
.workshop-jump:active { transform:scale(.97); }
.workshop-jump[data-state="selected"] { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); box-shadow:inset 0 0 0 2px var(--ink); text-decoration:underline; text-decoration-thickness:2px; }

.workshop-replacement-panel { min-width:0; padding:11px; display:grid; grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr); align-items:end; gap:7px 10px; border:1px solid #d0cbc0; border-top:3px solid #77736b; border-radius:6px; background:#f4f1e9; color:var(--ink); }
.workshop-replacement-panel label { min-width:0; margin:0; color:var(--ink); font-size:.72rem; font-weight:850; line-height:1.35; overflow-wrap:anywhere; }
.workshop-replacement-input { width:100%; min-width:0; min-height:44px; padding:8px 10px; border:2px solid #8d8980; border-radius:5px; outline:0; background:#fff; color:var(--ink); caret-color:var(--ink); font:650 .8rem/1.4 var(--ui-font); }
.workshop-replacement-input:hover { border-color:#5f5b54; }
.workshop-replacement-input:focus-visible { border-color:var(--ink); outline:3px solid var(--yellow-strong); outline-offset:2px; }
.workshop-replacement-preview { grid-column:1/-1; min-width:0; margin:0; color:#625a40; font-size:.72rem; font-weight:650; line-height:1.45; overflow-wrap:anywhere; }
.workshop-replacement-preview[data-state="ready"] { color:#145d35; }
.workshop-replacement-preview[data-state="warning"] { color:#6e5100; }
.workshop-replacement-actions { grid-column:1/-1; min-width:0; display:flex; flex-wrap:wrap; gap:6px; }
.workshop-replacement-actions button,.workshop-repetition-dismissed-summary button { min-width:44px; min-height:44px; padding:8px 10px; border:1px solid var(--ink); border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font:800 .7rem/1.3 var(--ui-font); text-align:center; overflow-wrap:anywhere; }
.workshop-replacement-actions button:hover,.workshop-repetition-dismissed-summary button:hover { border-color:#8a6800; background:var(--yellow-strong); }
.workshop-replacement-actions [data-assistant-replacement-action] { background:var(--ink); color:#fff; }
.workshop-replacement-actions [data-assistant-replacement-action]:hover { background:var(--yellow-strong); color:var(--ink); }
.workshop-repetition-dismissed-summary { max-width:100%; margin:0; padding:9px 10px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:7px 12px; border:1px dashed #8a6800; border-radius:6px; background:#fff8d8; color:#51420e; font-size:.72rem; font-weight:720; line-height:1.45; overflow-wrap:anywhere; }
.workshop-repetition-dismissed-summary button { flex:0 1 auto; max-width:100%; }
.workshop-assistant { min-width:0; grid-area:assistant; padding:16px; border:1px solid #55534e; border-radius:8px; background:#171715; color:#fff; }
.workshop-assistant-heading { min-width:0; margin-bottom:8px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px 18px; }
.workshop-assistant-heading h3 { margin:0; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-assistant-summary { max-width:280px; margin:0; padding:7px 9px; border:1px solid #55534e; border-radius:5px; background:#242421; color:#cfcdc6; font-size:.75rem; font-weight:720; line-height:1.4; text-align:right; overflow-wrap:anywhere; }
.workshop-assistant-summary[data-state="warning"] { border-color:#c19a00; background:#403714; color:#fff3b8; }
.workshop-assistant-summary[data-state="ok"] { border-color:#278555; background:#173d29; color:#bce8cd; }
.workshop-assistant-intro { max-width:900px; margin:0 0 12px; color:#aaa79f; font-size:.76rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-assistant-list { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.workshop-assistant-card { min-width:0; padding:12px; display:grid; align-content:start; gap:7px; border:1px solid #c19a00; border-left:5px solid #8a6800; border-radius:6px; background:#fff3b8; color:#403714; overflow-wrap:anywhere; }
.workshop-assistant-card h4 { margin:0; color:inherit; font-size:.82rem; font-weight:880; line-height:1.35; }
.workshop-assistant-card p { margin:0; color:inherit; font-size:.76rem; line-height:1.48; }
.workshop-assistant-excerpt { padding:7px 8px; border:1px solid #d0b44c; border-radius:4px; background:#fffdf4; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.68rem!important; white-space:pre-wrap; overflow-wrap:anywhere; }
.workshop-assistant-card-actions { min-width:0; margin-top:auto; padding-top:2px; display:flex; flex-wrap:wrap; gap:6px; }
.workshop-assistant-card-actions button,.workshop-assistant-undo { min-width:44px; min-height:44px; padding:8px 11px; border:1px solid var(--ink); border-radius:5px; background:var(--ink); color:#fff; cursor:pointer; font:800 .73rem/1.3 var(--ui-font); text-align:center; overflow-wrap:anywhere; }
.workshop-assistant-card-actions button:hover,.workshop-assistant-undo:hover:not(:disabled) { border-color:#8a6800; background:var(--yellow-strong); color:var(--ink); }
.workshop-assistant-card-actions [data-assistant-fix] { border-color:#8a6800; background:var(--yellow-strong); color:var(--ink); }
.workshop-assistant-card-actions [data-assistant-fix]:hover { background:#ffe04d; }
.workshop-assistant-empty { grid-column:1/-1; margin:0; padding:12px; border:1px dashed #77736b; border-radius:6px; color:#cfcdc6; font-size:.78rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-assistant-actions { min-width:0; margin-top:10px; padding-top:10px; display:flex; align-items:center; gap:8px 14px; border-top:1px solid #45443f; }
.workshop-assistant-undo:disabled { border-color:#55534e; background:#2d2d29; color:#8f8c85; cursor:not-allowed; }
.workshop-assistant-status { min-width:0; margin:0; color:#aaa79f; font-size:.72rem; font-weight:680; line-height:1.45; overflow-wrap:anywhere; }
.workshop-assistant-status[data-state="success"],.workshop-assistant-status[data-state="selected"] { color:#9fe0bc; }
.workshop-assistant-status[data-state="warning"] { color:#ffd274; }
.workshop-placeholder-tracker { min-width:0; margin:-3px 0 13px; padding:11px 12px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:7px 14px; border:1px solid #55534e; border-left:5px solid #77736b; border-radius:7px; background:#242421; color:#fff; }
.workshop-placeholder-heading { min-width:0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 12px; }
.workshop-placeholder-heading h3 { margin:0; color:#fff; font-size:.78rem; line-height:1.35; }
.workshop-placeholder-count { flex:0 0 auto; padding:4px 7px; border:1px solid #77736b; border-radius:99px; background:#171715; color:#cfcdc6; font-size:.66rem; font-weight:850; line-height:1.2; }
.workshop-placeholder-count[data-state="warning"] { border-color:#c19a00; background:#403714; color:#fff3b8; }
.workshop-placeholder-count[data-state="ok"] { border-color:#278555; background:#173d29; color:#bce8cd; }
.workshop-placeholder-actions { min-width:0; display:flex; gap:6px; }
.workshop-placeholder-actions button { min-width:72px; min-height:44px; padding:8px 10px; border:1px solid #8f8a80; border-radius:5px; background:#171715; color:#fff; cursor:pointer; font:800 .7rem/1.25 var(--ui-font); }
.workshop-placeholder-actions button:hover:not(:disabled) { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); }
.workshop-placeholder-actions button:disabled { color:#77736b; cursor:not-allowed; }
.workshop-placeholder-status { grid-column:1/-1; min-width:0; margin:0; color:#aaa79f; font-size:.69rem; font-weight:650; line-height:1.45; overflow-wrap:anywhere; }
.workshop-placeholder-status[data-state="warning"] { color:#ffd274; }
.workshop-placeholder-status[data-state="ok"],.workshop-placeholder-status[data-state="selected"] { color:#9fe0bc; }
[data-workshop-copy][data-workshop-placeholder-confirm="true"] { outline:3px solid #ff8f2b; outline-offset:3px; }

.workshop-quality { min-width:0; grid-area:quality; padding:16px; border:1px solid #55534e; border-radius:8px; background:#171715; }
.workshop-quality-heading { min-width:0; margin-bottom:12px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px 18px; }
.workshop-quality-heading h3 { margin:0; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-quality-heading>[data-workshop-quality-summary] { max-width:260px; margin:0; padding:7px 9px; border:1px solid #55534e; border-radius:5px; background:#242421; color:#cfcdc6; font-size:.75rem; font-weight:720; line-height:1.4; text-align:right; overflow-wrap:anywhere; }
.workshop-quality-heading>[data-workshop-quality-summary][data-state="warning"] { border-color:#c19a00; background:#403714; color:#fff3b8; }
.workshop-quality-heading>[data-workshop-quality-summary][data-state="ok"] { border-color:#278555; background:#173d29; color:#bce8cd; }
.workshop-quality-legend { min-width:0; margin:0 0 12px; display:flex; flex-wrap:wrap; gap:6px; }
.workshop-quality-legend span,.workshop-quality-badge[data-kind],.workshop-quality-kind[data-kind] { max-width:100%; padding:4px 7px; border:1px solid #77736b; border-radius:99px; background:#2d2d29; color:#fff; font-size:.65rem; font-weight:850; line-height:1.2; overflow-wrap:anywhere; }
.workshop-quality-legend [data-kind="technical"],.workshop-quality-badge[data-kind="technical"],.workshop-quality-kind[data-kind="technical"] { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); }
.workshop-quality-legend [data-kind="official"],.workshop-quality-badge[data-kind="official"],.workshop-quality-kind[data-kind="official"] { border-color:#236c99; background:#dcefff; color:#173d57; }
.workshop-quality-legend [data-kind="editorial"],.workshop-quality-badge[data-kind="editorial"],.workshop-quality-kind[data-kind="editorial"] { border-color:#77736b; background:#ece9e1; color:#36342f; }
.workshop-quality-legend [data-kind="test"],.workshop-quality-badge[data-kind="test"],.workshop-quality-kind[data-kind="test"] { border-color:#7c5c1b; background:#fff0ae; color:#4d3900; }
.workshop-quality-list { min-width:0; display:grid; gap:8px; }
.workshop-quality-card,.workshop-quality-item { min-width:0; padding:12px; display:grid; gap:7px; border:1px solid #747169; border-left:5px solid #747169; border-radius:6px; background:#f7f4ec; color:var(--ink); overflow-wrap:anywhere; }
.workshop-quality-card--warning,.workshop-quality-item[data-state="warning"],[data-workshop-quality-item][data-state="warning"] { border-color:#c19a00; border-left-color:#8a6800; background:#fff3b8; color:#403714; }
.workshop-quality-card--ok,.workshop-quality-item[data-state="ok"],[data-workshop-quality-item][data-state="ok"] { border-color:#278555; border-left-color:#1c7045; background:#dff4e7; color:#145d35; }
.workshop-quality-card--info,.workshop-quality-item[data-state="info"],[data-workshop-quality-item][data-state="info"] { border-color:#77736b; border-left-color:var(--ink); background:#f4f1e9; }
.workshop-quality-card-heading,.workshop-quality-item-heading { min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:8px 14px; }
.workshop-quality-card h4,.workshop-quality-item h4,.workshop-quality-title { min-width:0; margin:0; font-size:.8rem; font-weight:880; line-height:1.35; overflow-wrap:anywhere; }
.workshop-quality-card-heading>span,.workshop-quality-item-heading>span,.workshop-quality-badge { flex:0 0 auto; padding:4px 7px; border-radius:99px; background:var(--ink); color:#fff; font-size:.75rem; font-weight:840; line-height:1.2; }
.workshop-quality-card-heading>.workshop-quality-classification { max-width:100%; border:1px solid #77736b; font-size:.65rem; overflow-wrap:anywhere; }
.workshop-quality-card-heading>.workshop-quality-classification--technical { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); }
.workshop-quality-card-heading>.workshop-quality-classification--official { border-color:#236c99; background:#dcefff; color:#173d57; }
.workshop-quality-card-heading>.workshop-quality-classification--editorial { border-color:#77736b; background:#ece9e1; color:#36342f; }
.workshop-quality-card-heading>.workshop-quality-classification--test { border-color:#7c5c1b; background:#fff0ae; color:#4d3900; }
.workshop-quality-card p,.workshop-quality-item p,.workshop-quality-detail { margin:0; color:inherit; font-size:.8rem; line-height:1.5; overflow-wrap:anywhere; }
.workshop-quality-source { width:max-content; max-width:100%; min-height:44px; padding:7px 10px; display:inline-flex; align-items:center; border:1px solid currentColor; border-radius:5px; color:#173d57; font-size:.72rem; font-weight:820; line-height:1.3; text-decoration:underline; overflow-wrap:anywhere; }
.workshop-quality-source:hover { border-color:var(--ink); background:#fff; color:var(--ink); }
.workshop-quality-actions { min-width:0; display:flex; flex-wrap:wrap; gap:6px; }
.workshop-quality-actions button,.workshop-quality-actions a,[data-workshop-quality-list] .workshop-jump { max-width:100%; min-width:44px; min-height:44px; padding:8px 11px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--ink); border-radius:5px; background:var(--ink); color:#fff; cursor:pointer; font:800 .75rem/1.25 var(--ui-font); text-align:center; text-decoration:none; overflow-wrap:anywhere; white-space:normal; }
.workshop-quality-actions button:hover,.workshop-quality-actions a:hover,[data-workshop-quality-list] .workshop-jump:hover { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); }
.workshop-quality-note { margin:12px 0 0; color:#aaa79f; font-size:.8rem; line-height:1.55; overflow-wrap:anywhere; }
.workshop-quality-more { margin:0; padding:10px 12px; border:1px dashed #77736b; border-radius:6px; color:#cfcdc6; font-size:.8rem; font-weight:720; line-height:1.45; overflow-wrap:anywhere; }
.workshop-comparison,.workshop-variants { min-width:0; grid-area:variants; padding:18px; border:1px solid #55534e; border-radius:8px; background:#171715; }
.workshop-step--comparison { grid-area:auto; scroll-margin-top:92px; }
.workshop-comparison-heading,.workshop-variants-heading { min-width:0; display:flex; align-items:flex-end; justify-content:space-between; gap:12px 24px; }
.workshop-comparison-heading h3,.workshop-variants-heading h3 { margin:0; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-comparison-output>.workshop-comparison-heading { align-items:center; }
.workshop-comparison-heading>strong { color:#fff; font-size:.82rem; line-height:1.3; }
.workshop-comparison-heading>span { flex:0 0 auto; padding:4px 7px; border:1px solid #8f8a80; border-radius:99px; color:#d8d4ca; font-size:.64rem; font-weight:800; line-height:1.2; }
.workshop-comparison-intro,.workshop-variants-intro { max-width:960px; margin:10px 0 8px; color:#c9c6bf; font-size:.78rem; line-height:1.55; }
.workshop-comparison-privacy { margin:0 0 14px; display:flex; align-items:center; gap:9px; color:#aaa79f; font-size:.7rem; font-weight:680; line-height:1.45; }
.workshop-comparison-privacy .status-dot { flex:0 0 auto; }
.workshop-comparison-editors { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.workshop-comparison-card,[data-workshop-comparison-card] { min-width:0; padding:13px; display:grid; align-content:start; gap:9px; border:1px solid #77736b; border-top:4px solid var(--yellow-strong); border-radius:7px; background:#f7f4ec; color:var(--ink); }
.workshop-comparison-card-heading { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:8px 14px; }
.workshop-comparison-card h4 { margin:0; font-size:.88rem; line-height:1.3; }
.workshop-comparison-card-heading>span { flex:0 0 auto; padding:4px 7px; border-radius:99px; background:var(--ink); color:var(--yellow-strong); font-size:.64rem; font-weight:850; line-height:1.2; }
.workshop-comparison-card label { color:var(--ink); font-size:.74rem; font-weight:850; line-height:1.35; }
.workshop-comparison-text,[data-workshop-comparison-text] { width:100%; min-width:0; min-height:180px; max-height:55vh; padding:11px 12px; resize:vertical; border:2px solid #8d8980; border-radius:6px; outline:0; background:#fff; color:var(--ink); caret-color:var(--ink); font:400 .9rem/1.6 var(--ui-font); overflow-wrap:anywhere; }
.workshop-comparison-text:hover,[data-workshop-comparison-text]:hover { border-color:#5f5b54; }
.workshop-comparison-text:focus-visible,[data-workshop-comparison-text]:focus-visible { border-color:var(--ink); outline:3px solid var(--yellow-strong); outline-offset:2px; }
.workshop-comparison-stats { min-width:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.workshop-comparison-stats>span { min-width:0; padding:7px 6px; border:1px solid #d0cbc0; border-radius:5px; background:#fff; color:#5f5b54; font-size:.63rem; font-weight:730; line-height:1.25; text-align:center; overflow-wrap:anywhere; }
.workshop-comparison-stats output { display:block; color:var(--ink); font-size:.87rem; font-weight:900; font-variant-numeric:tabular-nums; }
.workshop-comparison-summary,[data-workshop-comparison-summary] { min-height:38px; margin:0; padding:8px 9px; border-left:4px solid #77736b; border-radius:4px; background:#ebe8df; color:#4f4b44; font-size:.7rem; font-weight:680; line-height:1.45; overflow-wrap:anywhere; }
.workshop-comparison-summary[data-state="warning"],[data-workshop-comparison-summary][data-state="warning"] { border-left-color:#8a6800; background:#fff0ae; color:#4d3900; }
.workshop-comparison-summary[data-state="ok"],[data-workshop-comparison-summary][data-state="ok"] { border-left-color:#1c7045; background:#dff4e7; color:#145d35; }
.workshop-comparison-actions { min-width:0; display:flex; flex-wrap:wrap; gap:6px; }
.workshop-comparison-actions button,[data-workshop-comparison-take-main],[data-workshop-comparison-copy],[data-workshop-comparison-use-main] { min-width:44px; min-height:44px; padding:8px 10px; border:1px solid var(--ink); border-radius:5px; background:var(--ink); color:#fff; cursor:pointer; font:820 .7rem/1.25 var(--ui-font); }
.workshop-comparison-actions button:hover:not(:disabled),[data-workshop-comparison-take-main]:hover:not(:disabled),[data-workshop-comparison-copy]:hover:not(:disabled),[data-workshop-comparison-use-main]:hover:not(:disabled) { border-color:#c19a00; background:var(--yellow-strong); color:var(--ink); }
.workshop-comparison-actions button:disabled,[data-workshop-comparison-take-main]:disabled,[data-workshop-comparison-copy]:disabled,[data-workshop-comparison-use-main]:disabled { cursor:not-allowed; opacity:.46; }
.workshop-comparison-actions [data-workshop-comparison-take-main] { border-color:#8d8980; background:#fff; color:var(--ink); }
.workshop-comparison-actions [data-workshop-comparison-take-main]:hover:not(:disabled) { border-color:#c19a00; background:#fff4ba; }
.workshop-comparison-legend { margin:14px 0 9px; display:flex; flex-wrap:wrap; align-items:center; gap:7px 16px; color:#d8d4ca; font-size:.67rem; font-weight:750; line-height:1.35; }
.workshop-comparison-legend>span { display:inline-flex; align-items:center; gap:6px; }
.workshop-comparison-swatch { width:19px; height:14px; flex:0 0 auto; border:1px solid #77736b; border-radius:3px; }
.workshop-comparison-swatch--removed { border-color:#b76464; background:#ffd8d8; }
.workshop-comparison-swatch--added { border-color:#4f8c68; background:#d7f4df; }
.workshop-comparison-swatch--changed { border-color:#8d7b3e; background:linear-gradient(90deg,#ffd8d8 0 48%,#d7f4df 52% 100%); }
.workshop-comparison-output,[data-workshop-comparison-output] { min-width:0; padding:12px; overflow-x:auto; overscroll-behavior-inline:contain; border:1px solid #5e5b55; border-radius:7px; background:#242421; color:#f7f4ec; }
.workshop-comparison-output>p:first-child { margin-top:0; }
.workshop-comparison-output>p:last-child { margin-bottom:0; }
.workshop-comparison-table-wrap { min-width:0; overflow-x:auto; overscroll-behavior-inline:contain; }
.workshop-comparison-table { width:100%; min-width:560px; border-collapse:collapse; table-layout:fixed; font-size:.7rem; line-height:1.3; }
.workshop-comparison-table th,.workshop-comparison-table td { padding:8px; border-top:1px solid #504d48; text-align:left; vertical-align:top; }
.workshop-comparison-table thead th { border-top:0; color:#fff; font-size:.68rem; font-weight:900; }
.workshop-comparison-table thead th:first-child,.workshop-comparison-table tbody th { width:31%; color:#bdb9b0; font-weight:760; }
.workshop-comparison-value { display:block; color:var(--yellow-strong); font-size:.86rem; font-weight:850; font-variant-numeric:tabular-nums; }
.workshop-comparison-delta { display:block; margin-top:2px; color:#c9c5bc; font-size:.61rem; font-weight:680; overflow-wrap:anywhere; }
.workshop-comparison-diff { min-width:0; margin-top:13px; display:grid; grid-template-columns:minmax(0,1fr); gap:7px; }
.workshop-comparison-diff-heading { min-width:0; display:flex; align-items:baseline; justify-content:space-between; gap:5px 16px; }
.workshop-comparison-diff-heading strong { color:#fff; font-size:.82rem; line-height:1.35; }
.workshop-comparison-diff-heading span { color:#c9c5bc; font-size:.66rem; line-height:1.4; text-align:right; }
.workshop-comparison-diff-sides { min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.workshop-comparison-diff-side { min-width:0; margin:0; }
.workshop-comparison-diff-side h4 { margin:0 0 6px; color:#fff; font-size:.76rem; line-height:1.35; }
.workshop-comparison-diff-text,[data-workshop-comparison-diff-text] { min-width:0; min-height:112px; max-height:380px; margin:0; padding:11px 12px; overflow:auto; white-space:pre-wrap; border:1px solid #8d8980; border-radius:6px; background:#fff; color:var(--ink); font:400 .82rem/1.65 var(--ui-font); overflow-wrap:anywhere; }
.workshop-comparison-change { padding:.07em .12em; border-radius:2px; color:inherit; text-decoration:none; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
.workshop-comparison-change--removed,del[data-workshop-comparison-change="removed"] { border-bottom:2px solid #9b3f3f; background:#ffd8d8; text-decoration:line-through; text-decoration-thickness:1.5px; }
.workshop-comparison-change--added,ins[data-workshop-comparison-change="added"] { border-bottom:2px solid #287249; background:#d7f4df; text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:.16em; }
[data-comparison-change-kind="replacement"] { outline:1px dashed #8d7b3e; outline-offset:1px; }
.workshop-comparison-note { margin:8px 0 0; color:#aaa79f; font-size:.67rem; line-height:1.45; }
.workshop-comparison-status,.workshop-variant-status { min-height:20px; margin:9px 0 0; color:#aaa79f; font-size:.72rem; font-weight:700; line-height:1.4; }
.workshop-comparison-status[data-state="success"],.workshop-variant-status[data-state="success"] { color:#9fe0bc; }
.workshop-comparison-status[data-state="error"],.workshop-comparison-status[data-state="warning"],.workshop-variant-status[data-state="error"],.workshop-variant-status[data-state="warning"] { color:#ffd274; }
.workshop-suggestions { min-width:0; grid-area:suggestions; padding-top:2px; display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px; }
.workshop-suggestions>div:first-child { width:100%; }
.workshop-suggestions h3 { margin:0 0 5px; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-suggestions>div:first-child>p:last-child { margin:0; color:#c2bfb7; font-size:.8rem; line-height:1.5; }
.workshop-suggestion-list { width:100%; display:flex; flex-wrap:wrap; gap:8px; }
.workshop-suggestion-list>p { margin:0; color:#b9b6ae; font-size:.8rem; line-height:1.5; }
.workshop-suggestions>h3,.workshop-suggestions>p { width:100%; margin:0 0 3px; color:#d7d5d0; font-size:.8rem; line-height:1.45; }
.workshop-suggestion { min-width:44px; min-height:44px; padding:8px 13px; border:1px solid #77736b; border-radius:99px; background:#242421; color:#fff; cursor:pointer; font-size:.75rem; font-weight:760; line-height:1.25; overflow-wrap:anywhere; transition:border-color 120ms ease-out,background 120ms ease-out,color 120ms ease-out,transform 80ms ease-out; }
.workshop-suggestion:hover { border-color:var(--yellow-strong); background:#35342f; }
.workshop-suggestion:active { transform:scale(.97); }
.workshop-suggestion[aria-pressed="true"],.workshop-suggestion.active { border-color:var(--yellow-strong); background:var(--yellow-strong); color:var(--ink); }
.workshop-preview { min-width:0; min-height:360px; grid-area:preview; padding:20px; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:8px; background:#f7f4ec; color:var(--ink); }
.workshop-preview-heading { min-height:44px; margin-bottom:10px; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.workshop-preview-heading h3 { margin:0; font-size:1rem; line-height:1.3; }
.workshop-preview-heading>[data-workshop-preview-platform] { flex:0 0 auto; padding:5px 8px; border-radius:99px; background:var(--ink); color:var(--yellow-strong); font-size:.75rem; font-weight:800; }
.workshop-preview>h3 { margin:0 0 12px; color:#5b5549; font-size:.75rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.workshop-preview-text { min-width:0; min-height:250px; margin:0; padding:18px; flex:1; overflow:auto; overscroll-behavior:contain; border:1px solid #d6d0c4; border-radius:6px; background:#fff; color:#24221e; font-size:.94rem; line-height:1.7; overflow-wrap:anywhere; white-space:pre-wrap; }
.workshop-preview-text:empty::before { content:"A szöveg előnézete itt jelenik meg."; color:#77736b; }
.workshop-preview-highlight { padding:.06em .12em; border-radius:3px; background:#ffec9a; color:inherit; box-decoration-break:clone; -webkit-box-decoration-break:clone; scroll-margin-block:88px; }
.workshop-preview-highlight--current,.workshop-preview-highlight[data-current="true"] { background:var(--yellow-strong); color:var(--ink); outline:2px solid var(--ink); outline-offset:2px; box-shadow:0 0 0 4px #fff2a6; animation:workshop-preview-highlight-pulse 520ms ease-out 1; }
@keyframes workshop-preview-highlight-pulse { 0% { box-shadow:0 0 0 8px #ffe575; } 100% { box-shadow:0 0 0 4px #fff2a6; } }
.workshop-actions { min-width:0; grid-area:actions; display:grid; grid-template-columns:repeat(auto-fit,minmax(132px,1fr)); gap:8px; }
.workshop-actions button,.workshop-actions a { min-width:0; min-height:44px; padding:9px 13px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid #817c72; border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font-size:.76rem; font-weight:820; line-height:1.2; text-align:center; text-decoration:none; }
.workshop-actions button:hover,.workshop-actions a:hover { border-color:var(--yellow-strong); background:#fff8d7; }
.workshop-actions button:active,.workshop-actions a:active { transform:scale(.98); }
.workshop-actions button:disabled { cursor:not-allowed; filter:grayscale(1); opacity:.48; }
.workshop-copy { border-color:#c19a00!important; background:var(--yellow-strong)!important; }
.workshop-copy:hover { background:#ffe04d!important; }
.workshop-copy.copied { border-color:#278555!important; background:#dff4e7!important; color:#145d35!important; }
.workshop-actions button[data-state="armed"] { border-color:#b43b32; background:#ffe8e5; color:#7b211a; }
.workshop-copy-status { grid-column:1/-1; min-height:20px; margin:0; color:#d8d5cd; font-size:.75rem; font-weight:720; line-height:1.4; text-align:center; }
.workshop-copy-status[data-state="success"] { color:#9fe0bc; }
.workshop-copy-status[data-state="error"] { color:#ffb4ac; }
.workshop-copy-status[hidden] { display:none; }

.workshop-draft { min-width:0; grid-area:draft; margin-top:6px; padding:18px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); align-items:start; gap:18px clamp(24px,4vw,46px); border:1px solid #55534e; border-left:6px solid var(--yellow-strong); border-radius:8px; background:#171715; }
.workshop-draft-heading { min-width:0; }
.workshop-draft-heading h3 { margin:0 0 7px; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-draft-heading>p:last-child { margin:0; color:#b9b6ae; font-size:.8rem; line-height:1.55; overflow-wrap:anywhere; }
.workshop-draft-controls { min-width:0; display:grid; gap:8px; }
.workshop-draft-toggle { width:100%; min-width:0; min-height:48px; padding:9px 11px; display:flex; align-items:center; gap:10px; border:1px solid #77736b; border-radius:6px; background:#242421; color:#fff; cursor:pointer; font-size:.8rem; font-weight:820; line-height:1.35; overflow-wrap:anywhere; }
.workshop-draft-toggle:hover { border-color:var(--yellow-strong); background:#2d2c28; }
.workshop-draft-toggle input { flex:0 0 auto; width:24px; height:24px; margin:0; accent-color:var(--yellow-strong); cursor:pointer; }
.workshop-draft-toggle:has(input:focus-visible) { outline:3px solid var(--yellow-strong); outline-offset:3px; }
.workshop-draft-help,.workshop-draft-status { margin:0; color:#aaa79f; font-size:.75rem; line-height:1.45; overflow-wrap:anywhere; }
.workshop-draft-status { min-height:20px; color:#cfcdc6; font-weight:740; }
.workshop-draft-status[data-state="saved"],.workshop-draft-status[data-state="enabled"],.workshop-draft-status[data-state="success"] { color:#9fe0bc; }
.workshop-draft-status[data-state="error"] { color:#ffb4ac; }
.workshop-draft-clear { width:100%; min-width:44px; min-height:44px; padding:9px 12px; border:1px solid #817c72; border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font:820 .75rem/1.25 var(--ui-font); white-space:normal; }
.workshop-draft-clear:hover:not(:disabled) { border-color:#b43b32; background:#ffe8e5; color:#7b211a; }
.workshop-draft-clear:disabled { cursor:not-allowed; filter:grayscale(1); opacity:.48; }

.workshop-guide { width:min(1312px,calc(100% - 48px)); margin:0 auto 72px; padding:clamp(22px,4vw,36px); border:1px solid var(--line); border-left:8px solid var(--yellow-strong); border-radius:9px; background:#fff; box-shadow:7px 7px 0 rgba(11,11,10,.06); }
.catalogue .workshop-guide,.workshop-shell .workshop-guide { width:100%; }
.workshop-guide-heading { max-width:860px; margin-bottom:22px; }
.workshop-guide-heading>p:last-child { margin:0; color:#5f5b54; font-size:.84rem; line-height:1.65; }
.workshop-guide h2 { margin:0 0 8px; font-size:clamp(1.35rem,2.6vw,2rem); line-height:1.15; }
.workshop-guide>p { max-width:780px; margin:0 0 20px; color:#5f5b54; font-size:.84rem; line-height:1.65; }
.workshop-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; counter-reset:workshop-guide; }
.workshop-guide-grid>* { position:relative; min-width:0; min-height:142px; margin:0; padding:20px 18px 18px 58px; border:1px solid var(--line); border-radius:7px; background:#faf8f2; color:var(--ink); counter-increment:workshop-guide; }
.workshop-guide-grid>*::before { content:counter(workshop-guide); position:absolute; top:18px; left:16px; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:var(--yellow-strong); font-size:.75rem; font-weight:900; }
.workshop-guide-grid h3 { margin:0 0 7px; font-size:.95rem; line-height:1.3; }
.workshop-guide-grid p { margin:0; color:#5f5b54; font-size:.8rem; line-height:1.55; overflow-wrap:anywhere; }
.workshop-sources { min-width:0; margin-top:18px; padding:20px 22px; border:1px solid #55534e; border-top:5px solid var(--yellow-strong); border-radius:7px; background:#171715; color:#fff; }
.workshop-sources h3 { margin:0 0 7px; color:#fff; font-size:1rem; line-height:1.3; }
.workshop-sources-review { display:inline-block; padding:5px 8px; border:1px solid #77736b; border-radius:5px; background:#242421; color:#cfcdc6!important; font-size:.7rem!important; font-weight:720; }
.workshop-sources>p { max-width:900px; margin:0; color:#cfcdc6; font-size:.8rem; line-height:1.6; overflow-wrap:anywhere; }
.workshop-sources ul { margin:15px 0 0; padding-left:20px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 28px; }
.workshop-sources li { min-width:0; padding-left:2px; color:#dedbd4; font-size:.76rem; line-height:1.55; overflow-wrap:anywhere; }
.workshop-sources li::marker { color:var(--yellow-strong); }
.workshop-sources a { color:var(--yellow-strong); font-weight:760; text-decoration-thickness:1px; }
.workshop-sources a:hover { color:#fff1a8; text-decoration-thickness:2px; }

.personal-tools { width:min(1312px,calc(100% - 48px)); margin:0 auto 72px; padding:clamp(24px,4vw,40px); border-top:8px solid var(--yellow-strong); border-radius:9px; background:var(--ink); color:#fff; }
.personal-tools-heading { margin-bottom:24px; display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.9fr); align-items:end; gap:18px 48px; }
.personal-tools-heading h2,.personal-tools>h2 { margin:0; font-size:clamp(1.55rem,3vw,2.45rem); line-height:1.08; }
.personal-tools-heading p,.personal-tools>p,.storage-note,[data-storage-note] { margin:0; color:#cfcdc6; font-size:.82rem; line-height:1.6; }
.personal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.personal-panel { min-width:0; padding:20px; border:1px solid #55534e; border-radius:8px; background:#171715; }
.personal-panel-heading { min-height:44px; margin-bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.personal-panel h3 { margin:0; color:var(--yellow-strong); font-size:1rem; line-height:1.25; }
.personal-list { max-height:430px; margin:0; padding:0; display:grid; gap:8px; overflow:auto; overscroll-behavior:contain; list-style:none; scrollbar-color:#77736b #252522; scrollbar-width:thin; }
.personal-item { min-width:0; padding:10px; display:grid; grid-template-columns:62px minmax(0,1fr) auto; align-items:center; gap:10px; border:1px solid #4c4a45; border-radius:6px; background:#242421; }
.personal-value { min-width:0; overflow:hidden; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:1.45rem; line-height:1.2; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.personal-details { min-width:0; display:grid; gap:3px; }
.personal-details strong { min-width:0; overflow:hidden; color:#fff; font-size:.76rem; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.personal-details span { color:#aaa79f; font-size:.64rem; font-weight:700; }
.personal-details .personal-brand-warning { color:#ffb7af; font-weight:820; }
.personal-item.has-avoided-emoji { border-color:#8b5d57; background:#2d2321; }
.personal-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.personal-copy,.personal-open,.personal-remove,[data-clear-recent] { min-height:44px; padding:8px 10px; display:inline-flex; align-items:center; justify-content:center; gap:7px; border:1px solid #77736b; border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font-size:.68rem; font-weight:800; line-height:1.15; text-align:center; text-decoration:none; }
.personal-copy { border-color:#c19a00; background:var(--yellow-strong); }
.personal-copy:hover { background:#ffe04d; }
.personal-copy.copied { border-color:#1c7a45; background:#dff4e7; color:#145d35; }
.personal-open:hover,.personal-remove:hover,[data-clear-recent]:hover { border-color:var(--yellow-strong); background:#fff8d7; }
.personal-remove { color:#712f2f; }
[data-clear-recent] { background:transparent; color:#fff; }
.personal-empty { min-height:88px; padding:16px; display:flex; align-items:center; justify-content:center; border:1px dashed #66645e; border-radius:6px; color:#aaa79f; font-size:.76rem; line-height:1.55; text-align:center; }

.brand-voice-intro { min-width:0; display:grid; justify-items:start; gap:14px; }
.brand-editor-toggle { min-width:190px; min-height:44px; padding:9px 15px; border:1px solid #c19a00; border-radius:5px; background:var(--yellow-strong); color:var(--ink); cursor:pointer; font-size:.76rem; font-weight:850; line-height:1.2; }
.brand-editor-toggle:hover,.brand-editor-toggle[aria-expanded="true"] { background:#ffe04d; }
.brand-editor-toggle[aria-expanded="true"]::after { content:" ×"; }
.brand-editor { margin:0 0 20px; padding:20px; border:1px solid #8b867d; border-top:5px solid var(--yellow-strong); border-radius:8px; background:#fff; color:var(--ink); }
.brand-editor-heading { margin-bottom:16px; display:flex; align-items:flex-start; justify-content:space-between; gap:18px 28px; }
.brand-editor-heading h3 { margin:0 0 5px; font-size:1.05rem; line-height:1.3; }
.brand-editor-heading p { max-width:720px; margin:0; color:#5f5b54; font-size:.76rem; line-height:1.55; }
.brand-clear { min-height:44px; flex:0 0 auto; padding:8px 11px; border:1px solid #9a7772; border-radius:5px; background:#fff; color:#712f2f; cursor:pointer; font-size:.7rem; font-weight:800; line-height:1.25; }
.brand-clear:hover { border-color:#9f3028; background:#ffe8e5; color:#6d1d17; }
.brand-picker-label { display:block; margin:0 0 7px; color:#302d28; font-size:.78rem; font-weight:820; }
.brand-picker-search { width:100%; min-height:50px; padding:10px 14px; border:2px solid var(--ink); border-radius:6px; background:#fff; color:var(--ink); }
.brand-picker-search::placeholder { color:#77736b; opacity:1; }
.brand-picker-help,.brand-picker-status { margin:7px 0 0; color:#625e56; font-size:.7rem; line-height:1.5; }
.brand-picker-status { min-height:20px; font-weight:760; }
.brand-picker-status[data-state="error"] { color:#8b2821; }
.brand-picker-status[data-state="success"] { color:#17643a; }
.brand-picker-results { max-height:360px; margin:12px 0 0; padding:10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:8px; overflow:auto; overscroll-behavior:contain; border:1px solid var(--line); border-radius:7px; background:#f5f1e7; list-style:none; scrollbar-width:thin; }
.brand-picker-results:empty { display:none; }
.brand-picker-item { min-width:0; min-height:104px; padding:9px; display:grid; grid-template-columns:minmax(0,1fr); align-content:start; gap:8px; border:1px solid #b8b2a7; border-radius:6px; background:#fff; }
.brand-picker-glyph { display:grid; place-items:center; font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif; font-size:1.75rem; line-height:1; }
.brand-picker-details { min-width:0; display:grid; gap:7px; }
.brand-picker-identity { min-width:0; display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:7px; }
.brand-picker-details strong,.brand-picker-identity strong { min-width:0; overflow:hidden; font-size:.72rem; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.brand-picker-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; }
.brand-picker-actions button,.brand-picker-choice,[data-brand-picker-action] { min-width:0; min-height:44px; padding:7px 8px; border:1px solid #8d887e; border-radius:5px; background:#fff; color:var(--ink); cursor:pointer; font-size:.64rem; font-weight:800; line-height:1.15; }
.brand-picker-actions button:hover,.brand-picker-choice:hover,[data-brand-picker-action]:hover { border-color:var(--ink); background:#fff8d7; }
.brand-picker-actions button[aria-pressed="true"][data-brand-action="frequent"],.brand-picker-choice[aria-pressed="true"][data-brand-action="frequent"] { border-color:#b28b00; background:var(--yellow-strong); }
.brand-picker-actions button[aria-pressed="true"][data-brand-action="avoid"],.brand-picker-choice[aria-pressed="true"][data-brand-action="avoid"] { border-color:#a23b33; background:#ffe3df; color:#76241e; }
.brand-picker-choice--frequent[aria-pressed="true"] { border-color:#b28b00; background:var(--yellow-strong); }
.brand-picker-choice--avoid[aria-pressed="true"] { border-color:#a23b33; background:#ffe3df; color:#76241e; }
.brand-picker-empty { grid-column:1 / -1; margin:0; padding:18px; color:#625e56; font-size:.76rem; line-height:1.5; text-align:center; }
.brand-summary { margin:0 0 15px; display:flex; flex-wrap:wrap; gap:7px; color:#dedbd4; }
.brand-summary>span { min-height:32px; padding:6px 10px; display:inline-flex; align-items:center; gap:4px; border:1px solid #55534e; border-radius:99px; background:#171715; font-size:.68rem; font-weight:700; }
.brand-summary strong { color:var(--yellow-strong); font-variant-numeric:tabular-nums; }
.personal-grid.brand-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.brand-panel { display:flex; flex-direction:column; }
.brand-panel .personal-panel-heading { margin-bottom:5px; }
.brand-panel-count { flex:0 0 auto; padding:3px 7px; border-radius:99px; background:#35342f; color:#cfcdc6; font-size:.62rem; font-weight:800; font-variant-numeric:tabular-nums; }
.brand-panel-help { min-height:42px; margin:0 0 12px; color:#aaa79f; font-size:.69rem; line-height:1.5; }
.brand-list { flex:1; max-height:360px; }
.brand-panel--avoided { border-color:#705b57; }
.brand-panel--avoided h3 { color:#ffb7af; }
.brand-panel--avoided .personal-value { filter:grayscale(.8); opacity:.65; }
.brand-warning,[data-brand-warning],.combination-brand-warning { margin:0 12px 12px; padding:9px 10px; border:1px solid #b56359; border-radius:5px; background:#fff0ed; color:#70251f; font-size:.68rem; font-weight:760; line-height:1.4; }
.personal-history { margin-top:15px; border:1px solid #55534e; border-radius:8px; background:#171715; }
.personal-history summary { min-height:52px; padding:9px 14px; display:flex; align-items:center; justify-content:space-between; gap:14px; color:#fff; cursor:pointer; font-size:.8rem; font-weight:820; list-style:none; }
.personal-history summary::-webkit-details-marker { display:none; }
.personal-history summary::marker { content:""; }
.personal-history summary::before { content:"+"; width:28px; height:28px; flex:0 0 28px; display:grid; place-items:center; border:1px solid #77736b; border-radius:50%; color:var(--yellow-strong); font-size:1rem; }
.personal-history[open] summary::before { content:"−"; }
.personal-history-count { margin-left:auto; color:#aaa79f; font-size:.65rem; font-weight:720; }
.personal-history-body { padding:0 14px 14px; border-top:1px solid #3e3d39; }
.personal-history-body>.personal-panel-heading { margin:10px 0; }
.personal-history-body>.personal-panel-heading p { margin:0; color:#aaa79f; font-size:.7rem; line-height:1.45; }
.personal-history-body .personal-list { max-height:330px; }

.how-it-works { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:clamp(28px,6vw,80px); align-items:center; margin-bottom:72px; padding:clamp(30px,5vw,54px); border-top:8px solid var(--yellow); background:var(--ink); color:#fff; }
.how-it-works .section-kicker { color:var(--yellow-strong); }
.how-it-works h2 { margin:0; font-size:clamp(1.7rem,3vw,2.6rem); line-height:1.08; }
.how-it-works>p { margin:0; color:#d7d5d0; font-size:1rem; line-height:1.75; }
.privacy-page { width:min(1180px,calc(100% - 48px)); margin:0 auto 72px; }
.privacy-intro { margin-bottom:20px; padding:clamp(22px,4vw,36px); border-left:8px solid var(--yellow-strong); border-radius:8px; background:#fff; box-shadow:7px 7px 0 rgba(11,11,10,.06); }
.privacy-intro h2 { margin:0 0 12px; font-size:clamp(1.45rem,3vw,2.2rem); line-height:1.12; }
.privacy-intro>p:not(.section-kicker) { max-width:900px; margin:0; color:#555149; font-size:.9rem; line-height:1.7; }
.privacy-intro .privacy-version { margin-top:15px!important; padding-top:14px; border-top:1px solid var(--line); font-size:.75rem!important; }
.privacy-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; counter-reset:privacy-card; }
.privacy-grid article { min-width:0; padding:24px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:4px 4px 0 rgba(11,11,10,.05); }
.privacy-grid h3 { margin:0 0 10px; font-size:1rem; line-height:1.3; }
.privacy-grid p { margin:0; color:#5b574f; font-size:.82rem; line-height:1.7; overflow-wrap:anywhere; }
.privacy-grid p+p { margin-top:13px; }
.privacy-grid code { padding:2px 5px; border-radius:3px; background:#f1eee6; color:#27251f; font-size:.75rem; overflow-wrap:anywhere; }
.privacy-grid a { font-weight:800; }
.site-footer { border-top:8px solid var(--yellow-strong); background:var(--ink); color:#fff; }
.footer-main { background:var(--ink); }
.footer-grid { display:grid; grid-template-columns:1.05fr 1.35fr .8fr; gap:clamp(36px,7vw,100px); padding:52px 0 54px; }
.footer-grid h2 { margin:0 0 18px; color:var(--yellow-strong); font-size:.76rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.footer-brand strong { display:block; color:var(--yellow-strong); font-family:var(--display-font); font-size:clamp(2.2rem,4vw,3.7rem); letter-spacing:.02em; line-height:.95; text-transform:uppercase; }
.footer-brand p { max-width:330px; margin:16px 0 0; color:#c9c7c0; font-size:.82rem; line-height:1.6; }
.footer-contact address { color:#e3e1dc; font-size:.86rem; font-style:normal; line-height:1.75; }
.footer-contact address strong { color:#fff; }
.footer-contact a,.footer-links a { min-height:44px; display:inline-flex; align-items:center; text-decoration-color:#77736b; }
.footer-contact a:hover,.footer-links a:hover { color:var(--yellow-strong); }
.footer-links { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.footer-links h2 { margin-bottom:6px; }
.footer-links a { font-size:.88rem; font-weight:700; }
.footer-bottom { border-top:1px solid #3b3b38; background:#050505; }
.footer-bottom-inner { min-height:66px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding-block:16px; }
.footer-bottom p { margin:0; color:#96938c; font-size:.75rem; line-height:1.5; }
.footer-bottom p:last-child { max-width:720px; text-align:right; }
.copy-fallback { position:fixed; inset:-9999px auto auto -9999px; }
.no-js-note { margin:28px 0 0; padding:14px 16px; border:1px solid #9c978d; border-radius:7px; background:#fff8d7; color:#3d3a34; font-size:.85rem; }
.error-page { width:min(760px,calc(100% - 32px)); min-height:100vh; margin:auto; display:grid; align-content:center; justify-items:start; gap:18px; }
.error-page h1,.error-page p { margin:0; }
.error-page .load-more { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid var(--ink); outline-offset:3px; box-shadow:0 0 0 6px var(--yellow-strong); }
.search-panel input:focus-visible { outline:0; }

@media(max-width:1100px){.combination-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.combination-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.emoji-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.brand-logo{width:112px}}
@media(max-width:850px){
  .header-inner,.footer-inner,.footer-bottom-inner,.catalogue,.how-it-works,.privacy-page{width:min(100% - 32px,1312px)}
  .header-inner{min-height:72px}.brand-divider,.product-name span,.privacy-badge-long{display:none}.brand-lockup{gap:12px}.brand-logo{width:98px;height:52px}.privacy-badge{margin-left:auto}
  .breadcrumb{width:min(100% - 32px,1180px)}.hero{width:min(100% - 32px,1180px);padding-top:44px}.breadcrumb+.hero{padding-top:30px}.hero h1{font-size:clamp(3rem,11vw,5rem)}.combination-heading,.combination-directory-heading{grid-template-columns:1fr;align-items:start}.combination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.combination-promo{grid-template-columns:1fr auto}.combination-promo>p{grid-column:1 / -1;grid-row:2}.emoji-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.how-it-works{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1 / -1}.footer-bottom-inner{align-items:flex-start;flex-direction:column;gap:7px}.footer-bottom p:last-child{text-align:left}.privacy-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .hero{padding-bottom:23px}.eyebrow{font-size:.67rem;letter-spacing:.12em}.hero h1{font-size:clamp(2.75rem,15vw,4.25rem)}.hero-lead{margin:15px 0 22px;font-size:1.22rem}.hero-description{margin:-10px auto 23px;font-size:.85rem}
  .search-panel{height:60px;box-shadow:5px 5px 0 rgba(11,11,10,.08)}.search-panel input{padding-left:16px;padding-right:50px;font-size:.95rem}.search-button{width:62px;flex-basis:62px}.search-icon{width:24px;height:24px;border-width:3px}.search-icon::after{width:12px;height:3px;right:-10px;bottom:-5px}.clear-search{right:66px}.keyboard-hint{display:none}
  .combination-section{width:calc(100% + 8px);margin-left:-4px;margin-bottom:42px;padding:25px 18px;box-shadow:6px 6px 0 rgba(11,11,10,.1)}.combination-section-page{margin-bottom:0}.combination-menu{margin-top:22px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:inline proximity}.combination-menu-button{flex:0 0 auto;scroll-snap-align:start}.combination-grid,.combination-category-grid{grid-template-columns:1fr}.combination-card{min-height:206px}.combination-symbols{font-size:1.8rem}.combination-preview-actions{align-items:stretch;flex-direction:column;text-align:center}.combination-preview-actions a{justify-content:center}.combination-promo{grid-template-columns:1fr;padding:20px}.combination-promo>p{grid-column:auto;grid-row:auto}.combination-promo>a{justify-self:stretch}.combination-directory{width:calc(100% + 8px);margin-left:-4px;padding:24px 18px;box-shadow:6px 6px 0 rgba(11,11,10,.08)}.combination-category-card{padding:19px}.combination-page-actions{align-items:stretch;flex-direction:column;text-align:center}.emoji-tooltip{left:0;right:0;width:auto;max-width:none;transform:translateY(6px)}.emoji-visual:hover .emoji-tooltip,.emoji-visual:focus-within .emoji-tooltip,.emoji-visual.is-tooltip-open .emoji-tooltip{transform:translateY(0)}.emoji-visual.is-tooltip-dismissed .emoji-tooltip{transform:translateY(6px)}.category-list{width:calc(100% + 32px);margin-left:-16px;padding:8px 16px 18px;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scroll-snap-type:inline proximity}.category-button{flex:0 0 auto;scroll-snap-align:start}
  .catalogue-toolbar{align-items:flex-start;flex-direction:column;gap:6px;padding-bottom:12px}.emoji-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.emoji-card{min-height:182px;padding:14px 10px 11px}.emoji-glyph{min-height:68px;font-size:3.45rem}.emoji-card h3{min-height:39px;margin:7px 0 9px;font-size:.8rem}.copy-button{min-height:38px;font-size:.78rem}.copy-icon{transform:scale(.86)}.how-it-works{margin-bottom:42px;padding:28px 22px}.privacy-page{margin-bottom:42px}.privacy-intro,.privacy-grid article{padding:20px 18px}.footer-grid{grid-template-columns:1fr;gap:34px;padding:40px 0}.footer-brand{grid-column:auto}
  .load-more-wrap .page-previous{margin:0 0 12px;justify-content:center}.load-more-wrap .load-more{width:100%;min-width:0}
}
@media(max-width:370px){.product-name{display:none}.emoji-grid{grid-template-columns:1fr}.emoji-card{min-height:178px}}
@media(max-width:1100px){
  .combination-result-grid,[data-combination-result-grid]{grid-template-columns:repeat(3,minmax(0,1fr))}
  .personal-grid.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .brand-panel--combinations{grid-column:1 / -1}
}
@media(max-width:1000px){
  .header-inner{gap:16px}
  .header-actions{gap:8px}
  .header-workshop-link{padding-inline:11px;font-size:.75rem}
  .privacy-badge-long{display:none}
}
@media(max-width:850px){
  .combination-search-heading,.combination-builder-heading,.personal-tools-heading,.workshop-heading{grid-template-columns:1fr;align-items:start}
  .combination-result-grid,[data-combination-result-grid]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .combination-builder-layout,.builder-layout{grid-template-columns:1fr}
  .category-guide{grid-template-columns:1fr}
  .personal-tools{width:min(100% - 32px,1312px)}
  .personal-grid{grid-template-columns:1fr}
  .personal-grid.brand-grid{grid-template-columns:1fr}
  .brand-panel--combinations{grid-column:auto}
  .header-inner{gap:12px}
  .header-actions{gap:8px}
  .header-workshop-link{padding-inline:10px;font-size:.75rem}
  .workshop-teaser,.workshop-shell,.workshop-guide{width:min(100% - 32px,1312px)}
  .catalogue .workshop-teaser,.catalogue .workshop-guide,.workshop-shell .workshop-guide{width:100%}
  .workshop-step--writing{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "field" "stats" "preview" "actions"}
}
@media(max-width:620px){
  .combination-search-tool,.combination-builder{width:calc(100% + 8px);margin-left:-4px;padding:22px 18px;box-shadow:6px 6px 0 rgba(11,11,10,.07)}
  .combination-result-grid,[data-combination-result-grid]{grid-template-columns:1fr}
  .combination-results-heading{align-items:flex-start;flex-direction:column;gap:4px}
  .combination-search-examples{align-items:stretch}
  .combination-search-examples>span,.combination-search-examples>p{width:100%}
  .combination-search-examples button,[data-combination-query]{flex:1 1 92px}
  .builder-candidates,[data-builder-candidates]{grid-template-columns:repeat(2,minmax(0,1fr));max-height:330px;padding:8px}
  .builder-selected-item{grid-template-columns:44px minmax(0,1fr)}
  .builder-selected-controls{grid-column:1 / -1;justify-content:end}
  .builder-actions{grid-template-columns:1fr 1fr}
  .builder-actions [data-builder-clear],[data-builder-clear]{grid-column:1 / -1}
  .category-guide{width:calc(100% + 8px);margin-left:-4px;padding:22px 18px}
  .related-categories{padding:22px 18px}
  .related-categories-grid,.related-category-grid{grid-template-columns:1fr}
  .personal-tools{margin-bottom:42px;padding:26px 18px}
  .personal-panel{padding:14px}
  .brand-editor{padding:16px 14px}
  .brand-editor-heading{flex-direction:column}
  .brand-clear{width:100%}
  .brand-picker-results{grid-template-columns:1fr;padding:8px}
  .brand-summary{display:grid;grid-template-columns:1fr}
  .brand-summary>span{border-radius:6px}
  .brand-panel-help{min-height:0}
  .personal-item{grid-template-columns:54px minmax(0,1fr)}
  .personal-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));justify-content:stretch}
  .copy-button{min-height:44px}
  .header-inner{gap:9px}
  .header-actions{gap:6px}
  .header-workshop-link{padding:7px 9px;font-size:.75rem}
  .workshop-teaser{grid-template-columns:1fr;padding:20px;box-shadow:6px 6px 0 rgba(11,11,10,.08)}
  .workshop-teaser>a,.workshop-teaser>button{width:100%;white-space:normal}
  .workshop-shell{margin-bottom:42px;padding:24px 18px;box-shadow:6px 6px 0 rgba(11,11,10,.1)}
  .workshop-step-nav{top:4px;margin-inline:-6px;padding:5px;gap:4px}
  .workshop-step-nav a{min-height:54px;padding:7px;grid-template-columns:26px minmax(0,1fr);column-gap:6px}
  .workshop-step-nav a>span{width:26px;height:26px;font-size:.7rem}
  .workshop-step-nav strong{font-size:.7rem}
  .workshop-step-nav small{display:none}
  .workshop-step--writing,.workshop-step--checking{padding:14px}
  .workshop-mode-options,.workshop-seo-grid,.workshop-seo-list{grid-template-columns:1fr}
  .workshop-template-options{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workshop-mode,.workshop-seo-panel{padding:16px 14px}
  .workshop-mode-option{min-height:60px}
  .workshop-seo-counter{text-align:left}
  .workshop-template-heading,.workshop-template-actions{align-items:flex-start;flex-direction:column}
  .workshop-template-actions button{width:100%}
  .workshop-shell>p,.workshop-shell header p{margin-bottom:22px;font-size:.84rem}
  .workshop-field label{align-items:flex-start;flex-direction:column;justify-content:center;gap:2px}
  .workshop-field label span:last-child{text-align:left}
  .workshop-textarea{min-height:220px;padding:14px;font-size:1rem}
  .workshop-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workshop-quality,.workshop-assistant{padding:14px}
  .workshop-quality-heading,.workshop-assistant-heading{grid-template-columns:1fr;align-items:start}
  .workshop-quality-heading>[data-workshop-quality-summary],.workshop-assistant-summary{max-width:none;text-align:left}
  .workshop-assistant-list{grid-template-columns:1fr}
  .workshop-assistant-actions{align-items:stretch;flex-direction:column}
  .workshop-assistant-undo{width:100%}
  .workshop-placeholder-tracker{grid-template-columns:1fr}
  .workshop-placeholder-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .workshop-placeholder-actions button{width:100%}
  .workshop-replacement-panel{grid-template-columns:1fr;align-items:stretch}
  .workshop-replacement-preview,.workshop-replacement-actions{grid-column:auto}
  .workshop-repetition-card-heading,.workshop-quality-card-heading,.workshop-quality-item-heading{align-items:flex-start;flex-direction:column}
  .workshop-repetition-count,.workshop-quality-card-heading>span,.workshop-quality-item-heading>span,.workshop-quality-badge{flex:0 0 auto}
  .workshop-suggestion{flex:1 1 112px}
  .workshop-comparison,.workshop-variants{padding:14px}
  .workshop-comparison-heading,.workshop-variants-heading,.workshop-comparison-diff-heading{align-items:stretch;flex-direction:column}
  .workshop-comparison-diff-heading span{text-align:left}
  .workshop-comparison-editors,.workshop-comparison-diff-sides{grid-template-columns:1fr}
  .workshop-comparison-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workshop-preview{min-height:290px;padding:14px}
  .workshop-preview-text{min-height:205px;padding:14px;font-size:.88rem}
  .workshop-actions{grid-template-columns:1fr}
  .workshop-draft{padding:16px;grid-template-columns:1fr}
  .workshop-guide{margin-bottom:42px;padding:22px 18px}
  .workshop-guide-grid{grid-template-columns:1fr}
  .workshop-guide-grid>*{min-height:0}
  .workshop-sources{padding:18px 16px}
  .workshop-sources ul{grid-template-columns:1fr;gap:7px}
}
@media(max-width:620px){
  .search-panel.is-loading::after{right:71px}
  .search-scope{align-items:stretch;flex-direction:column;gap:7px}
  .search-scope label{width:100%;justify-content:flex-start;border-radius:7px}
  .privacy-badge summary{gap:5px;font-size:.7rem}
  .privacy-badge .shield-check{width:24px;height:24px;font-size:.75rem}
  .privacy-badge-info{position:fixed;top:76px;right:16px;left:16px;width:auto}
  .emoji-visual{display:contents}
  .emoji-glyph{order:1;width:100%}
  .emoji-card h3{order:2}
  .emoji-help-toggle{order:3;margin:-4px 0 8px}
  .emoji-tooltip{position:static;order:4;align-self:stretch;display:none;width:100%;max-width:none;margin:0 0 10px;padding:11px 12px;box-sizing:border-box;box-shadow:none;opacity:1;visibility:visible;transform:none!important}
  .emoji-tooltip::after{display:none}
  .emoji-visual.is-tooltip-open .emoji-tooltip{display:block;transform:none!important}
  .emoji-visual.is-tooltip-dismissed .emoji-tooltip{display:none;transform:none!important}
  .copy-button{order:5}
}
@media(max-width:450px){
  .product-name{display:none}
}
@media(max-width:370px){
  .combination-actions{grid-template-columns:1fr}
  .builder-candidates,[data-builder-candidates]{grid-template-columns:1fr 1fr}
  .builder-actions{grid-template-columns:1fr}
  .builder-actions [data-builder-clear],[data-builder-clear]{grid-column:auto}
  .personal-tools{width:calc(100% - 24px);padding-inline:14px}
  .personal-panel{padding-inline:10px}
  .brand-picker-item{grid-template-columns:40px minmax(0,1fr);padding-inline:7px}
  .brand-picker-actions{grid-template-columns:1fr}
  .header-workshop-link{max-width:106px;padding-inline:7px;font-size:.75rem;white-space:normal}
  .workshop-teaser,.workshop-shell,.workshop-guide{width:calc(100% - 24px)}
  .catalogue .workshop-teaser,.catalogue .workshop-guide,.workshop-shell .workshop-guide{width:100%}
  .workshop-shell{padding-inline:14px}
  .workshop-template,.workshop-mode,.workshop-seo-panel{padding-inline:11px}
  .workshop-template-options{grid-template-columns:1fr}
  .workshop-stats{gap:6px}
  .workshop-stat{padding-inline:9px}
  .workshop-alert{padding-right:9px}
  .workshop-quality,.workshop-assistant{padding-inline:10px}
  .workshop-comparison,.workshop-variants{padding-inline:10px}
  .workshop-comparison-stats{grid-template-columns:1fr 1fr}
  .workshop-comparison-actions{align-items:stretch;flex-direction:column}
  .workshop-comparison-actions button,[data-workshop-comparison-take-main],[data-workshop-comparison-copy],[data-workshop-comparison-use-main]{width:100%;margin-left:0}
  .workshop-repetition-actions,.workshop-quality-actions,.workshop-replacement-actions,.workshop-assistant-card-actions{align-items:stretch;flex-direction:column}
  .workshop-jump,.workshop-quality-actions button,.workshop-quality-actions a,[data-workshop-quality-list] .workshop-jump,.workshop-replacement-actions button,.workshop-assistant-card-actions button{width:100%;margin-inline:0}
  .workshop-draft{padding-inline:12px}
  .workshop-guide{padding-inline:14px}
  .workshop-guide-grid>*{padding:17px 14px 16px 52px}
  .workshop-guide-grid>*::before{top:15px;left:12px}
  .workshop-sources{padding-inline:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.workshop-textarea.workshop-textarea--jumped,.workshop-preview-highlight--current,.workshop-preview-highlight[data-current="true"]{animation:none!important}}
@media(forced-colors:active){
  .status-dot,.shield-check,.favorite-toggle{forced-color-adjust:none}
  .brand-editor,.brand-editor-toggle,.brand-clear,.brand-picker-search,.brand-picker-results,.brand-picker-item,.brand-picker-actions button,.brand-summary>span,.brand-panel,.personal-history,.personal-history summary::before,.brand-warning,[data-brand-warning],.combination-brand-warning{border:1px solid CanvasText}
  .brand-picker-search{border-width:2px}
  .emoji-brand-toggle[aria-pressed="true"],.brand-picker-actions button[aria-pressed="true"]{border:3px solid Highlight;background:Highlight;color:HighlightText}
  .header-workshop-link,.workshop-teaser,.workshop-shell,.workshop-field,.workshop-stat,.workshop-alert,.workshop-repetition-card,.workshop-replacement-panel,.workshop-repetition-dismissed-summary,.workshop-assistant,.workshop-assistant-summary,.workshop-assistant-card,.workshop-assistant-excerpt,.workshop-assistant-empty,.workshop-placeholder-tracker,.workshop-placeholder-count,.workshop-quality,.workshop-quality-card,.workshop-quality-item,.workshop-suggestion,.workshop-preview,.workshop-preview-text,.workshop-actions button,.workshop-actions a,.workshop-draft,.workshop-draft-toggle,.workshop-draft-clear,.workshop-guide,.workshop-guide-grid>*,.workshop-sources,.workshop-template,.workshop-template pre,.workshop-template-option,.workshop-comparison,.workshop-comparison-output,.workshop-comparison-card,.workshop-comparison-text,.workshop-comparison-diff-text,.workshop-mode,.workshop-mode-option,.workshop-seo-panel,.workshop-seo-summary,.workshop-seo-card{border:1px solid CanvasText}
  .workshop-textarea,.workshop-comparison-text,.workshop-replacement-input{border:2px solid CanvasText}
  .workshop-seo-field input,.workshop-seo-field textarea{border:2px solid CanvasText}
  .workshop-alert::before,.workshop-guide-grid>*::before{border:1px solid CanvasText}
  .workshop-copy{border:2px solid ButtonText!important}
  .workshop-assistant-card-actions button,.workshop-assistant-undo,.workshop-placeholder-actions button,.workshop-replacement-actions button,.workshop-repetition-dismissed-summary button{border:2px solid ButtonText;background:ButtonFace;color:ButtonText}
  .workshop-draft-toggle input,.workshop-mode-option input,.workshop-template-option input{forced-color-adjust:auto}
  .workshop-mode-option:has(input:checked),.workshop-template-option:has(input:checked),.workshop-jump[data-state="selected"]{border:3px solid Highlight;box-shadow:none;text-decoration:underline}
  .workshop-textarea:focus-visible,.workshop-comparison-text:focus-visible,.workshop-replacement-input:focus-visible,.workshop-seo-field input:focus-visible,.workshop-seo-field textarea:focus-visible,.workshop-mode-option:has(input:focus-visible),.workshop-template-option:has(input:focus-visible){border-color:Highlight;outline:3px solid Highlight;box-shadow:none}
  [data-workshop-copy][data-workshop-placeholder-confirm="true"]{outline:3px solid Highlight;outline-offset:3px}
  .workshop-textarea.workshop-textarea--jumped{border-color:Highlight;outline:3px solid Highlight;outline-offset:3px;box-shadow:none;animation:none}
  .workshop-preview-highlight{background:Mark;color:MarkText;outline:1px solid CanvasText;box-shadow:none}
  .workshop-preview-highlight--current,.workshop-preview-highlight[data-current="true"]{background:Highlight;color:HighlightText;outline:3px solid HighlightText;box-shadow:none;animation:none}
  .workshop-comparison-change--removed,del[data-workshop-comparison-change="removed"],.workshop-comparison-change--added,ins[data-workshop-comparison-change="added"]{border:2px solid Highlight;background:Mark;color:MarkText;text-decoration:underline}
  .workshop-comparison-swatch{border:1px solid CanvasText;forced-color-adjust:auto}
  [data-comparison-change-kind="replacement"]{outline:2px dashed Highlight;outline-offset:1px}
}
