/* Kalesh Judge: comic courtroom, with readable stories and real vote counts. */
.privacy-hero.hero { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:56px; padding:48px 0 42px; }
.privacy-copy .eyebrow { display:flex; align-items:center; gap:9px; font-size:11px; font-weight:800; letter-spacing:.5px; }
.privacy-shield { display:grid; place-items:center; width:29px; height:29px; background:#efe5ff; border-radius:50%; color:#6838bd; }
.privacy-shield svg,.privacy-verified svg { width:21px; height:21px; }
.privacy-live-pill { font-size:9px; background:#f8dc73; padding:4px 7px; border-radius:5px; }
.privacy-copy.hero-copy h1 { position:relative; font-size:clamp(55px,6.7vw,92px); letter-spacing:-4px; line-height:1.02; margin:21px 0 22px; isolation:isolate; }
.privacy-copy h1 em { color:#6838bd; }
.privacy-underline { position:absolute; height:12px; width:88%; left:0; bottom:-4px; background:#ffb6a5; border-radius:50%; z-index:-1; transform:rotate(-2deg); }
.privacy-copy.hero-copy>.privacy-lead { max-width:none; margin:0 0 14px; font-size:21px; line-height:1.45; color:#291631; font-weight:500; }
.privacy-lead strong { font-weight:850; }
.privacy-copy.hero-copy>.privacy-explainer { max-width:490px; margin:0 0 18px; font-size:15px; line-height:1.65; font-weight:500; color:#625467; }
.privacy-proof-chips { display:flex; flex-wrap:wrap; gap:8px 16px; margin:0 0 23px; font-size:12px; font-weight:750; color:#533674; }
.privacy-actions { gap:12px; }
.privacy-actions .primary,.privacy-actions .secondary { font-size:13px; min-height:49px; }
.google-continue { display:inline-flex; align-items:center; justify-content:center; gap:10px; }
.google-continue svg { width:22px; height:22px; flex-shrink:0; background:white; border-radius:50%; padding:3px; box-sizing:content-box; }
.privacy-copy.hero-copy>.privacy-scope,.privacy-scope { margin:17px 0 0; font-size:12px; line-height:1.65; font-weight:500; color:#625467; max-width:490px; }
.privacy-details-link { display:inline; font-size:inherit; color:#6838bd; font-weight:800; padding:0; border:0; background:transparent; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.privacy-visual { position:relative; min-width:0; padding:40px 12px 18px; isolation:isolate; }
.privacy-visual::before { content:''; position:absolute; inset:12px -9px 3px; background:#e7d7fa; border:1px solid #c9afe6; border-radius:44px; transform:rotate(3deg); z-index:-1; }
.privacy-sticker { position:absolute; right:0; top:0; padding:11px 14px; color:#291631; background:#f9d84a; border:2px solid #291631; border-radius:10px; box-shadow:3px 3px 0 #291631; transform:rotate(7deg); font-size:13px; font-weight:900; line-height:1.15; z-index:1; }
.privacy-preview { background:#fffdf7; border:2px solid #291631; border-radius:21px; padding:26px; box-shadow:6px 6px 0 #b897d4; transform:rotate(-2deg); }
.privacy-preview>.eyebrow { font-size:9px; color:#786780; font-weight:850; letter-spacing:1.2px; }
.privacy-anonymous { display:flex; align-items:center; gap:11px; margin:22px 0; }
.privacy-avatar { width:55px; height:55px; flex-shrink:0; }
.privacy-avatar svg { width:100%; height:100%; }
.privacy-anonymous>div { min-width:0; }
.privacy-anonymous strong { display:block; font-size:27px; font-weight:900; letter-spacing:-1px; }
.privacy-anonymous>div>span { display:block; font-size:11px; margin-top:4px; color:#726078; }
.privacy-verified { margin-left:auto; color:#6838bd; }
.privacy-case-example { border-top:1px solid #e5d8ca; border-bottom:1px solid #e5d8ca; padding:17px 0 19px; }
.privacy-case-example>span { font-size:9px; font-weight:800; letter-spacing:1px; color:#946854; }
.privacy-case-example h2 { font:900 27px/1.15 'Arial Black','Segoe UI',sans-serif; margin:12px 0 10px; letter-spacing:-1px; }
.privacy-case-example p { font-size:13px; line-height:1.6; color:#726078; margin:0; }
.privacy-hidden-fields { display:grid; gap:11px; padding-top:21px; font-size:12px; }
.privacy-hidden-fields>span { display:flex; justify-content:space-between; gap:12px; color:#726078; }
.privacy-hidden-fields b { font-weight:750; color:#6838bd; }
.privacy-vote-note { position:relative; display:flex; align-items:center; gap:12px; background:#291631; color:#fff9ec; padding:16px 19px; border-radius:13px; margin:23px -10px -1px 12px; transform:rotate(1deg); }
.privacy-vote-note>span { font-size:25px; }
.privacy-vote-note strong { display:block; font-size:15px; }
.privacy-vote-note div>span { display:block; font-size:11px; margin-top:4px; color:#e2d0ee; }
.privacy-modal-icon { display:grid; place-items:center; width:58px; height:58px; color:#6838bd; background:#ede0ff; border-radius:18px; }
.privacy-modal-icon svg { width:35px; height:35px; }
.sign-in-privacy h3 { font-size:29px; line-height:1.16; letter-spacing:-1px; margin:20px 0 12px; }
.sign-in-privacy p { font-size:14px; line-height:1.65; color:#625467; }
.sign-in-privacy .sign-in-privacy-lead { color:#291631; font-size:17px; font-weight:650; }
.sign-in-purpose { margin:20px 0; background:#eee2fc; padding:16px; border-radius:13px; }
.sign-in-purpose p { margin:7px 0 0; }
.sign-in-privacy>.google-continue { width:100%; min-height:50px; margin-top:10px; }
.sign-in-privacy>.text-button { display:block; margin:12px auto 0; }
.sign-in-privacy .privacy-scope { font-size:12px; }
.privacy-detail-intro { display:flex; align-items:start; gap:14px; padding:17px; background:#ede0ff; border-radius:14px; }
.privacy-detail-intro>svg { flex-shrink:0; width:32px; height:32px; color:#6838bd; }
.privacy-detail-intro strong { font-size:19px; }
.privacy-detail-intro p { margin:8px 0 0; }
@media(max-width:1050px) { .privacy-hero.hero { gap:30px; } .privacy-copy.hero-copy h1 { font-size:clamp(49px,6.5vw,75px); letter-spacing:-3px; } .privacy-preview { padding:20px; } .privacy-anonymous strong { font-size:23px; } }
@media(max-width:760px) { .privacy-hero.hero { grid-template-columns:1fr; gap:30px; padding:28px 0 32px; } .privacy-copy.hero-copy { width:100%; } .privacy-copy.hero-copy h1 { font-size:clamp(47px,10.5vw,72px); letter-spacing:-2.5px; margin:17px 0 21px; } .privacy-copy.hero-copy>.privacy-lead { font-size:19px; margin-bottom:13px; } .privacy-copy.hero-copy>.privacy-explainer { font-size:14px; margin-bottom:15px; } .privacy-proof-chips { font-size:11px; gap:8px 12px; margin-bottom:18px; } .privacy-actions { display:grid; grid-template-columns:1fr; gap:11px; } .privacy-actions .primary,.privacy-actions .secondary { width:100%; font-size:14px; min-height:49px; } .privacy-copy.hero-copy>.privacy-scope { font-size:12px; margin-top:14px; } .privacy-visual { max-width:440px; width:100%; margin:0 auto; padding:34px 10px 12px; box-sizing:border-box; } .privacy-preview { padding:23px; } .privacy-preview .privacy-case-example h2 { font-size:27px; } .privacy-anonymous strong { font-size:26px; } .privacy-visual::before { left:0; right:0; } .privacy-vote-note { margin-right:0; margin-left:0; } }
@media(max-width:760px) { .privacy-visual { overflow-x:clip; padding-bottom:16px; } }
@media(max-width:370px) { .privacy-copy.hero-copy h1 { font-size:41px; } .privacy-copy.hero-copy>.privacy-lead { font-size:17px; } .privacy-copy .eyebrow { font-size:10px; } .privacy-live-pill { font-size:8px; } .privacy-preview { padding:18px; } .privacy-anonymous strong { font-size:23px; } .privacy-avatar { width:44px; height:44px; } .privacy-anonymous>div>span { font-size:10px; } .sign-in-privacy h3 { font-size:25px; } }
:root { --ink:#291631; --purple:#6838bd; --coral:#ff715b; --line:#d8c9bd; --muted:#786774; }
body { background:#fff5e9; background-image:radial-gradient(#d9c6b640 .7px,transparent .7px); background-size:9px 9px; color:var(--ink); }
.header { background:#fffaf1; border-bottom:2px solid var(--ink); }
.brand { font-weight:950; letter-spacing:-1.2px; }
.brand-mark { background:var(--purple); border:2px solid var(--ink); box-shadow:3px 3px 0 var(--ink); transform:rotate(-7deg); }
.brand-dot { color:var(--coral); }
.nav-link { color:#574159; font-weight:750; }
.nav-link.selected { color:var(--purple); }
.primary { background:var(--coral); color:var(--ink); border:2px solid var(--ink); border-radius:10px; box-shadow:3px 3px 0 var(--ink); font-weight:850; }
.primary:hover { background:#ff927c; box-shadow:1px 1px 0 var(--ink); }
.secondary { color:var(--ink); border:2px solid var(--ink); background:#fff9f0; font-weight:750; }
.hero { padding:42px 0 26px; min-height:365px; gap:20px; }
.hero-copy { flex:1; min-width:0; }
.hero-copy>.eyebrow { color:var(--ink); font-weight:850; letter-spacing:1.5px; }
.hero-copy h1 { font-family:'Arial Black','Segoe UI',sans-serif; font-weight:950; font-size:clamp(52px,6.4vw,86px); line-height:.98; letter-spacing:-4px; margin:24px 0 20px; }
.hero-copy h1 em { font-style:normal; color:var(--purple); }
.hero-copy>p { color:#5e455e; font-size:17px; line-height:1.65; font-weight:600; }
.title-period { color:var(--coral); }
.hero-art { width:46%; max-width:520px; margin-right:0; }
.hero-note { color:#6c526e; font-weight:650; margin-top:20px; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.hero-actions .primary,.hero-actions .secondary { min-height:46px; padding:11px 17px; }
.tiny-pill { background:#f6d84a; border:1px solid var(--ink); border-radius:5px; color:var(--ink); font-weight:850; }
.live-dot { background:var(--coral); box-shadow:0 0 0 4px #ff715b20; }
.court-pulse { display:flex; gap:20px; align-items:center; justify-content:space-between; flex-wrap:wrap; border:2px solid var(--ink); background:var(--ink); color:#fff8ea; padding:15px 20px; border-radius:12px; margin:10px 0 16px; font-size:13px; }
.court-pulse strong { color:#f8d645; }
.demo-banner { background:#f0e5ff; border:1px solid #d3bce9; border-radius:10px; padding:12px 16px; }
.demo-banner p { color:#5a4267; font-size:12px; }
.section-heading h2 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:32px; letter-spacing:-1.3px; font-weight:950; }
.section-heading .eyebrow { color:var(--purple); font-weight:850; }
.count-pill { border-radius:6px; background:#f7d63f; color:var(--ink); border:1px solid var(--ink); }
.filters { gap:8px; }
.filter { border:1px solid #cdbda9; background:#fffaf2; color:#654965; font-size:12px; font-weight:700; border-radius:9px; }
.filter.active { border:2px solid var(--ink); background:var(--purple); color:white; box-shadow:2px 2px 0 var(--ink); }
.case-card { background:#fffaf2; border:2px solid var(--ink); border-radius:15px; box-shadow:5px 5px 0 #e6cfc2; padding:23px 23px 0; }
.case-card:hover { border-color:var(--ink); box-shadow:6px 6px 0 #cbb4ec; transform:translateY(-2px); }
.case-card h3 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:26px; line-height:1.12; font-weight:950; letter-spacing:-.8px; margin:23px 0 17px; }
.story-title { font-family:inherit; font-weight:inherit; line-height:inherit; overflow-wrap:anywhere; }
.badge { font-weight:800; border-radius:6px; border:1px solid #00000014; font-size:11px; }
.sample-label { font-weight:850; letter-spacing:.7px; }
.case-kicker { display:block; color:#a05a47; font-size:9px; font-weight:900; letter-spacing:1.5px; margin-bottom:7px; }
.excerpt { font-size:14px; line-height:1.75; color:#6f5a6c; margin-bottom:22px; }
.case-meta { color:#826e81; border-bottom:1px solid #d8c7b8; }
.anonymous { color:#674d6d; font-weight:700; }
.card-bottom { gap:8px; padding:12px 0; }
.vote-count { color:#674d6d; font-size:12px; }
.vote-count strong { font-size:18px; color:var(--ink); }
.verdict-link { background:var(--purple); border:1px solid var(--ink); color:white; padding:9px 11px; border-radius:8px; min-height:44px; font-size:12px; font-weight:800; }
.verdict-link:hover { background:#4f2498; color:white; }
.case-share { gap:8px; padding:12px 0 17px; }
.whatsapp-link { gap:8px; background:#dff3d8; border:1.5px solid #416649; color:#294d32; font-weight:850; }
.whatsapp-link:hover { background:#c9edbe; }
.whatsapp-icon { height:20px; width:20px; flex-shrink:0; }
.copy-link { border:1.5px solid #b99dcd; color:#694284; background:#f0e7f8; }
.jury-card { background:#f7d744; border:2px solid var(--ink); box-shadow:5px 5px 0 var(--ink); border-radius:16px; color:var(--ink); }
.jury-card h2 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:30px; font-weight:950; line-height:1.08; letter-spacing:-1px; }
.jury-card p,.jury-card .eyebrow { color:#66572c; }
.jury-card button { color:var(--ink); background:#fff9e1; border:2px solid var(--ink); border-radius:8px; font-weight:800; }
.court-rules { color:#785f74; }
.court-rules h3 { font-weight:850; color:var(--ink); }
.court-rules p { font-size:12px; }
dialog,dialog.wide { border:2px solid var(--ink); box-shadow:8px 8px 0 #29163160,0 25px 100px #29163130; background:#fffaf2; }
dialog::backdrop { background:#291631a6; backdrop-filter:blur(6px); }
.dialog-header { background:#fff4de; border-bottom:2px solid var(--ink); }
.dialog-header h2 { font-family:'Arial Black','Segoe UI',sans-serif; font-weight:950; letter-spacing:-1px; }
.close-button { border:1px solid #e1ccad; background:#fffaf2; border-radius:8px; }
.case-full-title { font-family:'Arial Black','Segoe UI',sans-serif; font-size:33px; line-height:1.15; font-weight:950; letter-spacing:-.8px; }
.scene-section { border-bottom:1px dashed #d4bfae; padding:15px 0 22px; }
.scene-section h3 { letter-spacing:1.5px; color:#9b6048; font-size:11px; font-weight:900; }
.story-section p { color:#5d455c; font-size:14px; line-height:1.8; }
.case-sides { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin:23px 0 29px; }
.case-sides .story-section { margin:0; padding:18px; border:1px solid #d5b4a2; border-radius:12px; background:#fff0e6; }
.case-sides .side-them { background:#efe4fa; border-color:#ceafdf; }
.case-sides h3 { font-size:16px; font-weight:850; color:var(--ink); display:flex; gap:8px; align-items:center; }
.case-sides h3 span { padding:4px 5px; border-radius:4px; background:var(--ink); color:#fffaf2; font-size:9px; }
.case-sides p { margin:0; }
.voting { border-top:2px solid var(--ink); padding-top:24px; }
.voting h3,.results h3 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:27px; letter-spacing:-.8px; font-weight:950; }
.vote-options { gap:10px; }
.vote-option { border:2px solid #d4bfae; border-radius:11px; background:#fff7ea; font-size:14px; font-weight:800; min-height:58px; box-shadow:3px 3px 0 #ead8c8; }
.vote-option:hover { border-color:var(--purple); background:#ede0fc; transform:translateX(3px); }
.vote-option:disabled { opacity:.55; transform:none; }
.results { border-top:2px solid var(--ink); padding-top:24px; }
.result-announcement { background:#f7d748; border:2px solid var(--ink); border-radius:12px; color:var(--ink); }
.result-announcement strong { font-weight:900; color:var(--ink); }
.result-announcement p { color:#6b5529; }
.bar-track { background:#e9ddcf; border-radius:4px; }
.bar-track span { background:var(--purple); border-radius:4px; }
.result-row.your-choice .bar-track span { background:var(--coral); }
.vote-ceremony { position:relative; overflow:hidden; background:#efe1ff; border:2px solid var(--ink); border-radius:15px; padding:21px; margin-bottom:27px; box-shadow:5px 5px 0 var(--ink); }
.vote-ceremony>.eyebrow { display:block; color:#65447e; font-size:9px; font-weight:900; letter-spacing:1px; margin-bottom:15px; padding-right:48px; }
.gavel-control { position:absolute; top:11px; right:12px; width:47px; height:47px; padding:0; border:1px solid var(--ink); background:#fff8e7; border-radius:10px; animation:gavel-swing .65s ease-out; }
.gavel-control span { display:block; font-size:27px; }
.verdict-stamp { display:flex; align-items:center; gap:12px; font-family:'Arial Black','Segoe UI',sans-serif; transform:rotate(-2deg); animation:stamp-in .55s cubic-bezier(.2,1.5,.4,1); }
.verdict-stamp>span { font-size:36px; }
.verdict-stamp strong { font-size:25px; line-height:1.1; font-weight:950; letter-spacing:-.6px; }
.vote-ceremony>p { color:#63456a; font-size:13px; margin:17px 0 15px; }
.recorded-choice { color:var(--ink); font-size:12px; background:#ffffff73; border-radius:8px; padding:10px 12px; }
.ceremony-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-top:15px; }
.ceremony-actions .fine-print { max-width:190px; margin:0; color:#6f526e; font-size:10px; }
.ceremony-actions .secondary { font-size:11px; padding:9px 12px; }
.ceremony-0,.ceremony-1 { background:#ffe1d2; }
.ceremony-2 { background:#dfeeda; }
.ceremony-3 { background:#fff0b9; }
.verdict-reveal .bar-track span { transform-origin:left; animation:bar-grow .8s ease-out both; }
.reactions h3 { font-weight:850; }
.reaction { background:#fff6e7; border:1px solid #d1baa4; color:#765770; font-weight:650; }
.reaction.reacted { background:#efe0ff; border-color:var(--purple); }
.tea-panel { background:#fff0c4; border:1px solid #d7bc72; }
.tea-heading h3 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:21px; letter-spacing:-.5px; }
.case-jurors { border-color:#c9afe3; background:#eee3fb; }
.board-card { background:#fffaf1; border:2px solid var(--ink); box-shadow:4px 4px 0 #e6cfc2; border-radius:15px; }
.board-card>h3 { font-family:'Arial Black','Segoe UI',sans-serif; font-size:25px; font-weight:900; letter-spacing:-.7px; }
.rank-title { font-family:'Segoe UI',Arial,sans-serif; font-weight:800; }
.rank-number { background:#f7d743; color:var(--ink); border:1px solid var(--ink); border-radius:6px; }
.personal-score { background:#eadbfc; border:1px solid #c5aadd; }
.personal-score strong { font-family:'Arial Black','Segoe UI',sans-serif; font-size:44px; }
footer { border-top:2px solid var(--ink); }
@keyframes stamp-in { from { opacity:0; transform:scale(1.3) rotate(-12deg); } to { opacity:1; transform:scale(1) rotate(-2deg); } }
@keyframes gavel-swing { 0% { transform:rotate(-35deg); } 65% { transform:rotate(18deg); } 100% { transform:rotate(0); } }
@keyframes bar-grow { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@media(max-width:1050px) { .hero-copy h1 { font-size:68px; } .hero-copy>p { font-size:15px; } .hero-art { width:43%; } .case-card { padding:20px 18px 0; } .case-card h3 { font-size:24px; } .case-share a,.case-share button { font-size:11px; } }
@media(max-width:850px) { .hero-copy h1 { font-size:61px; } .hero-art { width:42%; } .case-card h3 { font-size:25px; } .court-pulse { gap:12px 20px; } }
@media(max-width:600px) {
  .header-inner { padding-top:14px; }
  .brand { font-size:21px; }
  .file-button { font-size:10px; padding:8px; }
  .hero { display:grid; grid-template-columns:1fr; min-height:0; padding:31px 0 15px; gap:0; }
  .hero-copy { max-width:100%; }
  .hero-copy>.eyebrow { font-size:8px; gap:7px; letter-spacing:1px; }
  .hero-copy h1 { font-size:57px; line-height:1; letter-spacing:-3px; margin:21px 0 17px; }
  .hero-copy>p { max-width:100%; font-size:15px; margin-bottom:20px; }
  .hero-actions { gap:9px; }
  .hero-actions .primary,.hero-actions .secondary { font-size:12px; padding:10px 12px; }
  .hero-note { font-size:10px; margin-top:17px; }
  .hero-art { position:static; width:100%; max-width:280px; height:180px; margin:8px auto 0; opacity:1; }
  .court-pulse { font-size:11px; gap:9px 16px; padding:12px; }
  .court-pulse>span:last-child { width:100%; font-size:10px; color:#ead5f7; }
  .demo-banner { padding:11px; }
  .demo-banner p { font-size:11px; }
  .section-heading h2 { font-size:25px; letter-spacing:-1px; }
  .sort-label select { font-size:10px; }
  .case-card { padding:22px 18px 0; box-shadow:4px 4px 0 #e6cfc2; }
  .case-card h3 { font-size:25px; margin:20px 0 15px; }
  .excerpt { font-size:13px; }
  .card-bottom { gap:8px; }
  .verdict-link { font-size:11px; padding:9px; }
  .case-share { gap:8px; }
  .whatsapp-link,.copy-link { font-size:11px; padding:8px 10px; }
  .whatsapp-icon { width:19px; height:19px; }
  .case-full-title { font-size:28px; }
  .case-sides { grid-template-columns:1fr; gap:10px; }
  .case-sides .story-section { padding:16px; }
  .case-sides h3 { font-size:15px; }
  .voting h3,.results h3 { font-size:25px; }
  .vote-option { font-size:13px; min-height:57px; }
  .vote-ceremony { padding:18px 15px; box-shadow:3px 3px 0 var(--ink); }
  .verdict-stamp strong { font-size:22px; }
  .verdict-stamp>span { font-size:30px; }
  .ceremony-actions .fine-print { max-width:145px; }
  .board-card>h3 { font-size:24px; }
}
@media(max-width:370px) { .hero-copy h1 { font-size:50px; } .section-heading h2 { font-size:22px; } .hero-copy>.eyebrow { font-size:7px; } .brand { font-size:19px; } .card-bottom { flex-wrap:wrap; } .case-share { flex-wrap:wrap; } .verdict-stamp strong { font-size:20px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } .verdict-stamp { transform:none; } }

.solution-panel { margin:28px 0; padding:24px; border:2px solid var(--ink); border-radius:20px; background:#fff7d8; box-shadow:4px 4px 0 var(--ink); }
.solution-heading { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; align-items:start; }
.solution-heading h3 { margin:8px 0; font-size:25px; line-height:1.15; }
.solution-total { font-size:12px; font-weight:800; padding:7px 10px; background:#fff; border:1px solid var(--ink); border-radius:50px; }
.solution-list { list-style:none; padding:0; margin:18px 0; display:grid; gap:12px; }
.solution-item { padding:16px; border:1.5px solid var(--ink); border-radius:14px; background:#fffdf9; overflow-wrap:anywhere; }
.solution-selected { background:#f1e7ff; border:2px solid var(--purple); }
.solution-item-top { display:flex; gap:10px; align-items:center; }
.solution-rank { font-weight:900; font-size:18px; color:var(--purple); }
.solution-credit { font-size:11px; font-weight:750; color:#625970; }
.solution-text { white-space:pre-wrap; margin:12px 0; line-height:1.5; font-size:16px; }
.solution-controls { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.solution-controls button { min-height:44px; border:1px solid var(--ink); border-radius:10px; padding:9px 11px; font-size:12px; font-weight:750; background:#fff; }
.solution-controls .solution-vote { background:#ffe296; }
.solution-controls .solution-vote.selected { background:var(--purple); color:#fff; opacity:1; }
.solution-controls strong { margin-left:4px; }
.solution-reactions { display:flex; flex-wrap:wrap; gap:6px; }
.solution-reactions [aria-pressed=true] { background:#e6d3ff; }
.solution-lock { padding:12px; background:#e7d7ff; border-radius:12px; font-size:13px; font-weight:750; }
#solution-form { display:grid; gap:10px; margin-top:20px; padding-top:20px; border-top:1px dashed #b6a581; }
#solution-form label { font-weight:800; }
#solution-form textarea { width:100%; box-sizing:border-box; }
#solution-form .fine-print { margin:0; }
#solution-form .primary { justify-self:start; }
.solver-board { grid-column:1/-1; }
.solver-board .ranking-list li>div { min-width:0; overflow-wrap:anywhere; }
@media(max-width:600px) { .solution-panel { padding:16px 12px; } .solution-heading h3 { font-size:22px; } .solution-item { padding:13px 11px; } .solution-text { font-size:14px; } .solution-controls { gap:7px; } .solution-credit { font-size:10px; } }
