html{background:var(--theme-bg,#09090B)}
:root{--theme-bg:#09090B;--theme-surface:#131316;--theme-surface-elevated:#1A1A1E;--theme-primary:#D4AF37;--theme-secondary:#E4C66A;--theme-accent:#F1E2BE;--theme-text:#F8F7F3;--theme-muted:#AAA7A0;--theme-border:#4A4024;--theme-font-display:Georgia,serif;--theme-font-body:system-ui,sans-serif;--theme-radius:18px}
body.public-shell{background:
radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--theme-primary) 14%,transparent),transparent 32rem),
radial-gradient(circle at 5% 72%,color-mix(in srgb,var(--theme-secondary) 8%,transparent),transparent 28rem),
var(--theme-bg);color:var(--theme-text);font-family:var(--theme-font-body)}
.public-shell .public-header,.public-shell .public-footer{border-color:color-mix(in srgb,var(--theme-border) 58%,transparent)}
.public-shell .brand-mark{color:var(--theme-primary);border-color:color-mix(in srgb,var(--theme-primary) 35%,transparent);background:color-mix(in srgb,var(--theme-primary) 6%,transparent)}
.public-shell .brand-copy small,.public-shell .text-link,.public-shell .public-footer{color:var(--theme-muted)}
.public-shell .brand-copy strong{color:var(--theme-text)}
.public-shell .text-link:hover{color:var(--theme-primary)}
.royale-public{width:min(calc(100% - 40px),1180px);margin-inline:auto}
.public-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:30px;color:var(--theme-muted);font-size:12px}.public-breadcrumbs a:hover{color:var(--theme-primary)}.public-breadcrumbs span{opacity:.55}
.catalog-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:48px;align-items:end;padding:78px 0 54px;border-bottom:1px solid color-mix(in srgb,var(--theme-border) 55%,transparent)}
.catalog-eyebrow{color:var(--theme-primary);font-size:10px;font-weight:900;letter-spacing:.24em;text-transform:uppercase}
.catalog-hero h1,.catalog-section h2,.profile-copy h1{font-family:var(--theme-font-display);font-weight:500;letter-spacing:-.035em;line-height:.96}
.catalog-hero h1{margin:16px 0;font-size:clamp(52px,7vw,92px);max-width:850px}.catalog-lead{max-width:760px;color:var(--theme-muted);font-size:16px;line-height:1.8}.catalog-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.catalog-meta span{padding:8px 11px;border:1px solid color-mix(in srgb,var(--theme-border) 52%,transparent);border-radius:999px;color:var(--theme-muted);font-size:11px}
.catalog-hero-art{min-height:270px;border:1px solid color-mix(in srgb,var(--theme-border) 70%,transparent);border-radius:calc(var(--theme-radius) + 14px);background:linear-gradient(145deg,color-mix(in srgb,var(--theme-surface-elevated) 92%,transparent),color-mix(in srgb,var(--theme-primary) 7%,var(--theme-surface)));display:grid;place-items:center;box-shadow:0 28px 70px rgba(0,0,0,.28);overflow:hidden;position:relative}
.catalog-hero-art::after{content:"";position:absolute;width:240px;height:240px;border:1px solid color-mix(in srgb,var(--theme-primary) 18%,transparent);border-radius:50%;box-shadow:0 0 90px color-mix(in srgb,var(--theme-primary) 13%,transparent)}
.royale-crown{position:relative;z-index:1;font-family:var(--theme-font-display);font-size:100px;color:var(--theme-primary);line-height:1}
.catalog-section{padding:54px 0}.catalog-section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px}.catalog-section h2{font-size:clamp(34px,4vw,52px);margin:8px 0 0}.catalog-section-head p{max-width:520px;margin:0;color:var(--theme-muted);line-height:1.7}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalog-card{display:flex;flex-direction:column;min-height:240px;padding:24px;border:1px solid color-mix(in srgb,var(--theme-border) 62%,transparent);border-radius:var(--theme-radius);background:linear-gradient(160deg,color-mix(in srgb,var(--theme-surface) 96%,transparent),color-mix(in srgb,var(--theme-primary) 3%,var(--theme-surface)));transition:transform .18s ease,border-color .18s ease}.catalog-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--theme-primary) 42%,transparent)}.catalog-card small{color:var(--theme-primary);font-size:10px;letter-spacing:.16em}.catalog-card h3{font-family:var(--theme-font-display);font-size:30px;line-height:1.02;margin:18px 0 10px}.catalog-card p{color:var(--theme-muted);font-size:13px;line-height:1.7;margin:0}.catalog-card-footer{margin-top:auto;padding-top:24px;display:flex;justify-content:space-between;align-items:center;color:var(--theme-muted);font-size:11px}.catalog-card-footer strong{color:var(--theme-accent);font-size:12px}
.entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entry-card{overflow:hidden;border:1px solid color-mix(in srgb,var(--theme-border) 62%,transparent);border-radius:calc(var(--theme-radius) + 4px);background:var(--theme-surface);transition:transform .18s ease,border-color .18s ease}.entry-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--theme-primary) 48%,transparent)}.entry-media{aspect-ratio:4/5;background:linear-gradient(145deg,var(--theme-surface-elevated),color-mix(in srgb,var(--theme-primary) 9%,var(--theme-surface)));display:grid;place-items:center;overflow:hidden;position:relative}.entry-media img{width:100%;height:100%;object-fit:cover}.entry-monogram{font-family:var(--theme-font-display);font-size:92px;color:var(--theme-primary);opacity:.86}.candidate-number{position:absolute;left:14px;top:14px;display:grid;place-items:center;min-width:42px;height:42px;padding:0 11px;border-radius:999px;background:color-mix(in srgb,var(--theme-bg) 84%,transparent);border:1px solid color-mix(in srgb,var(--theme-primary) 45%,transparent);color:var(--theme-accent);font-weight:900;font-size:12px;backdrop-filter:blur(10px)}.entry-copy{padding:20px}.entry-copy small{color:var(--theme-primary);letter-spacing:.14em;font-size:9px;font-weight:900}.entry-copy h3{font-family:var(--theme-font-display);font-size:31px;margin:10px 0 7px;line-height:1}.entry-copy p{color:var(--theme-muted);font-size:13px;line-height:1.65;margin:0}.entry-copy .entry-link{display:inline-flex;margin-top:18px;color:var(--theme-accent);font-size:12px;font-weight:800}
.empty-public{padding:40px;border:1px dashed color-mix(in srgb,var(--theme-border) 65%,transparent);border-radius:var(--theme-radius);text-align:center;color:var(--theme-muted)}.empty-public strong{display:block;color:var(--theme-text);font-family:var(--theme-font-display);font-size:30px;margin-bottom:8px}
.profile-page{padding:44px 0}.profile-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:50px;align-items:start}.profile-photo{position:sticky;top:24px;aspect-ratio:4/5;border:1px solid color-mix(in srgb,var(--theme-border) 68%,transparent);border-radius:calc(var(--theme-radius) + 8px);overflow:hidden;background:linear-gradient(145deg,var(--theme-surface-elevated),color-mix(in srgb,var(--theme-primary) 9%,var(--theme-surface)));display:grid;place-items:center}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-photo .entry-monogram{font-size:140px}.profile-copy{padding-top:24px}.profile-copy h1{font-size:clamp(54px,7vw,94px);margin:15px 0}.profile-tagline{font-size:19px;line-height:1.6;color:var(--theme-accent);max-width:720px}.profile-bio{margin-top:30px;color:var(--theme-muted);line-height:1.9;max-width:760px;white-space:pre-line}.profile-scope{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.profile-scope a,.profile-scope span{padding:8px 11px;border:1px solid color-mix(in srgb,var(--theme-border) 58%,transparent);border-radius:999px;color:var(--theme-muted);font-size:11px}.profile-scope a:hover{color:var(--theme-primary)}
.profile-cta{margin-top:34px;padding:22px;border:1px solid color-mix(in srgb,var(--theme-primary) 28%,transparent);border-radius:var(--theme-radius);background:color-mix(in srgb,var(--theme-primary) 5%,var(--theme-surface));display:flex;justify-content:space-between;gap:20px;align-items:center}.profile-cta strong{display:block;color:var(--theme-text);font-size:15px}.profile-cta span{display:block;margin-top:4px;color:var(--theme-muted);font-size:12px}.profile-cta .button{background:linear-gradient(135deg,var(--theme-secondary),var(--theme-primary));color:var(--theme-bg);pointer-events:none;opacity:.72}
.member-list{margin-top:38px;padding-top:28px;border-top:1px solid color-mix(in srgb,var(--theme-border) 45%,transparent)}.member-list h2{font-family:var(--theme-font-display);font-size:36px;margin:0 0 16px}.member-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.member-item{padding:14px;border:1px solid color-mix(in srgb,var(--theme-border) 48%,transparent);border-radius:var(--theme-radius);background:color-mix(in srgb,var(--theme-surface) 92%,transparent)}.member-item strong,.member-item span{display:block}.member-item span{color:var(--theme-muted);font-size:12px;margin-top:4px}
.public-error{width:min(calc(100% - 40px),1180px);margin:24px auto 0;padding:12px 16px;border:1px solid rgba(226,120,120,.28);border-radius:12px;color:#efaaaa;background:rgba(180,60,60,.08)}
.public-media-admin .public-media-current{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start}.public-media-current img{width:220px;aspect-ratio:4/5;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,.08)}.public-media-current strong,.public-media-current span,.public-media-current code{display:block;margin-bottom:7px}.public-media-current span{color:#8f897c}.public-media-upload{margin-top:24px}
@media(max-width:900px){.catalog-hero,.profile-grid{grid-template-columns:1fr}.catalog-hero-art{min-height:210px}.catalog-grid,.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-photo{position:relative;top:0;max-width:520px}.public-media-admin .public-media-current{grid-template-columns:160px 1fr}.public-media-current img{width:160px}}
@media(max-width:600px){.royale-public{width:min(calc(100% - 28px),1180px)}.catalog-hero{padding-top:52px;gap:28px}.catalog-grid,.entry-grid,.member-list-grid{grid-template-columns:1fr}.catalog-section-head{display:block}.catalog-section-head p{margin-top:12px}.profile-page{padding-top:24px}.profile-cta{align-items:flex-start;flex-direction:column}.public-media-admin .public-media-current{grid-template-columns:1fr}.public-media-current img{width:100%;max-width:260px}}
