/* ── THE THREE DESKS IN TODAY'S CLOTHES — hers, 22 September 2026 ──────────
 * The young person's, the neighbour's and the business's desk wear the front
 * page: white with a pink glow behind it, baby pink and neon magenta, lacquered
 * plates, the neon tube round the sign, the glossy message box as every press.
 * Loaded last on those pages, so it wins. */

:root { --uv-ink:#111; --uv-mute:#6b6068; --uv-baby:#FFEFF5; --uv-neon:#E90255; --uv-neon-lit:#FF2E7E; --uv-neon-deep:#C80047; --uv-key:rgba(233,2,85,.14); }

body:has(main.build), body:has(main.place) { background:#fff !important; }
main.build, main.place { max-width:1180px !important; padding-left:1rem !important; padding-right:1rem !important; padding-top:1.4rem !important;
  background:
    radial-gradient(60% 40% at 15% 0%, rgba(255,111,168,.30), transparent 70%),
    radial-gradient(50% 35% at 100% 40%, rgba(233,2,85,.12), transparent 70%),
    linear-gradient(180deg,#fff 0%, #FFEFF5 100%); border-radius:0; }
main.build { max-width:1180px !important; }
@media (min-width:900px){ main.build { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1.4rem; align-items:start; }
  main.build > .build-held, main.build > .desk, main.build > #today, main.build > .room-card--today, main.build > .candy, main.build > .shed, main.build > .support, main.build > .face, main.build > .opening, main.build > .hers, main.build > .say, main.build > .build-road, main.build > #reach, main.build > #free, main.build > .room-card--quiet, main.build > .badges { grid-column:1 / -1; }
}
@media (min-width:900px){ main.place > .desk, main.place > .candy, main.place > .support, main.place > .shifts { grid-column:1 / -1; } }

/* type: Outfit for every heading, Manrope under it, ink not magenta */
main.build, main.place, main.build p, main.place p, main.build label, main.place label { font-family:'Manrope',sans-serif; color:var(--uv-ink); }
main.build h1, main.build h2, main.build h3, main.place h1, main.place h2, main.place h3, .room-head, .badges-head, .shed-head, .support-head, .face-head, .candy-name, .desk-press-name, .switch-name, .support-name, .kept-name, .found-name {
  font-family:'Outfit',sans-serif !important; font-weight:600 !important; font-style:normal !important; text-transform:none !important; letter-spacing:-.02em; color:var(--uv-ink) !important; }
.room-head { font-size:clamp(20px,2.2vw,24px) !important; margin:0 0 .8rem !important; line-height:1.1; }
.build-held { grid-column:1 / -1; margin:0 0 .8rem; color:var(--uv-mute); font-size:14px; }
.build-held .build-tick { background:var(--uv-neon); color:#fff; border-radius:999px; padding:.2rem .6rem; font-weight:700; font-size:12px; }

/* the desk itself */
.desk { margin:0 0 1.2rem !important; text-align:center; }
.desk-eyebrow { color:var(--uv-neon) !important; font:700 12px/1 'Manrope',sans-serif !important; letter-spacing:.16em; text-transform:uppercase; margin:.2rem 0 .9rem !important; }
.desk-sign { margin:0 !important; text-shadow:none !important; font-size:0 !important; line-height:1; }
.desk-sign .neon { display:inline-block; position:relative; isolation:isolate; padding:.42em .85em .5em; margin:0 auto; color:var(--uv-neon-deep) !important; font-family:'Outfit',sans-serif !important; font-weight:600 !important; font-style:normal !important; font-size:clamp(34px,5.2vw,58px) !important; letter-spacing:-.025em; line-height:1; text-transform:none !important; background:none !important; box-shadow:none !important; border:0 !important; }
.desk-sign .neon .say { font-family:inherit !important; font-weight:700 !important; font-style:normal !important; font-size:inherit !important; text-transform:none !important; letter-spacing:inherit; color:var(--uv-neon) !important; }
.desk-sign .neon > .bub { position:absolute; left:0; top:0; overflow:visible; z-index:-1; pointer-events:none; filter:drop-shadow(0 0 12px rgba(255,46,126,.5)); }
.desk-where { margin:1.4rem 0 0 !important; color:var(--uv-mute) !important; font:600 14px/1.3 'Manrope',sans-serif !important; letter-spacing:.02em; }
.desk-says { margin:.6rem auto 0 !important; max-width:40ch; color:var(--uv-ink) !important; font:400 clamp(15.5px,1.4vw,17px)/1.5 'Manrope',sans-serif !important; }
.desk-chips { margin:1.1rem 0 0 !important; gap:8px; }
.desk-chip { background:#fff !important; border:0 !important; color:var(--uv-ink) !important; font:700 12.5px/1 'Manrope',sans-serif !important; box-shadow:0 1px 0 #fff inset, 0 6px 16px rgba(233,2,85,.14), 0 1px 3px rgba(17,17,17,.05) !important; }
.desk-chip::before { background:var(--uv-neon) !important; box-shadow:0 0 8px rgba(233,2,85,.55) !important; }
.desk-chip--free::before { background:var(--uv-neon-lit) !important; box-shadow:0 0 8px rgba(255,46,126,.6) !important; }
.desk-chip--paying::before { background:var(--uv-neon-deep) !important; box-shadow:0 0 8px rgba(200,0,71,.6) !important; }
.desk-chip--wait::before, .desk-chip--busy::before { background:#FFB300 !important; box-shadow:0 0 8px rgba(255,179,0,.6) !important; }
.desk-presses { margin:1.4rem 0 0 !important; gap:.8rem 1rem !important; justify-items:center; }
@media (min-width:640px){ .desk-presses { grid-template-columns:repeat(3,auto) !important; justify-content:center; } }
.desk-press, .desk-press--mint, .desk-press--pink, .desk-press--sun { background:none !important; box-shadow:none !important; border:0 !important; border-radius:0 !important; color:#fff !important; padding:.85rem 1.3rem .9rem 1.1rem !important; position:relative; overflow:visible; isolation:isolate; width:auto; min-width:0; transform:none; transition:transform .25s ease; }
.desk-press:active, .desk-press--mint:active { transform:translateY(2px); box-shadow:none !important; }
.desk-press:hover { transform:translateY(-2px); }
.desk-press > .bub { position:absolute; left:0; top:0; overflow:visible; z-index:-1; pointer-events:none; filter:drop-shadow(0 8px 16px rgba(233,2,85,.35)); }
.desk-press .desk-mark, .desk-press--pink .desk-mark, .desk-press--sun .desk-mark { color:#fff !important; }
.desk-press-name { color:#fff !important; font-size:15.5px !important; }
.desk-press-line { color:rgba(255,255,255,.86) !important; font-family:'Manrope',sans-serif; opacity:1; }
.desk-shared { color:var(--uv-neon) !important; font-family:'Manrope',sans-serif !important; }

/* every plate lacquered, like the cards on the front */
.room-card, .badges, .shed, .support-one, .face, .opening, .candy-tile, .kept-one form, .place-dollar, .room-row {
  background:linear-gradient(180deg,#fff 0%,#FFF6FA 100%) !important; border:0 !important; border-radius:26px !important;
  box-shadow:0 1px 0 #fff inset, 0 -1px 0 rgba(233,2,85,.10) inset, 0 18px 40px rgba(233,2,85,.14), 0 2px 6px rgba(17,17,17,.05) !important; }
.room-card { padding:1.3rem 1.3rem 1.4rem !important; margin:0 0 1.4rem !important; }
.room-card--ask, .room-card--quiet, .face { background:linear-gradient(180deg,#FFF6FA 0%,#FFEFF5 100%) !important; border:0 !important; }
.room-row { border-radius:16px !important; box-shadow:0 8px 20px rgba(233,2,85,.10) !important; border-left:3px solid var(--uv-neon) !important; }
.room-row-who { color:var(--uv-neon) !important; font:700 12px/1 'Manrope',sans-serif !important; letter-spacing:.1em; text-transform:uppercase; }
.room-row-words, .room-empty, .badges-says, .shed-says, .support-line, .face-why, .candy-line, .switch-line, .them-reach, .week-words, .found-week, .badges-after { color:var(--uv-mute) !important; font-family:'Manrope',sans-serif !important; }
.room-empty { font-size:15px; }
.room-card label:not(.switch), .askback-label, .place label:not(.switch), .week-day, .week-part, .moment-count { color:var(--uv-neon) !important; font-family:'Manrope',sans-serif !important; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:11.5px; }
.seek-in, .room-card input:not([type=checkbox]):not([type=radio]), .room-card textarea, .place input:not([type=checkbox]):not([type=radio]), .place textarea, .letter { background:#fff !important; border:0 !important; border-radius:14px !important; color:var(--uv-ink) !important; font-family:'Manrope',sans-serif !important; box-shadow:inset 0 0 0 1.5px var(--uv-key), 0 4px 12px rgba(233,2,85,.06) !important; }
.seek-in:focus, .room-card input:focus, .room-card textarea:focus, .place input:focus, .place textarea:focus { outline:0 !important; box-shadow:inset 0 0 0 2px var(--uv-neon), 0 0 0 4px rgba(233,2,85,.14) !important; }

/* the candy: small lacquered plates with the magenta rule */
.candy { gap:.8rem !important; margin:0 0 1.4rem !important; }
@media (min-width:900px){ .candy { grid-template-columns:repeat(4,1fr) !important; } .candy-tile:last-child:nth-child(odd) { grid-column:auto !important; } }
.candy-tile { min-height:112px; padding:16px 15px 14px !important; border-radius:22px !important; transition:transform .25s ease, box-shadow .25s ease; }
.candy-tile::before { height:4px !important; background:linear-gradient(90deg,#FF7AB2,var(--uv-neon)) !important; }
.candy-tile:hover { transform:translateY(-4px); box-shadow:0 26px 50px rgba(233,2,85,.22), 0 2px 6px rgba(17,17,17,.05) !important; }
.candy-name { font-size:16px !important; }

/* switches, week, reach, badges — magenta where they were red or purple */
.switch, .room-card label.switch, .place label.switch:not(.vh) { background:#fff !important; border:0 !important; border-radius:16px !important; box-shadow:0 8px 20px rgba(233,2,85,.10) !important; }
.switch-knob { background:#F3DCE5 !important; }
.switch input:checked + .switch-knob { background:linear-gradient(180deg,var(--uv-neon-lit),var(--uv-neon)) !important; }
.switch input:focus-visible + .switch-knob { outline:2px solid var(--uv-neon) !important; }
.week-cell { border:0 !important; box-shadow:inset 0 0 0 1.5px var(--uv-key) !important; border-radius:10px !important; }
.week-cell.is-on, .week--mine .week-cell:has(input:checked) { background:linear-gradient(180deg,var(--uv-neon-lit),var(--uv-neon)) !important; box-shadow:0 6px 14px -4px rgba(233,2,85,.6) !important; }
.week-words { border-left-color:var(--uv-neon) !important; }
.reach-choice { border:1.5px solid var(--uv-key) !important; border-radius:14px !important; color:var(--uv-ink) !important; font-family:'Manrope',sans-serif !important; background:#fff !important; }
.reach-choice.is-on { background:linear-gradient(180deg,var(--uv-neon-lit),var(--uv-neon)) !important; border-color:transparent !important; color:#fff !important; }
.badge.is-on { background:linear-gradient(180deg,var(--uv-neon-lit),var(--uv-neon)) !important; color:#fff !important; }
.badge.is-off { color:var(--uv-mute) !important; border:1px solid var(--uv-key) !important; }
.badge.is-mark { background:var(--uv-baby) !important; color:var(--uv-neon-deep) !important; }
.badge { font-family:'Manrope',sans-serif !important; }

/* the shed's books, in the magenta family with a real spine */
.shed { padding:clamp(20px,4vw,30px) !important; }
.book { border-radius:6px 14px 14px 6px !important; box-shadow:0 14px 28px -8px rgba(200,0,71,.45), 0 2px 4px rgba(17,17,17,.08) !important; }
.book--welcome{--book:#E90255} .book--builder{--book:#FF2E7E} .book--practice{--book:#FF5C8F} .book--pricing{--book:#C80047} .book--door{--book:#FF7AB2} .book--paid{--book:#E90255}
.book--soon { filter:none !important; opacity:.78 !important; }
.book-title, .book-take { font-family:'Outfit',sans-serif !important; }

/* the presses: the glossy message box, never a black pill, never full width */
.room-go, .press:not(.bar-burger), .place button[type="submit"], .comeback button[type="submit"], .opening-go, .askback-go, .support-go, .found-go.hers-plate .found-plate .found-go, .place-dollar-go, .build-go, .quiet-go {
  display:inline-block !important; width:auto !important; min-height:0 !important; margin:1rem 0 0 !important; padding:.85rem 1.35rem .9rem !important;
  background:none !important; box-shadow:none !important; border:0 !important; border-radius:0 !important; color:#fff !important; text-decoration:none !important;
  font:700 15.5px/1.2 'Outfit',sans-serif !important; letter-spacing:0; text-transform:none !important; position:relative; overflow:visible; isolation:isolate; cursor:pointer; transition:transform .25s ease; }
.support-go { padding:.6rem 1rem .65rem !important; font-size:14px !important; margin:.2rem 0 0 !important; }
.room-go:hover, .press:not(.bar-burger):hover, .support-go:hover { transform:translateY(-2px); background:none !important; }
.room-go:active, .press:not(.bar-burger):active { transform:translateY(1px); }
.room-go > .bub, .press > .bub, .support-go > .bub, .place-dollar-go > .bub, .opening-go > .bub, .askback-go > .bub, .comeback button > .bub, .place button[type="submit"] > .bub { position:absolute; left:0; top:0; overflow:visible; z-index:-1; pointer-events:none; filter:drop-shadow(0 8px 16px rgba(233,2,85,.35)); }
.room-card--quiet a.room-go { color:#fff !important; }
.quiet-word, .room-card a:not(.room-go):not(.candy-tile):not(.book):not(.support-go):not(.desk-press), .place a.quiet, .face .quiet-word, .opening a { color:var(--uv-neon) !important; text-decoration-color:var(--uv-neon-lit); }

/* the dollar plate on a neighbour's desk: baby pink, not dark */
.place-dollar { background:linear-gradient(180deg,#fff 0%,#FFEFF5 100%) !important; color:var(--uv-ink) !important; padding:1.3rem 1.3rem 1.4rem !important; }
.place-dollar .place-dollar-word { color:var(--uv-neon) !important; font:700 12px/1 'Manrope',sans-serif !important; letter-spacing:.14em; text-transform:uppercase; }
.place-dollar p { color:var(--uv-ink) !important; }

/* the atelier's said-line rule on the front reached the young person's own-say section: undo it */
main.build section.say, main.build section.say * { font-family:'Manrope',sans-serif; font-weight:400; font-style:normal; text-transform:none; letter-spacing:0; line-height:1.5; font-size:15.5px; color:var(--uv-ink); }
main.build section.say h2, main.build section.say h3, main.build section.say .room-head { font-family:'Outfit',sans-serif !important; font-weight:600 !important; font-size:clamp(20px,2.2vw,24px) !important; letter-spacing:-.02em; line-height:1.1; }
main.build section.say strong, main.build section.say b { font-weight:700; }
main.build section.say .room-card, main.build section.say form { background:linear-gradient(180deg,#fff 0%,#FFF6FA 100%); border-radius:22px; box-shadow:0 12px 30px rgba(233,2,85,.12); }

/* the sign preview keeps its own sign; its said name in magenta */
.hers .found-name .say { color:var(--uv-neon) !important; }
.hers-under { color:var(--uv-mute) !important; font-family:'Manrope',sans-serif !important; }

/* the road at the foot */
.build-road { color:var(--uv-mute); font-family:'Manrope',sans-serif; }
.build-road a { color:var(--uv-neon); }

/* a business's shifts */
.shifts .room-head { margin-top:.4rem; }

/* the name stays on the sign's one line (the front's .say is a grid); the books never go muddy */
.desk-sign .neon .say { display:inline !important; margin:0 0 0 .22em; }
.desk-sign .neon { white-space:nowrap; }
.book { background:linear-gradient(135deg, var(--book) 0%, color-mix(in srgb, var(--book) 78%, #7A0026) 100%) !important; }
.book-spine { background:linear-gradient(90deg, rgba(120,0,40,.35), rgba(255,255,255,.22) 40%, rgba(120,0,40,.25)) !important; }

/* the sign a neighbour sees, as a lacquered magenta plate rather than a lost nameplate picture */
.hers { margin:0 0 1.4rem; text-align:center; }
.hers .found-go.hers-plate { aspect-ratio:auto !important; background:radial-gradient(120% 90% at 20% 0%, #FF8CBB 0%, #FF2E7E 45%, #C80047 100%) !important; border-radius:26px !important; padding:1.8rem 1.4rem 2rem !important; max-width:34rem; margin:0 auto; overflow:hidden; box-shadow:0 1px 0 rgba(255,255,255,.4) inset, 0 18px 40px rgba(233,2,85,.28) !important; }
.hers .found-plate { position:static !important; inset:auto !important; }
.hers .found-name { color:#fff !important; font-size:clamp(28px,4vw,42px) !important; text-shadow:0 4px 14px rgba(120,0,40,.4) !important; }
.hers .found-name .say { display:inline !important; color:#fff !important; margin-left:.22em; font-weight:700 !important; }
.hers .found-where { color:rgba(255,255,255,.92) !important; font:700 12.5px/1.2 'Manrope',sans-serif !important; letter-spacing:.18em; text-transform:uppercase; margin-top:.5rem; }
.hers .found-does { color:#fff !important; font:500 15px/1.4 'Manrope',sans-serif !important; margin-top:.3rem; }
.hers-under { margin:.8rem 0 0 !important; opacity:1 !important; }
.place-dollar::before, .place-dollar::after { display:none !important; }
.desk-press-line { color:rgba(255,255,255,.9) !important; opacity:1 !important; }
.shed::before, .shed::after, .room-card::before, .badges::before { display:none !important; }
@media (max-width:639px){ .desk-presses { grid-template-columns:1fr !important; justify-items:stretch; } .desk-press { width:100% !important; justify-content:flex-start; } }

/* the atelier's boxes on the way to the desk: white, in ink — never black */
main.build input:not([type=checkbox]):not([type=radio]):not([type=file]), main.build textarea, main.build select { background:#fff !important; border:0 !important; border-radius:14px !important; color:var(--uv-ink) !important; font-family:'Manrope',sans-serif !important; box-shadow:inset 0 0 0 1.5px var(--uv-key), 0 4px 12px rgba(233,2,85,.06) !important; }
main.build input:focus, main.build textarea:focus { outline:0 !important; box-shadow:inset 0 0 0 2px var(--uv-neon), 0 0 0 4px rgba(233,2,85,.14) !important; }
main.build ::placeholder { color:#9a8f95 !important; }
.asit-name .say, .found-name .say { color:#fff !important; }

/* the agreement a business signs — 22 September 2026 */
.room-card--agree { grid-column:1 / -1; }
.agree-words { margin:.6rem 0 1rem; }
.agree-summary { cursor:pointer; font:700 14px/1.3 'Manrope',sans-serif; color:var(--uv-neon); list-style:none; padding:.2rem 0; }
.agree-summary::-webkit-details-marker { display:none; }
.agree-summary::before { content:"+"; display:inline-block; width:1.2em; }
.agree-words[open] .agree-summary::before { content:"–"; }
.agree-list { list-style:none; margin:.8rem 0 0; padding:0; display:grid; gap:.7rem; }
@media (min-width:820px){ .agree-list { grid-template-columns:repeat(3,1fr); } }
.agree-one { padding:1rem 1.05rem 1.1rem; border-radius:18px; background:#fff; box-shadow:0 8px 20px rgba(233,2,85,.10); }
.agree-head { font:600 16px/1.2 'Outfit',sans-serif !important; letter-spacing:-.015em; color:var(--uv-ink) !important; margin:0 0 .4rem !important; }
.agree-says { font:400 14px/1.5 'Manrope',sans-serif; color:var(--uv-mute); margin:0; }
.agree-form { margin-top:.4rem; }
.room-said { color:var(--uv-neon) !important; font:600 15px/1.4 'Manrope',sans-serif !important; }
