/* LumenLithos platform UI — visible shared component language across every surface. */
body{
  min-height:100vh;overflow-x:clip;
  background:
    radial-gradient(circle at 14% -8%,rgba(169,103,255,.16),transparent 31rem),
    radial-gradient(circle at 92% 8%,rgba(37,230,255,.09),transparent 27rem),
    var(--ll-night)!important;
  color:var(--ll-ink)
}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent 78%)}

/* Public and application headers share one glass-and-spectrum treatment. */
.topbar,.ll-topbar{border-bottom:1px solid var(--ll-line)!important;background:rgba(7,9,20,.82)!important;backdrop-filter:blur(20px) saturate(145%);box-shadow:0 14px 42px rgba(0,0,0,.2)}
.topbar:after,.ll-topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--ll-cyan),var(--ll-purple),var(--ll-pink),transparent);opacity:.58}
.topbar img,.ll-wordmark img,.ll-auth-logo img{filter:drop-shadow(0 0 16px rgba(37,230,255,.12))}
.preview-nav a,.ll-nav a{border-radius:10px;transition:color .18s ease,background .18s ease,transform .18s ease}
.preview-nav a:hover,.ll-nav a:hover{background:rgba(169,103,255,.1);transform:translateY(-1px)}

/* Shared hierarchy and surfaces. */
:where(.ll-main,.cms-public) h1,:where(.ll-admin-content,.ll-auth-card) h1{font-family:var(--ll-font-display);font-weight:650;letter-spacing:-.045em}
:where(.ll-main,.cms-public,.ll-admin-content) h2,:where(.ll-main,.cms-public,.ll-admin-content) h3{font-family:var(--ll-font-display);letter-spacing:-.025em}
.ll-card,.cms-public-card,.cms-card,.cms-create-card,.ll-admin-panel,.ll-admin-welcome,.admin-card{
  border:1px solid var(--ll-line)!important;border-radius:var(--ll-radius)!important;
  background:linear-gradient(145deg,rgba(20,27,51,.96),rgba(10,15,31,.97))!important;
  box-shadow:var(--ll-shadow)
}
.ll-card:hover,.cms-public-card:hover{border-color:rgba(37,230,255,.42)!important}
.ll-kicker,.eyebrow,.section-no,.ll-admin-heading p{color:var(--ll-cyan)!important;font-weight:850;letter-spacing:.16em}

/* Shared actions and form controls. */
.ll-button,.ghost-button,.academy-primary,.about-primary,.cms-primary,.button,button:not(.ll-icon-button):not(.ll-admin-menu-toggle){border-radius:12px!important;min-height:42px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.ll-button:hover,.ghost-button:hover,.academy-primary:hover,.about-primary:hover,.cms-primary:hover,.button:hover,button:not(.ll-icon-button):not(.ll-admin-menu-toggle):hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.28),var(--ll-glow)}
.ll-button-purple,.cms-primary,.academy-primary,.about-primary{background:var(--ll-gradient)!important;border-color:transparent!important;color:#07101c!important;box-shadow:0 0 24px rgba(169,103,255,.2)}
input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea{
  border:1px solid rgba(130,151,214,.42)!important;border-radius:12px!important;
  background:rgba(7,10,24,.88)!important;color:var(--ll-ink)!important
}
input:focus,select:focus,textarea:focus{border-color:var(--ll-cyan)!important;box-shadow:0 0 0 4px rgba(37,230,255,.1)!important}

/* Community becomes a branded knowledge commons instead of a generic feed. */
.ll-community-shell{position:relative}.ll-community-toolbar{overflow:hidden;background:linear-gradient(125deg,rgba(25,35,69,.98),rgba(32,17,57,.96))!important}
.ll-community-toolbar:before{content:"";position:absolute;width:210px;height:210px;right:12px;top:-118px;border:1px solid rgba(37,230,255,.28);border-radius:42% 58% 56% 44%;box-shadow:0 0 55px rgba(169,103,255,.22)}
.ll-community-pills a{border-color:var(--ll-line)!important;background:rgba(10,15,31,.82)!important}.ll-community-pills a.active{color:var(--ll-ink)!important;border-color:var(--ll-purple)!important;background:rgba(169,103,255,.16)!important}
.ll-post{position:relative;overflow:hidden}.ll-post:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(var(--ll-cyan),var(--ll-purple),transparent);opacity:.8}
.ll-person-avatar,.ll-profile-avatar{border-color:var(--ll-purple)!important;box-shadow:0 0 0 4px rgba(169,103,255,.1),0 0 28px rgba(169,103,255,.18)!important}
.ll-comment-form{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:stretch!important}.ll-comment-input-wrap>input{min-height:44px}.ll-comment-submit{width:auto!important;min-width:104px!important;min-height:44px!important;padding:0 17px!important;border-radius:12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;background:linear-gradient(120deg,rgba(16,108,83,.96),rgba(13,72,61,.98))!important;border-color:rgba(85,237,188,.75)!important;color:#8affd7!important;font-weight:850!important;white-space:nowrap}.ll-comment-submit svg{width:17px;height:17px}.ll-comment-submit:hover{background:#55edbc!important;color:#07110d!important;box-shadow:0 0 22px rgba(85,237,188,.34)!important}

/* Portal and admin use the same calm laboratory workspace. */
.ll-main{max-width:1480px}.ll-admin-layout{background:linear-gradient(135deg,rgba(37,230,255,.025),transparent 40%),transparent!important}
.ll-admin-sidebar{background:rgba(8,12,27,.96)!important;backdrop-filter:blur(18px)}
.ll-admin-brand{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(37,230,255,.08),rgba(169,103,255,.1))!important}
.ll-admin-brand:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--ll-gradient)}
.ll-admin-heading{padding-bottom:20px;border-bottom:1px solid var(--ll-line)}
.ll-table-wrap,.cms-table-wrap,.admin-table-wrap{border-radius:var(--ll-radius)!important;box-shadow:var(--ll-shadow)}
.ll-table th,.cms-table th,.admin-table th{background:rgba(8,13,29,.96)!important;color:#c9d4ee!important}.ll-table tr:hover td,.cms-table tr:hover td,.admin-table tr:hover td{background:rgba(37,230,255,.035)}
.ll-flash,.notice{border-radius:12px!important}.ll-empty{background:rgba(10,15,31,.72)}

/* Rebuilt private specimen administration. */
.specimen-admin-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.65fr);gap:28px;align-items:end}.specimen-admin-intro h2{margin:.15rem 0;font-size:clamp(26px,3vw,38px)}.specimen-admin-intro p:last-child{max-width:720px}.specimen-admin-intro .ll-search-row{align-items:end}.specimen-admin-intro .ll-field span{display:block;margin-bottom:6px;font-weight:800}.ll-admin-result-count{margin:24px 2px 12px;color:var(--ll-muted)}.ll-admin-result-count strong{color:var(--ll-cyan)}
.specimen-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.specimen-admin-card{display:grid;gap:16px}.specimen-admin-card.is-removed{border-color:rgba(255,96,124,.42)!important}.specimen-admin-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.specimen-admin-card-head h2{margin:2px 0;font-size:24px}.specimen-admin-card-head p{margin:0}.specimen-admin-badges{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.specimen-admin-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.specimen-admin-facts>div{padding:12px;border:1px solid var(--ll-line);border-radius:12px;background:rgba(6,10,23,.48)}.specimen-admin-facts dt{color:var(--ll-muted);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.specimen-admin-facts dd{margin:5px 0 0;overflow-wrap:anywhere}.specimen-admin-facts dd span{display:block;color:var(--ll-muted)}.specimen-admin-location{padding:12px;border:1px solid rgba(255,192,91,.28);border-radius:12px;background:rgba(255,156,52,.04)}.specimen-admin-location summary{cursor:pointer;color:#ffd28e;font-weight:800}.specimen-admin-location code{overflow-wrap:anywhere}.specimen-admin-notes{margin:0;padding:12px;border-left:2px solid var(--ll-purple);background:rgba(169,103,255,.05);color:#dbe1ef}.specimen-admin-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding-top:14px;border-top:1px solid var(--ll-line)}.specimen-admin-action .ll-field span{display:block;margin-bottom:6px;color:var(--ll-muted);font-weight:750}.specimen-admin-action textarea{min-height:64px}

/* CMS pages use a full branded public shell. */
.cms-public-nav{position:sticky;top:0;z-index:50;display:flex!important;align-items:center;justify-content:center;gap:8px!important;min-height:68px;padding:10px clamp(18px,4vw,56px)!important;background:rgba(7,9,20,.9);border-bottom:1px solid var(--ll-line)!important;backdrop-filter:blur(18px)}
.cms-public-nav a{padding:9px 13px;border-radius:10px;color:#dbe2f2!important;font-weight:750}.cms-public-nav a:hover{background:rgba(169,103,255,.12)}
.cms-public{width:min(1080px,calc(100% - 36px));padding:clamp(54px,8vw,104px) 0!important}.cms-public>h1{max-width:900px;background:linear-gradient(110deg,#fff 15%,#c8f8ff 48%,#e7c5ff 88%);-webkit-background-clip:text;background-clip:text;color:transparent}.cms-public>p{max-width:760px;color:var(--ll-muted);font-size:1.12rem;line-height:1.75}.cms-public-block{line-height:1.75}.cms-public-card{padding:24px!important}

@media(max-width:1100px){.specimen-admin-grid{grid-template-columns:1fr}}
@media(max-width:900px){.topbar,.ll-topbar{backdrop-filter:blur(14px)}.ll-community-toolbar,.specimen-admin-intro{grid-template-columns:1fr!important}.ll-community-layout{grid-template-columns:minmax(0,1fr)!important}.ll-community-sidebar{position:static!important}.cms-public-nav{justify-content:flex-start;overflow-x:auto}}
@media(max-width:620px){.ll-topbar-inner{min-width:0}.ll-wordmark{min-width:0;overflow:hidden}.ll-wordmark strong{font-size:11px;letter-spacing:.06em}.ll-top-actions{min-width:0}.ll-main{min-width:0;padding-inline:12px!important}.ll-community-shell,.ll-community-layout,.ll-community-layout>*{min-width:0}.ll-card,.cms-card,.cms-create-card,.ll-admin-panel,.ll-admin-welcome{border-radius:14px!important}.cms-public{width:min(100% - 28px,1080px)}.cms-public-nav a{white-space:nowrap}.ll-comment-submit{min-width:46px!important;width:46px!important;padding:0!important}.ll-comment-submit span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(max-width:620px){.specimen-admin-card-head,.specimen-admin-action{display:grid;grid-template-columns:1fr}.specimen-admin-badges{justify-content:flex-start}.specimen-admin-facts{grid-template-columns:1fr}.specimen-admin-action .ll-button{width:100%}}
