:root {
  --ink: #171525;
  --ink-soft: #4d4a5c;
  --muted: #8b8799;
  --line: #e9e7ef;
  --line-strong: #dad6e5;
  --canvas: #f7f6f9;
  --surface: #ffffff;
  --surface-alt: #f0eef5;
  --purple: #7053ec;
  --purple-dark: #5137cc;
  --purple-soft: #f0ecff;
  --coral: #ff7d68;
  --green: #2ca979;
  --amber: #d98435;
  --red: #d95663;
  --blue: #347fcf;
  --dark: #1e1930;
  --shadow-sm: 0 5px 20px rgba(38, 31, 62, .055);
  --shadow: 0 18px 52px rgba(35, 29, 58, .09);
  --shadow-lg: 0 34px 100px rgba(25, 19, 48, .18);
  --radius: 18px;
  --radius-sm: 12px;
  --container: 1220px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--canvas); }
body { margin: 0; background: var(--canvas); color: var(--ink); font: 400 15px/1.55 system-ui, -apple-system, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
body.public-body { background: #fff; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3 { font-family: system-ui, -apple-system, "Segoe UI", sans-serif; }
:focus-visible { outline: 3px solid rgba(112,83,236,.28); outline-offset: 2px; }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.eyebrow { display: block; color: #9a96a7; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.eyebrow.light { color: #bdb4e8; }
.muted { color: var(--muted); }
.btn { min-height: 44px; padding: 0 18px; border: 1px solid transparent; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; font-weight: 750; transition: .22s ease; }
.btn:hover { transform: translateY(-1px); }
.btn.primary { color: #fff; background: linear-gradient(135deg, #8168f7, #5d42da); box-shadow: 0 10px 22px rgba(106,77,226,.23); }
.btn.primary:hover { box-shadow: 0 14px 30px rgba(106,77,226,.32); }
.btn.secondary { color: #5d566b; background: #fff; border-color: var(--line); box-shadow: 0 4px 12px rgba(34,29,53,.035); }
.btn.secondary:hover { color: var(--purple); border-color: #cec5fa; }
.btn.danger { color: #fff; background: var(--red); }
.btn.light { color: var(--purple-dark); background: #fff; }
.btn.outline-light { color: #fff; border-color: rgba(255,255,255,.35); background: transparent; }
.btn.wide { width: 100%; }
.text-link { color: var(--purple); font-weight: 750; }
.text-danger { color: var(--red); border: 0; background: none; font-size: 12px; font-weight: 700; padding: 10px; }

/* Header and brand */
.brand-mark { display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0; }
.brand-mark > span { width: 36px; height: 36px; border-radius: 11px; background: linear-gradient(145deg,#937bff,#5435d7); color: #fff; display: grid; place-items: center; font: italic 800 25px/1 Georgia,serif; box-shadow: 0 8px 18px rgba(112,83,236,.25); }
.brand-mark strong { display: block; font: 800 18px/1 Manrope,sans-serif; letter-spacing: -.7px; }
.brand-mark small { display: block; margin-top: 3px; color: #a6a2b0; font-size: 7px; letter-spacing: .28em; }
.brand-mark em { align-self: flex-start; padding: 3px 5px; border-radius: 5px; background: var(--purple-soft); color: var(--purple); font-size: 8px; font-weight: 800; font-style: normal; }
.brand-mark.inverse strong { color: #fff; }
.brand-mark.inverse small { color: #a99fca; }
.brand-mark.image-brand-mark { width: auto; max-width: 210px; height: 48px; }
.brand-mark.image-brand-mark img { width: auto; max-width: 100%; height: 100%; display: block; object-fit: contain; object-position: left center; }
.brand-mark.image-brand-mark.inverse { padding: 5px 9px; border-radius: 10px; background: rgba(255,255,255,.94); }
.public-header { height: 82px; position: relative; z-index: 50; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(231,228,237,.85); backdrop-filter: blur(14px); }
.public-header > .container { height: 100%; display: flex; align-items: center; }
.public-header nav { display: flex; align-items: center; gap: 34px; margin-left: 70px; }
.public-header nav a, .login-link { color: #676373; font-size: 13px; font-weight: 650; }
.public-header nav a:hover, .login-link:hover { color: var(--purple); }
.header-actions { margin-left: auto; display: flex; align-items: center; gap: 22px; }
.mobile-menu-btn { display: none; margin-left: auto; border: 0; background: none; font-size: 22px; }
.mobile-menu { display: none; }

/* Public hero */
.hero { min-height: 735px; overflow: hidden; position: relative; display: flex; align-items: center; color: #fff; background: radial-gradient(circle at 78% 32%,#514487 0,transparent 28%), radial-gradient(circle at 10% 85%,#372e65 0,transparent 32%), linear-gradient(132deg,#181426 0,#241d3c 56%,#292048 100%); }
.hero-noise { position: absolute; inset: 0; opacity: .16; pointer-events: none; background-image: radial-gradient(rgba(255,255,255,.45) .6px,transparent .6px); background-size: 10px 10px; mask-image: linear-gradient(to right,black,transparent 80%); }
.hero:after { content: ""; position: absolute; width: 620px; height: 620px; right: -260px; bottom: -300px; border: 1px solid rgba(184,167,255,.18); border-radius: 50%; box-shadow: 0 0 0 90px rgba(153,131,244,.025),0 0 0 180px rgba(153,131,244,.018); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.02fr .98fr; gap: 60px; align-items: center; }
.hero-copy { max-width: 640px; padding: 80px 0; }
.hero-copy h1 { max-width: 710px; margin: 17px 0 22px; font-size: clamp(48px,5.1vw,76px); line-height: .99; letter-spacing: -.055em; }
.hero-copy h1 em { color: #ab9afa; font-style: normal; }
.hero-copy > p { max-width: 560px; color: #c1bcd0; font-size: 17px; line-height: 1.7; }
.hero-search { width: min(100%,640px); height: 66px; margin: 34px 0 28px; padding: 7px 7px 7px 20px; display: flex; align-items: center; gap: 13px; border: 1px solid rgba(255,255,255,.14); border-radius: 15px; background: rgba(255,255,255,.095); box-shadow: 0 16px 40px rgba(0,0,0,.15); backdrop-filter: blur(12px); }
.hero-search > span { color: #c7bedf; font-size: 21px; }
.hero-search input { min-width: 0; flex: 1; color: #fff; border: 0; outline: 0; background: transparent; font-size: 14px; }
.hero-search input::placeholder { color: #aaa3b9; }
.hero-search button { height: 50px; padding: 0 20px; border: 0; border-radius: 11px; color: #fff; background: linear-gradient(135deg,#896fff,#6548e1); font-size: 13px; font-weight: 750; }
.hero-proof { display: flex; align-items: center; gap: 14px; }
.avatar-stack { display: flex; }
.avatar-stack i { width: 33px; height: 33px; margin-left: -8px; border: 2px solid #28203f; border-radius: 50%; display: grid; place-items: center; color: #4f4166; background: linear-gradient(145deg,#eadfff,#bda6ef); font-size: 8px; font-weight: 800; font-style: normal; }
.avatar-stack i:first-child { margin-left: 0; }
.avatar-stack i:nth-child(2) { background: linear-gradient(145deg,#ffe1d5,#f5ae91); }
.avatar-stack i:nth-child(3) { background: linear-gradient(145deg,#d7f6e7,#9dd8ba); }
.avatar-stack i:last-child { color: #fff; background: var(--purple); }
.hero-proof strong,.hero-proof span { display: block; }
.hero-proof strong { font-size: 11px; }
.hero-proof span { margin-top: 2px; color: #a9a4b6; font-size: 10px; }
.hero-stage { height: 570px; position: relative; }
.hero-stage:before { content:""; position:absolute; width:340px; height:340px; top:110px; left:115px; border-radius:50%; background: radial-gradient(circle at 45% 38%,rgba(140,116,255,.33),rgba(67,52,114,.07) 60%,transparent 70%); filter: blur(5px); }
.hero-orbit { position: absolute; border: 1px solid rgba(186,169,255,.15); border-radius: 50%; }
.orbit-one { width: 460px; height: 460px; top: 50px; left: 50px; }
.orbit-two { width: 330px; height: 330px; top: 115px; left: 115px; }
.hero-card { position: absolute; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.1); box-shadow: 0 28px 70px rgba(0,0,0,.26); backdrop-filter: blur(17px); }
.card-main { width: 330px; height: 420px; top: 72px; left: 105px; padding: 18px; border-radius: 28px; transform: rotate(-3deg); }
.portrait { position: relative; overflow: hidden; display: grid; place-items: center; color: #47385d; background: linear-gradient(145deg,#e8e1ff,#bdaeff); font-weight: 800; }
.portrait img { width: 100%; height: 100%; object-fit: cover; }
.portrait-lg { width: 100%; height: 235px; border-radius: 20px; color: #46325e; font-size: 42px; background: radial-gradient(circle at 50% 15%,#fae4dc 0 18%,transparent 19%),linear-gradient(145deg,#ddcef9,#aa90d9); }
.card-main .badge { margin-top: 17px; }
.card-main h3 { margin: 9px 0 0; font-size: 22px; }
.card-main p { color: #beb7ca; font-size: 12px; }
.mini-metrics { display: flex; gap: 45px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.12); }
.mini-metrics b { font-size: 16px; }
.mini-metrics small { display: block; color: #9c94ac; font-size: 7px; letter-spacing: .12em; }
.card-float { display: flex; align-items: center; border-radius: 16px; }
.card-float.top { width: 260px; top: 20px; right: -10px; padding: 11px; transform: rotate(4deg); }
.card-float .portrait { width: 45px; height: 45px; flex: 0 0 auto; border-radius: 12px; }
.card-float > div:nth-child(2) { min-width: 0; margin-left: 10px; }
.card-float b,.card-float span { display: block; }
.card-float b { font-size: 11px; }
.card-float span { color: #b1a9c0; font-size: 9px; }
.card-float em { margin-left: auto; padding: 5px 7px; border-radius: 6px; color: #d6ccff; background: rgba(112,83,236,.28); font-size: 8px; font-style: normal; }
.card-float.bottom { width: 245px; right: -3px; bottom: 50px; padding: 15px; transform: rotate(2deg); }
.spark { width: 38px; height: 38px; display: grid !important; place-items: center; flex: 0 0 auto; border-radius: 11px; color: #fff !important; background: var(--purple); }
.floating-chip { position: absolute; padding: 8px 12px; border-radius: 999px; color: #c8bdfa; background: rgba(109,84,203,.2); border: 1px solid rgba(176,157,255,.2); font-size: 10px; backdrop-filter: blur(8px); }
.chip-one { left: 2px; top: 155px; }
.chip-two { left: 25px; bottom: 65px; }

.trust-strip { border-bottom: 1px solid var(--line); background: #fff; }
.trust-strip .container { min-height: 106px; display: flex; align-items: center; gap: 55px; }
.trust-strip span { color: #aaa6b2; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.trust-strip div div { flex: 1; display: flex; justify-content: space-between; align-items: center; gap: 48px; color: #b4b0bb; }
.trust-strip b { font: 700 18px Manrope,sans-serif; letter-spacing: -.05em; }
.section { padding-top: 115px; padding-bottom: 115px; }
.section-head { margin-bottom: 50px; display: grid; grid-template-columns: 1fr .66fr; align-items: end; gap: 80px; }
.section-head h2 { margin: 10px 0 0; font-size: clamp(36px,4vw,54px); line-height: 1.08; letter-spacing: -.045em; }
.section-head > div:last-child p,.section-head > p { color: var(--muted); line-height: 1.75; }
.section-head .text-link { display: inline-block; margin-top: 9px; font-size: 13px; }
.creator-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.creator-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: #fff; box-shadow: var(--shadow-sm); transition: .25s ease; }
.creator-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.brand-showcase { background: linear-gradient(180deg,#fbfaff,#f4f1fb); }
.brand-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.brand-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: #fff; box-shadow: var(--shadow-sm); transition: .25s ease; }
.brand-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.brand-card-logo { height: 175px; padding: 25px; position: relative; display: grid; place-items: center; overflow: hidden; }
.brand-card-logo > span { width: 105px; height: 105px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.75); border-radius: 27px; color: var(--purple); background: rgba(255,255,255,.88); box-shadow: 0 15px 35px rgba(43,34,68,.12); font: 800 25px Manrope; }
.brand-card-logo img { width: 100%; height: 100%; display: block; object-fit: cover; }
.brand-card-logo .badge { position: absolute; top: 14px; right: 14px; }
.brand-card-body { padding: 21px; }
.brand-card-body > span { color: var(--purple); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.brand-card-body h3 { margin: 6px 0 8px; font-size: 19px; }
.brand-card-body p { min-height: 48px; margin: 0 0 17px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.brand-card-body > div { padding: 14px 0; display: grid; grid-template-columns: .7fr .7fr 1.25fr; gap: 8px; border-top: 1px solid var(--line); }
.brand-card-body > div span,.brand-card-body > div b { min-width: 0; display: block; }
.brand-card-body > div span { color: var(--muted); font-size: 7px; }
.brand-card-body > div b { overflow: hidden; color: var(--ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.brand-card-body > a { display: inline-flex; margin-top: 4px; color: var(--purple); font-size: 9px; font-weight: 800; }
.brand-directory { padding-top: 45px; padding-bottom: 100px; }
.brand-filters { margin-bottom: 45px; padding: 17px; display: grid; grid-template-columns: minmax(260px,1fr) 210px 190px auto auto; align-items: end; gap: 10px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-sm); }
.brand-filters label { margin: 0; color: var(--muted); font-size: 8px; font-weight: 700; }
.brand-filters .search-field { height: 40px; }
.brand-directory-head { margin-bottom: 24px; display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.brand-directory-head h2 { margin: 7px 0 0; font-size: 34px; }
.brand-directory-head p { max-width: 430px; margin: 0; color: var(--muted); line-height: 1.7; }
.creator-cover { height: 260px; position: relative; display: flex; align-items: end; justify-content: center; overflow: hidden; }
.creator-cover:before { content:""; position:absolute; width:190px; height:190px; top:25px; border:1px solid rgba(255,255,255,.6); border-radius:50%; box-shadow:0 0 0 35px rgba(255,255,255,.12); }
.tone-0 { background: linear-gradient(145deg,#e6e1ff,#c8bdf6); }
.tone-1 { background: linear-gradient(145deg,#ffe8dc,#ffc1a6); }
.tone-2 { background: linear-gradient(145deg,#daf4ea,#b2e3d0); }
.tone-3 { background: linear-gradient(145deg,#e1ecff,#afcaf4); }
.tone-4 { background: linear-gradient(145deg,#f4e2ef,#d8b7d1); }
.creator-cover .portrait { width: 170px; height: 210px; z-index: 1; border-radius: 90px 90px 12px 12px; background: rgba(255,255,255,.3); font-size: 34px; }
.card-badges { position: absolute; z-index: 2; top: 14px; left: 14px; display: flex; gap: 6px; }
.badge { width: fit-content; min-height: 20px; padding: 0 7px; border-radius: 6px; display: inline-flex; align-items: center; font-size: 8px; font-weight: 800; font-style: normal; }
.badge.verified { color: #fff; background: var(--purple); }
.badge.premium { color: #6a48df; background: #f0ebff; }
.badge.promoted { color: #99601f; background: #fff1cf; }
.creator-cover > em { position: absolute; z-index: 2; right: 12px; bottom: 10px; padding: 6px 9px; border-radius: 7px; color: #5d5669; background: rgba(255,255,255,.82); font-size: 8px; font-weight: 700; font-style: normal; backdrop-filter: blur(6px); }
.creator-info { padding: 18px; }
.creator-info h3 { margin-bottom: 3px; font-size: 16px; }
.creator-info p { min-height: 22px; margin-bottom: 15px; color: var(--muted); font-size: 11px; }
.creator-stats { display: flex; gap: 28px; padding-top: 13px; border-top: 1px solid #f0eef3; }
.creator-stats span { color: #aaa6b1; font-size: 8px; text-transform: uppercase; letter-spacing: .05em; }
.creator-stats b { display: block; color: var(--ink); font-size: 14px; text-transform: none; letter-spacing: normal; }
.dark-section { color: #fff; background: linear-gradient(135deg,#191526,#2a2144); }
.section-head.inverted h2 { color: #fff; }
.section-head.inverted > p { color: #b5aec3; }
.steps-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.steps-grid article { min-height: 285px; padding: 28px; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(255,255,255,.045); }
.steps-grid article > span { position: absolute; right: 25px; top: 22px; color: #6c647b; font: 600 12px Manrope; }
.steps-grid article > div { width: 56px; height: 56px; margin-top: 22px; display: grid; place-items: center; border-radius: 15px; color: #c9bbff; background: rgba(117,86,237,.18); font-size: 21px; }
.steps-grid h3 { margin: 33px 0 8px; font-size: 20px; }
.steps-grid p { color: #aaa3b7; font-size: 13px; line-height: 1.65; }
.split-showcase { display: grid; grid-template-columns: .82fr 1.18fr; gap: 90px; align-items: center; }
.showcase-copy h2 { margin: 12px 0 20px; font-size: 45px; line-height: 1.1; letter-spacing: -.045em; }
.showcase-copy p { color: var(--muted); line-height: 1.75; }
.showcase-copy ul { margin: 26px 0 30px; padding: 0; list-style: none; }
.showcase-copy li { margin: 12px 0; color: #5f5a6b; }
.showcase-copy li:before { content:"✓"; width: 21px; height: 21px; margin-right: 10px; display: inline-grid; place-items: center; border-radius: 50%; color: var(--green); background: #e7f7f0; font-size: 10px; font-weight: 800; }
.dashboard-preview { padding: 10px; border-radius: 22px; background: #252032; box-shadow: var(--shadow-lg); transform: perspective(1200px) rotateY(-4deg) rotateX(2deg); }
.preview-top { height: 32px; display: flex; align-items: center; gap: 5px; padding: 0 9px; color: #8b8499; font-size: 7px; }
.preview-top i { width: 6px; height: 6px; border-radius: 50%; background: #5f586e; }
.preview-top span { margin-left: 8px; }
.preview-body { height: 390px; display: flex; overflow: hidden; border-radius: 14px; background: #f7f7fa; }
.preview-body aside { width: 88px; padding: 18px 12px; background: #fff; border-right: 1px solid var(--line); }
.preview-body aside b { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: var(--purple); }
.preview-body aside span { width: 100%; height: 7px; margin-top: 25px; display: block; border-radius: 4px; background: #ece9f5; }
.preview-body main { flex: 1; padding: 28px; }
.preview-title { width: 190px; height: 17px; border-radius: 5px; background: #dedbe7; }
.preview-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 25px 0; }
.preview-kpis i { height: 72px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.preview-chart { height: 190px; padding: 25px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.preview-chart svg { width: 100%; height: 100%; }
.preview-chart path { fill: none; stroke: var(--purple); stroke-width: 3; }
.cta-section { padding: 110px 0; text-align: center; color: #fff; background: radial-gradient(circle at 50% 0,#8068e9,#5e44d5 55%,#5137c5); }
.cta-section h2 { margin: 15px auto 32px; font-size: clamp(40px,5vw,62px); line-height: 1.05; letter-spacing: -.05em; }
.cta-section > .container > div { display: flex; justify-content: center; gap: 10px; }
.public-footer { padding: 75px 0 20px; color: #c1bbce; background: #171320; }
.footer-grid { display: grid; grid-template-columns: 2fr repeat(3,1fr); gap: 55px; padding-bottom: 60px; }
.footer-grid > div:first-child p { max-width: 310px; margin-top: 20px; color: #817b8c; font-size: 12px; }
.footer-grid > div:not(:first-child) { display: flex; flex-direction: column; gap: 11px; }
.footer-grid b { margin-bottom: 7px; color: #777080; font-size: 9px; letter-spacing: .13em; }
.footer-grid a { font-size: 12px; }
.footer-grid a:hover { color: #fff; }
.footer-bottom { padding-top: 19px; display: flex; justify-content: space-between; border-top: 1px solid #2b2634; color: #676170; font-size: 10px; }

/* Generic public pages and profiles */
.page-hero { color: #fff; background: linear-gradient(135deg,#1b1729,#352958); }
.page-hero.compact { padding: 76px 0 68px; }
.page-hero h1 { margin: 12px 0 8px; font-size: clamp(38px,5vw,62px); line-height: 1.05; letter-spacing: -.05em; }
.page-hero p { color: #b8b1c6; }
.discover-layout { padding-top: 45px; padding-bottom: 90px; display: grid; grid-template-columns: 245px 1fr; gap: 28px; }
.filter-panel { align-self: start; position: sticky; top: 20px; padding: 21px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.filter-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.filter-head h2 { margin: 0; font-size: 15px; }
.filter-head a { color: var(--purple); font-size: 10px; font-weight: 700; }
.filter-panel form > label { margin-top: 14px; }
label { display: block; color: #615d6b; font-size: 11px; font-weight: 700; }
input,select,textarea { width: 100%; border: 1px solid var(--line-strong); border-radius: 10px; background: #fff; color: var(--ink); outline: 0; }
input,select { height: 43px; padding: 0 12px; }
textarea { padding: 12px; resize: vertical; }
input:focus,select:focus,textarea:focus { border-color: #afa0f4; box-shadow: 0 0 0 3px rgba(112,83,236,.09); }
label > input,label > select,label > textarea { margin-top: 6px; }
label small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; font-weight: 400; }
.check-row { min-height: 24px; display: flex; align-items: center; gap: 8px; }
.check-row input { width: 17px; height: 17px; margin: 0; accent-color: var(--purple); }
.check-row span { font-size: 11px; }
.filter-panel .btn { margin-top: 18px; }
.result-toolbar { min-height: 56px; margin-bottom: 18px; padding: 0 4px; display: flex; align-items: center; justify-content: space-between; }
.result-toolbar b,.result-toolbar span { display: block; }
.result-toolbar b { font-size: 13px; }
.result-toolbar span { color: var(--muted); font-size: 9px; }
.result-toolbar select { width: 150px; }
.discover-results .creator-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.discover-results .creator-cover { height: 220px; }
.discover-results .creator-cover .portrait { width: 140px; height: 178px; }
.empty-state { min-height: 280px; grid-column: 1/-1; padding: 40px; display: grid; place-items: center; align-content: center; text-align: center; border: 1px dashed #d7d1e2; border-radius: 18px; background: #fbfafc; }
.empty-state > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 15px; color: var(--purple); background: var(--purple-soft); }
.empty-state h2 { margin: 17px 0 5px; font-size: 18px; }
.empty-state p { max-width: 430px; color: var(--muted); }
.error-state { min-height: 65vh; display: grid; place-items: center; align-content: center; text-align: center; }
.error-state > span { color: var(--purple); font: 800 80px/1 Manrope; opacity: .18; }
.error-state h1 { margin: -18px 0 8px; font-size: 38px; }
.error-state p { margin-bottom: 25px; color: var(--muted); }
.legal-content { max-width: 850px; padding-top: 65px; padding-bottom: 90px; font-size: 16px; line-height: 1.8; }
.legal-content h2 { margin-top: 42px; }

.profile-cover { height: 255px; position: relative; overflow: hidden; }
.profile-cover-image { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center; }
.profile-cover.has-image:after { content:""; position:absolute; inset:0; background:linear-gradient(to bottom,rgba(19,15,33,.02),rgba(19,15,33,.28)); }
.profile-cover-pattern { position: absolute; z-index: 1; inset: 0; opacity: .28; background: radial-gradient(circle at 20% 40%,white 0 2px,transparent 3px),radial-gradient(circle at 70% 60%,white 0 1px,transparent 2px); background-size: 120px 120px,80px 80px; }
.profile-shell { margin-top: -78px; position: relative; z-index: 2; padding-bottom: 100px; }
.profile-header { min-height: 160px; padding: 25px 28px; display: flex; align-items: center; justify-content: space-between; gap: 30px; border: 1px solid var(--line); border-radius: 20px; background: rgba(255,255,255,.96); box-shadow: var(--shadow); }
.profile-identity { display: flex; align-items: center; gap: 23px; }
.app-avatar { width: 38px; height: 38px; flex: 0 0 auto; overflow: hidden; display: inline-grid; place-items: center; border-radius: 12px; color: #4b3b60; background: linear-gradient(145deg,#e7e0ff,#c8b8f8); font-size: 11px; font-weight: 800; vertical-align: middle; }
.app-avatar img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
.app-avatar.lg { width: 68px; height: 68px; border-radius: 18px; font-size: 18px; }
.app-avatar.xl { width: 104px; height: 104px; border: 5px solid #fff; border-radius: 28px; box-shadow: 0 10px 25px rgba(42,33,70,.12); font-size: 26px; }
.profile-header .app-avatar.xl { width: 128px; height: 128px; padding: 0; border: 0; border-radius: 24px; background: #efedf3; box-shadow: 0 0 0 1px rgba(43,34,68,.08),0 12px 30px rgba(42,33,70,.14); }
.profile-header .app-avatar.xl img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.profile-name { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.profile-name h1 { margin: 0; font-size: 29px; letter-spacing: -.04em; }
.profile-identity p { margin: 3px 0 8px; color: var(--muted); }
.tag-row { display: flex; flex-wrap: wrap; gap: 6px; }
.tag-row span { padding: 5px 8px; border-radius: 6px; color: #797484; background: #f5f3f8; font-size: 9px; }
.profile-actions { display: flex; gap: 8px; }
.profile-metrics { margin: 20px 0; padding: 21px 28px; display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 17px; background: #fff; }
.profile-metrics article { padding-left: 25px; border-left: 1px solid var(--line); }
.profile-metrics article:first-child { padding-left: 0; border-left: 0; }
.profile-metrics strong,.profile-metrics span { display: block; }
.profile-metrics strong { font: 800 22px Manrope; }
.profile-metrics span { color: var(--muted); font-size: 9px; }
.profile-tabs { margin: 0 0 20px; padding: 7px; display: flex; gap: 5px; overflow-x: auto; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.96); box-shadow: var(--shadow-sm); scrollbar-width: none; }
.profile-tabs::-webkit-scrollbar { display: none; }
.profile-tabs button { min-width: max-content; height: 42px; padding: 0 17px; border: 0; border-radius: 10px; color: #777181; background: transparent; font-size: 10px; font-weight: 750; cursor: pointer; }
.profile-tabs button:hover { color: var(--purple); background: #f7f5ff; }
.profile-tabs button[aria-selected="true"] { color: #fff; background: linear-gradient(135deg,#8168f7,#5d42da); box-shadow: 0 8px 18px rgba(106,77,226,.2); }
.private-banner { margin-bottom: 20px; padding: 20px 25px; display: flex; align-items: center; gap: 17px; border: 1px solid #e2dafa; border-radius: 16px; background: linear-gradient(135deg,#f1edff,#faf9ff); }
.private-banner > span { width: 43px; height: 43px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--purple); }
.private-banner h2 { margin: 0 0 3px; font-size: 15px; }
.private-banner p { margin: 0; color: #777185; font-size: 11px; }
.profile-content { position: relative; display: grid; grid-template-columns: minmax(0,1.7fr) minmax(290px,.65fr); gap: 20px; }
.profile-content > main,.profile-content > aside { min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.tabbed-profile-content { display: block; }
.profile-tab-panel[hidden] { display: none !important; }
.profile-tab-panel > .profile-section { width: 100%; }
.profile-section { padding: 30px; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: var(--shadow-sm); }
.profile-section h2 { margin: 7px 0 14px; font-size: 21px; }
.profile-section > p { color: #6f6a7a; line-height: 1.8; }
.profile-gallery { overflow: hidden; }
.section-title-row > span { color: var(--muted); font-size: 9px; }
.public-albums { display: grid; gap: 28px; }
.public-album + .public-album { padding-top: 25px; border-top: 1px solid var(--line); }
.public-album > header { margin-bottom: 13px; display: flex; justify-content: space-between; gap: 15px; align-items: flex-start; }
.public-album h3 { margin: 0; font-size: 16px; }
.public-album header p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.public-album header > span { padding: 6px 9px; border-radius: 8px; color: var(--purple); background: var(--purple-soft); font-size: 8px; font-weight: 800; white-space: nowrap; }
.public-album-grid { display: grid; grid-template-columns: 1.35fr repeat(2,1fr); grid-auto-rows: 145px; gap: 9px; }
.public-album-grid button { min-height: 0; padding: 0; position: relative; overflow: hidden; border: 0; border-radius: 12px; background: #f0edf5; cursor: zoom-in; }
.public-album-grid button.featured { grid-row: span 2; }
.public-album-grid img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .3s ease; }
.public-album-grid button:hover img { transform: scale(1.035); }
.public-album-grid button > span { padding: 6px 9px; position: absolute; right: 8px; bottom: 8px; border-radius: 8px; color: #fff; background: rgba(25,20,39,.62); font-size: 8px; opacity: 0; transition: opacity .2s; backdrop-filter: blur(7px); }
.public-album-grid button:hover > span,.public-album-grid button:focus-visible > span { opacity: 1; }
.gallery-lightbox { width: min(1080px,calc(100% - 30px)); height: min(820px,calc(100vh - 30px)); padding: 0; overflow: hidden; border: 0; border-radius: 20px; color: #fff; background: #15121d; box-shadow: 0 30px 100px rgba(10,7,20,.48); }
.gallery-lightbox::backdrop { background: rgba(15,11,24,.78); backdrop-filter: blur(8px); }
.gallery-lightbox figure { width: 100%; height: 100%; margin: 0; display: grid; grid-template-rows: minmax(0,1fr) auto; }
.gallery-lightbox figure img { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.gallery-lightbox figcaption { min-height: 54px; padding: 16px 70px; text-align: center; color: #d5cfdf; font-size: 11px; }
.gallery-close,.gallery-nav { position: absolute; z-index: 3; border: 0; color: #fff; background: rgba(255,255,255,.12); backdrop-filter: blur(8px); }
.gallery-close { width: 42px; height: 42px; top: 14px; right: 14px; border-radius: 50%; font-size: 24px; }
.gallery-nav { width: 44px; height: 60px; top: 50%; border-radius: 12px; font-size: 34px; transform: translateY(-50%); }
.gallery-nav.prev { left: 14px; }.gallery-nav.next { right: 14px; }
.detail-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; margin-top: 23px; }
.detail-grid.four { grid-template-columns: repeat(4,1fr); }
.detail-grid span { min-height: 60px; padding: 12px; border-radius: 10px; color: #514d5b; background: #f8f7fa; font-size: 11px; }
.detail-grid small { display: block; margin-bottom: 4px; color: #aaa6b2; font-size: 7px; font-weight: 800; letter-spacing: .1em; }
.social-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.social-grid article { min-height: 75px; padding: 13px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 12px; }
.social-icon { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; color: #fff; background: var(--ink); font-size: 9px; font-weight: 800; }
.social-icon.instagram { background: linear-gradient(145deg,#d83e85,#7552e8,#ff9b50); }
.social-icon.tiktok { background: #1d1b23; }
.social-icon.youtube { background: #ec454f; }
.social-grid article b,.social-grid article span { display: block; }
.social-grid article b { font-size: 11px; }
.social-grid article span { color: var(--muted); font-size: 8px; }
.social-grid article em { margin-left: auto; font: 800 14px Manrope; font-style: normal; }
.social-grid article em small { display: block; color: var(--muted); font: 400 7px DM Sans; }
.work-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.work-grid article,.work-grid .work-link { padding: 13px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--line); border-radius: 12px; }
.work-grid .work-link:hover { border-color: #cec5fa; background: #faf9ff; }
.work-grid article > span,.work-grid .work-link > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; color: var(--purple); background: var(--purple-soft); font-size: 9px; font-weight: 800; }
.work-grid b,.work-grid small { display: block; }
.work-grid b { font-size: 11px; }
.work-grid small { color: var(--muted); font-size: 8px; }
.review-list { display: grid; gap: 10px; }
.review-list.padded { padding: 16px; }
.review-list article { padding: 17px; position: relative; border: 1px solid var(--line); border-radius: 12px; }
.stars { color: #f2a63d; letter-spacing: 2px; }
.review-list p { margin: 7px 0; color: #5f5969; font-size: 12px; }
.review-list span,.review-list em { color: var(--muted); font-size: 9px; font-style: normal; }
.review-list em { position: absolute; right: 14px; bottom: 14px; }
.package-panel { position: sticky; top: 20px; }
.tabbed-profile-content .package-panel { position: static; }
.package-tab-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.package-card { margin-top: 10px; padding: 17px; border: 1px solid var(--line); border-radius: 13px; }
.package-card > div > span { color: var(--purple); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.package-card h3 { margin: 5px 0; font-size: 14px; }
.package-card p { color: var(--muted); font-size: 9px; }
.package-card > strong { display: block; margin: 13px 0; font: 800 19px Manrope; }
.price-gate { padding: 24px 12px 5px; text-align: center; }
.price-gate > span { width: 50px; height: 50px; margin: 0 auto 13px; display: grid; place-items: center; border-radius: 15px; color: var(--purple); background: var(--purple-soft); }
.price-gate p { color: var(--muted); font-size: 11px; }
.profile-content.is-locked > main,.profile-content.is-locked > aside,.profile-content.is-locked > .profile-tab-panel { filter: blur(7px); user-select: none; pointer-events: none; max-height: 610px; overflow: hidden; opacity: .68; }
.locked-overlay { position: absolute; inset: 0; z-index: 5; display: grid; place-items: center; align-content: center; text-align: center; border: 1px solid rgba(209,200,245,.7); border-radius: 18px; background: rgba(249,248,253,.62); backdrop-filter: blur(2px); }
.locked-overlay > span { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 17px; color: #fff; background: var(--purple); box-shadow: 0 13px 30px rgba(112,83,236,.25); }
.locked-overlay h3 { margin: 18px 0 5px; font-size: 20px; }
.locked-overlay p { max-width: 420px; color: var(--muted); }
.brand-contact-panel { margin-top: 28px; padding: 18px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #dfd8fa; border-radius: 14px; background: linear-gradient(135deg,#f5f2ff,#fbfaff); }
.brand-contact-panel h3 { margin: 5px 0 0; font-size: 15px; }
.brand-campaign-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.brand-campaign-grid .campaign-card { border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.brand-campaign-grid .campaign-card h3 { margin: 16px 0 6px; font-size: 17px; }

/* Authentication */
.auth-page { min-height: 100vh; display: grid; grid-template-columns: minmax(380px,.86fr) minmax(500px,1.14fr); background: #fff; }
.auth-visual { min-height: 100vh; padding: 48px 8vw 45px 55px; display: flex; flex-direction: column; justify-content: space-between; position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 100% 15%,#524383,transparent 34%),linear-gradient(145deg,#1a1626,#2a2145); }
.auth-visual:after { content:""; position:absolute; width:500px; height:500px; right:-280px; bottom:10%; border:1px solid rgba(181,163,255,.18); border-radius:50%; box-shadow:0 0 0 70px rgba(139,114,244,.03),0 0 0 150px rgba(139,114,244,.02); }
.auth-visual > div { position: relative; z-index: 2; max-width: 520px; }
.auth-visual h1 { margin: 15px 0 22px; font-size: clamp(40px,4.2vw,61px); line-height: 1.05; letter-spacing: -.05em; }
.auth-visual p { color: #aaa3b8; line-height: 1.75; }
.auth-visual blockquote { max-width: 450px; margin: 0; padding: 20px 0 0; position: relative; z-index: 2; border-top: 1px solid rgba(255,255,255,.12); color: #d5cedf; font: 500 14px/1.7 Manrope; }
.auth-visual cite { display: block; margin-top: 10px; color: #878092; font: 400 9px DM Sans; font-style: normal; }
.auth-form { min-height: 100vh; padding: 55px; display: grid; place-items: center; align-content: center; position: relative; overflow-y: auto; }
.auth-form > footer { position: absolute; bottom: 22px; color: var(--muted); font-size: 9px; }
.auth-card { width: min(100%,430px); }
.auth-card.wide-card { width: min(100%,560px); }
.auth-card h2 { margin: 8px 0 4px; font-size: 31px; letter-spacing: -.04em; }
.auth-card > p { margin-bottom: 27px; color: var(--muted); }
.auth-card > p a,.auth-card .form-meta a,.back-link { color: var(--purple); font-weight: 700; }
.auth-card form > label { margin-top: 15px; }
.auth-card form > .btn { margin-top: 20px; }
.form-meta { margin-top: 12px; display: flex; justify-content: space-between; align-items: center; font-size: 10px; }
.role-picker { margin: 20px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.role-picker input { position: absolute; opacity: 0; pointer-events: none; }
.role-picker label > span { min-height: 110px; padding: 15px; display: block; border: 1px solid var(--line); border-radius: 13px; cursor: pointer; transition: .2s; }
.role-picker input:checked + span { border-color: #a895f5; background: #f5f2ff; box-shadow: 0 0 0 3px rgba(112,83,236,.08); }
.role-picker i { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 9px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.role-picker b,.role-picker small { display: block; }
.role-picker b { margin-top: 8px; color: var(--ink); font-size: 12px; }
.role-picker small { color: var(--muted); font-size: 8px; font-weight: 400; }
.form-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
.form-grid.two { grid-template-columns: repeat(2,1fr); }
.form-grid.three { grid-template-columns: repeat(3,1fr); }
.form-grid .full { grid-column: 1/-1; }
.terms { margin-top: 15px; }
.terms a { color: var(--purple); }
.mobile-auth-logo { display: none; }
.back-link { margin-top: 17px; display: inline-block; font-size: 11px; }

/* App shell */
.app-body { background: var(--canvas); }
.app-shell { min-height: 100vh; display: flex; }
.app-sidebar { width: 260px; padding: 28px 18px 18px; position: fixed; inset: 0 auto 0 0; z-index: 30; display: flex; flex-direction: column; border-right: 1px solid var(--line); background: #fff; }
.app-sidebar > .brand-mark { padding-left: 7px; margin-bottom: 28px; }
.account-card { min-height: 64px; padding: 11px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 13px; box-shadow: 0 4px 14px rgba(25,20,45,.025); }
.account-card > div { min-width: 0; }
.account-card b,.account-card span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.account-card b { font-size: 11px; }
.account-card span { margin-top: 2px; color: var(--purple); font-size: 8px; font-weight: 750; }
.app-sidebar nav { margin-top: 26px; display: flex; flex-direction: column; gap: 3px; }
.app-sidebar nav > small { margin: 0 0 7px 11px; color: #b6b2bd; font-size: 7px; font-weight: 800; letter-spacing: .17em; }
.app-sidebar nav a { min-height: 41px; padding: 0 11px; display: flex; align-items: center; gap: 12px; border-radius: 9px; color: #777382; font-size: 10px; font-weight: 650; }
.app-sidebar nav a:hover { color: var(--purple); background: #f7f5ff; }
.app-sidebar nav a.active { color: var(--purple); background: #f0edff; }
.app-sidebar nav a i { width: 18px; color: #9d98aa; font-size: 15px; font-style: normal; text-align: center; }
.app-sidebar nav a.active i { color: var(--purple); }
.app-sidebar nav a em { min-width: 17px; height: 17px; margin-left: auto; display: grid; place-items: center; border-radius: 5px; color: #fff; background: var(--purple); font-size: 7px; font-style: normal; }
.upgrade-card { margin-top: auto; padding: 15px; overflow: hidden; position: relative; border: 1px solid #e5dffd; border-radius: 15px; background: linear-gradient(140deg,#f0ecff,#fbfaff); }
.upgrade-card:after { content:""; position:absolute; width:80px; height:80px; right:-35px; top:-35px; border:16px solid rgba(112,83,236,.05); border-radius:50%; }
.upgrade-card > i { width: 27px; height: 27px; margin-bottom: 9px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: var(--purple); font-size: 10px; font-style: normal; }
.upgrade-card b { font-size: 10px; }
.upgrade-card p { margin: 4px 0 9px; color: #7e7888; font-size: 8px; line-height: 1.5; }
.upgrade-card a { color: var(--purple); font-size: 8px; font-weight: 800; }
.system-card { margin-top: auto; padding: 15px; border: 1px solid #dcefe7; border-radius: 14px; background: #f4fbf8; }
.system-card i { width: 8px; height: 8px; display: inline-block; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(44,169,121,.1); }
.system-card b,.system-card span { display: block; margin-top: 7px; font-size: 9px; }
.system-card span { color: var(--muted); font-size: 7px; }
.sidebar-bottom { margin-top: 13px; padding-top: 11px; display: flex; border-top: 1px solid var(--line); }
.sidebar-bottom a { flex: 1; color: #94909e; font-size: 8px; text-align: center; }
.app-main { min-width: 0; flex: 1; margin-left: 260px; }
.app-topbar { height: 68px; padding: 0 30px; position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 20px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
.sidebar-toggle { display: none; border: 0; background: none; font-size: 20px; }
.global-search { width: min(390px,40vw); height: 37px; padding: 0 11px; display: flex; align-items: center; gap: 8px; border-radius: 9px; color: #a19da9; background: #f5f4f7; }
.global-search input { min-width: 0; height: auto; padding: 0; flex: 1; border: 0; background: none; font-size: 9px; box-shadow: none; }
.global-search kbd { padding: 3px 5px; border: 1px solid #dfdce5; border-radius: 5px; color: #9d99a5; background: #fff; font-size: 7px; }
.top-actions { margin-left: auto; display: flex; align-items: center; gap: 9px; }
.notification-btn { width: 35px; height: 35px; position: relative; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.notification-btn i { width: 6px; height: 6px; position: absolute; top: 7px; right: 7px; border: 1px solid #fff; border-radius: 50%; background: var(--red); }
.top-actions details { position: relative; }
.top-actions summary { padding: 8px 3px; color: #6c6875; font-size: 9px; font-weight: 700; list-style: none; cursor: pointer; }
.top-actions details[open] { z-index: 60; }
.top-actions details[open]:after { content:""; position:fixed; inset:0; z-index:-1; }
.top-actions details > a,.top-actions details > form { width: 150px; padding: 8px; position: absolute; right: 0; top: 35px; border: 1px solid var(--line); background: #fff; }
.top-actions details > a { border-radius: 10px 10px 0 0; }
.top-actions details > form { top: 68px; border-top: 0; border-radius: 0 0 10px 10px; }
.top-actions details button { width: 100%; border: 0; background: none; text-align: left; font-size: 10px; }
.app-content { width: min(calc(100% - 60px),1430px); margin: 0 auto; padding: 33px 0 20px; }
.app-content.wide-content { width: calc(100% - 30px); max-width: none; }
.workspace-header { min-height: 70px; margin-bottom: 25px; display: flex; align-items: end; justify-content: space-between; gap: 25px; }
.workspace-header h1 { margin: 5px 0 2px; font-size: 28px; letter-spacing: -.04em; }
.workspace-header p { margin: 0; color: var(--muted); font-size: 10px; }
.workspace-actions { display: flex; gap: 8px; }
.kpi-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 16px; }
.kpi-grid > article { min-height: 91px; padding: 15px; display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 11px; position: relative; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: var(--shadow-sm); }
.kpi-grid > article > span { grid-column: 2; color: #9995a2; font-size: 8px; }
.kpi-grid > article > strong { grid-column: 2; font: 800 20px/1.1 Manrope; letter-spacing: -.04em; }
.kpi-grid > article > em { grid-column: 2; color: var(--muted); font-size: 7px; font-style: normal; }
.kpi-grid > article:not(:has(.kpi-icon)) { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.kpi-grid > article:not(:has(.kpi-icon)) > span,.kpi-grid > article:not(:has(.kpi-icon)) > strong,.kpi-grid > article:not(:has(.kpi-icon)) > em { grid-column: auto; }
.kpi-icon { width: 38px; height: 38px; grid-row: 1/4; display: grid; place-items: center; border-radius: 10px; font-size: 15px; }
.kpi-icon.purple { color: var(--purple); background: #f0ecff; }
.kpi-icon.orange { color: #dc8238; background: #fff0e3; }
.kpi-icon.green { color: var(--green); background: #e8f7f0; }
.kpi-icon.blue { color: var(--blue); background: #eaf3ff; }
.kpi-icon.red { color: var(--red); background: #ffedef; }
.workspace-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-bottom: 16px; }
.workspace-card { min-width: 0; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow-sm); }
.workspace-card.span-2 { grid-column: span 2; }
.card-head { min-height: 68px; padding: 16px 19px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid #efedf2; }
.card-head h2 { margin: 4px 0 0; font-size: 14px; }
.card-head > a { color: var(--purple); font-size: 8px; font-weight: 800; }
.period-pill,.privacy-pill { padding: 6px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--muted); font-size: 7px; }
.project-rows { width: 100%; }
.project-row { min-height: 67px; padding: 11px 18px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid #f0eef3; }
.project-row:last-child { border-bottom: 0; }
.project-row:hover { background: #fcfbfe; }
.mini-avatar { width: 37px; height: 37px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 11px; color: #544268; background: linear-gradient(145deg,#e7e1ff,#c7b6f0); font-size: 9px; font-weight: 800; }
.project-main { min-width: 0; flex: 1; }
.project-main b,.project-main > span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.project-main b { font-size: 9px; }
.project-main > span { color: var(--muted); font-size: 7px; }
.project-main > i { width: 130px; height: 3px; margin-top: 7px; overflow: hidden; display: block; border-radius: 4px; background: #ece9f0; }
.project-main > i em { height: 100%; display: block; border-radius: 3px; background: var(--purple); }
.project-row > strong { min-width: 85px; text-align: right; font-size: 9px; }
.project-row .chevron { color: #aaa6b2; font-style: normal; }
.status { width: fit-content; min-height: 22px; padding: 0 7px; display: inline-flex; align-items: center; border-radius: 6px; font-size: 7px; font-weight: 800; white-space: nowrap; }
.status.green { color: #298d68; background: #e7f6ef; }
.status.blue { color: #347fcf; background: #eaf3ff; }
.status.amber { color: #c9772f; background: #fff0e2; }
.status.red { color: #cf525e; background: #ffedef; }
.status.gray { color: #77727e; background: #efedf2; }
.activity-list { padding: 0 18px; }
.activity-list > a { min-height: 61px; display: flex; align-items: center; gap: 10px; border-bottom: 1px solid #f0eef3; }
.activity-list > a:last-child { border-bottom: 0; }
.activity-list > a > i { width: 30px; height: 30px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 9px; color: var(--purple); background: var(--purple-soft); font-size: 9px; font-style: normal; }
.activity-list > a > div { min-width: 0; flex: 1; }
.activity-list b,.activity-list span { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.activity-list b { font-size: 8px; }
.activity-list span { color: var(--muted); font-size: 7px; }
.activity-list time { color: #aaa6b2; font-size: 7px; }
.empty-line,.empty-table { padding: 25px; color: var(--muted); font-size: 10px; text-align: center; }
.fake-chart { height: 250px; padding: 18px; display: flex; }
.chart-labels { display: flex; flex-direction: column; justify-content: space-between; padding-bottom: 15px; color: #aaa7b0; font-size: 7px; }
.fake-chart svg { flex: 1; height: 205px; margin-left: 10px; overflow: visible; border-bottom: 1px solid #eeeaf2; background: repeating-linear-gradient(to bottom,transparent 0,transparent 66px,#f0eef3 67px); }
.fake-chart .line { fill: none; stroke: var(--purple); stroke-width: 3; vector-effect: non-scaling-stroke; }
.fake-chart .area { fill: url(#dashFill); }
.health-card { padding: 18px; text-align: center; }
.health-ring { --progress: 0; width: 91px; height: 91px; margin: 12px auto 8px; padding: 7px; border-radius: 50%; background: conic-gradient(var(--purple) calc(var(--progress)*1%),#ece9f4 0); }
.health-ring > div { width: 100%; height: 100%; display: grid; place-content: center; border-radius: 50%; background: #fff; }
.health-ring strong { display: block; font: 800 17px/1 Manrope; }
.health-ring span { color: var(--muted); font-size: 6px; }
.health-card h2 { margin: 6px 0; font-size: 13px; }
.health-card p { color: var(--muted); font-size: 8px; }
.workspace-creators { padding: 17px; }
.workspace-creators .creator-cover { height: 150px; }
.workspace-creators .creator-cover .portrait { width: 105px; height: 130px; font-size: 20px; }
.private-finance { padding: 22px; color: #fff; background: linear-gradient(145deg,#27213c,#443677); }
.private-finance > span { width: 34px; height: 34px; margin-bottom: 25px; display: grid; place-items: center; border-radius: 10px; color: #d0c3ff; background: rgba(255,255,255,.1); }
.private-finance small { color: #b7a9e7; font-size: 7px; font-weight: 800; letter-spacing: .14em; }
.private-finance h2 { margin: 8px 0; font-size: 16px; }
.private-finance p { color: #c2bbd1; font-size: 8px; line-height: 1.7; }
.private-finance a { color: #cdbfff; font-size: 8px; font-weight: 800; }
.app-footer { padding: 22px 5px 5px; display: flex; justify-content: space-between; color: #aaa6b1; font-size: 8px; }
.app-footer div { display: flex; gap: 16px; }
.flash { width: min(calc(100% - 30px),720px); min-height: 52px; margin: 0 auto 15px; padding: 10px 14px; display: flex; align-items: center; gap: 10px; border: 1px solid; border-radius: 12px; background: #fff; box-shadow: var(--shadow-sm); }
.public-body > .flash { position: fixed; z-index: 100; top: 95px; left: 50%; transform: translateX(-50%); }
.flash.success { border-color: #ccecdf; }
.flash.error { border-color: #f2cdd1; }
.flash.warning { border-color: #f1dfbd; }
.flash > span { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 8px; color: #fff; background: var(--green); }
.flash.error > span { background: var(--red); }
.flash.warning > span { background: var(--amber); }
.flash p { flex: 1; margin: 0; font-size: 11px; }
.flash button { border: 0; background: none; color: var(--muted); }

/* Lists, project details, forms */
.list-toolbar { min-height: 66px; padding: 13px 18px; border-bottom: 1px solid var(--line); }
.list-toolbar form { display: flex; gap: 10px; }
.list-toolbar select { width: 200px; }
.search-field { height: 40px; padding: 0 11px; flex: 1; display: flex; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); background: #f8f7fa; }
.search-field input { height: auto; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; font-size: 10px; }
.breadcrumb { margin-bottom: 20px; display: flex; gap: 8px; color: var(--muted); font-size: 9px; }
.breadcrumb a { color: var(--purple); font-weight: 700; }
.project-header { margin-bottom: 16px; padding: 23px 25px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.project-title-row { display: flex; align-items: center; gap: 10px; }
.project-title-row h1 { margin: 0; font-size: 25px; }
.project-header p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.project-amount { text-align: right; }
.project-amount span,.project-amount strong,.project-amount small { display: block; }
.project-amount span { color: var(--muted); font-size: 8px; }
.project-amount strong { font: 800 23px Manrope; }
.project-amount small { color: var(--muted); font-size: 7px; }
.project-layout { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(270px,.6fr); gap: 16px; }
.project-layout > main,.project-layout > aside { min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.project-overview > p { padding: 22px 22px 0; color: #666170; font-size: 12px; line-height: 1.75; }
.project-overview .detail-grid { padding: 0 22px 22px; }
.file-list { padding: 0 18px; }
.file-list > a { min-height: 56px; display: flex; align-items: center; gap: 10px; border-bottom: 1px solid #f0eef3; }
.file-list > a > i { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.file-list > a > div { min-width: 0; flex: 1; }
.file-list b,.file-list span { display: block; }
.file-list b { font-size: 9px; }
.file-list span,.file-list em { color: var(--muted); font-size: 7px; font-style: normal; }
.inline-upload { padding: 13px 18px; display: flex; align-items: center; gap: 8px; border-top: 1px solid var(--line); }
.inline-upload select { width: 120px; }
.inline-upload input[type=file] { flex: 1; padding: 8px; }
.stats-grid { padding: 20px; display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.stats-grid span { min-height: 70px; padding: 14px; display: flex; flex-direction: column; justify-content: center; border-radius: 11px; color: var(--muted); background: #f8f7fa; font-size: 8px; }
.stats-grid strong { color: var(--ink); font: 800 19px Manrope; }
.proof-link { margin: 0 20px 20px; display: inline-block; color: var(--purple); font-size: 9px; font-weight: 700; }
.card-form { padding: 20px; }
.card-form > label { margin-bottom: 13px; }
.card-form > .btn { margin-top: 17px; }
.card-form h3 { margin: 0 0 15px; font-size: 14px; }
.action-card { padding: 22px; }
.action-card h2 { margin: 7px 0; font-size: 17px; }
.action-card > p { color: var(--muted); font-size: 9px; }
.action-stack { display: flex; flex-direction: column; gap: 7px; }
.action-stack details { border-top: 1px solid var(--line); padding-top: 8px; }
.action-stack summary { color: var(--purple); font-size: 9px; font-weight: 700; cursor: pointer; }
.action-stack details form { margin-top: 10px; }
.action-stack details label { margin-bottom: 8px; }
.confirmed-note { padding: 12px; border-radius: 9px; color: #277d5d; background: #eaf7f1; font-size: 9px; text-align: center; }
.timeline { padding: 18px; }
.timeline > div { min-height: 58px; position: relative; display: flex; gap: 11px; }
.timeline > div:before { content:""; width: 1px; position: absolute; top: 12px; bottom: -2px; left: 4px; background: #ddd9e4; }
.timeline > div:last-child:before { display: none; }
.timeline > div > i { width: 9px; height: 9px; margin-top: 3px; flex: 0 0 auto; position: relative; z-index: 1; border: 2px solid #fff; border-radius: 50%; background: var(--purple); box-shadow: 0 0 0 1px #cfc8e0; }
.timeline p { margin: 0; }
.timeline b,.timeline span,.timeline small { display: block; }
.timeline b { font-size: 9px; }
.timeline span { color: var(--muted); font-size: 7px; }
.timeline small { margin-top: 3px; color: #777181; font-size: 7px; }
.danger-zone { padding: 16px; }
.danger-zone summary { color: var(--red); font-size: 9px; font-weight: 700; cursor: pointer; }
.danger-zone form { margin-top: 12px; }
.danger-zone label { margin-top: 9px; }
.privacy-callout { margin-bottom: 16px; padding: 18px 22px; display: flex; align-items: center; gap: 14px; border: 1px solid #e0daf8; border-radius: 14px; background: #f6f3ff; }
.privacy-callout > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: var(--purple); }
.privacy-callout b,.privacy-callout p { display: block; margin: 0; }
.privacy-callout b { font-size: 11px; }
.privacy-callout p { color: #777082; font-size: 9px; }
.active-products { padding: 15px; }
.active-products article { padding: 13px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 11px; }
.active-products article > i { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.active-products article div { flex: 1; }
.active-products b,.active-products span { display: block; }
.active-products b { font-size: 10px; }
.active-products span { color: var(--muted); font-size: 8px; }
.active-products em { color: var(--green); font-size: 8px; font-style: normal; }
.product-grid { margin: 16px 0; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.product-card { padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.product-card.featured { color: #fff; border-color: transparent; background: linear-gradient(145deg,#2b2345,#4c3b81); }
.product-card.featured .eyebrow { color: #b9aceb; }
.product-card h2 { margin: 9px 0; font-size: 18px; }
.product-card p { min-height: 70px; color: var(--muted); font-size: 9px; }
.product-card.featured p { color: #beb6d0; }
.product-card > strong { margin-bottom: 17px; display: block; font: 800 24px Manrope; }
.product-card > strong small { color: var(--muted); font: 400 8px DM Sans; }
.coupon-input { height: 38px; margin-bottom: 8px; font-size: 9px; }
.product-card.featured .coupon-input { color: #fff; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.08); }
.product-card.featured .coupon-input::placeholder { color: #bcb4ca; }

/* Tables and settings */
.data-table-wrap { width: 100%; overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; font-size: 9px; }
.data-table th { height: 38px; padding: 0 15px; color: #9e9aa5; background: #faf9fb; font-size: 7px; font-weight: 800; text-align: left; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; }
.data-table td { min-height: 50px; padding: 12px 15px; border-top: 1px solid var(--line); vertical-align: middle; }
.data-table td > b,.data-table td > span { display: block; }
.data-table td > span { color: var(--muted); font-size: 7px; }
.data-table a { color: var(--purple); }
.data-table code { color: #6c6675; font-size: 7px; }
.user-cell { display: flex; align-items: center; gap: 9px; }
.user-cell .app-avatar { width: 32px; height: 32px; border-radius: 9px; }
.user-cell b,.user-cell span { display: block; }
.user-cell b { color: var(--ink); font-size: 9px; }
.user-cell span { color: var(--muted); font-size: 7px; }
.inline-form { display: flex; gap: 5px; }
.inline-form select { width: 90px; height: 32px; font-size: 8px; }
.inline-form button { border: 0; border-radius: 6px; color: var(--purple); background: var(--purple-soft); font-size: 8px; font-weight: 700; }
.table-menu { position: relative; }
.table-menu summary { cursor: pointer; list-style: none; }
.table-menu[open] { z-index: 15; }
.table-menu > form { width: 190px; padding: 10px; position: absolute; right: 0; border: 1px solid var(--line); background: #fff; box-shadow: var(--shadow); }
.table-menu > form:first-of-type { border-radius: 9px 9px 0 0; }
.table-menu > form:last-of-type { top: 75px; border-radius: 0 0 9px 9px; }
.table-menu form select,.table-menu form input { height: 32px; margin: 4px 0; font-size: 8px; }
.table-menu form button { width: 100%; padding: 6px; border: 0; color: var(--purple); background: var(--purple-soft); font-size: 8px; }
.tabs { height: 56px; margin-bottom: 15px; padding: 0 18px; display: flex; align-items: end; gap: 24px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.tabs a { height: 43px; position: relative; display: flex; align-items: center; color: var(--muted); font-size: 9px; }
.tabs a.active { color: var(--purple); font-weight: 800; }
.tabs a.active:after { content:""; height: 2px; position: absolute; left: 0; right: 0; bottom: 0; background: var(--purple); }
.settings-layout { display: grid; grid-template-columns: 190px minmax(0,1fr); gap: 16px; }
.settings-layout > aside { align-self: start; padding: 9px; position: sticky; top: 84px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.settings-layout > aside a { min-height: 39px; padding: 0 11px; display: flex; align-items: center; border-radius: 8px; color: #797582; font-size: 9px; }
.settings-layout > aside a.active { color: var(--purple); background: var(--purple-soft); font-weight: 800; }
.settings-card { overflow: hidden; }
.avatar-upload { margin-bottom: 20px; display: flex; align-items: center; gap: 15px; }
.avatar-upload label { width: fit-content; padding: 10px 12px; border: 1px solid var(--line); border-radius: 9px; cursor: pointer; }
.avatar-upload input { display: none; }
.avatar-upload { flex-wrap: wrap; }
.avatar-upload .upload-hint { flex-basis: 100%; margin-left: 83px; color: var(--muted); font-size: 8px; }
.profile-media-grid { margin-bottom: 24px; display: grid; grid-template-columns: .75fr 1.25fr; gap: 13px; }
.profile-media-editor { min-width: 0; padding: 15px; display: flex; align-items: center; gap: 14px; border: 1px solid var(--line); border-radius: 14px; background: #faf9fc; }
.profile-media-editor.cover-editor { align-items: flex-start; }
.profile-media-editor > div:last-child { min-width: 0; flex: 1; }
.profile-media-editor b,.profile-media-editor p,.profile-media-editor small { display: block; }
.profile-media-editor p { margin: 4px 0 10px; color: var(--muted); font-size: 8px; line-height: 1.55; }
.profile-media-editor small { margin-top: 7px; color: var(--muted); font-size: 7px; }
.profile-media-editor label { width: fit-content; cursor: pointer; }
.profile-media-editor input[type="file"],.admin-logo-setting input[type="file"] { display: none; }
.media-preview { flex: 0 0 auto; display: grid; place-items: center; overflow: hidden; color: var(--muted); background: linear-gradient(145deg,#eeeaf8,#ded5f4); font-size: 8px; font-weight: 800; }
.media-preview.square { width: 96px; height: 96px; border-radius: 22px; }
.media-preview.cover { width: 190px; aspect-ratio: 32/15; border-radius: 12px; }
.media-preview img { width: 100%; height: 100%; display: block; object-fit: cover; }
.admin-logo-setting { margin: 14px 0 22px; padding: 16px; display: flex; align-items: center; gap: 18px; border: 1px solid var(--line); border-radius: 14px; background: #faf9fc; }
.admin-logo-preview { width: 210px; height: 84px; flex: 0 0 auto; padding: 12px; display: grid; place-items: center; overflow: hidden; border: 1px dashed #cec5dd; border-radius: 11px; color: var(--muted); background: #fff; font-size: 9px; }
.admin-logo-preview img { max-width: 100%; max-height: 100%; object-fit: contain; }
.admin-logo-setting > div:last-child { min-width: 0; flex: 1; }
.admin-logo-setting p { margin: 4px 0 10px; color: var(--muted); font-size: 9px; }
.admin-logo-setting .check-row { margin-top: 9px; }
.card-form label > small,.upload-hint { display: block; margin-top: 6px; color: var(--muted); font-size: 8px; font-weight: 400; }
.card-form label > .image-size-warning { color: #b24b39; font-weight: 700; }
.slug-field { height: 42px; display: flex; align-items: center; overflow: hidden; border: 1px solid #ddd8e5; border-radius: 9px; background: #fff; }
.slug-field:focus-within { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(112,83,236,.09); }
.slug-field > span { height: 100%; padding: 0 10px; display: flex; align-items: center; color: #8e8798; background: #f7f5fa; border-right: 1px solid var(--line); font-size: 9px; white-space: nowrap; }
.slug-field input { height: 100%; min-width: 0; border: 0; border-radius: 0; box-shadow: none !important; }
.album-admin-list { padding: 15px; display: grid; gap: 14px; }
.album-admin-card { padding: 15px; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.album-admin-card > header { margin-bottom: 12px; display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.album-admin-card header b,.album-admin-card header span { display: block; }
.album-admin-card header b { font-size: 12px; }.album-admin-card header span { margin-top: 3px; color: var(--muted); font-size: 8px; }
.album-admin-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 7px; }
.album-admin-grid figure { aspect-ratio: 1; margin: 0; position: relative; overflow: hidden; border-radius: 9px; background: #f0edf5; }
.album-admin-grid img { width: 100%; height: 100%; display: block; object-fit: cover; }
.album-admin-grid form { position: absolute; top: 5px; right: 5px; }
.album-admin-grid button { width: 25px; height: 25px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: rgba(29,23,43,.72); }
.album-add-photos { margin-top: 11px; padding-top: 11px; display: flex; gap: 9px; align-items: center; border-top: 1px solid var(--line); }
.album-add-photos input { min-width: 0; flex: 1; font-size: 8px; }
fieldset { border: 1px solid var(--line); border-radius: 12px; }
fieldset legend { padding: 0 8px; color: #615d6b; font-size: 10px; font-weight: 700; }
.check-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; padding: 10px; }
.connected-list,.package-admin-list,.access-list,.notification-list,.ticket-list,.rule-list,.provider-list,.product-admin-list,.content-list,.case-list { padding: 15px; display: grid; gap: 9px; }
.connected-list article,.package-admin-list article,.access-list article,.provider-list article,.product-admin-list article,.content-list article { min-height: 67px; padding: 12px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--line); border-radius: 11px; }
.connected-list article > i,.provider-list article > i { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: #fff; background: var(--ink); font-size: 8px; font-style: normal; }
.connected-list article > div,.package-admin-list article > div,.access-list article > div,.provider-list article > div,.product-admin-list article > div,.content-list article > div { min-width: 0; flex: 1; }
.connected-list b,.connected-list span,.package-admin-list b,.package-admin-list span,.package-admin-list small,.access-list b,.access-list span,.access-list small,.provider-list b,.provider-list span,.product-admin-list b,.product-admin-list span,.content-list b,.content-list span { display: block; }
.connected-list b,.package-admin-list b,.access-list b,.provider-list b,.product-admin-list b,.content-list b { font-size: 9px; }
.connected-list span,.package-admin-list span,.package-admin-list small,.access-list span,.access-list small,.provider-list span,.product-admin-list span,.content-list span { color: var(--muted); font-size: 7px; }
.connected-list em,.package-admin-list > article > strong,.package-admin-list > article > em,.access-list > article > .status,.provider-list em,.product-admin-list strong,.content-list time { margin-left: auto; font-size: 8px; font-style: normal; }
.border-top { border-top: 1px solid var(--line); }
.privacy-choice { min-height: 115px; display: flex; align-items: center; gap: 14px; }
.privacy-choice > input { width: 20px; height: 20px; accent-color: var(--purple); }
.privacy-choice > span { flex: 1; padding: 18px; display: grid; grid-template-columns: 40px 1fr; gap: 3px 12px; border: 1px solid var(--line); border-radius: 13px; }
.privacy-choice i { width: 40px; height: 40px; grid-row: 1/3; display: grid; place-items: center; border-radius: 11px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.privacy-choice b,.privacy-choice small { display: block; }
.privacy-choice b { font-size: 12px; }
.privacy-choice small { color: var(--muted); font-size: 9px; font-weight: 400; }
.danger-panel { margin: 16px 20px; padding: 15px; display: flex; align-items: center; gap: 15px; border: 1px solid #f1d8db; border-radius: 12px; background: #fffafa; }
.danger-panel > div { flex: 1; }
.danger-panel b,.danger-panel span { display: block; }
.danger-panel b { font-size: 10px; }
.danger-panel span { color: var(--muted); font-size: 8px; }
.campaign-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.campaign-card { padding: 20px; }
.campaign-card header { display: flex; justify-content: space-between; }
.campaign-card header em { color: var(--muted); font-size: 8px; font-style: normal; }
.campaign-card h2 { margin: 17px 0 6px; font-size: 18px; }
.campaign-card > p { min-height: 55px; color: var(--muted); font-size: 9px; }
.campaign-card > div { padding: 13px 0; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.campaign-card > div span { font-size: 9px; }
.campaign-card small { display: block; color: var(--muted); font-size: 7px; }
.campaign-card > a { margin-top: 14px; display: inline-block; color: var(--purple); font-size: 9px; font-weight: 700; }
.jobs-search { margin-bottom: 18px; padding: 16px; }
.jobs-search form { display: grid; grid-template-columns: minmax(260px,1fr) 190px 160px auto auto; align-items: end; gap: 10px; }
.jobs-search label { margin: 0; color: var(--muted); font-size: 8px; font-weight: 700; }
.jobs-search .search-field { height: 40px; align-self: end; }
.jobs-result-head { margin: 8px 2px 16px; display: flex; justify-content: space-between; gap: 20px; color: var(--muted); font-size: 9px; }
.jobs-result-head b { color: var(--ink); font-size: 11px; }
.job-card > div { grid-template-columns: 1fr 1fr; gap: 12px; }
.job-card > a.btn { display: flex; color: var(--purple); }
.access-list article { min-height: 80px; }
.row-actions form { display: flex; gap: 5px; }
.notification-list > a { min-height: 70px; padding: 13px 17px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--line); }
.notification-list > a.unread { background: #faf8ff; }
.notification-list > a > i { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.notification-list > a > div { min-width: 0; flex: 1; }
.notification-list b,.notification-list span { display: block; }
.notification-list b { font-size: 9px; }
.notification-list span { color: var(--muted); font-size: 8px; }
.notification-list time { color: var(--muted); font-size: 7px; }
.ticket-list article { padding: 14px; display: flex; gap: 12px; border: 1px solid var(--line); border-radius: 11px; }
.ticket-list article > div { flex: 1; }
.ticket-list b,.ticket-list span,.ticket-list small { display: block; }
.ticket-list b { font-size: 10px; }
.ticket-list span,.ticket-list small { color: var(--muted); font-size: 7px; }
.ticket-list p { margin: 6px 0; color: #6d6876; font-size: 9px; }
.admin-tickets article time { color: var(--muted); font-size: 8px; }

/* Messaging */
.message-shell { height: calc(100vh - 102px); min-height: 560px; overflow: hidden; display: grid; grid-template-columns: 300px 1fr; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.message-shell > aside { min-width: 0; border-right: 1px solid var(--line); }
.message-shell > aside > header { height: 72px; padding: 0 16px; display: flex; align-items: center; justify-content: space-between; }
.message-shell > aside h1 { margin: 3px 0 0; font-size: 20px; }
.message-shell > aside header button { width: 30px; height: 30px; border: 0; border-radius: 9px; color: var(--purple); background: var(--purple-soft); }
.message-shell > aside > .search-field { margin: 0 13px 10px; }
.conversation-list { height: calc(100% - 125px); overflow-y: auto; }
.conversation-list > a { min-height: 70px; padding: 11px 13px; position: relative; display: flex; align-items: center; gap: 10px; border-top: 1px solid #f2f0f4; }
.conversation-list > a.active { background: #f5f2ff; }
.conversation-list > a > div { min-width: 0; flex: 1; }
.conversation-list b,.conversation-list span { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.conversation-list b { font-size: 9px; }
.conversation-list span { color: var(--muted); font-size: 7px; }
.conversation-list time { position: absolute; top: 13px; right: 11px; color: var(--muted); font-size: 6px; }
.conversation-list em { min-width: 15px; height: 15px; position: absolute; right: 11px; bottom: 12px; display: grid; place-items: center; border-radius: 5px; color: #fff; background: var(--purple); font-size: 6px; font-style: normal; }
.message-shell > main { min-width: 0; display: flex; flex-direction: column; }
.message-shell > main > header { height: 72px; padding: 0 18px; flex: 0 0 auto; display: flex; align-items: center; gap: 10px; border-bottom: 1px solid var(--line); }
.message-shell > main > header > div:nth-child(2) { flex: 1; }
.message-shell > main > header b,.message-shell > main > header span { display: block; }
.message-shell > main > header b { font-size: 10px; }
.message-shell > main > header span { color: var(--muted); font-size: 7px; }
.message-actions { margin-left: auto; display: flex; align-items: center; gap: 15px; }
.message-actions > a { color: var(--purple); font-size: 8px; font-weight: 700; }
.message-actions summary { cursor: pointer; list-style: none; }
.message-actions details { position: relative; }
.message-actions details[open] form,.message-actions details[open] > button { width: 110px; padding: 8px; position: absolute; right: 0; top: 25px; border: 1px solid var(--line); background: #fff; }
.message-actions details[open] > button { top: 58px; color: var(--red); font-size: 8px; }
.message-actions form button { width: 100%; border: 0; background: none; font-size: 8px; }
.message-thread { flex: 1; padding: 20px; overflow-y: auto; background: #faf9fc; }
.date-divider { height: 34px; display: flex; align-items: center; justify-content: center; }
.date-divider span { padding: 3px 8px; border-radius: 5px; color: var(--muted); background: #efedf2; font-size: 7px; }
.message-bubble { width: fit-content; max-width: min(74%,580px); margin: 5px 0; padding: 10px 12px; border-radius: 13px; box-shadow: 0 2px 8px rgba(30,25,47,.04); }
.message-bubble.theirs { border: 1px solid var(--line); border-bottom-left-radius: 4px; background: #fff; }
.message-bubble.mine { margin-left: auto; border-bottom-right-radius: 4px; color: #fff; background: linear-gradient(135deg,#8066f0,#6247db); }
.message-bubble p { margin: 0; font-size: 10px; line-height: 1.55; }
.message-bubble > a { display: block; margin-top: 6px; color: inherit; font-size: 8px; font-weight: 700; text-decoration: underline; }
.message-bubble > span { display: block; margin-top: 4px; color: inherit; opacity: .6; font-size: 6px; text-align: right; }
.report-message-btn { margin-top: 3px; padding: 0; border: 0; color: var(--red); background: none; font-size: 6px; opacity: 0; transition: .2s; }
.message-bubble:hover .report-message-btn,.report-message-btn:focus-visible { opacity: .8; }
.message-composer { min-height: 67px; padding: 10px 13px; display: flex; align-items: end; gap: 8px; border-top: 1px solid var(--line); background: #fff; }
.message-composer textarea { min-height: 43px; max-height: 100px; flex: 1; border-radius: 11px; }
.attach-btn { width: 40px; height: 40px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; color: var(--purple); background: var(--purple-soft); cursor: pointer; }
.attach-btn input { display: none; }
.message-composer > button { width: 42px; height: 42px; border: 0; border-radius: 11px; color: #fff; background: var(--purple); }
.message-empty { height: 100%; display: grid; place-items: center; align-content: center; text-align: center; }
.message-empty > span { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 17px; color: var(--purple); background: var(--purple-soft); }
.message-empty h2 { margin: 15px 0 3px; font-size: 18px; }
.message-empty p { color: var(--muted); font-size: 9px; }
.blocked-note { padding: 16px; color: var(--red); background: #fff4f5; text-align: center; font-size: 9px; }

/* Admin */
.admin-bars { height: 260px; padding: 30px 30px 22px; display: flex; align-items: end; justify-content: space-around; gap: 9px; }
.admin-bars > i { width: 32px; height: var(--height); min-height: 25px; position: relative; border-radius: 7px 7px 2px 2px; background: linear-gradient(to top,#6f53ec,#a895ff); }
.admin-bars > i:nth-child(even) { background: #e8e3fb; }
.admin-bars > i span { position: absolute; left: 50%; bottom: -20px; transform: translateX(-50%); color: var(--muted); font-size: 7px; font-style: normal; }
.queue-card { padding: 19px; }
.queue-card h2 { margin: 5px 0 13px; font-size: 16px; }
.queue-card > a { min-height: 61px; display: flex; align-items: center; gap: 10px; border-top: 1px solid var(--line); font-size: 9px; }
.queue-card > a > i { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; font-style: normal; }
.queue-card i.amber { color: var(--amber); background: #fff1e3; }
.queue-card i.red { color: var(--red); background: #ffedef; }
.queue-card i.blue { color: var(--blue); background: #eaf3ff; }
.queue-card a div { flex: 1; }
.queue-card b,.queue-card span { display: block; }
.queue-card b { font-size: 8px; }
.queue-card span { color: var(--muted); font-size: 7px; }
.finance-split { display: grid; grid-template-columns: 1.25fr .75fr; gap: 16px; }
.rule-list article,.case-list article { padding: 13px; display: flex; gap: 10px; border: 1px solid var(--line); border-radius: 11px; }
.rule-list article > div { min-width: 0; flex: 1; }
.rule-list b { font-size: 9px; }
.rule-list p { margin: 3px 0; color: var(--muted); font-size: 7px; }
.rule-list small { color: var(--muted); font-size: 6px; }
.rule-list strong { font: 800 15px Manrope; }
.case-list article { display: block; }
.case-list header { display: flex; align-items: center; justify-content: space-between; }
.case-list time { color: var(--muted); font-size: 7px; }
.case-list h3 { margin: 10px 0 4px; font-size: 12px; }
.case-list p { color: #6a6473; font-size: 8px; }
.case-list small { color: var(--muted); font-size: 7px; }
.case-list blockquote { margin: 8px 0; padding: 10px; border-left: 3px solid var(--purple); color: #5f5969; background: #f7f5ff; font-size: 8px; }
.case-list article > a { display: inline-block; margin-bottom: 8px; color: var(--purple); font-size: 8px; font-weight: 700; }
.case-list form { margin-top: 10px; display: grid; gap: 7px; }
.case-list form select,.case-list form textarea { font-size: 8px; }
.settings-section { padding: 10px 0 24px; margin-bottom: 24px; border-bottom: 1px solid var(--line); }
.settings-section h2 { margin: 6px 0 18px; font-size: 17px; }
.reported-thread { padding: 20px; }
.reported-thread article { max-width: 720px; margin: 9px 0; padding: 13px; border: 1px solid var(--line); border-radius: 11px; background: #faf9fb; }
.reported-thread article.reported { border-color: #f0aeb5; background: #fff3f4; box-shadow: 0 0 0 3px rgba(217,86,99,.08); }
.reported-thread header { display: flex; justify-content: space-between; }
.reported-thread b { font-size: 9px; }
.reported-thread time { color: var(--muted); font-size: 7px; }
.reported-thread p { margin: 7px 0; font-size: 10px; }
.reported-thread a { color: var(--purple); font-size: 8px; }

/* Dialogs */
dialog.app-dialog { width: min(calc(100% - 30px),650px); max-height: 90vh; padding: 0; overflow-y: auto; border: 0; border-radius: 18px; background: #fff; box-shadow: 0 35px 110px rgba(22,16,42,.3); }
dialog.app-dialog.small { width: min(calc(100% - 30px),440px); }
dialog::backdrop { background: rgba(22,17,35,.64); backdrop-filter: blur(4px); }
.app-dialog > form > header { min-height: 77px; padding: 18px 22px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.app-dialog header h2 { margin: 5px 0 0; font-size: 20px; }
.app-dialog header button { width: 31px; height: 31px; border: 0; border-radius: 9px; color: var(--muted); background: #f3f1f5; font-size: 19px; }
.app-dialog > form > .form-grid,.app-dialog > form > label { margin: 20px 22px; }
.app-dialog > form > footer { padding: 15px 22px; display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--line); }
.image-crop-dialog { width: min(820px,calc(100% - 24px)); max-height: calc(100vh - 24px); padding: 0; overflow: auto; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 30px 100px rgba(15,10,30,.4); }
.image-crop-dialog::backdrop { background: rgba(17,12,27,.76); backdrop-filter: blur(7px); }
.image-crop-dialog form > header { padding: 18px 22px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.image-crop-dialog header span { color: var(--purple); font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.image-crop-dialog header h2 { margin: 4px 0 0; font-size: 20px; }
.image-crop-dialog header button { width: 34px; height: 34px; border: 0; border-radius: 10px; color: var(--muted); background: #f3f1f6; font-size: 22px; }
.crop-stage { margin: 18px 22px 13px; display: grid; place-items: center; overflow: hidden; border-radius: 14px; background: #17131f; }
.crop-stage canvas { width: auto; max-width: 100%; max-height: 56vh; display: block; cursor: grab; touch-action: none; }
.crop-stage canvas:active { cursor: grabbing; }
.crop-zoom { margin: 0 22px; display: grid; grid-template-columns: 55px 1fr; align-items: center; gap: 12px; }
.crop-zoom span { color: var(--muted); font-size: 9px; font-weight: 800; }
.crop-zoom input { width: 100%; accent-color: var(--purple); }
.image-crop-dialog form > p { margin: 10px 22px 18px; color: var(--muted); font-size: 9px; }
.image-crop-dialog form > footer { padding: 15px 22px; display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--line); }
.cookie-banner { width: min(calc(100% - 30px),760px); min-height: 76px; padding: 14px; position: fixed; z-index: 120; left: 50%; bottom: 18px; transform: translateX(-50%); display: flex; align-items: center; gap: 8px; border: 1px solid #373142; border-radius: 15px; color: #fff; background: rgba(24,20,33,.96); box-shadow: 0 20px 60px rgba(0,0,0,.3); backdrop-filter: blur(15px); }
.cookie-banner > div { min-width: 0; flex: 1; }
.cookie-banner b,.cookie-banner span { display: block; }
.cookie-banner b { font-size: 10px; }
.cookie-banner span { color: #aaa3b6; font-size: 8px; }
.cookie-banner button { min-height: 35px; padding: 0 11px; border: 1px solid #514a5c; border-radius: 8px; color: #d2cbdc; background: transparent; font-size: 8px; font-weight: 700; }
.cookie-banner button.accept { border-color: var(--purple); color: #fff; background: var(--purple); }

/* Installer */
.installer-page { min-height: 100vh; padding: 25px; display: grid; place-items: center; background: radial-gradient(circle at 10% 0,#493b78,transparent 32%),linear-gradient(145deg,#171321,#292040); }
.installer-shell { width: min(100%,1120px); min-height: 720px; overflow: hidden; display: grid; grid-template-columns: .78fr 1.22fr; border-radius: 26px; background: #fff; box-shadow: 0 40px 120px rgba(0,0,0,.3); }
.installer-brand { padding: 48px 43px; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; color: #fff; background: radial-gradient(circle at 100% 25%,#534385,transparent 38%),linear-gradient(145deg,#201a31,#32274e); }
.installer-brand:after { content:""; width:390px; height:390px; position:absolute; right:-250px; bottom:0; border:1px solid rgba(184,167,255,.18); border-radius:50%; box-shadow:0 0 0 60px rgba(145,120,247,.03),0 0 0 130px rgba(145,120,247,.02); }
.installer-brand > div { position: relative; z-index: 2; }
.installer-brand h1 { margin: 14px 0 20px; font-size: 46px; line-height: 1.03; letter-spacing: -.05em; }
.installer-brand p { color: #b7b0c3; font-size: 13px; line-height: 1.75; }
.installer-brand ul { position: relative; z-index: 2; padding: 0; list-style: none; color: #cac3d5; font-size: 10px; }
.installer-brand li { margin-top: 11px; }
.installer-brand li:before { content:"✓"; margin-right: 9px; color: #9b85f7; font-weight: 800; }
.installer-form { max-height: 94vh; padding: 43px 55px; overflow-y: auto; }
.installer-form header h2 { margin: 7px 0 4px; font-size: 28px; }
.installer-form header p { color: var(--muted); font-size: 11px; }
.requirements { margin: 18px 0; display: flex; flex-wrap: wrap; gap: 5px; }
.requirements span { padding: 4px 7px; border-radius: 5px; font-size: 7px; }
.requirements span.ok { color: #2c8e69; background: #e8f7f0; }
.requirements span.bad { color: var(--red); background: #ffedef; }
.form-section { padding: 19px 0; border-top: 1px solid var(--line); }
.form-section h3 { margin-bottom: 13px; color: var(--purple); font-size: 10px; letter-spacing: .1em; }
.form-alert { margin: 13px 0; padding: 11px 14px; border-radius: 10px; }
.form-alert.error { color: #a53e48; background: #ffedef; }
.form-alert p { margin: 2px 0; font-size: 9px; }
.success-state { min-height: 600px; display: grid; place-items: center; align-content: center; text-align: center; }
.success-state > span { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 23px; color: #fff; background: var(--green); font-size: 29px; box-shadow: 0 18px 40px rgba(44,169,121,.25); }
.success-state h2 { margin: 24px 0 5px; font-size: 28px; }
.success-state p { color: var(--muted); }
.success-state .btn { margin: 18px 0; }
.success-state small { display: block; color: var(--muted); }
.invoice-body { padding: 30px; background: #eceaf0; }
.invoice-page { width: min(100%,850px); min-height: 1080px; margin: auto; padding: 45px 55px; background: #fff; box-shadow: var(--shadow); }
.invoice-page > header { display: flex; justify-content: space-between; align-items: center; }
.invoice-page > section { margin-top: 75px; }
.invoice-title { display: flex; justify-content: space-between; align-items: end; padding-bottom: 30px; border-bottom: 2px solid var(--ink); }
.invoice-title h1 { margin: 6px 0 0; font-size: 44px; }
.invoice-title > div:last-child { text-align: right; }
.invoice-title b,.invoice-title span { display: block; }
.invoice-title b { font-size: 13px; }
.invoice-title span { color: var(--muted); font-size: 10px; }
.invoice-parties { margin: 40px 0 55px; display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.invoice-parties small,.invoice-parties b,.invoice-parties span { display: block; }
.invoice-parties small { margin-bottom: 8px; color: var(--muted); font-size: 8px; letter-spacing: .15em; }
.invoice-parties b { font-size: 13px; }
.invoice-parties span { color: var(--muted); font-size: 10px; }
.invoice-page table { width: 100%; border-collapse: collapse; }
.invoice-page th,.invoice-page td { padding: 15px 10px; border-bottom: 1px solid var(--line); text-align: left; }
.invoice-page th:last-child,.invoice-page td:last-child { text-align: right; }
.invoice-page thead th { color: var(--muted); font-size: 8px; letter-spacing: .1em; }
.invoice-page tfoot th { padding-top: 24px; border-bottom: 0; font-size: 17px; }
.invoice-note { margin-top: 70px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 9px; }
@media print { .invoice-body { padding: 0; background: #fff; } .invoice-page { width: 100%; min-height: 0; padding: 35px; box-shadow: none; } .invoice-page > header .btn { display: none; } }

@media (max-width: 1180px) {
  .hero-grid { grid-template-columns: 1fr .85fr; gap: 20px; }
  .hero-stage { transform: scale(.85); transform-origin: center; }
  .discover-results .creator-grid { grid-template-columns: repeat(2,1fr); }
  .app-sidebar { width: 225px; }
  .app-main { margin-left: 225px; }
  .kpi-grid { grid-template-columns: repeat(2,1fr); }
  .workspace-grid { grid-template-columns: repeat(2,1fr); }
  .workspace-card.span-2 { grid-column: span 2; }
  .profile-content { grid-template-columns: 1.4fr .7fr; }
  .finance-split { grid-template-columns: 1fr; }
}

/* Campaign Studio, matching and growth suite */
.info-button { width: 22px; height: 22px; margin-left: 6px; padding: 0; vertical-align: 2px; border: 1px solid #d7d1ee; border-radius: 50%; color: var(--purple); background: var(--purple-soft); font-size: 12px; font-weight: 800; line-height: 20px; }
.info-button:hover { color: #fff; border-color: var(--purple); background: var(--purple); }
.info-dialog { width: min(520px,calc(100% - 28px)); padding: 32px; border: 0; border-radius: 22px; color: var(--ink); background: #fff; box-shadow: var(--shadow-lg); }
.info-dialog::backdrop { background: rgba(22,18,36,.62); backdrop-filter: blur(4px); }
.info-dialog-close { width: 36px; height: 36px; position: absolute; top: 16px; right: 16px; border: 0; border-radius: 50%; color: var(--muted); background: var(--surface-alt); font-size: 20px; }
.info-dialog h2 { margin: 8px 45px 20px 0; font-size: 25px; letter-spacing: -.03em; }
.info-dialog section { padding: 17px 0; border-top: 1px solid var(--line); }
.info-dialog section h3 { margin-bottom: 6px; font-size: 13px; }
.info-dialog section p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.info-dialog > .btn { margin-top: 7px; }
.section-intro { max-width: 760px; color: var(--ink-soft); }

.studio-grid,.match-grid,.program-grid,.ugc-grid,.casting-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.studio-card,.match-card { min-width: 0; }
.studio-card > header,.campaign-card-actions,.studio-member-list > a,.studio-member-list > article { display: flex; align-items: center; gap: 12px; }
.studio-card > header em { margin-left: auto; color: var(--muted); font-size: 11px; font-style: normal; }
.studio-card h2 { margin: 20px 0 8px; font-size: 20px; }
.studio-card > p { min-height: 46px; color: var(--ink-soft); }
.studio-progress { height: 7px; overflow: hidden; margin: 20px 0; border-radius: 99px; background: var(--surface-alt); }
.studio-progress i { width: var(--progress); height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg,var(--purple),#a590ff); }
.studio-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-bottom: 18px; }
.studio-stats span { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.studio-stats b { display: block; overflow: hidden; color: var(--ink); font-size: 13px; text-overflow: ellipsis; text-transform: none; white-space: nowrap; }
.compact-kpis > article { min-height: 118px; }
.studio-detail { margin-top: 18px; }
.studio-member-list { display: grid; gap: 3px; }
.studio-member-list > a,.studio-member-list > article { min-height: 66px; padding: 11px 4px; border-bottom: 1px solid var(--line); }
.studio-member-list .app-avatar { flex: 0 0 auto; }
.studio-member-list > a > div,.studio-member-list > article > div { min-width: 0; flex: 1; }
.studio-member-list b,.studio-member-list span { display: block; }
.studio-member-list > a > div span,.studio-member-list > article > div span { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.studio-member-list > a > strong { margin-left: auto; white-space: nowrap; }
.warning-pill { padding: 5px 8px; border-radius: 99px; color: #9c5b17; background: #fff3df; font-size: 10px; font-style: normal; font-weight: 800; }
.task-board { display: grid; gap: 8px; }
.task-item { min-height: 64px; padding: 10px 12px; display: flex; align-items: center; gap: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fcfbfd; }
.task-item > i { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: var(--blue); }
.task-item > i.high { background: var(--amber); }
.task-item > i.urgent { background: var(--red); box-shadow: 0 0 0 5px rgba(217,86,99,.1); }
.task-item > div { min-width: 0; flex: 1; }
.task-item b,.task-item span { display: block; }
.task-item span { color: var(--muted); font-size: 11px; }
.task-item select { min-width: 125px; }
.task-add { margin-top: 13px; border-top: 1px solid var(--line); }
.task-add summary,.partnership-card details > summary { padding: 15px 0 0; color: var(--purple); cursor: pointer; font-weight: 750; }
.horizontal-timeline { display: grid; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); gap: 16px; }
.horizontal-timeline > div { padding: 13px; border-radius: 12px; background: var(--canvas); }
.horizontal-timeline p { margin: 0; }
.horizontal-timeline b,.horizontal-timeline span { display: block; }
.horizontal-timeline span { color: var(--muted); font-size: 11px; }

.contract-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.contract-summary > span { min-height: 70px; padding: 13px; border-radius: 12px; background: var(--canvas); color: var(--ink); font-weight: 650; }
.contract-summary small { display: block; margin-bottom: 5px; color: var(--muted); font-size: 9px; letter-spacing: .08em; }
.contract-warning { margin: 14px 0; padding: 12px 14px; border: 1px solid #f2d7a8; border-radius: 11px; color: #8e591a; background: #fff8e9; font-size: 12px; }
.contract-acceptance { margin-top: 16px; display: flex; align-items: center; flex-wrap: wrap; gap: 9px; }
.contract-acceptance > span { padding: 7px 10px; border-radius: 99px; color: var(--muted); background: var(--surface-alt); font-size: 11px; }
.contract-acceptance > span.done { color: #147a55; background: #e7f8f1; }
.contract-acceptance form { margin-left: auto; }
.contract-editor { margin-top: 17px; border-top: 1px solid var(--line); }
.contract-editor summary { padding-top: 16px; color: var(--purple); cursor: pointer; font-weight: 750; }
.permission-list { display: grid; gap: 9px; }
.permission-list > article { padding: 12px; display: flex; align-items: center; gap: 12px; border: 1px solid var(--line); border-radius: 12px; }
.permission-list > article > div { min-width: 0; flex: 1; }
.permission-list b,.permission-list span,.permission-list small { display: block; }
.permission-list small { color: var(--muted); font-size: 10px; }
.permission-list form { display: flex; align-items: center; gap: 7px; }

.match-selector { margin-bottom: 18px; }
.match-selector form { display: flex; align-items: center; gap: 18px; }
.match-selector label { min-width: 250px; }
.match-selector form > span { color: var(--muted); font-size: 12px; }
.match-selector form > span b { display: block; color: var(--ink); }
.match-card { position: relative; text-align: center; }
.match-select { position: absolute; top: 14px; left: 14px; }
.match-select input { position: absolute; opacity: 0; }
.match-select span { padding: 6px 9px; border: 1px solid var(--line); border-radius: 99px; color: var(--muted); background: #fff; font-size: 10px; font-weight: 750; }
.match-select input:checked + span { color: #fff; border-color: var(--purple); background: var(--purple); }
.match-score { width: 62px; height: 62px; margin: 2px auto 13px; display: grid; place-content: center; border: 5px solid #e8e2ff; border-radius: 50%; color: var(--purple); background: var(--purple-soft); }
.match-score strong,.match-score span { display: block; line-height: 1.05; }
.match-score strong { font-size: 16px; }
.match-score span { font-size: 8px; }
.match-card .app-avatar.lg { margin-inline: auto; }
.match-card h2 { margin: 12px 0 3px; font-size: 18px; }
.match-card > p { color: var(--muted); }
.match-metrics { padding: 12px 0; display: grid; grid-template-columns: repeat(3,1fr); border-block: 1px solid var(--line); }
.match-metrics span { color: var(--muted); font-size: 9px; }
.match-metrics b { display: block; color: var(--ink); font-size: 12px; }
.match-card ul { min-height: 76px; padding: 0; text-align: left; list-style: none; color: var(--ink-soft); font-size: 11px; }
.shortlist-inline { display: flex; flex-wrap: wrap; gap: 5px; }
.shortlist-inline button { padding: 5px 7px; border: 1px solid var(--line); border-radius: 7px; color: var(--purple); background: #fff; font-size: 9px; }
.batch-invite-form { padding-bottom: 115px; }
.batch-invite-bar { min-height: 92px; padding: 13px 18px; position: sticky; z-index: 12; bottom: 12px; display: grid; grid-template-columns: auto 1fr 1.2fr 1.1fr auto auto; align-items: end; gap: 11px; border: 1px solid #d9d2f5; border-radius: 16px; background: rgba(255,255,255,.96); box-shadow: var(--shadow-lg); backdrop-filter: blur(14px); }
.batch-invite-bar > div b,.batch-invite-bar > div span { display: block; }
.batch-invite-bar > div span { color: var(--muted); font-size: 10px; }
.batch-invite-bar label { font-size: 10px; }
.batch-selected-count { align-self: center; padding: 6px 9px; border-radius: 99px; color: var(--muted); background: var(--surface-alt); font-size: 10px; font-style: normal; font-weight: 800; white-space: nowrap; }
.batch-invite-bar.has-selection .batch-selected-count { color: #fff; background: var(--purple); }

.shortlist-layout { grid-template-columns: minmax(230px,.72fr) minmax(0,2.28fr); }
.shortlist-nav { display: grid; gap: 5px; }
.shortlist-nav a { padding: 11px; display: flex; align-items: center; gap: 10px; border-radius: 10px; }
.shortlist-nav a.active { color: var(--purple); background: var(--purple-soft); }
.shortlist-nav a span { min-width: 0; flex: 1; }
.shortlist-nav b,.shortlist-nav small { display: block; }
.shortlist-nav small { overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.shortlist-nav em { font-style: normal; font-weight: 800; }
.comparison-table td:first-child > a { display: flex; align-items: center; gap: 8px; }
.comparison-table td:first-child > span { margin-left: 40px; color: var(--muted); font-size: 10px; }

.calendar-layout { display: grid; grid-template-columns: minmax(0,2fr) minmax(280px,.75fr); gap: 18px; }
.agenda-list { display: grid; }
.agenda-list > a,.agenda-list > article { min-height: 76px; padding: 10px 0; display: flex; align-items: center; gap: 13px; border-bottom: 1px solid var(--line); }
.agenda-list time { width: 52px; height: 52px; flex: 0 0 auto; display: grid; place-content: center; text-align: center; border-radius: 12px; color: var(--purple); background: var(--purple-soft); font-size: 9px; font-weight: 800; }
.agenda-list time b { display: block; font-size: 19px; line-height: 1; }
.agenda-list > a > div,.agenda-list > article > div { min-width: 0; flex: 1; }
.agenda-list > div b,.agenda-list > div span { display: block; }
.agenda-list span { color: var(--muted); font-size: 11px; }

.program-grid > article,.ugc-grid > article,.casting-grid > article { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: #fff; }
.program-grid h3,.ugc-grid h3,.casting-grid h3 { margin: 13px 0 7px; }
.program-grid p,.ugc-grid p,.casting-grid p { color: var(--ink-soft); }
.program-grid article > div,.ugc-grid article > div,.casting-grid article > div { display: flex; flex-wrap: wrap; gap: 7px; }
.program-grid article > div > span,.ugc-grid article > div > span,.casting-grid article > div > span { padding: 5px 8px; border-radius: 7px; color: var(--ink-soft); background: var(--canvas); font-size: 10px; }
.program-grid article > div b { display: block; color: var(--ink); }
.influencer-programs > article { border: 0; }
.marketplace-ugc,.public-castings { grid-template-columns: repeat(3,minmax(0,1fr)); }
.ugc-grid article > strong,.casting-grid article > strong { margin: 14px 0; display: block; color: var(--purple); font-size: 20px; }
.ugc-grid article > small { display: block; margin-bottom: 13px; color: var(--muted); }
.casting-apps form { display: flex; align-items: center; gap: 7px; }
.casting-apps strong { white-space: nowrap; }
.campaign-card-actions { justify-content: space-between; margin-top: 14px; }
.campaign-card-actions a { color: var(--purple); font-size: 11px; font-weight: 750; }
.campaign-type-label { display: block; margin-top: 12px; color: var(--muted); font-size: 10px; font-weight: 750; text-transform: uppercase; }
.campaign-edit-card { max-width: 950px; margin-inline: auto; }
.repeat-review { max-width: 980px; margin-inline: auto; }
.repeat-candidates { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.repeat-candidates > label { min-height: 64px; padding: 10px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; }
.repeat-candidates > label:has(input:checked) { border-color: #cabffa; background: var(--purple-soft); }
.repeat-candidates input { accent-color: var(--purple); }
.repeat-candidates span { min-width: 0; flex: 1; }
.repeat-candidates b,.repeat-candidates small { display: block; }
.repeat-candidates small { overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.repeat-offer-fields { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
.repeat-confirm { margin-top: 18px; padding: 16px; display: flex; align-items: center; gap: 20px; border-radius: 14px; background: var(--canvas); }
.repeat-confirm p { margin: 0; flex: 1; color: var(--ink-soft); font-size: 12px; }
.integration-settings { margin-top: 18px; }
.alert-list { display: grid; }
.alert-list > article { min-height: 72px; padding: 11px 0; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--line); }
.alert-list > article > i { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; color: var(--purple); background: var(--purple-soft); font-style: normal; }
.alert-list > article > div { min-width: 0; flex: 1; }
.alert-list b,.alert-list span,.alert-list small { display: block; }
.alert-list span { overflow: hidden; color: var(--ink-soft); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.alert-list small { color: var(--muted); font-size: 10px; }
.alert-list > article > em { color: var(--purple); font-size: 11px; font-style: normal; font-weight: 800; white-space: nowrap; }
.permission-code-card { max-width: 720px; margin-inline: auto; }
.permission-code-card > p { color: var(--ink-soft); }
.secure-code { margin: 22px 0; padding: 14px; display: flex; align-items: center; gap: 12px; border: 1px solid #dcd4fa; border-radius: 14px; background: var(--purple-soft); }
.secure-code code { min-width: 0; flex: 1; overflow-wrap: anywhere; color: var(--purple-dark); font-size: 18px; font-weight: 800; letter-spacing: .04em; }
.permission-code-card dl { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.permission-code-card dl > div { padding: 12px; border-radius: 11px; background: var(--canvas); }
.permission-code-card dt { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.permission-code-card dd { margin: 4px 0 0; font-weight: 650; }
.app-sidebar nav { overflow-y: auto; scrollbar-width: thin; }

@media (max-width: 1100px) {
  .studio-grid,.match-grid,.program-grid,.ugc-grid,.casting-grid,.marketplace-ugc,.public-castings { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .batch-invite-bar { grid-template-columns: auto 1fr 1fr; }
  .batch-invite-bar > div { grid-column: span 2; }
}

@media (max-width: 900px) {
  .shortlist-layout,.calendar-layout { grid-template-columns: 1fr; }
  .contract-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .permission-list > article { align-items: flex-start; flex-wrap: wrap; }
  .permission-list form { width: 100%; }
  .batch-invite-bar { bottom: 8px; grid-template-columns: 1fr 1fr; }
  .batch-invite-bar > div { grid-column: 1/-1; }
  .public-header nav { margin-left: 30px; gap: 18px; }
  .hero { min-height: auto; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { padding-bottom: 10px; }
  .hero-stage { height: 530px; width: 570px; max-width: 100%; margin: auto; transform: scale(.9); }
  .trust-strip .container { flex-direction: column; align-items: flex-start; justify-content: center; gap: 16px; }
  .trust-strip div div { width: 100%; gap: 20px; }
  .section-head { grid-template-columns: 1fr; gap: 20px; }
  .split-showcase { grid-template-columns: 1fr; }
  .dashboard-preview { transform: none; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
  .footer-grid > div:last-child { grid-column: 2; }
  .discover-layout { grid-template-columns: 1fr; }
  .filter-panel { position: static; }
  .brand-filters { grid-template-columns: 1fr 1fr; }
  .brand-filters .search-field { grid-column: 1/-1; }
  .profile-content { grid-template-columns: 1fr; }
  .package-panel { position: static; }
  .project-layout { grid-template-columns: 1fr; }
  .auth-page { grid-template-columns: 1fr; }
  .auth-visual { min-height: 420px; padding: 40px; }
  .auth-form { min-height: 650px; }
  .installer-shell { grid-template-columns: 1fr; }
  .installer-brand { min-height: 430px; }
  .app-sidebar { transform: translateX(-102%); transition: .25s ease; box-shadow: var(--shadow-lg); }
  body.sidebar-open .app-sidebar { transform: translateX(0); }
  .app-main { margin-left: 0; }
  .sidebar-toggle { display: block; }
  .app-content { width: calc(100% - 36px); }
  .campaign-grid,.product-grid { grid-template-columns: repeat(2,1fr); }
  .profile-media-grid { grid-template-columns: 1fr; }
  .jobs-search form { grid-template-columns: 1fr 1fr; }
  .jobs-search .search-field { grid-column: 1 / -1; }
  .message-shell { grid-template-columns: 260px 1fr; }
}

@media (max-width: 700px) {
  .container { width: min(calc(100% - 30px),var(--container)); }
  .public-header { height: 68px; }
  .public-header nav,.public-header .header-actions { display: none; }
  .mobile-menu-btn { display: block; }
  .mobile-menu.open { padding: 13px 15px; position: absolute; z-index: 49; top: 68px; left: 0; right: 0; display: grid; gap: 4px; border-bottom: 1px solid var(--line); background: #fff; box-shadow: var(--shadow); }
  .mobile-menu a { padding: 11px; border-radius: 8px; font-size: 12px; }
  .mobile-menu a:hover { background: var(--purple-soft); }
  .hero-copy { padding-top: 65px; }
  .hero-copy h1 { font-size: 47px; }
  .hero-search { height: auto; flex-wrap: wrap; padding: 11px; }
  .hero-search input { height: 40px; }
  .hero-search button { width: 100%; }
  .hero-stage { width: 510px; margin-left: 50%; transform: translateX(-50%) scale(.73); transform-origin: top center; height: 430px; }
  .trust-strip div div { overflow-x: auto; justify-content: flex-start; }
  .section { padding-top: 80px; padding-bottom: 80px; }
  .section-head h2,.showcase-copy h2 { font-size: 37px; }
  .creator-grid,.discover-results .creator-grid,.steps-grid,.brand-grid { grid-template-columns: 1fr; }
  .public-creators .creator-card:nth-child(n+4) { display: none; }
  .steps-grid article { min-height: 235px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid > div:first-child { grid-column: 1/-1; }
  .footer-grid > div:last-child { grid-column: auto; }
  .footer-bottom { gap: 15px; flex-direction: column; }
  .profile-header { align-items: flex-start; flex-direction: column; }
  .profile-identity { align-items: flex-start; }
  .profile-header .app-avatar.xl { width: 112px; height: 112px; }
  .profile-actions { width: 100%; }
  .profile-actions > * { flex: 1; }
  .profile-metrics { grid-template-columns: repeat(2,1fr); gap: 18px 0; }
  .profile-metrics article:nth-child(3) { padding-left: 0; border-left: 0; }
  .detail-grid,.detail-grid.four,.social-grid,.work-grid { grid-template-columns: 1fr 1fr; }
  .package-tab-grid,.brand-campaign-grid { grid-template-columns: 1fr; }
  .brand-directory-head { align-items: flex-start; flex-direction: column; }
  .brand-filters { grid-template-columns: 1fr; }
  .brand-filters .search-field { grid-column: auto; }
  .profile-media-editor { align-items: flex-start; flex-direction: column; }
  .media-preview.cover { width: 100%; }
  .admin-logo-setting { align-items: flex-start; flex-direction: column; }
  .admin-logo-preview { width: 100%; }
  .auth-visual { display: none; }
  .auth-form { padding: 30px 20px 65px; justify-items: stretch; }
  .mobile-auth-logo { margin-bottom: 45px; display: block; }
  .form-grid.two,.form-grid.three { grid-template-columns: 1fr; }
  .kpi-grid,.workspace-grid { grid-template-columns: 1fr; }
  .workspace-card.span-2 { grid-column: span 1; }
  .workspace-header { align-items: flex-start; flex-direction: column; }
  .workspace-actions { width: 100%; }
  .workspace-actions > * { flex: 1; }
  .global-search { display: none; }
  .top-actions { margin-left: auto; }
  .project-row .status,.project-row > strong { display: none; }
  .project-main > i { width: 90px; }
  .workspace-creators { grid-template-columns: 1fr; }
  .settings-layout { grid-template-columns: 1fr; }
  .settings-layout > aside { padding: 6px; position: static; overflow-x: auto; flex-direction: row; }
  .settings-layout > aside a { flex: 0 0 auto; }
  .check-grid { grid-template-columns: repeat(2,1fr); }
  .album-admin-grid { grid-template-columns: repeat(4,1fr); }
  .public-album-grid { grid-template-columns: repeat(2,1fr); grid-auto-rows: 135px; }
  .public-album-grid button.featured { grid-column: span 2; grid-row: auto; }
  .campaign-grid,.product-grid { grid-template-columns: 1fr; }
  .jobs-search form { grid-template-columns: 1fr; }
  .jobs-search .search-field { grid-column: auto; }
  .jobs-result-head { flex-direction: column; gap: 4px; }
  .message-shell { height: auto; min-height: 700px; grid-template-columns: 1fr; }
  .message-shell > aside { height: 260px; border-right: 0; border-bottom: 1px solid var(--line); }
  .conversation-list { height: 135px; }
  .message-shell > main { min-height: 440px; }
  .message-thread { max-height: 430px; }
  .message-bubble { max-width: 90%; }
  .finance-split { grid-template-columns: 1fr; }
  .tabs { overflow-x: auto; }
  .tabs a { flex: 0 0 auto; }
  .installer-page { padding: 0; }
  .installer-shell { min-height: 100vh; border-radius: 0; }
  .installer-brand { display: none; }
  .installer-form { max-height: none; padding: 35px 20px; }
  .app-dialog > form > .form-grid { grid-template-columns: 1fr; }
}

@media (max-width: 440px) {
  .studio-grid,.match-grid,.program-grid,.ugc-grid,.casting-grid,.marketplace-ugc,.public-castings { grid-template-columns: 1fr; }
  .contract-summary { grid-template-columns: 1fr; }
  .batch-invite-form { padding-bottom: 245px; }
  .batch-invite-bar { grid-template-columns: 1fr; max-height: 235px; overflow-y: auto; }
  .batch-invite-bar > div,.batch-invite-bar > * { grid-column: 1; }
  .match-selector form { align-items: stretch; flex-direction: column; }
  .match-selector label { min-width: 0; }
  .permission-list form,.casting-apps form { align-items: stretch; flex-direction: column; }
  .alert-list > article { align-items: flex-start; flex-wrap: wrap; }
  .alert-list > article > div { min-width: calc(100% - 55px); }
  .info-dialog { padding: 25px 20px; }
  .repeat-candidates { grid-template-columns: 1fr; }
  .repeat-confirm { align-items: stretch; flex-direction: column; }
  .secure-code { align-items: stretch; flex-direction: column; }
  .permission-code-card dl { grid-template-columns: 1fr; }
  .hero-copy h1 { font-size: 39px; }
  .hero-copy > p { font-size: 14px; }
  .hero-stage { margin-top: 10px; transform: translateX(-50%) scale(.62); height: 365px; }
  .profile-identity { flex-direction: column; }
  .profile-metrics { padding: 17px; }
  .detail-grid,.detail-grid.four,.social-grid,.work-grid,.stats-grid { grid-template-columns: 1fr; }
  .app-topbar { padding: 0 14px; }
  .app-content { width: calc(100% - 24px); padding-top: 22px; }
  .workspace-header h1 { font-size: 24px; }
  .kpi-grid > article { min-height: 80px; }
  .role-picker { grid-template-columns: 1fr; }
  .check-grid { grid-template-columns: 1fr; }
  .album-admin-grid { grid-template-columns: repeat(3,1fr); }
  .album-add-photos { align-items: stretch; flex-direction: column; }
  .gallery-lightbox { width: 100%; height: 100%; max-height: none; border-radius: 0; }
  .project-header { align-items: flex-start; flex-direction: column; }
  .project-amount { text-align: left; }
  .top-actions details summary { display: none; }
}

/* Premium public header and homepage experience */
body.public-body {
  --home-ink: #161321;
  --home-violet: #7b61ff;
  --home-violet-bright: #a796ff;
  --home-night: #151120;
  overflow-x: hidden;
  font-family: "Avenir Next", "Segoe UI Variable Text", "Segoe UI", Helvetica, Arial, sans-serif;
}
.public-body h1,.public-body h2,.public-body h3 { font-family: "Avenir Next", "Segoe UI Variable Display", "Segoe UI", Helvetica, Arial, sans-serif; }
.public-header { height: 84px; position: sticky; top: 0; z-index: 100; border-bottom: 1px solid rgba(37,30,58,.08); background: rgba(255,255,255,.88); box-shadow: 0 8px 32px rgba(31,24,49,.035); backdrop-filter: blur(24px) saturate(145%); }
.public-header-inner { height: 100%; display: flex; align-items: center; }
.public-header .brand-mark { position: relative; z-index: 2; }
.public-header .brand-mark > span { width: 38px; height: 38px; border-radius: 12px; background: linear-gradient(145deg,#9f8dff,#6848ea); box-shadow: 0 10px 24px rgba(100,70,224,.28); }
.public-header .brand-mark strong { font-size: 18px; letter-spacing: -.75px; }
.public-header .brand-mark em { display: none; }
.public-header .image-brand-mark { height: 52px; }
.public-header nav { height: 44px; margin: 0 0 0 clamp(38px,5vw,78px); padding: 0 6px; gap: 4px; border: 1px solid rgba(35,28,53,.075); border-radius: 999px; background: rgba(247,246,250,.72); }
.public-header nav a { padding: 9px 15px; border-radius: 999px; color: #625d6e; font-size: 12px; font-weight: 720; letter-spacing: -.01em; transition: color .2s ease,background .2s ease; }
.public-header nav a:hover { color: #4f35c8; background: #fff; box-shadow: 0 4px 14px rgba(41,33,62,.07); }
.header-presence { margin-left: auto; display: flex; align-items: center; gap: 8px; color: #8c8794; font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.header-presence i { width: 7px; height: 7px; border-radius: 50%; background: #39b985; box-shadow: 0 0 0 4px rgba(57,185,133,.1); }
.public-header .header-actions { margin-left: 24px; gap: 19px; }
.public-header .login-link { color: #332e3d; font-size: 12px; font-weight: 750; }
.header-start-btn { min-height: 46px; padding: 0 19px; border-radius: 13px; color: #fff; background: #1c1826; box-shadow: 0 12px 24px rgba(28,24,38,.16); }
.header-start-btn:hover { color: #fff; background: #6f52ed; box-shadow: 0 15px 30px rgba(91,65,207,.23); }
.header-start-btn span,.header-dashboard-link span { font-size: 15px; }
.header-dashboard-link { padding: 12px 16px; display: inline-flex; align-items: center; gap: 9px; border-radius: 12px; color: #fff; background: #1c1826; font-size: 11px; font-weight: 760; }
.mobile-menu-btn { width: 43px; height: 43px; padding: 0; border: 1px solid var(--line); border-radius: 12px; place-items: center; background: #fff; }
.mobile-menu-btn span { width: 18px; height: 1.5px; display: block; border-radius: 2px; background: #292431; transition: .2s ease; }
.mobile-menu-btn span + span { margin-top: 5px; width: 13px; margin-left: 5px; }
.mobile-menu-btn[aria-expanded="true"] span:first-child { transform: translateY(3.2px) rotate(45deg); }
.mobile-menu-btn[aria-expanded="true"] span:last-child { width: 18px; margin-left: 0; transform: translateY(-3.2px) rotate(-45deg); }

.home-hero { min-height: 780px; position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; color: #fff; background: #171320; }
.home-hero:before { content:""; position:absolute; z-index:-3; inset:0; background: radial-gradient(circle at 76% 30%,rgba(118,84,235,.22),transparent 31%),radial-gradient(circle at 8% 90%,rgba(76,52,143,.2),transparent 32%),linear-gradient(130deg,#16121e 0%,#1b1627 52%,#211a31 100%); }
.home-hero:after { content:""; position:absolute; z-index:-1; width:760px; height:760px; right:-360px; bottom:-470px; border:1px solid rgba(178,157,255,.12); border-radius:50%; box-shadow:0 0 0 110px rgba(140,112,255,.025),0 0 0 220px rgba(140,112,255,.018); }
.home-hero-glow { position:absolute; z-index:-2; border-radius:50%; filter:blur(4px); pointer-events:none; }
.home-hero-glow.glow-a { width:360px; height:360px; top:90px; left:-190px; background:rgba(101,73,200,.12); }
.home-hero-glow.glow-b { width:320px; height:320px; right:15%; bottom:-170px; background:rgba(111,81,230,.09); }
.home-hero-gridlines { position:absolute; z-index:-2; inset:0; opacity:.12; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:84px 84px; mask-image:linear-gradient(90deg,transparent,black 25%,black 85%,transparent); }
.home-hero-grid { min-height:780px; display:grid; grid-template-columns:minmax(0,1.04fr) minmax(470px,.96fr); gap:clamp(35px,6vw,90px); align-items:center; }
.home-hero-copy { padding:76px 0 90px; position:relative; z-index:4; }
.home-launch-pill { width:fit-content; max-width:100%; min-height:38px; padding:6px 8px 6px 12px; display:flex; align-items:center; gap:9px; border:1px solid rgba(202,191,255,.16); border-radius:999px; color:#c9c1d8; background:rgba(255,255,255,.055); font-size:9px; font-weight:720; backdrop-filter:blur(10px); }
.home-launch-pill i { width:7px; height:7px; flex:0 0 auto; border-radius:50%; background:#aa94ff; box-shadow:0 0 0 5px rgba(170,148,255,.09); }
.home-launch-pill b { padding:7px 10px; border-radius:999px; color:#f0ecff; background:rgba(135,103,244,.16); font-weight:750; }
.home-hero-copy h1 { max-width:700px; margin:27px 0 24px; font-size:clamp(62px,6.2vw,92px); line-height:.91; letter-spacing:-.07em; font-weight:760; }
.home-hero-copy h1 em { position:relative; color:transparent; background:linear-gradient(100deg,#b9a9ff,#8d72f7 55%,#d6ccff); -webkit-background-clip:text; background-clip:text; font-style:normal; }
.home-hero-copy h1 em:after { content:""; width:78%; height:6px; position:absolute; left:4px; bottom:-9px; border-radius:999px; background:linear-gradient(90deg,#8c72ef,transparent); opacity:.7; transform:skewX(-28deg); }
.home-hero-lead { max-width:615px; margin-bottom:31px; color:#bbb5c6; font-size:16px; line-height:1.75; letter-spacing:-.01em; }
.home-command-search { width:min(100%,650px); min-height:70px; padding:8px 8px 8px 18px; display:flex; align-items:center; gap:13px; border:1px solid rgba(255,255,255,.14); border-radius:17px; background:rgba(255,255,255,.085); box-shadow:0 22px 55px rgba(0,0,0,.2); backdrop-filter:blur(18px); }
.home-command-search > span { color:#b9adda; font-size:24px; line-height:1; }
.home-command-search label { min-width:0; flex:1; display:block; }
.home-command-search small { display:block; margin-bottom:2px; color:#827c90; font-size:7px; font-weight:800; letter-spacing:.16em; }
.home-command-search input { width:100%; padding:0; border:0; outline:0; color:#fff; background:transparent; font-size:13px; }
.home-command-search input::placeholder { color:#aaa4b3; }
.home-command-search button { min-width:156px; height:52px; padding:0 16px; border:0; border-radius:12px; color:#fff; background:linear-gradient(135deg,#8d74fb,#6749df); box-shadow:0 12px 26px rgba(102,72,219,.3); font-size:11px; font-weight:800; }
.home-command-search button i { margin-left:7px; font-size:15px; font-style:normal; }
.home-hero-actions { margin-top:22px; display:flex; align-items:center; gap:24px; }
.home-primary-cta { min-height:48px; padding:0 19px; border-radius:13px; color:#241d37; background:#fff; box-shadow:0 14px 30px rgba(0,0,0,.14); }
.home-primary-cta:hover { color:#5137cc; }
.home-primary-cta span { margin-left:5px; font-size:15px; }
.home-creator-link { display:inline-flex; align-items:center; gap:8px; color:#ccc5d6; font-size:12px; font-weight:740; }
.home-creator-link:hover { color:#fff; }
.home-proof-row { margin-top:39px; display:flex; align-items:center; gap:14px; }
.home-proof-avatars { display:flex; }
.home-proof-avatars i { width:35px; height:35px; margin-left:-8px; overflow:hidden; display:grid; place-items:center; border:2px solid #1b1626; border-radius:50%; color:#473d5c; background:linear-gradient(145deg,#efeaff,#a995ea); font-size:8px; font-weight:800; font-style:normal; }
.home-proof-avatars i:first-child { margin-left:0; }
.home-proof-avatars i:last-child { color:#fff; background:#7658e8; }
.home-proof-avatars img { width:100%; height:100%; object-fit:cover; }
.home-proof-row p,.home-proof-row strong,.home-proof-row span { display:block; margin:0; }
.home-proof-row strong { color:#eeeaf5; font-size:10px; }
.home-proof-row span { margin-top:2px; color:#827d8b; font-size:8px; }

.home-hero-visual { width:100%; height:650px; position:relative; }
.home-hero-visual:before { content:""; width:420px; height:420px; position:absolute; top:112px; left:50%; border-radius:50%; background:radial-gradient(circle,rgba(124,93,240,.22),rgba(93,65,180,.05) 58%,transparent 70%); filter:blur(2px); transform:translateX(-50%); }
.home-visual-orbit { position:absolute; left:50%; top:50%; border:1px solid rgba(193,177,255,.12); border-radius:50%; transform:translate(-50%,-50%); }
.home-visual-orbit.orbit-a { width:540px; height:540px; }
.home-visual-orbit.orbit-b { width:420px; height:420px; border-style:dashed; animation:home-spin 40s linear infinite; }
.home-spotlight-card { width:350px; height:512px; position:absolute; z-index:3; top:64px; left:50%; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:31px; color:#fff; background:rgba(255,255,255,.085); box-shadow:0 38px 90px rgba(0,0,0,.34); backdrop-filter:blur(18px); transform:translateX(-50%) rotate(-2.5deg); transition:transform .35s ease,box-shadow .35s ease; }
.home-spotlight-card:hover { transform:translateX(-50%) rotate(-1deg) translateY(-7px); box-shadow:0 46px 100px rgba(0,0,0,.4); }
.home-spotlight-photo { height:330px; position:relative; overflow:hidden; display:grid; place-items:center; color:#46375b; background:radial-gradient(circle at 50% 17%,#f8e2d9 0 15%,transparent 16%),linear-gradient(145deg,#dfd5fa,#a28bd1); font-size:58px; font-weight:800; }
.home-spotlight-photo:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,rgba(23,18,32,.32)); pointer-events:none; }
.home-spotlight-photo > img { width:100%; height:100%; object-fit:cover; }
.home-live-label { min-height:26px; padding:0 10px; position:absolute; z-index:2; left:17px; top:17px; display:inline-flex; align-items:center; gap:7px; border:1px solid rgba(255,255,255,.3); border-radius:999px; color:#fff; background:rgba(25,20,34,.45); font-size:7px; font-weight:800; letter-spacing:.1em; backdrop-filter:blur(8px); }
.home-live-label i { width:6px; height:6px; border-radius:50%; background:#58dea1; box-shadow:0 0 0 4px rgba(88,222,161,.12); }
.home-spotlight-copy { padding:19px 21px; }
.home-spotlight-copy > span { display:block; overflow:hidden; color:#9f96ae; font-size:8px; font-weight:740; letter-spacing:.05em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.home-spotlight-copy h2 { margin:6px 0 15px; overflow:hidden; font-size:21px; letter-spacing:-.035em; text-overflow:ellipsis; white-space:nowrap; }
.home-spotlight-copy > div { padding-top:14px; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.1); }
.home-spotlight-copy b { font-size:14px; }
.home-spotlight-copy small { display:block; margin-top:2px; color:#766f82; font-size:6px; letter-spacing:.13em; }
.home-floating-card { position:absolute; z-index:5; display:flex; align-items:center; gap:11px; border:1px solid rgba(255,255,255,.14); border-radius:17px; background:rgba(38,30,54,.78); box-shadow:0 24px 55px rgba(0,0,0,.28); backdrop-filter:blur(20px); animation:home-float 6s ease-in-out infinite; }
.home-floating-card small,.home-floating-card b,.home-floating-card em { display:block; }
.home-floating-card small { color:#8f879d; font-size:6px; font-weight:800; letter-spacing:.13em; }
.home-floating-card b { margin-top:3px; color:#f1edf6; font-size:10px; }
.home-floating-card em { margin-top:2px; color:#8f8898; font-size:7px; font-style:normal; }
.home-card-icon { width:42px; height:42px; flex:0 0 auto; display:grid; place-items:center; border-radius:12px; color:#fff; font-size:16px; }
.home-card-icon.violet { background:linear-gradient(145deg,#9479ff,#6546d8); }
.home-card-icon.coral { background:linear-gradient(145deg,#ff947f,#d96667); }
.home-match-card { width:260px; left:-5px; top:101px; padding:12px; transform:rotate(2deg); }
.home-match-card > strong { width:25px; height:25px; margin-left:auto; display:grid; place-items:center; border-radius:50%; color:#72e2ab; background:rgba(65,190,132,.12); font-size:10px; }
.home-contract-card { width:260px; right:-26px; bottom:92px; padding:12px; animation-delay:-2s; transform:rotate(2deg); }
.home-brand-card { min-width:220px; left:-25px; bottom:31px; padding:10px 12px; animation-delay:-4s; transform:rotate(-2deg); }
.home-brand-mini { width:37px; height:37px; flex:0 0 auto; overflow:hidden; display:grid; place-items:center; border-radius:10px; color:#6c4ce0; background:#fff; font-size:9px; }
.home-brand-mini img { width:100%; height:100%; object-fit:cover; }
.home-verified-dot { width:20px; height:20px; margin-left:auto; display:grid; place-items:center; border-radius:50%; color:#fff; background:#795bed; font-size:8px; }
.home-float-tag { padding:7px 11px; position:absolute; z-index:2; border:1px solid rgba(178,160,249,.16); border-radius:999px; color:#a99ce0; background:rgba(100,73,197,.12); font-size:8px; backdrop-filter:blur(8px); }
.home-float-tag.tag-one { right:5px; top:155px; }
.home-float-tag.tag-two { left:14px; top:270px; }
.home-scroll-cue { position:absolute; z-index:5; left:50%; bottom:19px; display:flex; align-items:center; gap:9px; color:#6f6978; font-size:7px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; transform:translateX(-50%); }
.home-scroll-cue span { width:32px; height:1px; background:linear-gradient(90deg,transparent,#81788e); }

.home-proof-strip { border-bottom:1px solid #ebe8f0; background:#fff; }
.home-proof-strip .container { min-height:112px; display:grid; grid-template-columns:1.2fr repeat(3,.65fr) 1.35fr; align-items:center; }
.home-proof-label { max-width:170px; color:#aaa6b2; font-size:8px; font-weight:800; letter-spacing:.16em; line-height:1.6; }
.home-proof-stat { min-height:47px; padding:0 22px; display:flex; flex-direction:column; justify-content:center; border-left:1px solid #eeebf2; }
.home-proof-stat b { font-size:22px; letter-spacing:-.045em; }
.home-proof-stat span { color:#9994a1; font-size:7px; }
.home-proof-trust { min-height:47px; padding-left:25px; display:flex; align-items:center; gap:12px; border-left:1px solid #eeebf2; }
.home-proof-trust > i { width:35px; height:35px; flex:0 0 auto; display:grid; place-items:center; border-radius:11px; color:#6849d8; background:#f0ecff; font-size:12px; font-style:normal; }
.home-proof-trust span,.home-proof-trust b,.home-proof-trust small { display:block; }
.home-proof-trust b { font-size:9px; }
.home-proof-trust small { margin-top:2px; color:#9994a1; font-size:7px; }

.home-platform { scroll-margin-top:95px; }
.home-bento-grid { display:grid; grid-template-columns:1.1fr .9fr; grid-template-rows:330px 292px; gap:18px; }
.home-bento-card { min-width:0; position:relative; overflow:hidden; border:1px solid #e7e3ed; border-radius:25px; background:#f8f7fb; box-shadow:0 15px 45px rgba(34,27,52,.055); }
.home-bento-copy { position:relative; z-index:3; }
.home-bento-copy > span { color:#7d62ed; font-size:7px; font-weight:850; letter-spacing:.16em; }
.home-bento-copy h3 { margin:8px 0 9px; font-size:25px; letter-spacing:-.045em; }
.home-bento-copy p { max-width:460px; margin:0; color:#827d8b; font-size:10px; line-height:1.7; }
.bento-studio { padding:31px; color:#fff; background:radial-gradient(circle at 85% 20%,rgba(130,96,240,.27),transparent 28%),linear-gradient(135deg,#1b1725,#272036); }
.bento-studio .home-bento-copy > span { color:#ad9af6; }
.bento-studio .home-bento-copy p { color:#9f98aa; }
.home-studio-ui { width:68%; position:absolute; right:-23px; bottom:-25px; padding:16px; border:1px solid rgba(255,255,255,.13); border-radius:20px 0 0 0; background:rgba(255,255,255,.08); box-shadow:-20px -15px 50px rgba(0,0,0,.18); backdrop-filter:blur(12px); transform:rotate(-1deg); }
.home-studio-ui header { display:flex; align-items:center; gap:8px; }
.home-studio-ui header i { width:10px; height:10px; border-radius:4px; background:#8769ef; }
.home-studio-ui header b { font-size:8px; }
.home-studio-ui header span { margin-left:auto; padding:4px 7px; border-radius:999px; color:#bdafff; background:rgba(123,95,221,.18); font-size:6px; }
.home-studio-ui > div { margin-top:13px; display:grid; gap:6px; }
.home-studio-ui > div > span { min-height:36px; padding:0 9px; display:flex; align-items:center; gap:8px; border:1px solid rgba(255,255,255,.07); border-radius:9px; color:#837c8e; background:rgba(255,255,255,.035); font-size:7px; }
.home-studio-ui > div > span i { width:18px; height:18px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.1); border-radius:6px; font-style:normal; }
.home-studio-ui > div > span.done { color:#aaa3b3; }
.home-studio-ui > div > span.done i { color:#63dca3; background:rgba(75,193,135,.1); }
.home-studio-ui > div > span.active { color:#fff; border-color:rgba(148,121,255,.24); background:rgba(121,89,230,.12); }
.home-studio-ui > div > span.active i { color:#fff; background:#7757e7; }
.bento-match { padding:31px; background:linear-gradient(145deg,#f5f1ff,#e9e2ff); }
.home-bento-symbol { width:42px; height:42px; position:absolute; right:27px; top:27px; display:grid; place-items:center; border-radius:13px; color:#fff; background:linear-gradient(145deg,#957cff,#6a49df); box-shadow:0 15px 30px rgba(100,72,215,.22); }
.home-match-rings { width:190px; height:190px; position:absolute; right:13px; bottom:-48px; display:grid; place-items:center; border:1px solid rgba(112,83,236,.16); border-radius:50%; }
.home-match-rings:before,.home-match-rings:after,.home-match-rings i { content:""; position:absolute; border:1px solid rgba(112,83,236,.13); border-radius:50%; }
.home-match-rings:before { width:145px; height:145px; }
.home-match-rings:after { width:100px; height:100px; }
.home-match-rings i:first-child { width:11px; height:11px; top:25px; right:28px; border:0; background:#ff8c78; box-shadow:0 0 0 6px rgba(255,140,120,.11); }
.home-match-rings i:nth-child(2) { width:9px; height:9px; left:22px; bottom:55px; border:0; background:#7355e2; box-shadow:0 0 0 6px rgba(115,85,226,.1); }
.home-match-rings b { position:relative; z-index:2; color:#6247ce; font-size:21px; text-align:center; }
.home-match-rings b span { display:block; color:#8d7ec2; font-size:7px; font-weight:700; }
.bento-rights { padding:31px; background:#fff; }
.home-rights-list { width:45%; position:absolute; right:25px; top:28px; display:grid; gap:8px; }
.home-rights-list span { min-height:45px; padding:0 11px; display:flex; align-items:center; gap:8px; border:1px solid #ebe7f0; border-radius:11px; color:#827d8b; background:#faf9fc; font-size:7px; }
.home-rights-list i { width:20px; height:20px; display:grid; place-items:center; border-radius:7px; color:#5e42ca; background:#eee9ff; font-style:normal; }
.home-rights-list b { margin-left:auto; color:#2b2633; font-size:7px; }
.bento-rights .home-bento-copy { max-width:48%; }
.bento-markets { padding:31px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background:radial-gradient(circle at 80% 5%,rgba(255,139,119,.2),transparent 32%),linear-gradient(145deg,#252031,#18151f); }
.bento-markets .home-bento-copy > span { color:#b5a2ff; }
.bento-markets .home-bento-copy p { color:#928b9c; }
.home-market-pills { position:absolute; left:31px; right:31px; top:31px; display:flex; flex-wrap:wrap; gap:7px; }
.home-market-pills span { padding:8px 12px; border:1px solid rgba(255,255,255,.1); border-radius:999px; color:#b7afc0; background:rgba(255,255,255,.055); font-size:8px; }
.home-market-pills span:first-child { color:#fff; border-color:rgba(143,113,245,.35); background:rgba(123,88,232,.25); }

@keyframes home-spin { to { transform:translate(-50%,-50%) rotate(360deg); } }
@keyframes home-float { 0%,100% { translate:0 0; } 50% { translate:0 -8px; } }
@media (prefers-reduced-motion:reduce) { .home-visual-orbit.orbit-b,.home-floating-card { animation:none; } }

@media (max-width:1100px) {
  .header-presence { display:none; }
  .public-header .header-actions { margin-left:auto; }
  .home-hero-grid { grid-template-columns:minmax(0,1fr) 470px; gap:25px; }
  .home-hero-copy h1 { font-size:70px; }
  .home-match-card { left:5px; }
  .home-contract-card { right:0; }
  .home-brand-card { left:8px; }
  .home-proof-strip .container { grid-template-columns:1fr repeat(3,.7fr); }
  .home-proof-trust { display:none; }
}
@media (max-width:900px) {
  .public-header nav { margin-left:28px; }
  .home-hero,.home-hero-grid { min-height:auto; }
  .home-hero-grid { grid-template-columns:1fr; }
  .home-hero-copy { max-width:720px; padding:80px 0 20px; }
  .home-hero-copy h1 { font-size:clamp(66px,10vw,86px); }
  .home-hero-visual { width:600px; max-width:100%; height:650px; margin:0 auto 45px; }
  .home-proof-strip .container { min-height:100px; grid-template-columns:1fr repeat(3,.72fr); }
  .home-bento-grid { grid-template-columns:1fr; grid-template-rows:330px 280px 280px 270px; }
}
@media (max-width:700px) {
  .public-header { height:72px; }
  .public-header nav,.public-header .header-actions,.header-presence { display:none; }
  .public-header .image-brand-mark { height:44px; }
  .mobile-menu-btn { margin-left:auto; display:grid; }
  .mobile-menu.open { padding:14px 15px 18px; position:fixed; z-index:99; top:72px; left:0; right:0; display:grid; gap:4px; border-bottom:1px solid var(--line); background:rgba(255,255,255,.98); box-shadow:0 24px 55px rgba(31,25,46,.15); backdrop-filter:blur(18px); }
  .mobile-menu a { padding:13px 12px; display:flex; align-items:center; justify-content:space-between; border-radius:10px; color:#37313f; font-size:12px; font-weight:700; }
  .mobile-menu a:hover { background:#f4f1ff; }
  .mobile-menu .mobile-menu-primary { margin-top:5px; justify-content:center; color:#fff; background:#1d1926; }
  .home-hero-copy { padding:60px 0 10px; }
  .home-launch-pill { font-size:8px; }
  .home-launch-pill b { display:none; }
  .home-hero-copy h1 { margin-top:22px; font-size:clamp(51px,15vw,69px); }
  .home-hero-lead { font-size:14px; line-height:1.65; }
  .home-command-search { min-height:auto; padding:10px; flex-wrap:wrap; }
  .home-command-search > span { display:none; }
  .home-command-search label { height:45px; padding:3px 5px; }
  .home-command-search button { width:100%; min-width:0; }
  .home-hero-actions { gap:17px; }
  .home-proof-row { margin-top:32px; }
  .home-hero-visual { width:500px; height:565px; margin-left:50%; transform:translateX(-50%) scale(.86); transform-origin:top center; }
  .home-spotlight-card { top:45px; }
  .home-match-card { left:8px; }
  .home-contract-card { right:5px; }
  .home-brand-card { display:none; }
  .home-float-tag.tag-two { display:none; }
  .home-scroll-cue { display:none; }
  .home-proof-strip .container { padding:22px 0; grid-template-columns:repeat(3,1fr); }
  .home-proof-label { display:none; }
  .home-proof-stat { min-height:45px; padding:0 9px; text-align:center; }
  .home-proof-stat:first-of-type { border-left:0; }
  .home-proof-stat b { font-size:19px; }
  .home-platform { padding-top:85px; }
  .home-bento-grid { grid-template-rows:355px 270px 355px 280px; }
  .home-studio-ui { width:88%; }
  .bento-rights .home-bento-copy { max-width:100%; }
  .home-rights-list { width:auto; left:25px; right:25px; top:auto; bottom:24px; }
}
@media (max-width:440px) {
  .home-hero-copy h1 { font-size:50px; }
  .home-hero-actions { align-items:flex-start; flex-direction:column; gap:14px; }
  .home-primary-cta { width:100%; }
  .home-proof-row span { max-width:190px; }
  .home-hero-visual { height:485px; transform:translateX(-50%) scale(.72); }
  .home-match-card { left:20px; }
  .home-contract-card { right:20px; }
  .home-proof-stat span { font-size:6px; }
  .home-bento-card { padding:24px; }
  .home-studio-ui { right:-10px; }
  .home-market-pills { left:24px; right:24px; top:24px; }
  .home-rights-list { left:24px; right:24px; bottom:22px; }
}

/* Homepage discovery polish · compact typography, full-width search and directories */
body.public-body {
  font-family: ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
}
.public-body h1,.public-body h2,.public-body h3 {
  font-family: inherit;
  font-weight: 760;
}
.public-header { height:78px; }
.public-header nav { height:40px; margin-left:clamp(30px,4vw,62px); }
.public-header nav a { padding:8px 13px; font-size:11px; font-weight:700; }
.public-header .login-link { font-size:11px; }
.header-start-btn { min-height:43px; font-size:11px; }

.home-hero,.home-hero-grid { min-height:690px; }
.home-hero-grid { grid-template-columns:minmax(0,1.14fr) minmax(430px,.86fr); gap:clamp(30px,5vw,72px); }
.home-hero-copy { padding:66px 0 70px; }
.home-hero-kicker { display:inline-flex; align-items:center; gap:9px; color:#9d96aa; font-size:8px; font-weight:800; letter-spacing:.16em; }
.home-hero-kicker i { width:20px; height:1px; background:#9b82ff; box-shadow:9px 0 16px rgba(155,130,255,.7); }
.home-hero-copy h1 { max-width:680px; margin:18px 0 20px; font-size:clamp(44px,4.7vw,64px); line-height:.98; letter-spacing:-.052em; font-weight:760; }
.home-hero-copy h1 em:after { height:4px; bottom:-7px; }
.home-hero-lead { max-width:650px; margin-bottom:25px; font-size:14px; line-height:1.68; }
.home-discovery-search { width:100%; min-height:74px; padding:7px; display:flex; align-items:center; gap:12px; border:1px solid rgba(255,255,255,.7); border-radius:18px; color:#1e1a27; background:#fff; box-shadow:0 24px 60px rgba(0,0,0,.24); }
.home-discovery-search label { min-width:0; margin:0; padding:0 10px; display:block; }
.home-discovery-search small { display:block; margin:0 0 3px; color:#928d9a; font-size:7px; font-weight:850; letter-spacing:.13em; }
.home-search-platform { width:142px; flex:0 0 auto; }
.home-search-platform select,.home-search-query input { width:100%; height:28px; margin:0; padding:0; border:0; border-radius:0; outline:0; color:#292431; background:transparent; box-shadow:none; font-size:12px; font-weight:700; }
.home-search-platform select:focus,.home-search-query input:focus { border:0; box-shadow:none; }
.home-search-query { flex:1; }
.home-search-query input { font-weight:500; }
.home-search-query input::placeholder { color:#aaa5af; }
.home-search-divider { width:1px; height:40px; flex:0 0 auto; background:#e6e2e9; }
.home-discovery-search button { height:58px; min-width:126px; padding:0 18px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:0; border-radius:13px; color:#fff; background:linear-gradient(135deg,#8a70fb,#6849de); box-shadow:0 12px 26px rgba(102,72,219,.28); font-size:11px; font-weight:800; }
.home-discovery-search button span { font-size:18px; font-weight:400; }
.home-search-chips { margin-top:13px; display:flex; flex-wrap:wrap; gap:7px; }
.home-search-chips a { padding:8px 11px; border:1px solid rgba(255,255,255,.13); border-radius:999px; color:#b8b1c3; background:rgba(255,255,255,.045); font-size:8px; font-weight:700; }
.home-search-chips a:hover { color:#fff; border-color:rgba(164,139,255,.42); background:rgba(124,91,239,.16); }
.home-hero-actions { margin-top:20px; }
.home-hero-visual { height:590px; }
.home-spotlight-card { width:326px; height:478px; top:55px; }
.home-spotlight-photo { height:305px; }
.home-match-card { top:88px; }
.home-contract-card { bottom:72px; }
.home-brand-card { bottom:16px; }

.home-trusted-section { padding:72px 0 76px; border-bottom:1px solid #ece9f0; background:#fff; }
.home-trusted-heading { max-width:720px; margin:0 auto 34px; text-align:center; }
.home-trusted-heading h2 { margin:8px 0 7px; font-size:clamp(29px,3.3vw,43px); letter-spacing:-.045em; }
.home-trusted-heading p { margin:0; color:var(--muted); }
.home-trusted-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:15px; }
.home-trusted-card { min-width:0; min-height:185px; padding:25px; display:flex; flex-direction:column; justify-content:center; border:1px solid #ece9f0; border-radius:24px; background:#f7f7f8; }
.home-trusted-card strong,.home-trusted-card span,.home-trusted-card small { display:block; }
.home-trusted-card > strong,.trusted-creators strong { color:#17131e; font-size:clamp(31px,3vw,45px); line-height:1; letter-spacing:-.055em; }
.home-trusted-card > span,.trusted-creators span { margin-top:8px; color:#514c59; font-size:11px; font-weight:750; }
.home-trusted-card > small,.trusted-creators small { margin-top:5px; color:#9a95a1; font-size:8px; }
.trusted-creators { flex-direction:row; align-items:center; justify-content:space-between; gap:20px; }
.trusted-avatar-stack { width:185px; min-height:112px; position:relative; flex:0 0 auto; }
.trusted-avatar-stack i { width:68px; height:68px; position:absolute; overflow:hidden; display:grid; place-items:center; border:3px solid #fff; border-radius:21px; background:#ded6fb; box-shadow:0 10px 24px rgba(42,34,65,.12); }
.trusted-avatar-stack i:nth-child(1) { left:0; top:4px; transform:rotate(-5deg); }
.trusted-avatar-stack i:nth-child(2) { left:57px; top:38px; z-index:2; transform:rotate(4deg); }
.trusted-avatar-stack i:nth-child(3) { right:0; top:0; transform:rotate(6deg); }
.trusted-avatar-stack i:nth-child(4) { right:8px; bottom:-9px; z-index:3; width:54px; height:54px; border-radius:17px; transform:rotate(-4deg); }
.trusted-avatar-stack img { width:100%; height:100%; object-fit:cover; }
.trusted-avatar-stack .trusted-fallback { left:55px; top:20px; color:#6f52e4; font-size:25px; font-style:normal; font-weight:850; }
.trusted-workflow { flex-direction:row; align-items:center; gap:15px; color:#fff; border-color:#282231; background:linear-gradient(145deg,#26212e,#18151e); }
.trusted-workflow > i { width:48px; height:48px; flex:0 0 auto; display:grid; place-items:center; border-radius:15px; color:#fff; background:#7658e8; font-size:17px; font-style:normal; }
.trusted-workflow strong { font-size:16px; letter-spacing:-.02em; }
.trusted-workflow span { margin-top:6px; color:#c0b9c8; font-size:9px; font-weight:650; }
.trusted-workflow small { margin-top:4px; color:#807987; font-size:8px; }

.home-platform { padding-top:78px; padding-bottom:46px; }
.home-discovery-section { padding-top:48px; padding-bottom:78px; }
.home-discovery-section .section-head { margin-bottom:38px; }

.media-kit-visual { min-height:465px; position:relative; overflow:hidden; border-radius:30px; background:radial-gradient(circle at 75% 15%,rgba(144,116,255,.4),transparent 30%),linear-gradient(145deg,#211a31,#17131f); box-shadow:0 35px 80px rgba(35,27,54,.22); }
.media-kit-glow { width:330px; height:330px; position:absolute; right:-70px; bottom:-130px; border:1px solid rgba(197,182,255,.14); border-radius:50%; box-shadow:0 0 0 70px rgba(140,112,255,.035),0 0 0 140px rgba(140,112,255,.02); }
.media-kit-photo { position:absolute; overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:23px; background:linear-gradient(145deg,#d8cdf9,#9d84d3); box-shadow:0 22px 50px rgba(0,0,0,.3); }
.media-kit-photo img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.media-kit-photo:hover img { transform:scale(1.035); }
.media-kit-photo > span { max-width:calc(100% - 22px); padding:7px 10px; position:absolute; left:11px; bottom:11px; overflow:hidden; border-radius:999px; color:#fff; background:rgba(24,19,32,.62); font-size:8px; font-weight:750; text-overflow:ellipsis; white-space:nowrap; backdrop-filter:blur(9px); }
.media-kit-photo-1 { width:54%; height:365px; left:7%; top:44px; transform:rotate(-3deg); }
.media-kit-photo-2 { width:32%; height:190px; right:7%; top:30px; transform:rotate(4deg); }
.media-kit-photo-3 { width:31%; height:180px; right:9%; bottom:28px; transform:rotate(-2deg); }
.media-kit-placeholder { display:grid; place-items:center; color:#fff; }
.media-kit-placeholder b { font-size:80px; }
.media-kit-overlay { width:56%; padding:18px; position:absolute; z-index:5; left:30%; bottom:25px; border:1px solid rgba(255,255,255,.16); border-radius:17px; color:#fff; background:rgba(33,26,45,.78); box-shadow:0 18px 45px rgba(0,0,0,.3); backdrop-filter:blur(18px); }
.media-kit-overlay small { color:#a899dd; font-size:7px; font-weight:850; letter-spacing:.13em; }
.media-kit-overlay > strong { margin:5px 0 13px; display:block; font-size:14px; }
.media-kit-overlay > div { padding-top:12px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.1); }
.media-kit-overlay span { color:#938b9e; font-size:7px; }
.media-kit-overlay b { display:block; color:#fff; font-size:12px; }

.directory-intro { padding-top:64px; padding-bottom:27px; }
.directory-intro h1 { margin:7px 0 8px; font-size:clamp(34px,4.4vw,58px); line-height:1; letter-spacing:-.05em; }
.directory-intro p { max-width:650px; margin:0; color:var(--muted); font-size:13px; }
.directory-page,.brand-directory.directory-page { padding-top:0; padding-bottom:95px; }
.directory-toolbar { margin-bottom:42px; }
.directory-searchbar { width:100%; min-height:80px; padding:8px; display:flex; align-items:center; gap:14px; border:1px solid #e8e5ec; border-radius:22px; background:#fff; box-shadow:0 16px 45px rgba(36,29,51,.08); }
.directory-searchbar label { min-width:0; margin:0; padding:0 16px; }
.directory-searchbar small { display:block; margin-bottom:2px; color:#88828f; font-size:7px; font-weight:850; letter-spacing:.1em; }
.directory-searchbar > i { width:1px; height:43px; flex:0 0 auto; background:#e8e5ec; }
.directory-search-type { width:205px; flex:0 0 auto; }
.directory-search-type span,.directory-search-type select { width:100%; height:28px; margin:0; padding:0; border:0; color:#2d2834; background:transparent; box-shadow:none; font-size:13px; font-weight:750; }
.directory-search-type select:focus { border:0; box-shadow:none; }
.directory-search-query { flex:1; }
.directory-search-query input { width:100%; height:30px; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; font-size:13px; }
.directory-search-query input:focus { border:0; box-shadow:none; }
.directory-searchbar button { width:142px; height:62px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:0; border-radius:16px; color:#fff; background:#1d1924; font-size:11px; font-weight:800; }
.directory-searchbar button span { font-size:21px; font-weight:400; }
.directory-filter-row { margin-top:14px; display:flex; align-items:flex-end; flex-wrap:wrap; gap:9px; }
.directory-filter-row > label { min-width:145px; margin:0; color:#817b88; font-size:7px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.directory-filter-row select { min-width:145px; height:39px; margin-top:5px; padding:0 31px 0 11px; border-radius:999px; font-size:10px; font-weight:650; }
.directory-verified { min-height:39px; padding:0 13px; display:flex!important; align-items:center; gap:7px; border:1px solid var(--line-strong); border-radius:999px; color:#5f5967!important; background:#fff; text-transform:none!important; }
.directory-verified input { width:16px; height:16px; margin:0; accent-color:var(--purple); }
.directory-clear { min-height:39px; margin-left:auto; padding:0 4px; display:inline-flex; align-items:center; color:#5f5967; font-size:10px; font-weight:750; text-decoration:underline; text-underline-offset:3px; }
.directory-result-head { margin-bottom:24px; display:flex; align-items:end; justify-content:space-between; gap:30px; }
.directory-result-head h2 { margin:6px 0 0; font-size:31px; letter-spacing:-.04em; }
.directory-result-head p { max-width:460px; margin:0; color:var(--muted); font-size:11px; }
.directory-result-head.compact { align-items:center; }
.directory-creator-grid,.discover-results .directory-creator-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.directory-creator-grid .creator-cover,.discover-results .directory-creator-grid .creator-cover { height:245px; }
.directory-creator-grid .creator-cover .portrait,.discover-results .directory-creator-grid .creator-cover .portrait { width:150px; height:200px; }
.directory-brand-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }

@media (max-width:1100px) {
  .home-hero-grid { grid-template-columns:minmax(0,1fr) 420px; gap:24px; }
  .home-hero-copy h1 { font-size:52px; }
  .home-trusted-grid { grid-template-columns:1.35fr repeat(2,1fr); }
  .trusted-workflow { grid-column:1/-1; min-height:115px; }
  .directory-creator-grid,.discover-results .directory-creator-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .home-hero-grid { grid-template-columns:1fr; }
  .home-hero-copy { max-width:none; padding:62px 0 15px; }
  .home-hero-copy h1 { max-width:720px; font-size:clamp(45px,7.7vw,62px); }
  .home-hero-visual { width:580px; max-width:100%; margin:0 auto 30px; }
  .home-trusted-grid { grid-template-columns:1fr 1fr; }
  .trusted-creators,.trusted-workflow { grid-column:1/-1; }
  .media-kit-visual { width:min(100%,720px); margin:0 auto; }
  .directory-creator-grid,.discover-results .directory-creator-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .public-header { height:70px; }
  .home-hero-copy { padding-top:48px; }
  .home-hero-copy h1 { margin-top:14px; font-size:clamp(39px,11.5vw,52px); line-height:1.01; }
  .home-hero-lead { font-size:13px; }
  .home-discovery-search { padding:10px; display:grid; grid-template-columns:125px 1fr; gap:8px; }
  .home-search-platform { width:auto; }
  .home-search-divider { display:none; }
  .home-discovery-search label { padding:0 6px; }
  .home-discovery-search button { width:100%; min-width:0; height:48px; grid-column:1/-1; }
  .home-search-chips { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; scrollbar-width:none; }
  .home-search-chips::-webkit-scrollbar { display:none; }
  .home-search-chips a { flex:0 0 auto; }
  .home-hero-actions { align-items:stretch; }
  .home-hero-visual { height:520px; }
  .home-trusted-section { padding:58px 0; }
  .home-trusted-grid { grid-template-columns:1fr; }
  .trusted-creators,.trusted-workflow { grid-column:auto; }
  .home-platform { padding-top:62px; padding-bottom:34px; }
  .home-discovery-section { padding-top:36px; padding-bottom:62px; }
  .directory-intro { padding-top:45px; }
  .directory-searchbar { padding:10px; display:grid; grid-template-columns:120px 1fr; gap:7px; border-radius:18px; }
  .directory-searchbar > i { display:none; }
  .directory-searchbar label { padding:0 6px; }
  .directory-search-type { width:auto; }
  .directory-searchbar button { width:100%; height:48px; grid-column:1/-1; }
  .directory-filter-row { align-items:stretch; display:grid; grid-template-columns:1fr 1fr; }
  .directory-filter-row > label,.directory-filter-row select { min-width:0; width:100%; }
  .directory-verified { align-self:end; }
  .directory-clear { margin-left:0; justify-content:center; }
  .directory-result-head { align-items:flex-start; flex-direction:column; gap:8px; }
}
@media (max-width:520px) {
  .home-hero-kicker { font-size:7px; letter-spacing:.1em; }
  .home-discovery-search,.directory-searchbar { grid-template-columns:1fr; }
  .home-discovery-search button,.directory-searchbar button { grid-column:auto; }
  .home-search-platform,.directory-search-type { padding-bottom:8px!important; border-bottom:1px solid #e7e3ea; }
  .home-hero-actions { flex-direction:column; gap:12px; }
  .home-primary-cta { width:100%; }
  .home-creator-link { justify-content:center; }
  .home-hero-visual { width:500px; height:455px; transform:translateX(-50%) scale(.73); }
  .home-trusted-heading { text-align:left; }
  .home-trusted-card { min-height:150px; padding:21px; }
  .trusted-creators { align-items:flex-start; flex-direction:column; }
  .trusted-avatar-stack { width:180px; }
  .media-kit-visual { min-height:390px; }
  .media-kit-photo-1 { width:61%; height:300px; left:5%; }
  .media-kit-photo-2 { width:34%; height:155px; right:4%; }
  .media-kit-photo-3 { width:34%; height:145px; right:5%; }
  .media-kit-overlay { width:78%; left:11%; bottom:18px; }
  .directory-filter-row { grid-template-columns:1fr; }
  .directory-creator-grid,.discover-results .directory-creator-grid,.directory-brand-grid { grid-template-columns:1fr; }
  .directory-creator-grid .creator-cover,.discover-results .directory-creator-grid .creator-cover { height:285px; }
  .directory-creator-grid .creator-cover .portrait,.discover-results .directory-creator-grid .creator-cover .portrait { width:185px; height:235px; }
}

/* Dashboard clarity, notification center and brand material workflow */
.notification-btn svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.notification-btn i { min-width:18px; height:18px; padding:0 4px; top:-7px; right:-7px; display:grid; place-items:center; border:2px solid #fff; border-radius:99px; color:#fff; background:var(--red); font-size:7px; font-style:normal; font-weight:850; line-height:1; }
.app-sidebar nav a em { min-width:19px; height:19px; padding:0 5px; border-radius:99px; font-size:8px; }

.dashboard-guidance { margin-bottom:18px; display:grid; gap:11px; }
.profile-completion-banner,.premium-guidance { min-width:0; padding:20px 22px; display:flex; align-items:center; gap:18px; border:1px solid #ded7fb; border-radius:17px; background:linear-gradient(115deg,#f7f4ff,#fff); box-shadow:var(--shadow-sm); }
.completion-score { width:72px; height:72px; flex:0 0 auto; display:grid; place-content:center; border-radius:50%; color:#fff; background:conic-gradient(var(--purple) var(--score,75%),#9f8cf2); text-align:center; box-shadow:inset 0 0 0 7px rgba(255,255,255,.26); }
.completion-score strong,.completion-score span { display:block; }
.completion-score strong { font-size:19px; }
.completion-score span { font-size:8px; opacity:.82; }
.profile-completion-banner > div:nth-child(2),.premium-guidance > div { min-width:0; flex:1; }
.profile-completion-banner h2,.premium-guidance h2 { margin:3px 0 4px; font-size:18px; }
.profile-completion-banner p,.premium-guidance p { margin:0; color:var(--ink-soft); font-size:11px; line-height:1.65; }
.premium-guidance { border-color:#eadfbd; background:linear-gradient(115deg,#fff9e9,#fff); }
.premium-guidance > i { width:48px; height:48px; flex:0 0 auto; display:grid; place-items:center; border-radius:14px; color:#fff; background:#b68b2b; font-size:20px; font-style:normal; }

.app-body .directory-intro + .directory-page,.app-body .directory-page { width:100%; max-width:none; }
.app-body .directory-page { padding-bottom:40px; }
.app-body .directory-toolbar { margin-top:0; }
.directory-card-actions { margin-top:13px; padding-top:12px; display:flex!important; align-items:center; justify-content:space-between; gap:9px; border-top:1px solid var(--line); }
.directory-card-actions a { margin:0!important; color:var(--ink-soft)!important; font-size:10px!important; font-weight:750; }
.directory-card-actions a.message { padding:8px 10px; border-radius:9px; color:#fff!important; background:var(--purple); }

.studio-card { padding:22px; overflow:hidden; }
.studio-card h2 { margin-top:22px; line-height:1.25; }
.studio-card > p { margin:0; line-height:1.65; }
.project-header { margin-bottom:22px; padding:28px 30px; }
.project-layout { gap:22px; }
.project-layout > main,.project-layout > aside { gap:22px; }
.project-overview > p { padding:25px 25px 5px; margin:0; }
.project-overview .detail-grid { padding:8px 25px 25px; gap:12px; }
.contract-card > .contract-summary { margin:22px 22px 0; }
.contract-card > .contract-warning { margin:15px 22px 0; }
.contract-card > .contract-acceptance { margin:18px 22px 22px; }
.contract-card > .contract-editor { margin:0 22px 20px; }
.project-layout .task-board { padding:16px 20px 4px; }
.project-layout .task-add { margin:10px 20px 20px; }
.project-layout .permission-list { padding:17px 20px 5px; }
.project-layout .partnership-card > details { margin:0 20px 20px; }

.contract-change-panel { padding:21px 22px; border:1px solid #edc98d; border-radius:16px; background:linear-gradient(135deg,#fffaf0,#fff); box-shadow:0 10px 28px rgba(145,96,20,.08); }
.contract-change-panel > header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.contract-change-panel h2 { margin:4px 0 0; font-size:17px; }
.contract-change-panel > header > span { padding:6px 9px; border-radius:99px; color:#8b5b18; background:#f9e8c8; font-size:10px; font-weight:850; white-space:nowrap; }
.contract-diff-list { margin-top:16px; display:grid; gap:8px; }
.contract-diff-list article { padding:12px 13px; border:1px solid #eee6d6; border-radius:11px; background:#fff; }
.contract-diff-list article > b { display:block; margin-bottom:8px; font-size:11px; }
.contract-diff-list article > div { display:grid; grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr); align-items:center; gap:8px; }
.contract-diff-list span { min-width:0; padding:9px 10px; border-radius:8px; color:var(--muted); background:#f6f4f2; font-size:11px; overflow-wrap:anywhere; }
.contract-diff-list span.proposed { color:#315e4c; background:#eaf7f1; }
.contract-diff-list small { display:block; margin-bottom:3px; font-size:7px; font-weight:850; letter-spacing:.1em; }
.contract-diff-list i { color:#ad7b28; font-style:normal; text-align:center; }
.contract-change-panel > p { margin:13px 0 0; color:#80571b; font-size:10px; }

.calendar-agenda .agenda-list { padding:8px 20px 20px; gap:8px; }
.calendar-legend { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.calendar-legend span { padding:6px 8px; border-radius:99px; font-size:8px; font-weight:800; }
.calendar-legend .booking { color:var(--purple); background:var(--purple-soft); }
.calendar-legend .blocked { color:#a03f3f; background:#fff0f0; }
.calendar-add-card { align-self:start; position:sticky; top:86px; }
.agenda-list > a,.agenda-list > article { min-height:88px; padding:13px 12px; border:1px solid var(--line); border-radius:13px; background:#fff; }
.agenda-list > a { border-left:4px solid var(--purple); }
.agenda-list > article { border-left:4px solid var(--red); background:#fffcfc; }
.agenda-list > article:has(.status.amber) { border-left-color:var(--amber); background:#fffdf8; }
.agenda-list > article form { margin-left:5px; }

.material-workspace { align-items:start; }
.material-library-grid { padding:20px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.received-materials { padding:0; }
.material-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:15px; background:#fff; }
.material-card.workspace-card { padding:0; }
.material-preview { min-height:150px; display:grid; place-content:center; position:relative; overflow:hidden; color:#fff; background:linear-gradient(145deg,#282039,#6b55aa); }
.material-preview.image { background:#eeeaf5; }
.material-preview img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.material-preview > span { font-size:30px; text-align:center; }
.material-preview > small { margin-top:5px; font-size:8px; font-weight:850; letter-spacing:.12em; text-align:center; }
.material-card-body { padding:16px; }
.material-card-body h2,.material-card-body h3 { margin:5px 0 7px; }
.material-card-body h2 { font-size:17px; }
.material-card-body h3 { font-size:14px; }
.material-card-body > p { min-height:34px; margin:0; color:var(--ink-soft); font-size:10px; line-height:1.6; }
.material-card-body blockquote { margin:12px 0 0; padding:10px 11px; border-left:3px solid var(--purple); color:var(--ink-soft); background:var(--purple-soft); font-size:10px; }
.material-meta,.material-actions { display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
.material-meta { margin-top:11px; }
.material-meta span { padding:5px 7px; border-radius:7px; color:var(--muted); background:var(--canvas); font-size:8px; }
.material-actions { margin-top:14px; }
.material-actions form { margin:0; }
.material-actions > a:not(.btn),.material-actions button { color:var(--purple); font-size:10px; font-weight:750; }
.material-send-panel { margin-top:18px; }
.material-send-panel > form { padding:20px; }
.material-send-header { display:flex; align-items:end; gap:12px; }
.material-send-header label { min-width:280px; flex:1; }
.material-selection-columns { margin-top:18px; display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.material-selection-columns fieldset { min-width:0; padding:15px; border:1px solid var(--line); border-radius:13px; }
.material-selection-columns legend { padding:0 6px; font-size:11px; font-weight:850; }
.selection-all { min-height:38px; padding:8px 10px; display:flex; align-items:center; gap:8px; border-radius:9px; color:var(--purple); background:var(--purple-soft); font-size:10px; font-weight:800; }
.selection-list { max-height:310px; margin-top:8px; overflow:auto; display:grid; gap:5px; }
.selection-list > label { min-height:55px; padding:8px; display:flex; align-items:center; gap:9px; border:1px solid transparent; border-radius:9px; cursor:pointer; }
.selection-list > label:hover,.selection-list > label:has(input:checked) { border-color:#d8d0f8; background:#faf8ff; }
.selection-list > label > span { min-width:0; flex:1; }
.selection-list b,.selection-list small { display:block; }
.selection-list small { color:var(--muted); font-size:8px; }
.material-note { margin-top:16px; }
.send-confirm { margin-top:13px; padding-top:15px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid var(--line); }
.send-confirm p { max-width:650px; margin:0; color:var(--muted); font-size:10px; }
.material-history { padding:10px 20px 20px; display:grid; }
.material-history article { min-height:58px; display:flex; align-items:center; gap:11px; border-bottom:1px solid var(--line); }
.material-history article > i { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; color:#167657; background:#e7f8f1; font-style:normal; }
.material-history article > div { min-width:0; flex:1; }
.material-history b,.material-history span { display:block; }
.material-history span,.material-history time { color:var(--muted); font-size:9px; }
.admin-premium-grant { margin-top:18px; }
.brand-presence-strip { margin:14px 0 20px; padding:14px 17px; display:flex; align-items:center; flex-wrap:wrap; gap:16px; border:1px solid var(--line); border-radius:13px; background:#fff; }
.brand-presence-strip > span,.brand-presence-strip > a { display:grid; grid-template-columns:auto 1fr; column-gap:7px; color:var(--ink-soft); font-size:10px; }
.brand-presence-strip > span i,.brand-presence-strip > a i { grid-row:1/3; align-self:center; color:var(--purple); font-style:normal; }
.brand-presence-strip b { color:var(--ink); }
.brand-social-links { margin-left:auto; display:flex; flex-wrap:wrap; gap:6px; }
.brand-social-links a { padding:7px 9px; border-radius:8px; color:var(--purple); background:var(--purple-soft); font-size:9px; font-weight:750; }

@media (max-width:900px) {
  .material-library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .material-selection-columns { grid-template-columns:1fr; }
  .profile-completion-banner,.premium-guidance { align-items:flex-start; flex-wrap:wrap; }
  .profile-completion-banner > .btn,.premium-guidance > .btn { margin-left:90px; }
  .calendar-add-card { position:static; }
}
@media (max-width:600px) {
  .profile-completion-banner,.premium-guidance { padding:17px; gap:13px; }
  .profile-completion-banner > .btn,.premium-guidance > .btn { width:100%; margin-left:0; }
  .completion-score { width:60px; height:60px; }
  .project-header { padding:20px; align-items:flex-start; flex-direction:column; }
  .project-amount { width:100%; text-align:left; }
  .project-layout,.project-layout > main,.project-layout > aside { gap:14px; }
  .contract-diff-list article > div { grid-template-columns:1fr; }
  .contract-diff-list i { transform:rotate(90deg); }
  .contract-summary { grid-template-columns:1fr; }
  .material-library-grid { padding:14px; grid-template-columns:1fr; }
  .received-materials { padding:0; }
  .material-send-panel > form { padding:15px; }
  .material-send-header,.send-confirm { align-items:stretch; flex-direction:column; }
  .material-send-header label { min-width:0; width:100%; }
  .material-send-header .btn,.send-confirm .btn { width:100%; }
  .brand-social-links { width:100%; margin-left:0; }
}
