.free-page { background:#EDEBE3; color:#171822; --ink:#171822; --muted:#625d68; --line:#d3cfd5; --pink:#6c527c; --purple:#6c527c; }
.free-page .header,.free-page footer { color:#f7f4eb; --ink:#f7f4eb; --muted:#b9bac6; --line:#34353e; --pink:#f4a6c5; background:#111218; }
.free-container { width:min(1260px,88%); padding-bottom:35px; }
.free-page dialog { background:#fff; color:#171822; }
.free-page .kicker { color:#6c527c; }
.free-page .board-breadcrumb { flex-wrap:wrap; gap:8px 14px; }
.free-hero { display:grid; grid-template-columns:1.5fr 1fr; gap:70px; padding:65px 0; border-bottom:1px solid var(--line); }
.free-hero h1 { font-size:clamp(36px,4.3vw,62px); line-height:1.4; letter-spacing:-.04em; margin:20px 0; }
.free-hero p { font-size:var(--font-body); color:var(--muted); }
.free-hero-actions,.thread-heading-actions { display:flex; align-items:center; gap:25px; flex-wrap:wrap; font-size:var(--font-control); }
.free-button { display:inline-flex; justify-content:center; align-items:center; border:1px solid #6c527c; background:#6c527c; color:#fff; padding:13px 20px; font-size:var(--font-control); font-weight:700; cursor:pointer; line-height:1.6; }
.free-button:hover { background:#534061; border-color:#534061; }
.free-hero-note { border:1px solid var(--line); padding:30px; background:#fff; align-self:center; }
.free-hero-note p { font-size:var(--font-label); }
.free-hero-note a { border-top:1px solid var(--line); display:block; padding-top:18px; font-size:var(--font-control); color:#6c527c; }
.conversation-art { padding:25px 0 10px; text-align:center; }
.conversation-art svg { width:160px; height:120px; stroke:#6c527c; stroke-width:3; }
.free-list-section { padding:55px 0 60px; }
.free-filters { display:flex; flex-wrap:wrap; align-items:end; gap:18px; background:#fff; border:1px solid var(--line); padding:24px; margin-bottom:24px; font-size:var(--font-label); }
.free-filters>div { min-width:180px; flex:1; }
.free-filters .free-search { flex:1.5; }
.free-filters label { display:block; margin-bottom:8px; font-weight:600; }
.free-page input,.free-page select,.free-page textarea { background:#fff; color:#171822; border-color:#aaa1b1; font-size:var(--font-body); }
.free-page select { color-scheme:light; }
.free-filters input,.free-filters select { font-size:16px; padding:10px 12px; }
.free-filters>a { align-self:center; color:#6c527c; text-decoration:underline; }
.free-thread-list { background:#fff; border:1px solid var(--line); }
.free-thread-row { display:flex; align-items:center; gap:25px; padding:27px 30px; }
.free-thread-row+.free-thread-row { border-top:1px solid var(--line); }
.thread-row-main { flex:1; min-width:0; }
.thread-labels { display:flex; gap:8px; flex-wrap:wrap; }
.free-badge { display:inline-block; padding:3px 10px; font-size:var(--font-label); background:#f2eef5; color:#6c527c; border:1px solid #e1dbe6; }
.free-badge.spoiler { background:#fff1e7; color:#86552f; border-color:#ead4c3; }
.free-thread-row h3 { font-size:var(--font-card-title); line-height:1.7; margin:10px 0; overflow-wrap:anywhere; }
.free-thread-row h3 a { display:block; }
.free-thread-row h3 a:hover { color:#6c527c; text-decoration:underline; }
.thread-row-meta { display:flex; gap:8px 20px; flex-wrap:wrap; font-size:var(--font-label); color:var(--muted); overflow-wrap:anywhere; }
.thread-row-stats { min-width:220px; text-align:right; font-size:var(--font-label); }
.reply-count { display:block; color:#6c527c; margin-bottom:8px; }
.reply-count b { font:700 32px 'Barlow Condensed',sans-serif; margin-right:4px; }
.thread-row-stats a { color:var(--muted); }
.free-empty { padding:55px 30px; text-align:center; }
.free-empty h3 { font-size:var(--font-card-title); }
.free-empty p { color:var(--muted); font-size:var(--font-body); }
.free-compose { padding:35px; border:1px solid var(--line); background:#fff; margin-bottom:45px; }
.free-compose h2 { margin:10px 0 15px; font-size:30px; }
.free-compose>p { font-size:var(--font-body); color:var(--muted); }
.free-compose>p a { color:#6c527c; text-decoration:underline; }
.free-compose form { max-width:850px; }
.free-page .form-field { margin:22px 0; }
.free-page .form-field label { display:block; margin-bottom:8px; font-size:var(--font-control); font-weight:600; }
.free-page .form-field label span { color:#86505f; }
.free-page .form-field small { font-size:11px; margin-left:8px; color:var(--muted); font-weight:400; }
.free-page .field-help { font-size:12px; color:var(--muted); margin:8px 0 0; }
.free-page textarea { resize:vertical; min-height:160px; }
.free-form-row { display:flex; align-items:center; gap:30px; flex-wrap:wrap; }
.free-form-row .form-field { flex:1; min-width:200px; }
.free-checkbox { display:flex; align-items:center; gap:10px; font-size:var(--font-label); }
.free-rules { padding:15px 0 35px; max-width:950px; }
.free-rules h2 { font-size:22px; margin:10px 0; }
.free-rules p { font-size:12px; color:var(--muted); }
.thread-heading { padding:45px 0 35px; }
.thread-heading h1 { font-size:clamp(28px,3.3vw,44px); line-height:1.6; margin:18px 0; overflow-wrap:anywhere; }
.thread-meta { font-size:var(--font-label); color:var(--muted); }
.thread-heading-actions { margin-top:25px; }
.thread-heading-actions>a:not(.free-button) { color:#6c527c; }
.spoiler-notice { background:#fff4eb; border:1px solid #dac3af; padding:20px 25px; margin-bottom:25px; font-size:var(--font-control); }
.spoiler-notice p { margin:8px 0 0; font-size:12px; color:#765b48; }
.free-message { background:#fff; border:1px solid var(--line); padding:28px 30px; margin-bottom:18px; scroll-margin-top:20px; }
.free-message:target { border-color:#6c527c; box-shadow:inset 4px 0 #6c527c; }
.free-message.is-first { border-top:3px solid #6c527c; }
.free-message-heading { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; font-size:var(--font-control); }
.free-message-heading>div:first-child { display:flex; align-items:center; gap:12px; flex-wrap:wrap; overflow-wrap:anywhere; min-width:0; }
.message-number { font:700 24px 'Barlow Condensed',sans-serif; color:#6c527c; }
.owner-label { font-size:11px; color:#6c527c; background:#f2eef5; padding:2px 8px; }
.message-dates { font-size:11px; color:var(--muted); }
.message-dates span { display:block; text-align:right; }
.free-message-body { white-space:pre-wrap; overflow-wrap:anywhere; font-size:var(--font-body); padding:25px 0; line-height:2; }
.reply-reference { color:#6c527c; text-decoration:underline; font-weight:600; }
.free-message-tools { display:flex; align-items:start; flex-wrap:wrap; gap:12px 24px; border-top:1px solid var(--line); padding-top:18px; font-size:var(--font-label); }
.reply-button { color:#6c527c; padding:3px 0; }
.free-message-tools details { flex:1 1 170px; }
.free-message-tools summary { cursor:pointer; color:var(--muted); }
.free-message-tools form { padding:18px 0 0; }
.free-message-tools label { display:block; margin-bottom:8px; }
.free-message-tools input,.free-message-tools select { font-size:16px; }
.free-message-tools p { font-size:12px; color:var(--muted); }
.free-message-tools .small-button { color:#6c527c; background:#f2eef5; border-color:#b8aabf; font-size:var(--font-label); margin-top:10px; }
.free-message-tools .danger { color:#8e3d51; background:#fff4f5; }
.free-message-tools .manage-actions { display:flex; gap:10px; flex-wrap:wrap; }
.free-edit { border-top:1px solid var(--line); margin-top:25px; padding-top:15px; }
.free-edit h2 { font-size:24px; }
.free-form-actions { display:flex; align-items:center; gap:25px; font-size:var(--font-control); }
.deleted-message { color:var(--muted); font-size:var(--font-body); }
.closed-notice { border:1px solid var(--line); padding:30px; background:#fff; margin:35px 0; }
.closed-notice p { font-size:var(--font-body); }
.closed-notice a { color:#6c527c; font-size:var(--font-control); }
.free-page .board-message.success { background:#edf6ef; color:#315b3d; border-color:#afc7b6; }
.free-page .board-message.error { background:#fff0f3; color:#853c50; border-color:#cfacb6; }
.free-page .board-pagination a { background:#fff; color:#6c527c; border-color:var(--line); }
@media(max-width:900px) { .free-hero { gap:30px; grid-template-columns:1.4fr 1fr; } .free-hero-note { padding:22px; } .free-thread-row { padding:24px; } }
@media(max-width:650px) {
  .free-hero { grid-template-columns:1fr; padding:40px 0; gap:28px; } .free-hero h1 { font-size:36px; } .free-hero-note { padding:22px; } .conversation-art { display:none; }
  .free-hero-note p { margin:12px 0; } .free-hero-actions { gap:18px; }
  .free-list-section { padding:35px 0; } .free-filters { padding:18px; gap:16px; } .free-filters>div { flex-basis:100%; min-width:0; } .free-filters .free-search { flex-basis:100%; }
  .free-thread-row { flex-direction:column; align-items:stretch; gap:15px; padding:20px; } .thread-row-stats { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; min-width:0; text-align:left; } .reply-count { margin:0; } .reply-count b { font-size:26px; }
  .thread-row-stats a { font-size:12px; } .free-compose { padding:22px; } .free-compose h2 { font-size:25px; } .free-form-row { gap:0 20px; } .free-form-row .form-field { flex-basis:100%; } .free-checkbox { margin-bottom:15px; }
  .thread-heading { padding-top:30px; } .thread-heading-actions { gap:16px; } .free-message { padding:20px; } .free-message-heading { gap:10px; } .message-dates span { text-align:left; } .free-message-tools { gap:16px; } .free-message-tools details { flex-basis:100%; }
  .free-page input,.free-page select,.free-page textarea { font-size:16px; } .closed-notice { padding:22px; }
}
