/* PaidStories: ink green on manuscript cream, a brass ribbon for emphasis. Newsreader for headings and reading,
   Schibsted Grotesk for the interface, DM Mono for rates, word counts and dates. */
:root { --paper:#F7F3EA; --sheet:#FFFDF8; --ink:#17332B; --ink2:#2C4A40; --soft:#5B6B63; --line:#E3DCCB; --rule:#EDE6D5; --brass:#B7862C; --brass-d:#7A5A14; --brass-l:#F1E3C2; --open:#1F6B45; --open-l:#DCEFE3; --shut:#8A3B2E; --shut-l:#F5E1DC; --soon:#7A5A14; --soon-l:#F6EBCF; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body { margin:0; background:var(--paper); color:var(--ink); font:400 17px/1.6 'Schibsted Grotesk',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-underline-offset:3px; text-decoration-thickness:1px; }
a:hover { color:var(--brass-d); }
h1, h2, h3 { font-family:'Newsreader',Georgia,serif; font-weight:600; letter-spacing:-.015em; font-optical-sizing:auto; }
img, svg { max-width:100%; }
.mono, .rate { font-family:'DM Mono',ui-monospace,monospace; }
.wrap { max-width:1200px; margin:0 auto; padding:0 24px; }
:focus-visible { outline:3px solid var(--brass); outline-offset:3px; }
.skip { position:absolute; left:-999px; top:8px; background:#fff; padding:8px 12px; z-index:10; }
.skip:focus { left:8px; }
.vh { position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* header */
.site-head { background:rgba(247,243,234,.94); backdrop-filter:blur(8px); position:sticky; top:0; z-index:5; border-bottom:1px solid var(--line); }
.site-head .wrap { display:flex; align-items:center; gap:26px; height:68px; }
.brand { display:flex; align-items:center; gap:9px; text-decoration:none; font:600 25px/1 'Newsreader',Georgia,serif; letter-spacing:-.02em; color:var(--ink); }
.brand svg { width:34px; height:34px; flex:none; }
.brand i { font-style:italic; font-weight:500; }
.brand:hover { color:var(--ink); }
.site-head nav { display:flex; gap:22px; margin-left:auto; font-size:15px; font-weight:500; }
.site-head nav a { text-decoration:none; color:var(--soft); padding:6px 0; border-bottom:2px solid transparent; white-space:nowrap; }
.site-head nav a:hover { color:var(--ink); }
.site-head nav a[aria-current] { color:var(--ink); border-color:var(--brass); }
.menu-toggle { display:none; margin-left:auto; background:none; border:1.5px solid var(--ink); border-radius:8px; padding:7px 12px; font:500 14px 'Schibsted Grotesk',sans-serif; color:var(--ink); }

/* buttons */
.btn { display:inline-block; text-decoration:none; font-weight:600; font-size:15px; padding:11px 18px; border-radius:8px; background:var(--ink); color:var(--paper); border:1.5px solid var(--ink); cursor:pointer; font-family:inherit; line-height:1.3; }
.btn:hover { background:var(--ink2); color:var(--paper); }
.btn.ghost { background:transparent; color:var(--ink); }
.btn.ghost:hover { background:var(--sheet); color:var(--ink); }
.btn.brass { background:var(--brass); border-color:var(--brass); color:#1C1405; }
.btn.small { padding:7px 12px; font-size:14px; }
.btns { display:flex; gap:10px; flex-wrap:wrap; }

/* page sections */
.intro { padding:56px 0 28px; }
.intro h1 { font-size:clamp(36px,5vw,62px); line-height:1.02; margin:0 0 14px; max-width:16em; }
.intro p { font-size:19px; color:var(--soft); max-width:40em; margin:0; }
.kicker { font:500 13px/1 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; color:var(--brass-d); margin:0 0 14px; }
.sec { padding:64px 0; }
.sec h2 { font-size:clamp(28px,3.4vw,42px); line-height:1.06; margin:0 0 12px; }
.sec h3 { font-size:22px; margin:0 0 6px; }
.lede { font-size:18px; color:var(--soft); max-width:42em; margin:0 0 30px; }
.soft { color:var(--soft); }
.g2 { display:grid; grid-template-columns:1fr 1fr; gap:22px; } .g3 { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.card { background:var(--sheet); border:1px solid var(--line); border-radius:12px; padding:24px; }
.card h3 { margin:0 0 6px; } .card p { margin:0; color:var(--soft); }
.card a.more { display:inline-block; margin-top:12px; font-weight:600; }

/* home hero */
.hero { padding:60px 0 48px; display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center; }
.hero h1 { font-size:clamp(40px,5.6vw,72px); line-height:.98; margin:0 0 18px; }
.hero h1 em { font-style:italic; font-weight:500; color:var(--brass-d); }
.hero p { font-size:19px; color:var(--soft); max-width:34em; margin:0 0 26px; }
.ratecard { background:var(--sheet); border:1px solid var(--line); border-radius:4px; box-shadow:0 1px 0 var(--line), 0 18px 40px -24px rgba(23,51,43,.35); padding:22px 26px 18px; position:relative; }
.ratecard::before { content:''; position:absolute; left:46px; top:0; bottom:0; width:1px; background:#E9C9C1; }
.ratecard h2 { font:500 13px/1 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; color:var(--soft); margin:0 0 16px; padding-left:34px; }
.ratecard ol { list-style:none; margin:0 -26px 0 -26px; padding:0 26px 0 60px; background-image:repeating-linear-gradient(transparent 0 35px, var(--rule) 35px 36px); }
.ratecard li { display:flex; align-items:baseline; gap:12px; height:36px; font-size:16px; }
.ratecard li a { text-decoration:none; font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.ratecard li .dots { flex:1; border-bottom:1.5px dotted #C9BFA8; transform:translateY(-4px); min-width:12px; }
.ratecard li .rate { font-size:15px; color:var(--ink); white-space:nowrap; }
.ratecard .foot { font-size:13px; color:var(--soft); margin:10px 0 0; padding-left:34px; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.stats div { padding:22px 20px; border-left:1px solid var(--line); }
.stats div:first-child { border-left:0; padding-left:0; }
.stats b { display:block; font:500 34px/1 'DM Mono',monospace; letter-spacing:-.03em; margin-bottom:6px; }
.stats span { color:var(--soft); font-size:15px; }

/* status pills */
.pill { display:inline-block; font:500 12.5px/1 'DM Mono',monospace; padding:5px 8px; border-radius:4px; white-space:nowrap; vertical-align:middle; }
.pill.open { background:var(--open-l); color:var(--open); }
.pill.closed { background:var(--shut-l); color:var(--shut); }
.pill.check { background:var(--soon-l); color:var(--soon); }
.pill.fee { background:transparent; border:1px solid var(--brass); color:var(--brass-d); padding:4px 7px; }
.pill.kind { background:transparent; border:1px solid var(--line); color:var(--soft); }

/* markets list */
.filters { background:var(--sheet); border:1px solid var(--line); border-radius:12px; padding:18px 20px; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px 16px; align-items:end; }
.filters label { display:flex; flex-direction:column; gap:5px; font-size:13px; font-weight:600; color:var(--soft); }
.filters select, .filters input[type=number], .filters input[type=search], .form input, .form select, .form textarea { font:inherit; font-size:15px; color:var(--ink); background:#fff; border:1.5px solid var(--line); border-radius:7px; padding:9px 10px; width:100%; min-width:0; }
.filters select:focus, .filters input:focus, .form input:focus, .form select:focus, .form textarea:focus { border-color:var(--ink); outline:none; box-shadow:0 0 0 3px var(--brass-l); }
.filters .checks { grid-column:span 5; display:flex; gap:16px; flex-wrap:wrap; align-items:center; padding-bottom:8px; }
.filters .checks label { flex-direction:row; align-items:center; gap:7px; color:var(--ink); font-size:15px; font-weight:500; }
.filters .checks input { width:18px; height:18px; accent-color:var(--ink); }
.filters .search { grid-column:span 2; }
.count { margin:18px 0 10px; color:var(--soft); font-size:15px; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.count b { color:var(--ink); }
.mlist { list-style:none; margin:0; padding:0; border-top:1px solid var(--line); }
.mlist > li { display:grid; grid-template-columns:minmax(0,2.2fr) 1.1fr 1fr 1fr; gap:16px; padding:16px 4px; border-bottom:1px solid var(--line); align-items:center; }
.mlist > li[hidden] { display:none; }
.mlist .name a { font:600 20px/1.2 'Newsreader',Georgia,serif; text-decoration:none; }
.mlist .name a:hover { text-decoration:underline; }
.mlist .name small { display:block; color:var(--soft); font-size:14px; margin-top:3px; }
.mlist .pay { font-family:'DM Mono',monospace; font-size:15px; }
.mlist .pay small, .mlist .len small { display:block; font-family:'Schibsted Grotesk',sans-serif; color:var(--soft); font-size:13px; }
.mlist .len { font-family:'DM Mono',monospace; font-size:14px; }
.mlist .st { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.mlist .head { font:500 12px/1 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.06em; color:var(--soft); padding:10px 4px; }
.empty { padding:30px 0; color:var(--soft); }

/* market page */
.crumbs { font-size:14px; color:var(--soft); margin:28px 0 0; }
.crumbs a { color:var(--soft); }
.mhead { padding:18px 0 26px; border-bottom:1px solid var(--line); }
.mhead h1 { font-size:clamp(34px,4.6vw,56px); line-height:1.02; margin:10px 0 12px; }
.mhead .tags { display:flex; gap:8px; flex-wrap:wrap; }
.mgrid { display:grid; grid-template-columns:1.5fr 1fr; gap:40px; padding:32px 0 60px; align-items:start; }
dl.facts { margin:0; display:grid; grid-template-columns:200px 1fr; border-top:1px solid var(--line); }
dl.facts dt, dl.facts dd { margin:0; padding:13px 0; border-bottom:1px solid var(--line); }
dl.facts dt { font-weight:600; font-size:15px; color:var(--soft); padding-right:14px; }
dl.facts dd .rate { font-size:16px; }
.side { position:sticky; top:90px; display:flex; flex-direction:column; gap:16px; }
.verify { background:var(--sheet); border:1px solid var(--line); border-left:4px solid var(--brass); border-radius:8px; padding:18px 20px; font-size:15px; }
.verify p { margin:0 0 10px; } .verify p:last-child { margin:0; }

/* prose (guides, legal) */
.prose { max-width:44em; }
.prose h1 { font-size:clamp(34px,4.4vw,54px); line-height:1.04; margin:0 0 18px; }
.prose h2 { font-size:clamp(24px,2.6vw,32px); margin:40px 0 10px; line-height:1.12; }
.prose h3 { font-size:21px; margin:28px 0 6px; }
.prose p, .prose li { font-family:'Newsreader',Georgia,serif; font-size:19px; line-height:1.6; color:#20352E; }
.prose ul, .prose ol { padding-left:22px; } .prose li { margin:6px 0; }
.prose table { border-collapse:collapse; width:100%; font-size:15px; background:var(--sheet); margin:18px 0; }
.prose th, .prose td { border:1px solid var(--line); padding:8px 10px; text-align:left; vertical-align:top; }
.prose th { background:var(--brass-l); font-weight:600; }
.prose .tablewrap { overflow-x:auto; }
.note { background:var(--sheet); border:1px solid var(--line); border-left:4px solid var(--brass); border-radius:8px; padding:16px 20px; font-size:16px; }
.note p { font-family:'Schibsted Grotesk',sans-serif; font-size:16px; margin:0; }
details { background:var(--sheet); border:1px solid var(--line); border-radius:10px; padding:14px 20px; margin:10px 0; }
details summary { font-weight:600; cursor:pointer; font-size:17px; }
details p { margin:10px 0 0; color:#20352E; }

/* tracker */
.tabs { display:flex; gap:4px; border-bottom:1px solid var(--line); margin:0 0 22px; overflow-x:auto; }
.tabs button { font:600 15px 'Schibsted Grotesk',sans-serif; background:none; border:0; border-bottom:2px solid transparent; padding:10px 14px; color:var(--soft); cursor:pointer; white-space:nowrap; }
.tabs button[aria-selected=true] { color:var(--ink); border-color:var(--brass); }
.panel[hidden] { display:none; }
.form { background:var(--sheet); border:1px solid var(--line); border-radius:12px; padding:18px 20px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 14px; align-items:end; margin-bottom:22px; }
.form label { display:flex; flex-direction:column; gap:5px; font-size:13px; font-weight:600; color:var(--soft); }
.form .wide { grid-column:span 2; } .form .full { grid-column:1 / -1; }
.form .actions { grid-column:1 / -1; display:flex; gap:10px; flex-wrap:wrap; }
.form h2 { grid-column:1 / -1; font-size:22px; margin:0; }
.tablewrap { overflow-x:auto; border:1px solid var(--line); border-radius:10px; background:var(--sheet); }
table.tt { border-collapse:collapse; width:100%; font-size:15px; }
table.tt th, table.tt td { padding:10px 12px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
table.tt th { font:500 12px/1.2 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.05em; color:var(--soft); background:var(--paper); white-space:nowrap; }
table.tt td.num { font-family:'DM Mono',monospace; font-size:14px; white-space:nowrap; }
table.tt tr:last-child td { border-bottom:0; }
table.tt .rowbtns { white-space:nowrap; }
table.tt .rowbtns button { font:500 13px 'Schibsted Grotesk',sans-serif; background:none; border:1px solid var(--line); border-radius:6px; padding:4px 8px; cursor:pointer; color:var(--ink); }
table.tt .rowbtns button:hover { border-color:var(--ink); }
.st-pending { color:var(--soon); } .st-accepted, .st-published { color:var(--open); font-weight:600; } .st-rejected, .st-withdrawn { color:var(--soft); }
.warns { margin:0 0 18px; display:flex; flex-direction:column; gap:8px; }
.warn { background:var(--soon-l); border-left:4px solid var(--brass); border-radius:6px; padding:10px 14px; font-size:15px; }
.warn.good { background:var(--open-l); border-color:var(--open); }
.tstats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:22px; }
.tstats div { background:var(--sheet); border:1px solid var(--line); border-radius:10px; padding:16px 18px; }
.tstats b { display:block; font:500 28px/1 'DM Mono',monospace; margin-bottom:6px; }
.tstats span { color:var(--soft); font-size:14px; }
.bars { display:flex; flex-direction:column; gap:8px; }
.bars div { display:grid; grid-template-columns:120px 1fr 40px; gap:10px; align-items:center; font-size:14px; }
.bars i { display:block; height:12px; background:var(--ink); border-radius:2px; min-width:2px; }
.io { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin:26px 0 0; padding-top:20px; border-top:1px solid var(--line); }
.msg { min-height:24px; font-size:15px; color:var(--open); margin-top:10px; }
.msg.err { color:var(--shut); }

/* footer */
.site-foot { border-top:1px solid var(--line); padding:52px 0 36px; font-size:15px; color:var(--soft); background:var(--paper); }
.site-foot .cols { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:30px; }
.site-foot h2 { font:600 14px 'Schibsted Grotesk',sans-serif; letter-spacing:0; color:var(--ink); margin:0 0 12px; }
.site-foot ul { list-style:none; margin:0; padding:0; } .site-foot li { margin:6px 0; }
.site-foot a { text-decoration:none; } .site-foot a:hover { color:var(--ink); }
.site-foot .legal { border-top:1px solid var(--line); margin-top:36px; padding-top:18px; display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; font-size:13px; }
.site-foot .legal a { text-decoration:underline; }
.band { background:var(--ink); color:var(--paper); border-radius:14px; padding:44px; display:grid; grid-template-columns:1.4fr auto; gap:30px; align-items:center; }
.band h2 { margin:0 0 8px; font-size:clamp(26px,3vw,38px); color:var(--paper); } .band p { margin:0; color:#C9D4CE; max-width:36em; }
.contact-g { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
.big-link { display:block; font:600 clamp(24px,3vw,34px)/1.15 'Newsreader',Georgia,serif; text-decoration:none; overflow-wrap:anywhere; }

@media (max-width:1100px) { .filters { grid-template-columns:repeat(3,minmax(0,1fr)); } .filters .checks, .filters .search { grid-column:span 3; } }
@media (max-width:980px) {
  .menu-toggle { display:block; }
  .site-head nav { display:none; position:absolute; top:68px; left:0; right:0; background:var(--paper); flex-direction:column; gap:0; padding:8px 24px 18px; border-bottom:1px solid var(--line); }
  .site-head nav.open { display:flex; } .site-head nav a { padding:12px 0; border-bottom:1px solid var(--line); }
  .hero, .mgrid, .contact-g, .g3 { grid-template-columns:1fr; } .hero { gap:32px; padding-top:40px; }
  .side { position:static; }
  .band { grid-template-columns:1fr; padding:30px 22px; } .site-foot .cols { grid-template-columns:1fr 1fr; }
  .mlist > li { grid-template-columns:1fr 1fr; gap:8px 14px; } .mlist .name { grid-column:1 / -1; } .mlist .st { grid-column:1 / -1; justify-content:flex-start; } .mlist .head { display:none !important; }
  .form { grid-template-columns:1fr 1fr; } .tstats { grid-template-columns:1fr 1fr; }
}
@media (max-width:620px) {
  .wrap { padding:0 16px; }
  .stats { grid-template-columns:1fr 1fr; } .stats div:nth-child(3) { border-left:0; padding-left:0; } .stats div { border-top:1px solid var(--line); } .stats div:nth-child(-n+2) { border-top:0; }
  .filters { grid-template-columns:1fr 1fr; padding:14px; } .filters .checks, .filters .search { grid-column:1 / -1; }
  .g2 { grid-template-columns:1fr; }
  dl.facts { grid-template-columns:1fr; } dl.facts dt { border-bottom:0; padding-bottom:0; } dl.facts dd { padding-top:4px; }
  .form { grid-template-columns:1fr; } .form .wide { grid-column:auto; }
  .ratecard { padding:18px 16px 14px; } .ratecard::before { left:28px; } .ratecard h2, .ratecard .foot { padding-left:22px; } .ratecard ol { margin:0 -16px; padding:0 16px 0 38px; }
  .ratecard li { font-size:15px; }
  .site-foot .cols { grid-template-columns:1fr; }
  .bars div { grid-template-columns:90px 1fr 32px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
label.btn:focus-within { outline:3px solid var(--brass); outline-offset:3px; }
.hero > * { min-width:0; }
/* the rate card fills in line by line, like entries in a ledger */
@media (prefers-reduced-motion:no-preference) {
  .ratecard li { animation:ledger .5s cubic-bezier(.2,.7,.2,1) both; }
  .ratecard li .dots { animation:rule .7s cubic-bezier(.2,.7,.2,1) both; transform-origin:left; }
  .ratecard li:nth-child(2), .ratecard li:nth-child(2) .dots { animation-delay:.07s; } .ratecard li:nth-child(3), .ratecard li:nth-child(3) .dots { animation-delay:.14s; }
  .ratecard li:nth-child(4), .ratecard li:nth-child(4) .dots { animation-delay:.21s; } .ratecard li:nth-child(5), .ratecard li:nth-child(5) .dots { animation-delay:.28s; }
  .ratecard li:nth-child(6), .ratecard li:nth-child(6) .dots { animation-delay:.35s; } .ratecard li:nth-child(7), .ratecard li:nth-child(7) .dots { animation-delay:.42s; }
  .ratecard li:nth-child(8), .ratecard li:nth-child(8) .dots { animation-delay:.49s; }
}
@keyframes ledger { from { opacity:0; transform:translateY(6px); } }
@keyframes rule { from { transform:translateY(-4px) scaleX(0); } to { transform:translateY(-4px) scaleX(1); } }
p.kicker, .intro p.kicker, .hero p.kicker { font:500 13px/1.3 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; color:var(--brass-d); margin:0 0 14px; }
.tablewrap { position:relative; }
.form [hidden] { display:none; }
@media (max-width:620px) {
  table.tt thead { display:none; }
  table.tt, table.tt tbody, table.tt tr, table.tt td { display:block; }
  table.tt tr { padding:12px 14px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr 1fr; gap:4px 12px; }
  table.tt tr:last-child { border-bottom:0; }
  table.tt td { border:0; padding:0; }
  table.tt td[data-l]::before { content:attr(data-l); display:block; font:500 11px/1.4 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.05em; color:var(--soft); }
  table.tt td[data-l]:empty { display:none; }
  table.tt td[data-l="Story"], table.tt td[data-l="Title"] { grid-column:1 / -1; font-weight:600; }
  table.tt td[data-l="Story"]::before, table.tt td[data-l="Title"]::before { display:none; }
  table.tt .rowbtns, table.tt td[colspan] { grid-column:1 / -1; margin-top:6px; }
}
.wrap.prose { max-width:1200px; } .wrap.prose > * { max-width:44rem; } .wrap.prose > h1 { max-width:none; }
