:root {
	--ink: #17211f;
	--muted: #68706c;
	--line: #dde1dc;
	--paper: #f5f5ef;
	--surface: #ffffff;
	--sidebar: #17231f;
	--sidebar-soft: #24342e;
	--acid: #d8f06b;
	--pastel-blue: #e3f1ff;
	--pastel-green: #e2f5e9;
	--pastel-yellow: #fff3bd;
	--pastel-pink: #f8e2f1;
	--pastel-violet: #ebe4ff;
	--bright-blue: #7db8ff;
	--bright-green: #a6df72;
	--bright-yellow: #f4dc55;
	--bright-pink: #ef91cc;
	--bright-violet: #a58be8;
	--shadow: 0 20px 60px rgba(26, 38, 32, 0.09);
	--radius-lg: 24px;
	--radius-md: 16px;
	--radius-sm: 10px;
	--release-footer-height: 38px;
	font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: var(--ink);
	background: var(--paper);
	font-synthesis: none;
}

* { box-sizing: border-box; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; padding-bottom: calc(var(--release-footer-height) + env(safe-area-inset-bottom, 0px)); background: radial-gradient(circle at 8% 7%, rgba(125,184,255,.20), transparent 27rem), radial-gradient(circle at 94% 12%, rgba(165,139,232,.16), transparent 25rem), var(--paper); }
button, input, select { font: inherit; }
button { color: inherit; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid rgba(112, 141, 50, .42); outline-offset: 2px; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 100; background: white; color: #111; padding: 12px 16px; border-radius: 8px; }
.skip-link:focus { top: 16px; }

.fido-intro { position: fixed; inset: 0; z-index: 1000; overflow: hidden; display: grid; place-items: center; background: #d8f06b; color: #17231f; animation: intro-curtain 5.2s linear forwards; }
.fido-intro::before { content: ""; position: absolute; width: min(78vw, 980px); aspect-ratio: 1; border-radius: 50%; border: 1px solid rgba(23,35,31,.12); box-shadow: 0 0 0 10vw rgba(255,255,255,.04), 0 0 0 20vw rgba(23,35,31,.025); }
.intro-stage { position: relative; width: min(92vw, 920px); height: min(48vw, 390px); min-height: 250px; display: grid; place-items: center; perspective: 1200px; perspective-origin: 50% 42%; transform-style: preserve-3d; }
.intro-word { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: .035em; font: 900 clamp(86px, 19vw, 230px)/.8 Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: -.075em; transform-style: preserve-3d; transform: rotateX(-4deg); }
.intro-letter { display: inline-block; transform-style: preserve-3d; transform: translate3d(var(--from-x), var(--from-y), var(--from-z)) rotateX(var(--from-rx)) rotateY(var(--from-ry)) rotateZ(var(--from-rz)) scale(.15); opacity: 0; filter: blur(14px); text-shadow: 0 1px 0 #a9bf4d, 0 2px 0 #a5bb4a, 0 3px 0 #a0b648, 0 4px 0 #9cb246, 0 5px 0 #97ad44, 0 6px 0 #93a942, 0 7px 0 #8fa440, 0 17px 28px rgba(23,35,31,.22); animation: intro-letter-arrive 2.45s .18s cubic-bezier(.16,1,.3,1) forwards; will-change: transform, opacity, filter; }
.intro-f { --from-x: -62vw; --from-y: -54vh; --from-z: -720px; --from-rx: 128deg; --from-ry: -72deg; --from-rz: -78deg; }
.intro-i { --from-x: 12vw; --from-y: 62vh; --from-z: 560px; --from-rx: -132deg; --from-ry: 48deg; --from-rz: 42deg; }
.intro-d { --from-x: 57vw; --from-y: -44vh; --from-z: -480px; --from-rx: 76deg; --from-ry: 146deg; --from-rz: 96deg; }
.intro-o { --from-x: -43vw; --from-y: 58vh; --from-z: 740px; --from-rx: -96deg; --from-ry: -122deg; --from-rz: -124deg; }
.intro-paw-trail { position: absolute; z-index: 2; inset: 0; pointer-events: none; }
.intro-paw { position: absolute; left: var(--paw-x); top: var(--paw-y); width: clamp(30px, 5.4vw, 60px); height: auto; color: var(--bright-violet); fill: currentColor; opacity: 0; filter: drop-shadow(0 10px 8px rgba(165,139,232,.28)); transform: translate3d(-50%, -50%, 90px) rotateX(18deg) rotateZ(var(--paw-r)) scale(.35); animation: intro-paw-step .52s var(--paw-delay) cubic-bezier(.2,.8,.3,1) forwards; }
.paw-1 { --paw-x: 18%; --paw-y: 63%; --paw-r: -22deg; --paw-delay: 2.72s; }
.paw-2 { --paw-x: 31%; --paw-y: 39%; --paw-r: 18deg; --paw-delay: 2.95s; }
.paw-3 { --paw-x: 44%; --paw-y: 61%; --paw-r: -19deg; --paw-delay: 3.18s; }
.paw-4 { --paw-x: 57%; --paw-y: 37%; --paw-r: 20deg; --paw-delay: 3.41s; }
.paw-5 { --paw-x: 70%; --paw-y: 59%; --paw-r: -17deg; --paw-delay: 3.64s; }
.paw-6 { --paw-x: 83%; --paw-y: 35%; --paw-r: 23deg; --paw-delay: 3.87s; }

@keyframes intro-letter-arrive {
	0% { transform: translate3d(var(--from-x), var(--from-y), var(--from-z)) rotateX(var(--from-rx)) rotateY(var(--from-ry)) rotateZ(var(--from-rz)) scale(.15); opacity: 0; filter: blur(14px); }
	70% { opacity: 1; filter: blur(0); }
	84% { transform: translate3d(0, 0, 30px) rotateX(-7deg) rotateY(5deg) rotateZ(0) scale(1.08); opacity: 1; filter: blur(0); }
	92% { transform: translate3d(0, 0, -8px) rotateX(2deg) rotateY(-2deg) rotateZ(0) scale(.97); }
	100% { transform: translate3d(0, 0, 0) rotateX(0) rotateY(0) rotateZ(0) scale(1); opacity: 1; filter: blur(0); }
}
@keyframes intro-paw-step {
	0% { opacity: 0; transform: translate3d(-50%, -50%, 160px) rotateX(42deg) rotateZ(var(--paw-r)) scale(.35); }
	42% { opacity: .96; transform: translate3d(-50%, -50%, 105px) rotateX(18deg) rotateZ(var(--paw-r)) scale(1.08); }
	72% { opacity: .96; transform: translate3d(-50%, -50%, 78px) rotateX(12deg) rotateZ(var(--paw-r)) scale(.96); }
	100% { opacity: .3; transform: translate3d(-50%, -50%, 54px) rotateX(8deg) rotateZ(var(--paw-r)) scale(.88); filter: drop-shadow(0 5px 5px rgba(23,35,31,.12)); }
}
@keyframes intro-curtain {
	0%, 90.3% { opacity: 1; visibility: visible; }
	100% { opacity: 0; visibility: hidden; pointer-events: none; }
}
.fido-intro.is-leaving { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .45s ease, visibility 0s .45s; }

.app-shell { min-height: calc(100vh - var(--release-footer-height)); display: grid; grid-template-columns: 252px minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: calc(100vh - var(--release-footer-height)); padding: 24px 22px 18px; overflow-y: auto; color: #f7faf4; background: var(--sidebar); display: flex; flex-direction: column; z-index: 20; }
.product-lockup { display:grid; gap:8px; padding:0 8px 28px; }
.product-logo { display:block; width:176px; height:auto; filter:drop-shadow(0 9px 18px rgba(0,0,0,.18)); }
.product-lockup span { display:block; color:#aebbb4; font-size:10px; font-weight:720; letter-spacing:.105em; text-transform:uppercase; }
.main-nav { display: grid; gap: 7px; }
.nav-item { border: 0; background: transparent; color: #b9c4bf; padding: 13px 14px; border-radius: 12px; display: flex; align-items: center; gap: 11px; text-align: left; cursor: pointer; font-weight: 650; transition: .2s ease; }
.nav-item:hover { background: rgba(255,255,255,.055); color: white; }
.nav-item.is-active { color: white; background: var(--sidebar-soft); box-shadow: inset 3px 0 var(--acid); }
.nav-icon { width: 22px; color: var(--acid); font-size: 19px; text-align: center; }
.nav-count { margin-left: auto; min-width: 24px; padding: 2px 7px; border-radius: 99px; background: rgba(216,240,107,.14); color: var(--acid); font-size: 11px; text-align: center; }
.new-nav-item .nav-count { background: var(--acid); color: var(--sidebar); }
.privacy-card { margin-top: auto; display: flex; gap: 10px; padding: 14px; border: 1px solid rgba(255,255,255,.09); border-radius: 13px; background: rgba(255,255,255,.035); }
.privacy-dot { width: 9px; height: 9px; margin-top: 4px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 0 5px rgba(216,240,107,.1); }
.privacy-card strong, .privacy-card span { display: block; }
.privacy-card strong { font-size: 12px; }
.privacy-card span { margin-top: 4px; color: #9eaaa4; font-size: 10px; line-height: 1.45; }
.sidebar-install { margin-top: 10px; border: 1px solid rgba(216,240,107,.26); border-radius: 10px; padding: 10px 12px; background: rgba(216,240,107,.08); color: var(--acid); cursor: pointer; font-size: 10px; font-weight: 760; text-align: left; }
.sidebar-install span { margin-right: 7px; font-size: 15px; }
.sidebar-back-to-site { display:none; align-items:center; gap:7px; margin-top:9px; padding:10px 12px; border:1px solid rgba(255,255,255,.13); border-radius:10px; color:#f5f7f3; font-size:10px; font-weight:760; text-decoration:none; }
.sidebar-setup { border: 0; padding: 13px 8px 2px; background: transparent; color: #acb8b2; cursor: pointer; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.fixed-credit { position:fixed; z-index:80; right:0; bottom:0; left:0; min-height:calc(var(--release-footer-height) + env(safe-area-inset-bottom, 0px)); display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:.55rem clamp(.85rem,3vw,2.5rem) calc(.55rem + env(safe-area-inset-bottom, 0px)); color:rgba(255,255,255,.88); background:rgba(9,23,18,.96); border-top:1px solid rgba(216,240,107,.32); box-shadow:0 -10px 30px rgba(9,23,18,.1); font-size:.62rem; font-weight:850; letter-spacing:.1em; line-height:1; white-space:nowrap; backdrop-filter:blur(12px); }
.fixed-credit .release-version { color:var(--acid); }
.fixed-credit .release-build { color:rgba(255,255,255,.68); }

.workspace { min-width: 0; }
.topbar { height: 100px; padding: 21px clamp(24px, 4vw, 58px); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(23,33,31,.09); background: rgba(245,245,239,.86); backdrop-filter: blur(14px); position: sticky; top: 0; z-index: 15; }
.eyebrow { margin: 0 0 5px; color: #77807b; font-size: 10px; text-transform: uppercase; letter-spacing: .18em; font-weight: 800; }
.topbar h1 { margin: 0; font-family: Georgia, serif; font-size: 27px; font-weight: 500; }
.topbar-actions { display: flex; align-items: center; gap: 12px; }
.back-to-main-site { display:flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid rgba(21,42,36,.16); border-radius:99px; color:var(--sidebar); font-size:10px; font-weight:800; text-decoration:none; white-space:nowrap; transition:background .18s ease, transform .18s ease; }
.back-to-main-site:hover { background:white; transform:translateY(-1px); }
.fido-language-control select { min-width:124px; padding:8px 29px 8px 12px; border:1px solid var(--line); border-radius:99px; color:var(--sidebar); background:white; font-size:10px; font-weight:850; }
.trial-chip { padding: 8px 11px; border-radius: 99px; background: var(--acid); color: var(--sidebar); font-size: 10px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.space-chip { max-width: 220px; overflow: hidden; padding: 8px 11px; border: 1px solid rgba(21,42,36,.16); border-radius: 99px; background: white; color: var(--sidebar); font-size: 9px; font-weight: 850; letter-spacing: .05em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
#space-address-preview { display: block; margin-top: 6px; color: #68746e; font-size: 8px; font-weight: 680; letter-spacing: .02em; text-transform: none; }
.system-status { display: flex; align-items: center; gap: 7px; padding: 9px 12px; border-radius: 99px; background: white; border: 1px solid var(--line); font-size: 11px; font-weight: 700; }
.system-status span { width: 7px; height: 7px; border-radius: 50%; background: #79a843; box-shadow: 0 0 0 4px rgba(121,168,67,.13); }
.icon-button { border: 0; width: 38px; height: 38px; border-radius: 50%; background: #eef0ea; cursor: pointer; font-size: 22px; display: grid; place-items: center; }
.mobile-menu { display: none; }
.button { min-height: 42px; border-radius: 10px; padding: 10px 16px; border: 1px solid transparent; cursor: pointer; font-size: 12px; font-weight: 760; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { transform: translateY(-1px); }
.button:disabled { opacity: .45; cursor: not-allowed; transform: none; }
.button-dark { background: var(--sidebar); color: white; box-shadow: 0 9px 20px rgba(23,35,31,.13); }
.button-light { background: white; color: var(--sidebar); }
.button-light span { margin-left: 10px; }
.button-outline { border-color: var(--line); background: transparent; }
.button-primary { background: var(--acid); color: var(--sidebar); }
.full-width { width: 100%; }

main { padding: clamp(24px, 4vw, 52px); max-width: 1600px; margin: 0 auto; }
.view { display: none; animation: reveal .32s ease; }
.view.is-active { display: block; }
@keyframes reveal { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }

.welcome-banner { overflow: hidden; position: relative; min-height: 202px; padding: clamp(30px, 4vw, 48px); border-radius: var(--radius-lg); color: white; background: var(--sidebar); display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; box-shadow: var(--shadow); }
.welcome-banner::before { content: ""; position: absolute; width: 390px; height: 390px; border: 1px solid rgba(216,240,107,.25); border-radius: 50%; right: -80px; top: -245px; box-shadow: 0 0 0 50px rgba(216,240,107,.035), 0 0 0 100px rgba(216,240,107,.025); }
.welcome-banner::after { content: "F"; position: absolute; right: 82px; top: -28px; color: rgba(216,240,107,.12); font: 220px/1 Georgia, serif; }
.banner-kicker { position: relative; z-index: 1; color: var(--acid); text-transform: uppercase; letter-spacing: .15em; font-size: 10px; font-weight: 800; }
.welcome-banner h2 { position: relative; z-index: 1; max-width: 620px; margin: 12px 0 10px; font: 500 clamp(30px, 4vw, 48px)/1.05 Georgia, serif; }
.welcome-banner p { position: relative; z-index: 1; max-width: 650px; margin: 0; color: #becac3; font-size: 13px; line-height: 1.6; }
.welcome-banner .button { position: relative; z-index: 2; flex: 0 0 auto; }
.welcome-banner.is-compact { min-height: 160px; }

.metric-grid { margin: 18px 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.metric-card { min-height: 132px; padding: 21px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); display: flex; flex-direction: column; box-shadow: 0 8px 22px rgba(26,38,32,.035); }
.metric-card:nth-child(5n + 1) { border-color: #cbdff2; background: var(--pastel-blue); }
.metric-card:nth-child(5n + 2) { border-color: #cae4d4; background: var(--pastel-green); }
.metric-card:nth-child(5n + 3) { border-color: #d9d0f3; background: var(--pastel-violet); }
.metric-label { color: #79817d; font-size: 10px; font-weight: 780; text-transform: uppercase; letter-spacing: .1em; }
.metric-card strong { margin-top: 12px; font: 500 35px/1 Georgia, serif; }
.metric-card .metric-word { font-size: 25px; }
.metric-card small { margin-top: auto; color: #818985; font-size: 10px; line-height: 1.4; }
.accent-card { border-color: transparent; background: var(--bright-yellow); }
.accent-card .metric-label, .accent-card small { color: #4c5930; }

.search-depth-panel { margin-bottom: 18px; overflow: hidden; }
.radar-engine-identity { padding: 14px 18px; border-bottom: 1px solid rgba(216,223,211,.7); background: var(--sidebar); color: white; display: grid; grid-template-columns: minmax(220px,1fr) auto auto; align-items: center; gap: 16px; }
.radar-engine-name { min-width: 0; display: flex; align-items: center; gap: 11px; }
.radar-engine-mark { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: rgba(216,244,95,.12); color: var(--acid); display: grid; place-items: center; font-size: 23px; font-weight: 900; }
.radar-engine-name div { min-width: 0; display: grid; gap: 3px; }
.radar-engine-name div span { color: var(--acid); font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.radar-engine-name strong { overflow: hidden; font: 500 15px/1.15 Georgia,serif; text-overflow: ellipsis; white-space: nowrap; }
.radar-engine-identity dl { margin: 0; display: flex; align-items: stretch; }
.radar-engine-identity dl div { min-width: 84px; padding: 2px 12px; border-left: 1px solid rgba(255,255,255,.12); display: grid; gap: 3px; }
.radar-engine-identity dt { color: #9eaaa5; font-size: 7px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.radar-engine-identity dd { margin: 0; color: white; font-size: 9px; font-weight: 820; white-space: nowrap; }
.radar-engine-live dd { display: flex; align-items: center; gap: 5px; }
.radar-engine-live i { width: 6px; height: 6px; border-radius: 50%; background: #55dfb0; box-shadow: 0 0 0 4px rgba(85,223,176,.11); }
.radar-source-jump.button { min-height: 36px; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.06); color: white; padding: 0 12px; }
.search-depth-heading { padding: 22px 24px 18px; display: flex; align-items: center; justify-content: space-between; gap: 22px; border-bottom: 1px solid #e9ece6; }
.search-depth-heading h2 { margin: 2px 0 5px; font: 500 24px/1.15 Georgia,serif; }
.search-depth-heading > div > p:last-child { margin: 0; color: #747d78; font-size: 9px; line-height: 1.55; }
.radar-scope { padding: 16px 24px; border-bottom: 1px solid #e9ece6; display: grid; gap: 13px; background: linear-gradient(135deg, var(--pastel-yellow), #fbfcf9 72%); }
.radar-scope-block { display: grid; gap: 7px; }
.radar-scope-label { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.radar-scope-label strong, .radar-extra-label strong { color: var(--ink); font-size: 9px; letter-spacing: .03em; }
.radar-scope-label span, .radar-extra-label small { color: #7d857f; font-size: 8px; }
.radar-continent-choices { display: flex; flex-wrap: wrap; gap: 6px; }
.radar-continent-choices button { min-height: 29px; padding: 5px 10px; border: 1px solid #d9ded7; border-radius: 99px; background: white; color: #59645d; font: inherit; font-size: 8px; font-weight: 760; cursor: pointer; transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease; }
.radar-continent-choices button:hover { border-color: #93a466; transform: translateY(-1px); }
.radar-continent-choices button.is-selected { border-color: #8aa6d9; background: var(--pastel-blue); color: #173b68; box-shadow: inset 0 0 0 1px rgba(86,122,178,.12); }
.radar-continent-choices button:focus-visible { outline: 2px solid color-mix(in srgb, var(--acid) 70%, #74804d); outline-offset: 2px; }
.radar-tag-list { display: flex; flex-wrap: wrap; gap: 5px; }
.radar-tag-list:empty { display: none; }
#radar-permanent-tags { max-height: 116px; padding: 7px; border: 1px solid #e1e5de; border-radius: 11px; background: white; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; align-content: flex-start; }
#radar-permanent-tags:focus-visible, .radar-source-rows:focus-visible { outline: 2px solid color-mix(in srgb, var(--acid) 70%, #74804d); outline-offset: 2px; }
.radar-tag { padding: 5px 7px; border: 1px solid #dde2da; border-radius: 99px; background: white; color: #59645d; font-size: 7px; line-height: 1.2; }
.radar-tag.is-platform-tag { border-color: #dfc43a; background: var(--pastel-yellow); color: #17231f; font-weight: 850; }
.radar-tag.is-platform-tag.is-local { border-color: #72aa83; background: #e9f7ed; color: #174c2b; }
.radar-tag.is-platform-tag.is-abroad { border-color: #8aa6d9; background: #edf3ff; color: #24436f; }
.radar-tag.is-place { border-color: #c7d892; background: #f3f8dc; color: #455423; }
.radar-tag.is-extra { border-color: #bed9d2; background: #eff8f5; color: #25554b; }
.radar-extra-label { display: grid; gap: 7px; }
.radar-extra-label > span { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.radar-extra-label input { width: 100%; min-height: 38px; padding: 9px 11px; border: 1px solid #d7ddd5; border-radius: 10px; background: white; color: var(--ink); font: inherit; font-size: 9px; outline: none; }
.radar-extra-label input:focus { border-color: #8aa25a; box-shadow: 0 0 0 3px rgba(168,207,69,.18); }
.search-depth-grid { padding: 18px 24px; display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 9px; }
.search-depth-stat { min-height: 83px; padding: 13px; border-radius: 12px; background: #f5f6f1; display: flex; flex-direction: column; }
.search-depth-stat:nth-child(5n + 1) { background: var(--pastel-blue); }
.search-depth-stat:nth-child(5n + 2) { background: var(--pastel-green); }
.search-depth-stat:nth-child(5n + 3) { background: var(--pastel-yellow); }
.search-depth-stat:nth-child(5n + 4) { background: var(--pastel-pink); }
.search-depth-stat:nth-child(5n + 5) { background: var(--pastel-violet); }
.search-depth-stat.is-result { background: var(--bright-green); }
.search-depth-stat span { color: #78817c; font-size: 7px; font-weight: 820; letter-spacing: .07em; text-transform: uppercase; }
.search-depth-stat strong { margin-top: 9px; font: 600 25px/1 Georgia,serif; }
.search-depth-stat small { margin-top: auto; padding-top: 7px; color: #818984; font-size: 7px; line-height: 1.35; }
.search-depth-foot { padding: 13px 24px 17px; border-top: 1px solid #e9ece6; display: flex; flex-wrap: wrap; gap: 7px; color: #68716c; font-size: 8px; }
.search-depth-foot span { padding: 6px 8px; border-radius: 7px; background: #f1f2ed; }
.search-depth-foot strong { color: var(--ink); }
.radar-source-panel { margin-top: 18px; overflow: hidden; }
.radar-source-heading { min-height: 82px; padding: 17px 22px; border-bottom: 1px solid var(--line); background: linear-gradient(110deg, var(--pastel-blue), white 68%); display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.radar-source-heading h2 { margin: 4px 0 6px; font: 500 26px/1.1 Georgia,serif; }
.radar-source-heading p:last-child { max-width: 760px; margin: 0; color: #6f7974; font-size: 10px; line-height: 1.55; }
.radar-source-count { padding: 7px 10px; border-radius: 99px; background: #eef1eb; color: #53605a; font-size: 8px; font-weight: 820; white-space: nowrap; }
.radar-source-rows { height: 260px; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; background: white; }
.radar-source-rows.is-tab-grid { padding: 13px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 43px; gap: 8px; align-content: start; }
.radar-source-tab { min-width: 0; padding: 8px 10px; border: 1px solid #dfe3dc; border-radius: 10px; background: white; color: var(--ink); display: flex; align-items: center; justify-content: center; overflow: hidden; font-size: 9px; font-weight: 820; text-align: center; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.radar-source-tab.is-working { border-color: #e1c83c; background: var(--bright-yellow); }
.radar-source-tab:hover, .radar-source-tab:focus-visible { z-index: 1; border-color: var(--sidebar); box-shadow: 0 8px 18px rgba(23,35,31,.12); transform: translateY(-1px); }
.radar-source-rows.is-custom-grid { height: 360px; }
.radar-source-row { min-height: 68px; padding: 11px 20px; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: minmax(230px,1fr) minmax(240px,1.2fr) minmax(175px,.75fr) minmax(170px,.75fr); gap: 14px; align-items: center; }
.radar-source-row:nth-child(even) { background: color-mix(in srgb, var(--pastel-blue) 24%, white); }
.radar-source-row > p { margin: 0; color: #68736d; font-size: 9px; line-height: 1.55; }
.radar-source-name { min-width: 0; display: grid; gap: 4px; }
.radar-source-name a { width: fit-content; color: var(--ink); font-size: 11px; font-weight: 830; text-decoration: none; }
.radar-source-name a:hover { text-decoration: underline; text-underline-offset: 3px; }
.radar-source-name span { color: #727c77; font-size: 8px; line-height: 1.35; }
.radar-source-row label { display: grid; gap: 5px; color: #6e7772; font-size: 8px; font-weight: 760; }
.radar-source-row input { width: 100%; height: 40px; padding: 0 12px; border: 1px solid #d3dad2; border-radius: 11px; background: white; color: var(--ink); font-size: 10px; }
.radar-source-row input:focus { outline: 2px solid color-mix(in srgb, var(--acid) 70%, white); outline-offset: 1px; border-color: #7d8a72; }
.radar-source-access-note { min-width: 0; padding: 8px 10px; border: 1px solid #e2e6df; border-radius: 10px; background: #f7f8f5; display: grid; gap: 3px; }
.radar-source-access-note span { color: #808984; font-size: 7px; font-weight: 820; letter-spacing: .07em; }
.radar-source-access-note strong { color: #53605a; font-size: 8px; line-height: 1.3; }
.radar-custom-address span { color: #66706b; }
.radar-source-result { min-width: 0; display: grid; justify-items: start; gap: 7px; }
.radar-source-result strong { color: var(--ink); font-size: 9px; line-height: 1.35; }
.radar-source-status { width: fit-content; padding: 5px 8px; border: 1px solid #dbe1db; border-radius: 99px; background: #f7f8f5; color: #58625d; display: inline-flex; align-items: center; gap: 5px; font-size: 8px; font-weight: 800; white-space: nowrap; }
.radar-source-status i { font-style: normal; }
.radar-source-status.is-ready { border-color: #9de7c5; background: #edfff6; color: #14744f; }
.radar-source-status.is-review { border-color: #f0d483; background: #fff9e8; color: #855a00; }
.radar-source-pagination { min-height: 55px; padding: 8px 18px; display: flex; align-items: center; justify-content: space-between; gap: 16px; background: #fafbf8; }
.radar-source-pagination > div { display: flex; align-items: center; gap: 8px; }
.radar-source-pagination strong { min-width: 68px; text-align: center; font-size: 11px; font-variant-numeric: tabular-nums; }
.radar-page-button { width: 34px; height: 34px; border: 0; border-radius: 50%; background: transparent; color: var(--ink); cursor: pointer; font-size: 23px; line-height: 1; }
.radar-page-button:hover:not(:disabled) { background: #edf0e9; }
.radar-page-button:disabled { opacity: .3; cursor: default; }
.radar-source-note { margin: 0; padding: 8px 18px 10px; border-top: 1px solid var(--line); color: #717b76; font-size: 8px; line-height: 1.4; }
.radar-source-note a { color: var(--ink); font-weight: 800; }

.today-panel { margin-bottom: 18px; padding: 22px 24px; }
.today-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.today-heading h2 { margin: 0; font: 500 22px/1.2 Georgia, serif; }
.today-heading > span { color: #76807a; font-size: 9px; }
.today-actions { margin-top: 17px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.today-action { min-height: 115px; padding: 15px; border: 1px solid #e2e5df; border-radius: 14px; background: #fafbf8; text-align: left; cursor: pointer; display: flex; flex-direction: column; transition: .18s ease; }
.today-action:nth-child(5n + 1) { border-color: #cbdff2; background: var(--pastel-blue); }
.today-action:nth-child(5n + 2) { border-color: #cae4d4; background: var(--pastel-green); }
.today-action:nth-child(5n + 3) { border-color: #eadb92; background: var(--pastel-yellow); }
.today-action:nth-child(5n + 4) { border-color: #e7cde0; background: var(--pastel-pink); }
.today-action:nth-child(5n + 5) { border-color: #d9d0f3; background: var(--pastel-violet); }
.today-action:hover { border-color: #bfc9bc; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(23,35,31,.07); }
.today-action > span { width: 27px; height: 27px; border-radius: 8px; background: #edf0e8; display: grid; place-items: center; color: #6b755f; font-size: 10px; font-weight: 850; }
.today-action.is-urgent > span { background: var(--bright-yellow); color: var(--sidebar); }
.today-action strong { margin-top: 13px; font: 600 14px Georgia, serif; }
.today-action small { margin-top: 5px; color: #77807b; font-size: 8px; line-height: 1.5; }
.today-action em { margin-top: auto; padding-top: 10px; color: #425122; font-size: 8px; font-style: normal; font-weight: 850; }

.content-grid { display: grid; gap: 18px; }
.radar-grid { grid-template-columns: minmax(0, 1.7fr) minmax(290px, .8fr); }
.panel { border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: 0 10px 35px rgba(26,38,32,.04); }
.panel-heading { padding: 23px 25px 18px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; border-bottom: 1px solid #eceee9; }
.panel-heading.compact { border-bottom: 0; padding-bottom: 5px; }
.panel-heading h2 { margin: 0; font: 500 21px/1.2 Georgia, serif; }
.preview-pill { padding: 7px 10px; border-radius: 99px; background: #f1f1eb; color: #777f7a; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.opportunity-list { padding: 4px 25px 14px; }
.opportunity { padding: 18px 0; display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; gap: 15px; border-bottom: 1px solid #eceee9; }
.opportunity:last-child { border-bottom: 0; }
.opp-score { width: 46px; height: 46px; border-radius: 50%; border: 4px solid #d9ed7a; display: grid; place-items: center; font-size: 10px; font-weight: 850; }
.opp-copy { min-width: 0; }
.opp-meta { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; color: #808985; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
.opp-meta b { color: #52645c; }
.opp-copy h3 { margin: 7px 0 5px; font-size: 14px; }
.opp-copy p { margin: 0; color: #727a76; font-size: 11px; line-height: 1.55; }
.opp-evidence { margin-top: 7px; color: #4f5f57; font-size: 9px; font-weight: 780; }
.opportunity-translation { margin-top: 10px; padding: 11px 13px; border: 1px solid #cfe4c9; border-radius: 11px; background: #eaf6e7; color: #34473d; text-align: start; }
.opportunity-translation > strong { display: block; margin-bottom: 6px; color: #55705f; font-size: 8px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.opportunity-translation h4 { margin: 0 0 5px; color: #20352b; font: 650 12px/1.35 Georgia, serif; }
.opportunity-translation p { margin: 0; color: #4d6558; font-size: 10px; line-height: 1.55; }
.opportunity-translation.is-loading { background: linear-gradient(100deg, #eaf6e7 30%, #f4faef 48%, #eaf6e7 66%); background-size: 220% 100%; animation: translation-shimmer 1.4s ease infinite; }
.opportunity-translation.is-error { background: #f2f6eb; border-color: #dfe7d7; }
@keyframes translation-shimmer { to { background-position: -220% 0; } }
.opp-status { align-self: center; padding: 6px 9px; border-radius: 8px; background: #f1f2ed; font-size: 9px; font-weight: 780; white-space: nowrap; }
.opp-open { align-self: center; padding: 8px 10px; border: 1px solid #d4dbd2; border-radius: 9px; background: white; color: var(--sidebar); cursor: pointer; font-size: 8px; font-weight: 850; text-decoration: none; white-space: nowrap; }
.opp-open:hover { border-color: var(--sidebar); }
.empty-opportunities { padding: 45px 15px; text-align: center; color: #79817d; }
.empty-opportunities strong { display: block; margin-bottom: 7px; color: var(--ink); font: 500 20px Georgia, serif; }
.intelligence-panel { padding-bottom: 22px; }
.reasoning-stack { padding: 10px 25px 22px; }
.reasoning-step { position: relative; display: grid; grid-template-columns: 31px 1fr; gap: 12px; padding: 12px 0; }
.reasoning-step:not(:last-child)::after { content: ""; position: absolute; left: 15px; top: 43px; bottom: -7px; width: 1px; background: #dfe3dc; }
.reasoning-step > span { width: 31px; height: 31px; border-radius: 50%; display: grid; place-items: center; background: var(--sidebar); color: white; font-size: 10px; font-weight: 800; }
.reasoning-step.is-muted > span { background: #eef0eb; color: #8a928e; }
.reasoning-step strong { font-size: 11px; }
.reasoning-step p { margin: 4px 0 0; color: #7b837f; font-size: 10px; line-height: 1.5; }
.intelligence-panel > .button { width: calc(100% - 50px); margin: 0 25px; }
.daily-story-rail { margin: 0 25px 20px; padding-top: 16px; border-top: 1px solid #e4e7e1; }
.daily-story-rail header { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.daily-story-rail h3 { margin: 0; font: 600 16px/1.2 Georgia, serif; }
.daily-story-rail header span { padding: 5px 7px; border-radius: 99px; background: #edf5c7; color: #5e6d2b; font-size: 8px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.daily-story-rail ol { margin: 13px 0 0; padding: 0; list-style: none; display: grid; gap: 0; }
.daily-story-rail li { border-top: 1px solid #eceee9; }
.daily-story-rail li:first-child { border-top: 0; }
.daily-story-rail a { display: block; padding: 10px 0; color: var(--ink); text-decoration: none; }
.daily-story-rail a strong { display: block; font: 600 11px/1.35 Georgia, serif; }
.daily-story-rail a span { display: block; margin-top: 4px; color: #7b837f; font-size: 8px; }
.daily-story-rail .daily-story-empty { padding: 12px 0; color: #7b837f; font-size: 9px; line-height: 1.5; }

.library-health { margin-bottom:18px; padding:16px 18px; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:13px; }
.library-health-dot { width:12px; height:12px; border-radius:50%; background:#87918c; box-shadow:0 0 0 6px rgba(104,112,108,.1); }
.library-health.is-healthy .library-health-dot { background:#79a843; box-shadow:0 0 0 6px rgba(121,168,67,.13); }
.library-health.is-degraded .library-health-dot { background:#d3a93d; box-shadow:0 0 0 6px rgba(211,169,61,.15); }
.library-health strong { display:block; font-size:11px; }
.library-health p { margin:4px 0 0; color:#747d78; font-size:9px; line-height:1.5; }
.news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.news-card { min-height:260px; padding:22px; border:1px solid var(--line); border-radius:var(--radius-lg); background:white; box-shadow:0 10px 32px rgba(26,38,32,.045); display:flex; flex-direction:column; }
.news-card-meta { display:flex; flex-wrap:wrap; align-items:center; gap:7px; color:#727c77; font-size:8px; font-weight:820; letter-spacing:.06em; text-transform:uppercase; }
.news-card-meta b { padding:5px 7px; border-radius:7px; color:#5e6d2b; background:#edf5c7; }
.news-card h3 { margin:17px 0 9px; font:600 20px/1.18 Georgia,serif; }
.news-card p { margin:0; color:#707975; font-size:10px; line-height:1.62; }
.news-card a { margin-top:auto; padding-top:20px; color:#435125; font-size:9px; font-weight:850; text-decoration:underline; text-underline-offset:3px; }
.news-empty { grid-column:1/-1; padding:75px 24px; border:1px dashed #cbd2ca; border-radius:var(--radius-lg); background:rgba(255,255,255,.35); text-align:center; }
.news-empty span { display:block; font-size:34px; }
.news-empty h3 { margin:12px 0 6px; font:500 23px Georgia,serif; }
.news-empty p { max-width:560px; margin:0 auto; color:#78807c; font-size:11px; line-height:1.6; }
.news-pagination { margin-top:18px; display:flex; align-items:center; justify-content:center; gap:14px; }
.news-pagination strong { min-width:70px; color:#68716c; font-size:10px; text-align:center; }

.page-intro { max-width: 760px; margin-bottom: 28px; }
.page-intro h2 { margin: 6px 0 9px; font: 500 clamp(30px, 4vw, 45px)/1.08 Georgia, serif; }
.page-intro > p:last-child, .split-intro > div > p:last-child { color: #747d78; font-size: 13px; line-height: 1.6; }
.split-intro { max-width: none; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.split-intro > div { max-width: 760px; }
.rule-strip { padding: 18px 24px; border-radius: var(--radius-md); background: var(--sidebar); color: white; display: flex; align-items: center; margin-bottom: 18px; }
.rule-step { display: flex; align-items: center; gap: 9px; color: #aebbb4; font-size: 10px; white-space: nowrap; }
.rule-step span { width: 25px; height: 25px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.1); }
.rule-step.is-complete { color: white; }
.rule-step.is-complete span { background: var(--acid); color: var(--sidebar); }
.rule-strip i { flex: 1; height: 1px; background: rgba(255,255,255,.14); margin: 0 15px; }
.platform-connection-note { margin-bottom: 16px; padding: 16px 18px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; }
.platform-stack { display: flex; padding-left: 14px; }
.platform-stack span { width: 34px; height: 34px; margin-left: -14px; border: 2px solid white; border-radius: 10px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font: 800 14px Georgia,serif; }
.platform-stack span:nth-child(2) { background: #5a315a; }
.platform-stack span:nth-child(3) { background: #111; }
.platform-connection-note strong { font-size: 11px; }
.platform-connection-note p { margin: 4px 0 0; color: #747d78; font-size: 9px; line-height: 1.5; }
.platform-connection-note > span { padding: 7px 10px; border-radius: 99px; background: #eef2df; color: #5a682f; font-size: 8px; font-weight: 820; white-space: nowrap; }
.source-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.filter-pills { display: flex; flex-wrap: wrap; gap: 7px; }
.filter-pill { border: 1px solid var(--line); background: transparent; padding: 8px 12px; border-radius: 99px; cursor: pointer; color: #6f7773; font-size: 10px; font-weight: 750; }
.filter-pill.is-active { background: var(--sidebar); border-color: var(--sidebar); color: white; }
.source-actions { display: flex; align-items: center; gap: 11px; }
.source-actions > span { color: #747d78; font-size: 10px; }
.source-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.source-card { position: relative; min-height: 250px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius-md); background: white; display: flex; flex-direction: column; transition: border .18s, transform .18s, box-shadow .18s; }
.source-card:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(26,38,32,.07); }
.source-card.is-selected { border-color: #9ab441; box-shadow: inset 0 0 0 1px #9ab441; }
.source-card.is-approved { background: #fbfdf4; }
.source-check { position: absolute; right: 16px; top: 16px; width: 22px; height: 22px; accent-color: var(--sidebar); }
.source-topline { padding-right: 32px; display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.source-category, .source-ai { padding: 5px 7px; border-radius: 6px; background: #eff1ec; color: #67706b; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.source-ai { color: #5e6d2b; background: #edf5c7; }
.source-card h3 { margin: 15px 0 7px; padding-right: 20px; font: 600 17px/1.25 Georgia, serif; }
.source-country { color: #6e7772; font-size: 10px; font-weight: 760; }
.source-card p { color: #737c77; font-size: 10px; line-height: 1.55; }
.source-query { margin-top: auto; padding: 10px; border-radius: 9px; background: #f6f6f1; color: #717974; font: 9px/1.45 ui-monospace, monospace; }
.source-footer { margin-top: 12px; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.source-link { margin-left: auto; color: #435125; font-size: 8px; font-weight: 850; text-decoration: underline; text-underline-offset: 3px; }
.access-label { font-size: 8px; font-weight: 820; text-transform: uppercase; letter-spacing: .07em; }
.approved-label { color: #658326; }
.source-empty { grid-column: 1 / -1; padding: 70px 20px; border: 1px dashed #cfd5ce; border-radius: var(--radius-lg); text-align: center; }
.source-empty span { display: block; font-size: 35px; }
.source-empty h3 { margin: 12px 0 5px; font: 500 23px Georgia, serif; }
.source-empty p { margin: 0 auto 18px; max-width: 460px; color: #78807c; font-size: 11px; line-height: 1.55; }

.new-rule-banner { margin-bottom: 18px; padding: 16px 18px; border: 1px solid #d6dec1; border-radius: var(--radius-md); background: #f2f7dc; display: flex; align-items: center; gap: 12px; }
.new-rule-banner strong { font-size: 11px; }
.new-rule-banner p { margin: 4px 0 0; color: #697355; font-size: 10px; line-height: 1.5; }
.new-opportunity-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.new-card { min-height: 290px; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: white; display: flex; flex-direction: column; box-shadow: 0 10px 32px rgba(26,38,32,.045); }
.new-card.is-fresh-24h { border-color: #b9d8b8; background: #edf8ee; }
.new-card.is-applied { border-color: #b6ca70; background: #fbfdf4; }
.new-card.is-rejected { opacity: .68; }
.new-card-head { display: flex; align-items: flex-start; gap: 13px; }
.new-card-mark { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 14px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font: 800 17px Georgia, serif; box-shadow: 0 8px 18px rgba(23,35,31,.13); }
.new-card-title { min-width: 0; }
.new-card-title h3 { margin: 7px 0 0; font: 600 20px/1.15 Georgia, serif; }
.new-card-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.new-kind, .new-market { padding: 5px 7px; border-radius: 6px; background: #eff1ec; color: #68716c; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 820; }
.new-market { background: #edf5c7; color: #5e6d2b; }
.new-location { margin-top: 17px; color: #55615b; font-size: 10px; font-weight: 780; }
.new-card > p { margin: 9px 0 15px; color: #707975; font-size: 11px; line-height: 1.6; }
.request-post { margin: 13px 0 14px; padding: 14px; border-left: 3px solid var(--acid); border-radius: 0 11px 11px 0; background: #f7f8f2; }
.request-post > strong { display: block; margin-bottom: 6px; color: #69736d; font-size: 8px; letter-spacing: .1em; }
.request-post p { margin: 0; color: #313a35; font: 500 13px/1.5 Georgia,serif; }
.request-post span { display: block; margin-top: 8px; color: #68746d; font-size: 8px; font-weight: 800; }
.new-fit { margin-top: auto; padding: 12px; border-radius: 11px; background: #f5f6f1; }
.new-fit strong { display: block; margin-bottom: 4px; color: #6b746f; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }
.new-fit span { color: #4d5652; font-size: 10px; line-height: 1.45; }
.new-card-footer { margin-top: 15px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.new-card-actions { display: flex; gap: 8px; }
.new-card-actions .button { min-height: 36px; padding: 8px 13px; }
.new-card-actions a.button { display: inline-grid; place-items: center; text-decoration: none; }
.new-discovered { color: #8a928e; font-size: 8px; }
.new-empty { grid-column: 1 / -1; padding: 75px 24px; border: 1px dashed #cbd2ca; border-radius: var(--radius-lg); background: rgba(255,255,255,.35); text-align: center; }
.new-empty span { display: block; color: #81913c; font-size: 34px; }
.new-empty h3 { margin: 12px 0 7px; font: 500 25px Georgia, serif; }
.new-empty p { max-width: 520px; margin: 0 auto 18px; color: #747d78; font-size: 11px; line-height: 1.6; }

.calendar-rule { margin-bottom: 18px; padding: 16px 18px; display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 12px; }
.calendar-rule > span { width: 34px; height: 34px; border-radius: 10px; background: var(--acid); display: grid; place-items: center; font-weight: 900; }
.calendar-rule strong { font-size: 11px; }
.calendar-rule p { margin: 4px 0 0; color: #737c77; font-size: 9px; }
.calendar-rule small { color: #758078; font-size: 8px; }
.calendar-intro-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.calendar-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(280px,.55fr); gap: 18px; align-items: start; }
.calendar-panel { overflow: hidden; }
.calendar-toolbar { min-height: 92px; padding: 18px 22px; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 42px 1fr 42px; align-items: center; text-align: center; }
.calendar-toolbar h3 { margin: 2px 0 0; font: 600 24px Georgia,serif; }
.calendar-arrow { width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 12px; background: #f7f8f3; cursor: pointer; font-size: 17px; }
.calendar-weekdays, .calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.calendar-weekdays { padding: 12px 14px 0; }
.calendar-weekdays span { padding: 7px; color: #838b87; text-align: center; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.calendar-grid { padding: 7px 14px 16px; gap: 7px; }
.calendar-spacer { min-height: 92px; }
.calendar-day { min-height: 92px; padding: 10px; border: 1px solid #dfe4dc; border-radius: 13px; background: #f6f8ef; cursor: pointer; text-align: left; display: flex; flex-direction: column; transition: .18s ease; }
.calendar-day:hover { transform: translateY(-2px); border-color: #b8c59a; box-shadow: 0 8px 18px rgba(23,35,31,.06); }
.calendar-day.is-today { box-shadow: inset 0 0 0 2px var(--sidebar); }
.calendar-day.is-unavailable { border-color: #d4c9f0; background: var(--pastel-violet); }
.calendar-day.is-booked { border-color: var(--sidebar); background: var(--sidebar); color: white; box-shadow: inset 0 -4px var(--acid); }
.calendar-day > strong { font: 600 15px Georgia,serif; }
.calendar-day > span { margin-top: auto; color: #5e7129; font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.calendar-day.is-unavailable > span { color: #67539a; }
.calendar-day.is-booked > span { color: var(--acid); }
.calendar-side-stack { display: grid; gap: 14px; }
.calendar-summary { overflow: hidden; }
.calendar-summary-head { padding: 22px; color: white; background: var(--sidebar); }
.calendar-summary-head p { margin: 0; color: var(--acid); font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .12em; }
.calendar-summary-head strong { display: block; margin-top: 8px; font: 500 36px Georgia,serif; }
.calendar-summary-body { padding: 18px 22px; display: grid; gap: 12px; }
.calendar-summary-row { display: flex; justify-content: space-between; gap: 10px; font-size: 9px; }
.calendar-summary-row span { color: #77807b; }
.calendar-summary-row strong { font-size: 10px; }
.calendar-how { padding: 22px; }
.calendar-how h3 { margin: 5px 0 16px; font: 600 19px Georgia,serif; }
.calendar-how > div { padding: 12px 0; border-top: 1px solid #e8ebe5; display: grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; }
.availability-swatch { width: 14px; height: 14px; margin-top: 2px; border-radius: 4px; background: #dceda0; }
.availability-swatch.is-booked { background: var(--sidebar); box-shadow: inset 0 -3px var(--acid); }
.availability-swatch.is-unavailable { background: var(--bright-violet); }
.calendar-how p { margin: 0; color: #747d78; font-size: 8px; line-height: 1.45; }
.calendar-how p strong { display: block; color: var(--ink); font-size: 9px; }
.calendar-how small { display: block; margin-top: 13px; color: #757e79; font-size: 8px; line-height: 1.5; }
.manual-booking-panel { grid-column: 1 / -1; padding: 22px; }
.manual-booking-panel h3 { margin: 4px 0 7px; font: 600 20px Georgia,serif; }
.manual-booking-lede { margin: 0 0 16px; color: #727c76; font-size: 9px; line-height: 1.5; }
#manual-booking-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#manual-booking-form label { display: grid; gap: 5px; color: #5f6863; font-size: 8px; font-weight: 800; }
#manual-booking-form .wide { grid-column: 1 / -1; }
#manual-booking-form input, #manual-booking-form select, #manual-booking-form textarea { min-width: 0; width: 100%; border: 1px solid #d9dfd7; border-radius: 9px; padding: 9px 10px; color: var(--ink); background: #fafbf7; font: inherit; outline: 0; }
#manual-booking-form input:focus, #manual-booking-form select:focus, #manual-booking-form textarea:focus { border-color: #83973d; box-shadow: 0 0 0 3px rgba(216,240,107,.3); }
.manual-booking-list { max-height: 245px; overflow: auto; margin-top: 17px; border-top: 1px solid #e3e7e0; }
.manual-booking-item { padding: 12px 0; border-bottom: 1px solid #e8ebe5; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.manual-booking-item div { min-width: 0; }
.manual-booking-item span, .manual-booking-item strong, .manual-booking-item small { display: block; }
.manual-booking-item span { color: #77817b; font-size: 7px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.manual-booking-item strong { margin-top: 4px; font: 600 13px Georgia,serif; }
.manual-booking-item small { margin-top: 3px; overflow: hidden; color: #737c77; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.manual-booking-item button { flex: 0 0 auto; border: 0; padding: 7px 8px; border-radius: 7px; color: #9d493b; background: #fff0ed; cursor: pointer; font-size: 7px; font-weight: 850; }
.manual-booking-empty { margin: 14px 0 0; color: #79817d; font-size: 8px; line-height: 1.5; }

.website-builder-intro { align-items: flex-end; }
.website-builder-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.website-builder-actions a { display: inline-grid; place-items: center; text-decoration: none; }
.release-desk { margin-bottom: 14px; padding: 20px; background: linear-gradient(135deg,#fff 0%,#f7faef 100%); border-color: #d4dcc9; }
.release-desk-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.release-desk-heading .eyebrow { margin: 0 0 4px; }
.release-desk-heading h3 { margin: 0; font: 600 25px Georgia,serif; }
.release-state { padding: 6px 10px; border-radius: 999px; background: #e8ece4; color: #5d6861; font-size: 8px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.release-state.is-live { background: var(--acid); color: var(--sidebar); }
.repository-status { margin: 16px 0 12px; padding: 14px; border: 1px solid #dce2d6; border-radius: 12px; background: rgba(255,255,255,.8); display: grid; grid-template-columns: 38px 1fr; gap: 12px; align-items: center; }
.repository-status > span { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: var(--sidebar); color: var(--acid); font-size: 17px; }
.repository-status strong { display: block; font-size: 10px; }
.repository-status p { margin: 4px 0 0; color: #6e7872; font-size: 9px; line-height: 1.5; }
.release-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.repository-import { display: inline-grid; place-items: center; cursor: pointer; }
.update-website-button { margin-left: auto; min-width: 145px; }
.publication-meta { margin-top: 12px; padding-top: 11px; border-top: 1px solid #dfe4da; display: flex; justify-content: space-between; align-items: center; gap: 10px; color: #68736c; font-size: 9px; font-weight: 750; }
.publication-meta a { color: var(--sidebar); font-weight: 900; }
.release-note { margin: 10px 0 0; max-width: 920px; color: #7b847f; font-size: 8px; line-height: 1.55; }
.builder-status { margin-bottom: 17px; padding: 16px 18px; display: grid; grid-template-columns: 35px 1fr auto; align-items: center; gap: 12px; }
.builder-status > span { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--acid); font-size: 12px; font-weight: 900; }
.builder-status strong { display: block; font-size: 11px; }
.builder-status p { margin: 4px 0 0; color: #77807b; font-size: 9px; }
.builder-status small { color: #69736d; font-size: 9px; font-weight: 800; }
.site-builder-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 17px; align-items: start; }
.site-section-map { position: sticky; top: 120px; padding: 18px; display: grid; gap: 3px; }
.site-section-map > p { margin: 0 0 10px; }
.site-section-map button { width: 100%; padding: 9px 7px; border: 0; border-radius: 8px; background: transparent; display: flex; align-items: center; gap: 9px; color: #5f6964; cursor: pointer; text-align: left; font-size: 9px; font-weight: 740; }
.site-section-map button:hover { background: #f0f2ec; color: var(--ink); }
.site-section-map button span { flex: 0 0 23px; color: #8d9691; font-size: 8px; }
.site-section-map > a { margin-top: 12px; padding: 11px; border-radius: 9px; background: var(--sidebar); color: white; text-align: center; text-decoration: none; font-size: 8px; font-weight: 800; }
.site-editor-stack { display: grid; gap: 10px; }
.site-editor-card { overflow: hidden; scroll-margin-top: 120px; }
.site-editor-card summary { min-height: 68px; padding: 15px 18px; display: flex; align-items: center; justify-content: space-between; gap: 14px; cursor: pointer; list-style: none; }
.site-editor-card summary::-webkit-details-marker { display: none; }
.site-editor-card summary > span { display: flex; align-items: center; gap: 11px; }
.site-editor-card summary i { width: 31px; height: 31px; border-radius: 9px; background: #eef0eb; display: grid; place-items: center; color: #6f7873; font-size: 8px; font-style: normal; }
.site-editor-card[open] summary i { background: var(--sidebar); color: var(--acid); }
.site-editor-card summary strong { font: 600 17px Georgia, serif; }
.site-editor-card summary label { display: flex; align-items: center; gap: 7px; color: #707975; cursor: pointer; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.site-editor-card summary input { width: 16px; height: 16px; accent-color: var(--sidebar); }
.site-editor-card[open] summary { border-bottom: 1px solid var(--line); }
.site-fields { padding: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.site-fields label, .service-editor-grid label, .faq-editor-list label { display: block; color: #606965; font-size: 9px; font-weight: 780; }
.site-fields label > span { float: right; color: #929a96; font-size: 8px; font-weight: 500; }
.site-fields input, .site-fields textarea, .service-editor-grid input, .service-editor-grid textarea, .faq-editor-list input, .faq-editor-list textarea { width: 100%; margin-top: 6px; border: 1px solid #d8ddd7; border-radius: 9px; background: #fbfcf9; padding: 11px 12px; color: var(--ink); font: 500 10px/1.5 Inter, sans-serif; resize: vertical; }
.site-fields input, .service-editor-grid input, .faq-editor-list input { height: 42px; }
.site-fields .wide { grid-column: 1 / -1; }
.service-editor-grid { padding: 20px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.service-editor-grid fieldset { margin: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.service-editor-grid legend { padding: 0 6px; color: #74806f; font-size: 8px; text-transform: uppercase; letter-spacing: .09em; }
.service-editor-grid label + label { margin-top: 10px; }
.faq-editor-list { padding: 20px; display: grid; grid-template-columns: .75fr 1.25fr; gap: 11px 14px; }
.gallery-upload-note, .form-fields-note { padding: 14px; border: 1px dashed #cbd2c7; border-radius: 10px; background: #f5f7f1; }
.gallery-upload-note strong { font-size: 9px; }
.gallery-upload-note p { margin: 5px 0 0; color: #78817c; font-size: 8px; line-height: 1.5; }
.gallery-upload-note .text-button { grid-column: auto; margin-top: 8px; }
.form-fields-note { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
.form-fields-note span { padding: 6px 8px; border-radius: 7px; background: white; color: #6d7671; font-size: 8px; }
.form-fields-note strong { color: #68726c; font-size: 8px; }

.brand-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); gap: 20px; align-items: start; }
.brand-controls { display: grid; gap: 16px; }
.brand-section { padding: 24px; display: grid; grid-template-columns: 35px minmax(0,1fr); gap: 0 13px; }
.section-number { width: 32px; height: 32px; border-radius: 9px; display: grid; place-items: center; background: var(--sidebar); color: white; font-size: 9px; font-weight: 800; }
.section-copy h3 { margin: 2px 0 5px; font: 600 19px Georgia, serif; }
.section-copy p { margin: 0; color: #7a827e; font-size: 10px; line-height: 1.5; }
.theme-grid, .theme-confirm-row, .upload-row, .segmented-control, .title-mode { grid-column: 2; }
.theme-grid { margin-top: 20px; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 9px; }
.theme-card { border: 1px solid var(--line); border-radius: 11px; background: #fafbf7; padding: 10px; cursor: pointer; text-align: left; }
.theme-card.is-active { border-color: var(--sidebar); box-shadow: inset 0 0 0 1px var(--sidebar); }
.theme-swatches { display: grid; grid-template-columns: repeat(5, 1fr); overflow: hidden; height: 25px; border-radius: 7px; }
.theme-card strong { display: flex; justify-content: space-between; margin-top: 8px; font-size: 9px; }
.theme-card strong span { color: #6f7773; font-size: 8px; }
.theme-card em { display: none; margin-top: 7px; color: #405021; font-size: 8px; font-style: normal; font-weight: 800; }
.theme-card.is-active em { display: block; }
.theme-confirm-row { position: sticky; bottom: 10px; z-index: 2; margin-top: 14px; padding: 11px 12px; border: 1px solid #d8dfce; border-radius: 12px; background: rgba(250,251,247,.96); box-shadow: 0 10px 25px rgba(23,35,31,.09); display: flex; align-items: center; justify-content: space-between; gap: 12px; backdrop-filter: blur(10px); }
.theme-confirm-row div { display: grid; gap: 2px; }
.theme-confirm-row span { color: #7a837e; font-size: 8px; font-weight: 760; text-transform: uppercase; letter-spacing: .08em; }
.theme-confirm-row strong { font-size: 10px; }
.theme-confirm-row .button { min-width: 177px; }
.theme-confirm-row .button:disabled { border-color: #dbe0d8; background: #e8ece4; color: #657067; opacity: 1; cursor: default; }
.upload-row { margin-top: 19px; display: grid; grid-template-columns: minmax(0,1fr) 130px; gap: 10px; }
.upload-box { min-height: 105px; padding: 16px; border: 1px dashed #bfc7bf; border-radius: 12px; background: #fafbf8; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.upload-box:hover { border-color: #7d897f; }
.upload-icon { font-size: 24px; line-height: 1; }
.upload-box strong { margin-top: 7px; font-size: 10px; }
.upload-box small { margin-top: 3px; color: #8a918e; font-size: 8px; }
.asset-preview { min-height: 105px; border: 1px solid #e2e5df; border-radius: 12px; background: #f0f2ec; display: grid; place-items: center; overflow: hidden; color: #929995; font-size: 8px; text-align: center; }
.asset-preview img { max-width: 90%; max-height: 82px; object-fit: contain; }
.text-button { grid-column: 2; width: max-content; margin-top: 9px; padding: 0; border: 0; background: transparent; color: #777f7b; text-decoration: underline; text-underline-offset: 3px; font-size: 9px; cursor: pointer; }
.segmented-control { margin-top: 18px; padding: 4px; border-radius: 10px; background: #eef0eb; display: grid; grid-template-columns: 1fr 1fr; }
.segmented-control button { border: 0; padding: 9px; border-radius: 8px; background: transparent; cursor: pointer; color: #747c78; font-size: 9px; font-weight: 780; }
.segmented-control button.is-active { background: white; color: var(--ink); box-shadow: 0 3px 10px rgba(23,33,31,.07); }
.title-mode { display: none; margin-top: 14px; grid-template-columns: 1fr 1fr; gap: 10px; }
.title-mode.is-active { display: grid; }
.title-mode label, .setup-step > label, .two-fields label { color: #5f6763; font-size: 9px; font-weight: 760; }
.title-mode input, .title-mode select, .setup-step input[type="text"] { width: 100%; height: 43px; margin-top: 6px; border: 1px solid #d8ddd7; border-radius: 9px; background: white; padding: 0 12px; color: var(--ink); font-size: 11px; }
.title-mode .wide { grid-column: 1 / -1; }
.title-asset { grid-column: 1 / -1; min-height: 85px; }
.title-asset img { max-height: 60px; }

.preview-column { position: sticky; top: 120px; }
.preview-label { margin: 0 3px 9px; display: flex; justify-content: space-between; color: #767e7a; font-size: 9px; text-transform: uppercase; letter-spacing: .09em; }
.preview-label strong { color: var(--ink); }
.brand-public-link-row { margin: 0 0 11px; padding: 11px 12px; border: 1px solid #dbe2d8; border-radius: 12px; background: #f7f9f4; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.brand-public-link-row p { margin: 0; color: #6d7771; font-size: 8px; line-height: 1.45; }
.brand-public-link-row p strong { color: var(--ink); }
.brand-public-link-row .button { flex: 0 0 auto; min-height: 38px; padding: 0 13px; text-decoration: none; }
.website-preview { --site-primary: #16302b; --site-bg: #f7f1e7; --site-secondary: #d2e8d0; --site-accent: #ef91cc; --site-text: #17211f; overflow: hidden; border: 6px solid white; border-radius: 23px; background: var(--site-bg); color: var(--site-text); box-shadow: 0 25px 70px rgba(26,38,32,.14); }
.preview-nav { min-height: 74px; padding: 14px 17px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid color-mix(in srgb, var(--site-text) 12%, transparent); }
.preview-brand { min-width: 0; display: flex; align-items: center; gap: 10px; }
.preview-logo { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; background: var(--site-secondary); display: grid; place-items: center; overflow: hidden; }
.preview-logo img { max-width: 88%; max-height: 88%; object-fit: contain; }
.preview-title { min-width: 0; font-size: 12px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.preview-title img { display: block; max-width: 170px; max-height: 38px; object-fit: contain; }
.preview-nav > button { border: 0; border-radius: 99px; padding: 9px 13px; background: var(--site-primary); color: var(--site-bg); font-size: 8px; font-weight: 800; }
.preview-hero { min-height: 310px; padding: 56px 42px 43px; background: radial-gradient(circle at 90% 15%, var(--site-secondary), transparent 38%); }
.preview-overline { color: var(--site-primary); font-size: 8px; text-transform: uppercase; letter-spacing: .13em; font-weight: 850; }
.preview-hero h3 { max-width: 460px; margin: 13px 0 14px; font: 500 clamp(30px, 4vw, 46px)/1.03 Georgia, serif; }
.preview-hero p { max-width: 400px; margin: 0; opacity: .72; font-size: 10px; line-height: 1.6; }
.preview-cta-row { margin-top: 23px; display: flex; align-items: center; gap: 15px; }
.preview-cta-row button { border: 0; padding: 11px 15px; border-radius: 9px; background: var(--site-accent); color: var(--site-text); font-size: 8px; font-weight: 850; }
.preview-cta-row a { color: inherit; font-size: 8px; font-weight: 800; text-underline-offset: 4px; }
.preview-proof { padding: 12px 20px; display: flex; justify-content: space-around; gap: 10px; background: var(--site-primary); color: var(--site-bg); font-size: 7px; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; }
.preview-services { padding: 25px 20px 30px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.preview-services article { min-width: 0; padding: 12px; border: 1px solid color-mix(in srgb, var(--site-text) 12%, transparent); border-radius: 10px; }
.preview-services span { color: var(--site-accent); font-size: 8px; font-weight: 900; }
.preview-services strong { display: block; margin-top: 12px; font: 600 10px Georgia, serif; }
.preview-services p { margin: 5px 0 0; opacity: .65; font-size: 7px; line-height: 1.45; }
.save-note { margin-top: 14px; padding: 13px 15px; border-radius: 12px; background: #edf0e8; display: flex; gap: 10px; align-items: flex-start; }
.save-note > span { width: 25px; height: 25px; border-radius: 50%; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font-size: 10px; }
.save-note p { margin: 0; color: #747c78; font-size: 9px; line-height: 1.45; }
.save-note strong { color: var(--ink); }

.profile-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.mobile-install-panel { margin-bottom: 18px; padding: 20px; display: grid; grid-template-columns: 52px minmax(0,1fr) auto; align-items: center; gap: 16px; }
.mobile-install-icon { width: 52px; height: 52px; border-radius: 15px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font: 800 23px Georgia, serif; }
.mobile-install-panel h3 { margin: 2px 0 5px; font: 600 19px Georgia, serif; }
.mobile-install-panel p:last-child { margin: 0; color: #737c77; font-size: 10px; line-height: 1.5; }
.profile-card { min-height: 190px; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius-md); background: white; }
.profile-card span { color: #7d8581; font-size: 9px; text-transform: uppercase; letter-spacing: .11em; font-weight: 800; }
.profile-card h3 { margin: 15px 0 10px; font: 500 21px Georgia, serif; }
.profile-card p { margin: 0; color: #747c78; font-size: 10px; line-height: 1.6; }
.profile-chips { margin-top: 14px; display: flex; flex-wrap: wrap; gap: 6px; }
.profile-chips i { padding: 6px 8px; border-radius: 7px; background: #eef0eb; font-size: 8px; font-style: normal; font-weight: 720; }

.media-upload-button { display: inline-grid; place-items: center; }
.media-summary { margin: 18px 0; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; }
.media-stat { min-height: 92px; padding: 17px; border: 1px solid var(--line); border-radius: 15px; background: white; display: flex; flex-direction: column; }
.media-stat:first-child { background: var(--acid); border-color: transparent; }
.media-stat span { color: #7b837f; font-size: 8px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.media-stat:first-child span { color: #52612f; }
.media-stat strong { margin-top: 9px; font: 500 23px Georgia, serif; }
.media-stat small { margin-top: auto; color: #7d8581; font-size: 8px; }
.media-workspace { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(280px,.65fr); gap: 18px; align-items: start; }
.media-library { padding: 16px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.media-empty { grid-column: 1/-1; min-height: 330px; padding: 45px; border: 1px dashed #cbd2c8; border-radius: 16px; background: #fafbf8; display: grid; place-items: center; align-content: center; text-align: center; }
.media-empty span { width: 56px; height: 56px; border-radius: 17px; background: var(--acid); display: grid; place-items: center; font-size: 24px; }
.media-empty h3 { margin: 17px 0 7px; font: 600 21px Georgia,serif; }
.media-empty p { max-width: 380px; margin: 0; color: #747d78; font-size: 10px; line-height: 1.6; }
.media-card { overflow: hidden; border: 1px solid #dde2da; border-radius: 16px; background: #fafbf8; }
.media-image { position: relative; aspect-ratio: 16/10; overflow: hidden; background: #e8ebe5; }
.media-image img { width: 100%; height: 100%; object-fit: cover; object-position: var(--focus, center); display: block; }
.media-image > span { position: absolute; left: 10px; top: 10px; padding: 6px 8px; border-radius: 99px; background: rgba(23,35,31,.82); color: white; backdrop-filter: blur(8px); font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.media-card-body { padding: 14px; }
.media-card-title { display: flex; justify-content: space-between; gap: 10px; align-items: start; }
.media-card-title h3 { margin: 0; font: 600 15px Georgia,serif; }
.media-card-title button { border: 0; background: transparent; color: #89908c; cursor: pointer; font-size: 8px; text-decoration: underline; }
.media-card-body > p { margin: 5px 0 12px; color: #7a827e; font-size: 8px; line-height: 1.5; }
.media-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.media-controls label { color: #707975; font-size: 8px; font-weight: 760; }
.media-controls select { width: 100%; height: 34px; margin-top: 5px; border: 1px solid #d8ddd7; border-radius: 8px; background: white; padding: 0 8px; color: var(--ink); font-size: 8px; }
.media-side-stack { display: grid; gap: 14px; }
.creative-direction { padding: 22px; }
.creative-direction h3 { margin: 4px 0 8px; font: 600 21px Georgia,serif; }
.creative-direction > p:not(.eyebrow) { margin: 0; color: #747d78; font-size: 9px; line-height: 1.6; }
.direction-choices { margin: 16px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.direction-choices button { min-height: 48px; border: 1px solid #dce1da; border-radius: 10px; background: #fafbf8; cursor: pointer; color: #6d7671; font-size: 8px; font-weight: 780; }
.direction-choices button.is-active { border-color: var(--sidebar); background: var(--sidebar); color: white; box-shadow: inset 0 -3px var(--acid); }
.visual-brief { min-height: 128px; margin-bottom: 12px; padding: 14px; border-radius: 12px; background: #eef1e9; }
.visual-brief strong { display: block; font: 600 13px Georgia,serif; }
.visual-brief p { margin: 7px 0 0; color: #69736d; font-size: 8px; line-height: 1.6; }
.visual-brief small { display: block; margin-top: 9px; color: #53602f; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.media-principle { padding: 17px; display: flex; gap: 12px; }
.media-principle > span { flex: 0 0 30px; width: 30px; height: 30px; border-radius: 9px; background: var(--acid); display: grid; place-items: center; font-size: 9px; font-weight: 850; }
.media-principle strong { font-size: 10px; }
.media-principle p { margin: 5px 0 0; color: #747d78; font-size: 8px; line-height: 1.5; }

.domain-desk { margin:18px 0; padding:20px; }
.domain-desk-heading { display:flex; justify-content:space-between; align-items:start; gap:18px; }
.domain-desk-heading h3 { margin:3px 0 0; font:600 22px Georgia,serif; }
.domain-desk-heading > span { padding:7px 9px; border-radius:99px; background:var(--acid); color:#405126; font-size:8px; font-weight:850; white-space:nowrap; }
.domain-desk-heading > span.is-pending { background:var(--pastel-violet); color:#67539a; }
.domain-lock-grid { margin-top:16px; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.domain-lock-current,.domain-dns-records { min-height:106px; padding:15px; border-radius:13px; background:#eef1e9; }
.domain-lock-current small,.domain-dns-records small { display:block; margin-bottom:8px; color:#737d77; font-size:7px; font-weight:850; letter-spacing:.1em; }
.domain-lock-current strong { display:block; overflow-wrap:anywhere; font:600 18px Georgia,serif; }
.domain-lock-current p { margin:6px 0 0; color:#727c76; font-size:8px; line-height:1.45; }
.domain-dns-records { display:grid; gap:6px; align-content:start; background:var(--sidebar); color:white; }
.domain-dns-records[hidden] { display:none; }
.domain-dns-records small { color:var(--acid); }
.domain-dns-records code { display:block; overflow-wrap:anywhere; color:#dce4df; font:500 8px/1.45 ui-monospace,monospace; }
.domain-desk-actions { margin-top:12px; display:flex; flex-wrap:wrap; gap:8px; }
.domain-lock-rule { margin:12px 0 0; color:#6f7973; font-size:8px; line-height:1.5; }
.domain-lock-rule strong { color:var(--ink); }

.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: none; place-items: center; padding: 20px; background: rgba(10,18,15,.58); backdrop-filter: blur(7px); }
.modal-backdrop.is-open { display: grid; }
.setup-modal { width: min(690px, 100%); max-height: min(860px, calc(100vh - 40px)); overflow: auto; border-radius: 24px; background: #fbfcf8; box-shadow: 0 35px 100px rgba(0,0,0,.35); }
.owner-input-backdrop { z-index: 58; background: rgba(10,18,15,.42); }
.owner-input-window { width: min(510px,100%); overflow: hidden; border: 1px solid rgba(255,255,255,.62); border-radius: 22px; background: #fbfcf8; box-shadow: 0 32px 90px rgba(7,22,16,.32); }
.owner-input-header { padding: 17px 19px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; }
.owner-input-progress { display: grid; grid-template-columns: repeat(2,1fr); gap: 5px; padding: 0 19px; }
.owner-input-progress i { height: 3px; border-radius: 99px; background: #e2e5df; }
.owner-input-progress i.is-active { background: var(--acid); }
.owner-input-step { min-height: 340px; padding: 28px 34px 22px; }
.owner-input-step[hidden] { display: none; }
.owner-input-step h2 { max-width: 390px; margin: 7px 0 9px; font: 600 31px/1.08 Georgia,serif; }
.owner-input-step > p:not(.eyebrow) { max-width: 410px; margin: 0 0 23px; color: #6b756f; font-size: 10px; line-height: 1.55; }
.owner-input-step > label { display: block; margin-bottom: 17px; color: #5f6763; font-size: 9px; font-weight: 760; }
.owner-input-step > label > span { float: right; color: #89928d; font-size: 8px; font-weight: 600; }
.owner-input-step input,.owner-input-step select { width: 100%; height: 46px; margin-top: 7px; border: 1px solid #d5dbd4; border-radius: 10px; background: #fff; padding: 0 12px; color: var(--ink); font: 700 11px/1.2 Inter,ui-sans-serif,sans-serif; }
.owner-input-step input:focus,.owner-input-step select:focus { outline: 3px solid rgba(205,244,65,.35); border-color: var(--sidebar); }
.guided-service-choices { margin-top: 18px; }
.guided-service-choices .choice { min-height: 54px; }
.automation-summary { margin-top: 19px; padding: 15px 17px; border: 1px solid #d2ddac; border-radius: 13px; background: #f2f6e5; }
.automation-summary strong { display: block; color: #40531d; font-size: 9px; }
.automation-summary ul { margin: 9px 0 0; padding: 0; display: grid; gap: 6px; list-style: none; }
.automation-summary li { position: relative; padding-left: 17px; color: #69745f; font-size: 8px; line-height: 1.4; }
.automation-summary li::before { content: "✓"; position: absolute; left: 0; color: #638113; font-weight: 900; }
.owner-input-footer { padding: 16px 19px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.owner-input-footer .button:last-child { margin-left: auto; min-width: 135px; }
.automation-progress { position: fixed; right: 22px; bottom: calc(var(--release-footer-height) + 22px); z-index: 90; width: min(330px,calc(100vw - 32px)); padding: 14px 16px; border: 1px solid rgba(205,244,65,.42); border-radius: 15px; background: #164630; color: #fff; box-shadow: 0 22px 55px rgba(6,30,20,.3); display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 12px; animation: automation-arrive .22s ease-out; }
.automation-progress[hidden] { display: none; }
.automation-progress-mark { position: relative; width: 34px; height: 34px; border: 2px solid rgba(255,255,255,.26); border-radius: 50%; }
.automation-progress-mark::before { content: "F"; position: absolute; inset: 0; display: grid; place-items: center; color: var(--acid); font: 800 13px/1 Georgia,serif; }
.automation-progress-mark i { position: absolute; inset: -2px; border: 2px solid transparent; border-top-color: var(--acid); border-radius: 50%; animation: automation-turn 1s linear infinite; }
.automation-progress strong,.automation-progress small { display: block; }
.automation-progress strong { color: #fff; font-size: 10px; letter-spacing: .01em; }
.automation-progress small { margin-top: 4px; color: #d5e3dc; font-size: 8px; line-height: 1.4; }
@keyframes automation-arrive { from { opacity: 0; transform: translateY(8px); } }
@keyframes automation-turn { to { transform: rotate(360deg); } }
.mobile-qr-dialog { position: relative; width: min(470px,100%); padding: 34px; border-radius: 26px; background: #fbfcf8; box-shadow: 0 35px 100px rgba(0,0,0,.35); text-align: center; }
.mobile-qr-close { position: absolute; right: 16px; top: 16px; }
.mobile-qr-dialog h2 { max-width: 370px; margin: 8px auto 18px; font: 600 31px/1.08 Georgia,serif; }
.mobile-qr-code { width: min(270px,78vw); margin: 0 auto 17px; padding: 12px; border-radius: 20px; background: white; box-shadow: 0 16px 35px rgba(23,35,31,.12), inset 0 0 0 1px #dce2da; }
.mobile-qr-code img { display: block; width: 100%; height: auto; }
.mobile-qr-dialog > p:not(.eyebrow) { margin: 0 auto 9px; color: #66716b; font-size: 11px; line-height: 1.55; }
.mobile-qr-dialog > small { display: block; max-width: 380px; margin: 0 auto 17px; color: #7d8681; font-size: 8px; line-height: 1.5; }
.mobile-qr-dialog > a { display: inline-grid; place-items: center; text-decoration: none; }
.setup-header { position: sticky; top: 0; z-index: 2; padding: 20px 24px; border-bottom: 1px solid var(--line); background: rgba(251,252,248,.95); display: flex; align-items: center; justify-content: space-between; }
.mini-lockup { display: flex; align-items: center; gap: 10px; }
.mini-mark { width: 34px; height: 34px; border-radius: 10px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font: 700 17px Georgia, serif; }
.mini-lockup strong, .mini-lockup span { display: block; }
.mini-lockup strong { font-size: 11px; }
.mini-lockup span { margin-top: 3px; color: #7f8783; font-size: 8px; }
.setup-progress { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; padding: 0 24px; transform: translateY(-1px); }
.setup-progress i { height: 2px; background: #e2e5df; }
.setup-progress i.is-active { background: var(--sidebar); }
.setup-step { display: none; min-height: 510px; padding: 36px 55px 24px; }
.setup-step.is-active { display: block; animation: reveal .25s ease; }
.setup-step h2, .discovery-loading h2 { margin: 6px 0 9px; font: 500 35px/1.1 Georgia, serif; }
.setup-lead { max-width: 550px; margin: 0 0 25px; color: #747c78; font-size: 11px; line-height: 1.6; }
.setup-step > label { display: block; margin-bottom: 18px; }
.setup-step > label > span, .two-fields label > span { float: right; color: #929996; font-size: 8px; font-weight: 500; }
.field-group { margin-bottom: 18px; }
.field-group > label, fieldset legend { display: block; margin-bottom: 7px; color: #5f6763; font-size: 9px; font-weight: 760; }
.field-group > label > span { float: right; color: #929996; font-size: 8px; font-weight: 500; }
.add-input { display: grid; grid-template-columns: 1fr auto; }
.add-input input { border-radius: 9px 0 0 9px !important; margin: 0 !important; }
.add-input button { border: 0; border-radius: 0 9px 9px 0; background: var(--sidebar); color: white; padding: 0 17px; font-size: 9px; font-weight: 800; cursor: pointer; }
.country-search-field { position: relative; }
.country-search-input { padding-left: 34px !important; background-image: radial-gradient(circle at 18px 50%, transparent 0 4px, #7d8581 4.5px 5.5px, transparent 6px), linear-gradient(45deg, transparent 47%, #7d8581 48% 55%, transparent 56%); background-position: 0 0, 23px 24px; background-size: 100% 100%, 8px 8px; background-repeat: no-repeat; }
.country-search-results { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 12; max-height: 280px; overflow-y: auto; border: 1px solid #cad1c9; border-radius: 12px; background: #fff; box-shadow: 0 22px 55px rgba(17,29,24,.23); overscroll-behavior: contain; }
.country-search-results[hidden] { display: none; }
.country-results-summary { position: sticky; top: 0; z-index: 1; padding: 9px 12px; border-bottom: 1px solid #e4e8e2; background: #f4f6f1; color: #77817c; font-size: 8px; font-weight: 760; letter-spacing: .04em; text-transform: uppercase; }
.country-result { width: 100%; min-height: 42px; padding: 9px 12px; border: 0; border-bottom: 1px solid #eef0ec; background: #fff; display: flex; align-items: center; justify-content: space-between; gap: 14px; color: var(--ink); cursor: pointer; text-align: left; }
.country-result:last-child { border-bottom: 0; }
.country-result:hover,.country-result.is-active { background: #eef4d5; }
.country-result strong { font-size: 10px; }
.country-result span { flex: 0 0 auto; padding: 3px 6px; border-radius: 5px; background: #edf0ea; color: #78817c; font-size: 7px; font-weight: 820; letter-spacing: .08em; }
.token-list { margin-top: 8px; display: flex; flex-wrap: wrap; gap: 6px; }
.token { border: 0; padding: 7px 9px; border-radius: 8px; background: #e8eddd; color: #52602f; cursor: pointer; font-size: 9px; font-weight: 730; }
.token::after { content: " ×"; color: #7f8964; }
.validation-message { display: block; min-height: 15px; margin-top: 5px; color: #b04a3b; font-size: 8px; }
.domicile-error { margin-top: -14px; margin-bottom: 8px; }
.setup-suggestion { margin: -10px 0 13px; padding: 9px 11px; border-radius: 9px; background: #eef4d5; color: #596531; display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 8px; }
.setup-suggestion button { border: 0; padding: 6px 8px; border-radius: 7px; background: var(--sidebar); color: white; cursor: pointer; font-size: 8px; font-weight: 780; white-space: nowrap; }
.two-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.two-fields label { display: block; }
.two-fields input[type="range"] { width: 100%; margin-top: 15px; accent-color: var(--sidebar); }
fieldset { padding: 0; margin: 0 0 24px; border: 0; }
.setup-domain-fieldset { margin:-3px 0 18px; padding:13px; border:1px solid #dce1d9; border-radius:12px; background:#f3f5ef; }
.setup-domain-fieldset legend { width:100%; }
.setup-domain-fieldset legend span { float:right; color:#929996; font-size:8px; font-weight:500; }
.domain-mode-options { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.domain-mode-option { position:relative; padding:11px 12px; border:1px solid #d8ddd7; border-radius:10px; background:white; cursor:pointer; }
.domain-mode-option.is-selected { border-color:var(--sidebar); box-shadow:inset 0 -3px var(--acid); }
.domain-mode-option input { position:absolute; right:10px; top:10px; accent-color:var(--sidebar); }
.domain-mode-option strong,.domain-mode-option small { display:block; }
.domain-mode-option strong { padding-right:22px; font-size:9px; }
.domain-mode-option small { margin-top:4px; color:#78817c; font-size:7px; }
.setup-custom-domain { margin-top:9px; padding:11px; border-radius:9px; background:white; }
.setup-custom-domain label { display:block; color:#5f6763; font-size:8px; font-weight:760; }
.setup-custom-domain input,.setup-custom-domain select { margin-top:6px; }
.setup-domain-rule { margin:9px 0 0; color:#717b75; font-size:7px; line-height:1.5; }
.setup-domain-rule strong { color:#53602f; }
.choice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.choice { min-height: 48px; border: 1px solid #d8ddd7; border-radius: 10px; background: white; color: #737b77; cursor: pointer; font-size: 9px; font-weight: 750; }
.choice.is-selected { border-color: var(--sidebar); background: var(--sidebar); color: white; box-shadow: inset 0 -3px var(--acid); }
.storage-options { display: grid; gap: 8px; }
.storage-option { position: relative; padding: 14px; border: 1px solid #d9ddd7; border-radius: 12px; background: white; display: grid; grid-template-columns: 36px 1fr; gap: 11px; cursor: pointer; }
.storage-option.is-selected { border-color: var(--sidebar); box-shadow: inset 0 0 0 1px var(--sidebar); }
.storage-option input { position: absolute; right: 15px; top: 15px; accent-color: var(--sidebar); }
.storage-icon { width: 34px; height: 34px; border-radius: 9px; background: #edf0e8; display: grid; place-items: center; }
.storage-option strong, .storage-option p, .storage-option small { display: block; }
.storage-option strong { font-size: 10px; }
.storage-option p { margin: 4px 28px 4px 0; color: #7b837f; font-size: 8px; line-height: 1.45; }
.storage-option small { color: #66822d; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.icloud-access { margin-top: 11px; padding: 14px 15px; border: 1px solid #d7dfc3; border-radius: 12px; background: #f5f8e9; }
.icloud-access > div:first-child strong { font-size: 10px; }
.icloud-access > div:first-child p { margin: 4px 0 10px; color: #6f786a; font-size: 8px; line-height: 1.5; }
.icloud-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.icloud-actions label.button { display: inline-grid; place-items: center; }
.icloud-access > small { display: block; margin-top: 9px; color: #747e70; font-size: 7px; line-height: 1.45; }
.switch-row { margin-top: 13px; padding: 13px 15px; border-radius: 12px; background: #eef0eb; display: flex; align-items: center; justify-content: space-between; cursor: pointer; }
.switch-row div strong, .switch-row div span { display: block; }
.switch-row strong { font-size: 9px; }
.switch-row div span { margin-top: 3px; color: #79817d; font-size: 8px; }
.switch-row input { display: none; }
.switch-row i { position: relative; width: 38px; height: 22px; border-radius: 99px; background: #cbd0ca; transition: .2s; }
.switch-row i::after { content: ""; position: absolute; width: 16px; height: 16px; left: 3px; top: 3px; border-radius: 50%; background: white; transition: .2s; }
.switch-row input:checked + i { background: var(--sidebar); }
.switch-row input:checked + i::after { transform: translateX(16px); }
.switch-row:has(input:disabled) { opacity: .5; cursor: not-allowed; }
.discovery-summary { margin-top: 13px; padding: 13px 15px; border: 1px solid #dce1d9; border-radius: 12px; display: flex; gap: 11px; }
.discovery-orbit { width: 29px; height: 29px; border-radius: 50%; background: var(--acid); display: grid; place-items: center; }
.discovery-summary strong { font-size: 9px; }
.discovery-summary p { margin: 4px 0 0; color: #77807b; font-size: 8px; line-height: 1.5; }
.setup-footer { position: sticky; bottom: 0; z-index: 2; padding: 17px 24px; border-top: 1px solid var(--line); background: rgba(251,252,248,.96); display: flex; justify-content: space-between; }
.setup-footer-actions { display: flex; gap: 8px; }
.discovery-loading { min-height: 610px; padding: 100px 45px 50px; text-align: center; }
.radar-animation { position: relative; width: 130px; height: 130px; margin: 0 auto 28px; border-radius: 50%; border: 1px solid #cfd7cb; display: grid; place-items: center; background: radial-gradient(circle, rgba(216,240,107,.4), transparent 55%); }
.radar-animation::before, .radar-animation::after { content: ""; position: absolute; inset: 19px; border: 1px solid #dce2da; border-radius: 50%; }
.radar-animation::after { inset: 39px; }
.radar-animation span { position: absolute; width: 50%; height: 1px; left: 50%; top: 50%; transform-origin: left; background: linear-gradient(90deg, #8fa040, transparent); animation: sweep 1.6s linear infinite; }
.radar-animation i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--bright-pink); left: 70%; top: 28%; animation: pulse 1.3s ease infinite; }
.radar-animation b { position: relative; z-index: 1; width: 37px; height: 37px; border-radius: 11px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font: 700 18px Georgia, serif; }
@keyframes sweep { to { transform: rotate(360deg); } }
@keyframes pulse { 50% { box-shadow: 0 0 0 8px rgba(238,117,93,.14); } }
.discovery-loading > p:last-child { max-width: 430px; margin: 9px auto; color: #76807a; font-size: 11px; line-height: 1.6; }

.print-centre-layout { display: grid; grid-template-columns: minmax(230px, .34fr) minmax(0, 1fr); gap: 18px; min-height: 0; }
.print-report-menu { padding: 18px; align-self: start; }
.print-report-menu > .eyebrow { padding: 2px 4px 10px; }
.print-report-option { width: 100%; margin-top: 7px; padding: 12px; border: 1px solid #e0e4dd; border-radius: 12px; background: #fafbf7; color: var(--ink); display: grid; grid-template-columns: 27px minmax(0,1fr); gap: 3px 10px; text-align: start; cursor: pointer; }
.print-report-option:hover { border-color: #bcc8a8; background: #f6f9ed; }
.print-report-option.is-active { border-color: #a9bd5a; background: #eff7d5; box-shadow: inset 3px 0 var(--acid); }
.print-report-option > span { grid-row: 1 / 3; width: 27px; height: 27px; border-radius: 8px; background: var(--sidebar); color: var(--acid); display: grid; place-items: center; font-size: 8px; font-weight: 850; }
.print-report-option strong { font-size: 10px; }
.print-report-option small { color: #78817c; font-size: 8px; line-height: 1.4; }
.print-preview-shell { min-height: 0; padding: 0; display: flex; flex-direction: column; overflow: hidden; }
.print-preview-heading { padding: 16px 20px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.print-preview-heading h3 { margin: 3px 0 0; font: 500 21px Georgia, serif; }
.print-preview-heading > span { max-width: 250px; color: #79827d; font-size: 8px; line-height: 1.45; text-align: end; }
.print-report-preview { min-height: 0; padding: 20px; overflow: auto; background: #eef0eb; }
.print-report-sheet { width: min(100%, 820px); min-height: 760px; margin: 0 auto; padding: 36px; background: white; color: #18251f; box-shadow: 0 16px 38px rgba(22,35,31,.12); }
.print-report-header { padding-bottom: 20px; border-bottom: 3px solid var(--sidebar); display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.print-report-header img { width: 105px; height: auto; }
.print-report-header p { margin: 3px 0 0; color: #65706a; font-size: 8px; line-height: 1.5; text-align: end; }
.print-report-heading { margin: 25px 0 17px; }
.print-report-heading .eyebrow { color: #778279; }
.print-report-heading h2 { margin: 5px 0 7px; font: 500 30px/1.1 Georgia, serif; }
.print-report-heading p { max-width: 620px; margin: 0; color: #65706a; font-size: 10px; line-height: 1.55; }
.print-stat-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-bottom: 23px; }
.print-stat { padding: 14px; border: 1px solid #dde2da; border-radius: 11px; background: #fafbf7; }
.print-stat span, .print-detail-row span { display: block; color: #7b847f; font-size: 7px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.print-stat strong { display: block; margin-top: 6px; font: 600 21px Georgia, serif; overflow-wrap: anywhere; }
.print-report-section { margin-top: 22px; }
.print-report-section h3 { margin: 0 0 10px; padding-bottom: 7px; border-bottom: 1px solid #dfe3dc; font: 600 17px Georgia, serif; }
.print-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.print-detail-row { padding: 10px 12px; border: 1px solid #e1e5de; border-radius: 9px; }
.print-detail-row strong { display: block; margin-top: 4px; font-size: 9px; line-height: 1.45; overflow-wrap: anywhere; }
.print-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.print-table th, .print-table td { padding: 8px 6px; border-bottom: 1px solid #e3e6e0; vertical-align: top; text-align: start; overflow-wrap: anywhere; }
.print-table th { color: #6d7771; font-size: 7px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.print-table td { font-size: 8px; line-height: 1.45; }
.print-empty { padding: 22px; border: 1px dashed #ced6c9; border-radius: 10px; color: #717b75; text-align: center; font-size: 9px; }
.print-report-note { margin: 24px 0 0; padding: 11px 13px; border-radius: 9px; background: #edf7e8; color: #526559; font-size: 8px; line-height: 1.5; }
.print-page-break + .print-page-break { margin-top: 38px; padding-top: 36px; border-top: 4px solid #eef0eb; }
.print-output { display: none; }

.toast { position: fixed; left: 50%; bottom: calc(var(--release-footer-height) + 24px); z-index: 90; transform: translate(-50%, 30px); opacity: 0; pointer-events: none; padding: 12px 17px; border-radius: 10px; background: var(--sidebar); color: white; box-shadow: 0 15px 40px rgba(0,0,0,.2); font-size: 10px; font-weight: 700; transition: .25s; }
.toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

html[dir="rtl"] body { direction:rtl; }
html[dir="rtl"] [data-i18n-ignore],
html[dir="rtl"] [data-fido-fallback-direction="ltr"] { direction:ltr; unicode-bidi:isolate; }
html[dir="rtl"] [data-fido-fallback-direction="ltr"] { text-align:start; }
@media (min-width: 901px) {
	html[dir="rtl"] .app-shell { direction:ltr; grid-template-columns:minmax(0,1fr) 252px; }
	html[dir="rtl"] .sidebar { grid-column:2; grid-row:1; }
	html[dir="rtl"] .workspace { grid-column:1; grid-row:1; }
}
html[dir="rtl"] .sidebar,
html[dir="rtl"] .workspace { direction:rtl; }
html[dir="rtl"] .fixed-credit { direction:rtl; }
html[dir="rtl"] .nav-item { text-align:right; }
html[dir="rtl"] .nav-item.is-active { box-shadow:inset -3px 0 var(--acid); }
html[dir="rtl"] .nav-count { margin-right:auto; margin-left:0; }
html[dir="rtl"] .sidebar-install { text-align:right; }
html[dir="rtl"] .sidebar-install span { margin-right:0; margin-left:7px; }
html[dir="rtl"] .source-check,
html[dir="rtl"] .storage-option input { right:auto; left:15px; }
html[dir="rtl"] .domain-mode-option input { right:auto; left:10px; }
html[dir="rtl"] .domain-mode-option strong { padding-right:0; padding-left:22px; }
html[dir="rtl"] .add-input button { border-radius:9px 0 0 9px; }
html[dir="rtl"] .owner-input-step > label > span { float:left; }
html[dir="rtl"] .automation-summary li { padding-left:0; padding-right:17px; }
html[dir="rtl"] .automation-summary li::before { left:auto; right:0; }
html[dir="rtl"] .owner-input-footer .button:last-child { margin-left:0; margin-right:auto; }
html[dir="rtl"] .automation-progress { right:auto; left:22px; }
html[dir="rtl"] .welcome-banner::before { right:auto; left:-80px; }
html[dir="rtl"] .welcome-banner::after { right:auto; left:82px; }
html[dir="rtl"] .reasoning-step:not(:last-child)::after { left:auto; right:15px; }
html[dir="rtl"] .source-card h3, html[dir="rtl"] .source-topline { padding-right:0; padding-left:32px; }
html[dir="rtl"] .request-post { border-left:0; border-right:3px solid var(--acid); border-radius:11px 0 0 11px; }
html[dir="rtl"] .platform-stack { padding-left:0; padding-right:14px; }
html[dir="rtl"] .platform-stack span { margin-left:0; margin-right:-14px; }

@media (max-width: 1180px) {
	.source-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.brand-layout { grid-template-columns: 1fr; }
	.preview-column { position: static; }
	.website-preview { max-width: 700px; }
	.site-builder-layout { grid-template-columns: 1fr; }
	.domain-lock-grid { grid-template-columns:1fr; }
	.site-section-map { position: static; grid-template-columns: repeat(3,minmax(0,1fr)); }
	.site-section-map > p, .site-section-map > a { grid-column: 1 / -1; }
	.media-workspace { grid-template-columns: 1fr; }
	.media-side-stack { grid-template-columns: 1fr 1fr; }
	.calendar-layout { grid-template-columns: 1fr; }
	.calendar-side-stack { grid-template-columns: 1fr 1fr; }
	.print-centre-layout { grid-template-columns: 1fr; }
	.print-report-menu { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
	.print-report-menu > .eyebrow { grid-column: 1 / -1; }
	.radar-source-row { grid-template-columns: 170px minmax(190px,1fr) minmax(180px,.72fr) minmax(170px,.8fr); gap: 13px; }
}

@media (max-width: 900px) {
	.app-shell { grid-template-columns: 1fr; }
	.sidebar { position: fixed; left: 0; transform: translateX(-105%); width: 260px; transition: .25s; box-shadow: 20px 0 50px rgba(0,0,0,.25); }
	body.nav-open .sidebar { transform: translateX(0); }
	.sidebar-back-to-site { display:flex; }
	.back-to-main-site { display:none; }
	html[dir="rtl"] .sidebar { right:0; left:auto; transform:translateX(105%); box-shadow:-20px 0 50px rgba(0,0,0,.25); }
	html[dir="rtl"] body.nav-open .sidebar { transform:translateX(0); }
	.mobile-menu { display: grid; }
	.system-status { display: none; }
	.metric-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.search-depth-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
	.radar-grid { grid-template-columns: 1fr; }
	.source-grid { grid-template-columns: 1fr 1fr; }
	.news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.today-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.media-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.calendar-day { min-height: 78px; padding: 8px; }
	.radar-engine-identity { grid-template-columns: 1fr auto; }
	.radar-engine-identity dl { justify-self: end; }
	.radar-source-jump.button { grid-column: 1 / -1; width: 100%; }
	.radar-source-row { grid-template-columns: minmax(170px,.8fr) minmax(0,1.2fr); min-height: 0; }
	.radar-source-row > label:not(.radar-custom-address), .radar-source-result { grid-column: auto; }
	.radar-source-rows { height: 260px; min-height: 0; }
	.radar-source-rows.is-custom-grid { height: min(420px, 58vh); min-height: 300px; }
}

@media (max-width: 640px) {
	.trial-chip, .space-chip { display: none; }
	.intro-stage { height: 280px; }
	.intro-word { font-size: clamp(78px, 25vw, 150px); }
	.intro-paw { width: clamp(27px, 8vw, 42px); }
	.topbar { height: 82px; padding: 16px 18px; }
	.topbar h1 { font-size: 22px; }
	#open-setup { display: none; }
	main { padding: 20px 15px 35px; }
	.welcome-banner { align-items: flex-start; flex-direction: column; }
	.welcome-banner h2 { font-size: 32px; }
	.metric-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
	.metric-card { min-height: 116px; padding: 16px; }
	.search-depth-heading { align-items: flex-start; flex-direction: column; }
	.search-depth-heading .button { width: 100%; }
	.radar-scope { padding: 14px; }
	.radar-scope-label, .radar-extra-label > span { align-items: flex-start; flex-direction: column; gap: 3px; }
	.search-depth-grid { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 14px; }
	.search-depth-foot { padding-inline: 14px; }
	.today-heading { align-items: flex-start; flex-direction: column; }
	.today-actions { grid-template-columns: 1fr 1fr; }
	.source-grid { grid-template-columns: 1fr; }
	.platform-connection-note { grid-template-columns: auto 1fr; }
	.platform-connection-note > span { grid-column: 2; width: max-content; }
	.new-opportunity-grid { grid-template-columns: 1fr; }
	.news-grid { grid-template-columns:1fr; }
	.service-editor-grid { grid-template-columns: 1fr; }
	.source-toolbar, .split-intro { align-items: flex-start; flex-direction: column; }
	.source-actions { width: 100%; justify-content: space-between; }
	.rule-strip { overflow-x: auto; }
	.rule-strip i { min-width: 25px; }
	.profile-grid { grid-template-columns: 1fr; }
	.media-library { grid-template-columns: 1fr; padding: 10px; }
	.media-side-stack { grid-template-columns: 1fr; }
	.media-summary { grid-template-columns: 1fr 1fr; }
	.media-controls { grid-template-columns: 1fr; }
	.calendar-rule { grid-template-columns: 35px 1fr; }
	.calendar-rule small { grid-column: 2; }
	.calendar-side-stack { grid-template-columns: 1fr; }
	.calendar-weekdays { padding-inline: 4px; }
	.calendar-weekdays span { padding-inline: 1px; font-size: 7px; }
	.calendar-grid { padding-inline: 4px; gap: 3px; }
	.calendar-day { min-height: 64px; padding: 6px; border-radius: 8px; }
	.calendar-day > span { font-size: 0; }
.calendar-day > span::after { content: none; }
	#manual-booking-form { grid-template-columns: 1fr; }
	#manual-booking-form .wide { grid-column: 1; }
	.mobile-install-panel { grid-template-columns: 48px 1fr; }
	.mobile-install-panel .button { grid-column: 1 / -1; width: 100%; }
	.print-report-menu { grid-template-columns: 1fr; }
	.print-preview-heading { align-items: flex-start; flex-direction: column; }
	.print-preview-heading > span { text-align: start; }
	.print-report-preview { padding: 8px; }
	.print-report-sheet { min-height: 0; padding: 22px 18px; box-shadow: none; }
	.print-stat-grid, .print-detail-grid { grid-template-columns: 1fr; }
	.brand-section { padding: 18px; grid-template-columns: 31px minmax(0,1fr); }
	.theme-grid { grid-template-columns: 1fr; }
	.theme-confirm-row { position: static; align-items: stretch; flex-direction: column; }
	.theme-confirm-row .button { width: 100%; }
	.website-builder-actions { width: 100%; }
	.website-builder-actions .button { flex: 1; text-align: center; }
	.release-actions .button, .release-actions .repository-import { flex: 1 1 calc(50% - 7px); text-align: center; }
	.update-website-button { margin-left: 0; }
	.publication-meta { align-items: flex-start; flex-direction: column; }
	.builder-status { grid-template-columns: 35px 1fr; }
	.builder-status small { grid-column: 2; }
	.site-section-map { grid-template-columns: 1fr 1fr; }
	.site-fields, .faq-editor-list { grid-template-columns: 1fr; }
	.site-fields .wide { grid-column: 1; }
	.upload-row { grid-template-columns: 1fr; }
	.asset-preview { min-height: 90px; }
	.title-mode { grid-template-columns: 1fr; }
	.preview-hero { padding: 42px 25px 35px; }
	.preview-services { grid-template-columns: 1fr; }
	.preview-proof { flex-wrap: wrap; }
	.setup-modal { max-height: 100vh; border-radius: 0; }
	.modal-backdrop { padding: 0; }
	.owner-input-backdrop { padding: 14px; }
	.owner-input-window { border-radius: 18px; }
	.owner-input-step { min-height: 350px; padding: 26px 22px 20px; }
	.owner-input-step h2 { font-size: 27px; }
	.owner-input-footer .button { flex: 1; }
	.automation-progress { right: 16px; bottom: calc(var(--release-footer-height) + 16px); }
	html[dir="rtl"] .automation-progress { right:auto; left:16px; }
	.setup-step { min-height: calc(100vh - 150px); padding: 30px 24px 20px; }
	.country-search-results { max-height: 230px; }
	.choice-grid { grid-template-columns: repeat(2,1fr); }
	.two-fields { grid-template-columns: 1fr; }
	.radar-engine-identity { grid-template-columns: 1fr; }
	.radar-engine-identity dl { width: 100%; justify-self: stretch; }
	.radar-engine-identity dl div { flex: 1; min-width: 0; padding-inline: 9px; }
	.radar-source-heading, .radar-source-pagination, .brand-public-link-row { align-items: stretch; flex-direction: column; }
	.radar-source-heading { padding: 17px 18px 14px; gap: 10px; }
	.radar-source-heading h2 { margin-block: 2px 4px; font-size: 23px; }
	.radar-source-heading p:last-child { font-size: 9px; line-height: 1.45; }
	.radar-source-count { width: fit-content; }
	.radar-source-rows { height: 240px; min-height: 0; }
	.radar-source-rows.is-tab-grid { padding: 10px; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 40px; gap: 6px; }
	.radar-source-tab { padding-inline: 7px; font-size: 8px; }
	.radar-source-rows.is-custom-grid { height: min(410px, 56vh); min-height: 300px; }
	.radar-source-row { grid-template-columns: 1fr; gap: 9px; padding: 13px 16px; }
	.radar-source-row > p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; font-size: 8px; line-height: 1.4; }
	.radar-source-row input { height: 36px; font-size: 9px; }
	.radar-source-result { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
	.radar-source-result strong { font-size: 8px; }
	.radar-source-access-note { padding: 7px 9px; }
	#radar-permanent-tags { max-height: 150px; }
	.radar-source-pagination > div { align-self: center; }
	.brand-public-link-row .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.automation-progress { animation: none; }
	.automation-progress-mark i { animation-duration: 2.4s; }
}

/* Desktop pages use the browser's normal document scroll. Long collections can
   still keep their own bounded scroll areas, but they never trap the page. */
@media (min-width: 901px) {
	html, body { height: auto; min-height: 100%; overflow-x: hidden; overflow-y: auto; }
	.app-shell { height: auto; min-height: 100vh; overflow: visible; }
	.workspace { height: auto; min-height: 100vh; display: block; overflow: visible; }
	.topbar { position: sticky; top: 0; }
	main { width: 100%; height: auto; min-height: calc(100vh - 100px); padding: clamp(18px, 2.4vw, 32px) clamp(24px, 3vw, 46px); overflow: visible; }
	.view.is-active { height: auto; min-height: calc(100vh - 164px); overflow: visible; padding-right: 4px; }
	.view.is-active::-webkit-scrollbar, .source-grid::-webkit-scrollbar, .new-opportunity-grid::-webkit-scrollbar, .site-editor-stack::-webkit-scrollbar, .brand-controls::-webkit-scrollbar, .preview-column::-webkit-scrollbar, #radar-permanent-tags::-webkit-scrollbar, .radar-source-rows::-webkit-scrollbar { width: 8px; }
	.view.is-active::-webkit-scrollbar-thumb, .source-grid::-webkit-scrollbar-thumb, .new-opportunity-grid::-webkit-scrollbar-thumb, .site-editor-stack::-webkit-scrollbar-thumb, .brand-controls::-webkit-scrollbar-thumb, .preview-column::-webkit-scrollbar-thumb, #radar-permanent-tags::-webkit-scrollbar-thumb, .radar-source-rows::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 99px; background: #cbd1c9; background-clip: padding-box; }
}

@media (min-width: 1181px) {
	#view-radar.is-active { display: grid; grid-template-columns: minmax(0, .98fr) minmax(0, 1.18fr); grid-template-rows: auto auto minmax(230px, 1fr) auto; gap: 14px; overflow: auto; padding-right: 4px; }
	#view-radar .welcome-banner { grid-column: 1; grid-row: 1; min-height: 190px; padding: 28px; }
	#view-radar .welcome-banner h2 { font-size: clamp(29px, 2.5vw, 39px); }
	#view-radar .metric-grid { grid-column: 1; grid-row: 2; margin: 0; gap: 9px; }
	#view-radar .metric-card { min-height: 105px; padding: 15px; }
	#view-radar .metric-card strong { margin-top: 8px; font-size: 29px; }
	#view-radar .metric-card .metric-word { font-size: 22px; }
	#view-radar .search-depth-panel { grid-column: 1; grid-row: 3; min-height: 0; margin: 0; overflow: auto; }
	#view-radar .search-depth-heading { padding: 17px 19px 14px; }
	#view-radar .radar-scope { padding: 13px 18px; }
	#view-radar .search-depth-grid { padding: 14px 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	#view-radar .search-depth-stat { min-height: 70px; }
	#view-radar .search-depth-foot { padding: 11px 18px 14px; }
	#view-radar .today-panel { grid-column: 2; grid-row: 1; min-height: 0; margin: 0; padding: 18px 20px; overflow: hidden; }
	#view-radar .today-actions { margin-top: 12px; gap: 7px; }
	#view-radar .today-action { min-height: 108px; padding: 12px; }
	#view-radar .today-action strong { margin-top: 9px; font-size: 12px; }
	#view-radar .radar-grid { grid-column: 2; grid-row: 2 / 4; min-height: 0; overflow: hidden; grid-template-columns: minmax(0, 1.45fr) minmax(235px, .65fr); }
	#view-radar .radar-grid > .panel:first-child { min-height: 0; display: flex; flex-direction: column; overflow: hidden; }
	#view-radar .opportunity-list { min-height: 0; overflow: auto; overscroll-behavior: contain; }
	#view-radar .intelligence-panel { min-height: 0; overflow: auto; }
	#view-radar .radar-source-panel { grid-column: 1 / -1; grid-row: 4; margin: 0; scroll-margin-top: 14px; }

	#view-sources.is-active { display: grid; grid-template-rows: auto auto auto auto minmax(0, 1fr); overflow: hidden; }
	#view-sources .source-grid { min-height: 0; overflow: auto; overscroll-behavior: contain; align-content: start; padding-right: 6px; }

	#view-new.is-active { display: grid; grid-template-rows: auto auto auto minmax(0, 1fr); overflow: hidden; }
	#view-new .new-opportunity-grid { min-height: 0; overflow: auto; overscroll-behavior: contain; align-content: start; padding-right: 6px; }

	#view-calendar.is-active { display: grid; grid-template-rows: auto auto minmax(0, 1fr); overflow: hidden; }
	#view-calendar .calendar-layout { min-height: 0; overflow: auto; overscroll-behavior: contain; padding-right: 6px; }

	#view-media.is-active { display: grid; grid-template-rows: auto auto minmax(0, 1fr); overflow: hidden; }
	#view-media .media-workspace { min-height: 0; overflow: auto; overscroll-behavior: contain; padding-right: 6px; }

	#view-website.is-active { display: grid; grid-template-rows: auto auto auto minmax(0, 1fr); overflow: hidden; }
	#view-website .site-builder-layout { height: 100%; min-height: 0; overflow: hidden; }
	#view-website .site-section-map { position: static; height: 100%; min-height: 0; overflow: auto; }
	#view-website .site-editor-stack { height: 100%; min-height: 0; overflow: auto; overscroll-behavior: contain; padding-right: 6px; align-content: start; grid-auto-rows: max-content; }
	#view-website .site-editor-card { scroll-margin-top: 0; }

	#view-brand.is-active { display: grid; grid-template-rows: auto minmax(0, 1fr); overflow: hidden; }
	#view-brand .brand-layout { height: 100%; min-height: 0; overflow: hidden; }
	#view-brand .brand-controls, #view-brand .preview-column { height: 100%; min-height: 0; overflow: auto; overscroll-behavior: contain; padding-right: 6px; }
	#view-brand .preview-column { position: static; }

	#view-print.is-active { display: grid; grid-template-rows: auto minmax(0, 1fr); overflow: hidden; }
	#view-print .print-centre-layout { height: 100%; min-height: 0; overflow: hidden; }
	#view-print .print-report-menu { height: 100%; min-height: 0; overflow: auto; }
	#view-print .print-preview-shell { height: 100%; min-height: 0; }

	#view-profile.is-active { display: grid; grid-template-rows: auto auto minmax(0, 1fr); overflow: hidden; }
	#view-profile .profile-grid { min-height: 0; overflow: auto; overscroll-behavior: contain; align-content: start; padding-right: 6px; }
}

/* Large screens also retain document scrolling. These panes used to clip their
   lower rows inside heightless grids on desktop and iPad landscape. */
@media (min-width: 1181px) {
	#view-radar.is-active,
	#view-sources.is-active,
	#view-new.is-active,
	#view-news.is-active,
	#view-calendar.is-active,
	#view-media.is-active,
	#view-website.is-active,
	#view-brand.is-active,
	#view-print.is-active,
	#view-profile.is-active { height:auto; overflow:visible; }
	#view-radar .search-depth-panel,
	#view-radar .radar-grid,
	#view-radar .radar-grid > .panel:first-child,
	#view-radar .opportunity-list,
	#view-radar .intelligence-panel,
	#view-sources .source-grid,
	#view-new .new-opportunity-grid,
	#view-calendar .calendar-layout,
	#view-media .media-workspace,
	#view-website .site-builder-layout,
	#view-website .site-section-map,
	#view-website .site-editor-stack,
	#view-brand .brand-layout,
	#view-brand .brand-controls,
	#view-brand .preview-column,
	#view-print .print-centre-layout,
	#view-print .print-report-menu,
	#view-print .print-preview-shell,
	#view-profile .profile-grid { height:auto; overflow:visible; }
}

@media (max-width: 620px) {
	.fixed-credit { justify-content:center; font-size:.54rem; letter-spacing:.06em; }
	.fixed-credit .release-owner { display:none; }
	.news-pagination { justify-content:space-between; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.fido-intro { animation: none !important; }
	.intro-letter { opacity: 1; filter: none; transform: none; }
	.intro-paw { display: none; }
}

@media print {
	@page { size: A4; margin: 12mm; }
	html, body { width: auto !important; height: auto !important; overflow: visible !important; background: white !important; }
	body > *:not(#print-output) { display: none !important; }
	#print-output { display: block !important; width: 100%; color: #18251f; background: white; }
	#print-output .print-report-sheet { width: 100%; min-height: 0; margin: 0; padding: 0; box-shadow: none; }
	#print-output .print-page-break + .print-page-break { margin: 0; padding: 0; border: 0; break-before: page; page-break-before: always; }
	#print-output .print-report-section, #print-output .print-stat, #print-output .print-detail-row, #print-output tr { break-inside: avoid; page-break-inside: avoid; }
	#print-output .print-report-header img { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
	#print-output .print-report-note, #print-output .print-stat { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
	#print-output a { color: inherit; text-decoration: none; }
}
