/* DEV-11 Visual overhaul: token-driven, shared site shell. Older functional modules stay intact. */
:root{--jedi-radius:16px;--jedi-shadow:0 12px 34px rgba(0,0,0,.14);--jedi-heading:var(--jedi-text)}
body{background-color:var(--jedi-bg)!important;background-image:radial-gradient(ellipse 75% 40% at 50% -10%,color-mix(in srgb,var(--jedi-accent) 8%,transparent),transparent 86%)!important;color:var(--jedi-text)!important}
body .page-block{border:0!important;box-shadow:0 24px 80px #00000016;max-width:1680px}
body .page-block>.content{padding:10px clamp(12px,2.1vw,32px) 30px}
body .top-banner{height:38px!important;background:var(--jedi-header-bg)!important;border-bottom:1px solid var(--jedi-line)}
body .topbar-inner{height:38px!important;padding:0 clamp(16px,2.7vw,46px)!important}
.jedi-top-caption{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:900;letter-spacing:.15em;color:var(--jedi-muted)}
.jedi-top-caption small{font-size:10px;letter-spacing:.11em;color:var(--jedi-muted)}
.jedi-top-indicator{display:inline-block;height:7px;width:7px;border-radius:50%;background:var(--jedi-accent);box-shadow:0 0 9px var(--jedi-accent)}
body .top-left{display:flex;gap:20px;align-items:center;min-width:0}
body .welcome-desktop{color:var(--jedi-muted);font-size:12px;white-space:nowrap}
body .welcome-desktop b{color:var(--jedi-text)}
body .top-actions .btn-small{padding:5px 12px!important;font-size:11px!important;border-radius:6px!important}
body .top-actions .btn-admin-red,body .top-actions .btn-admin-green{background:transparent!important;color:var(--jedi-text)!important;border-color:var(--jedi-line)!important}
.jedi-hero{height:142px!important;border-bottom:1px solid color-mix(in srgb,var(--jedi-accent) 45%,var(--jedi-line));background:var(--jedi-header-bg)}
body .header-img{height:142px!important;object-fit:cover!important;object-position:50% 48%}
.jedi-hero:after{background:linear-gradient(90deg,#060a12c9 0%,#10131d36 53%,#05080fc9 100%)!important}
.jedi-hero-brand{left:clamp(18px,2.8vw,48px)!important;gap:17px!important;transition:opacity .18s ease;text-shadow:0 2px 15px #000c!important}
.jedi-hero-brand:hover{opacity:.93}
.jedi-hero-brand strong{font-size:clamp(26px,2.6vw,38px)!important;letter-spacing:.095em!important;font-weight:850!important;color:#f3f2ec!important;line-height:1.05}
.jedi-hero-brand small{font-size:10px!important;letter-spacing:.20em!important;margin-top:9px!important;color:#ded9c7!important}
.jedi-hero-crest{display:block;width:66px;height:66px;filter:drop-shadow(0 0 12px #0007)}
.jedi-header-account{right:clamp(16px,2.8vw,48px)!important;gap:14px!important}
.jedi-header-name strong{color:#fff;font-size:16px!important;line-height:1.2}
.jedi-header-name small{color:#e2d9c5!important}
.jedi-avatar-frame{height:68px!important;width:68px!important;border-radius:50%!important;border-color:var(--jedi-accent)!important;outline:3px solid #000a!important;background:#151b24;box-shadow:0 0 0 1px #faf1d035,0 6px 25px #0009!important}
.jedi-avatar-frame.is-former{border-style:dashed!important}
body .navbar{background:var(--jedi-header-bg)!important;padding:3px clamp(12px,2.1vw,36px)!important;min-height:48px!important;border-bottom:2px solid var(--jedi-accent)!important}
body .nav-menu{justify-content:flex-start!important;gap:2px!important}
body .nav-menu a{padding:9px 13px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.035em;transition:background .16s ease,color .16s ease}
body .nav-menu a:hover{background:color-mix(in srgb,var(--jedi-accent) 15%,transparent)!important;color:var(--jedi-accent)!important}
body .nav-menu a[href="/index.php"]{color:var(--jedi-accent)!important}
body .jedi-social{max-width:1340px;margin:28px auto 34px;gap:22px;align-items:start}
body .jedi-panel{padding:25px;border-radius:var(--jedi-radius)!important;border:1px solid var(--jedi-line);box-shadow:var(--jedi-shadow);background:var(--jedi-surface)}
body .jedi-social-title{padding:14px 0 5px;border-bottom:1px solid var(--jedi-line);margin-bottom:20px;gap:12px}
body .jedi-social-title h1{font-size:clamp(25px,3vw,34px)!important;font-weight:800;letter-spacing:-.035em}
body .jedi-social-title p{max-width:650px;color:var(--jedi-muted)}
body .jedi-social-aside .jedi-panel{padding:20px}
body .jedi-social-aside .jedi-panel a{border-radius:9px;padding:11px!important;border-bottom:1px solid var(--jedi-line);text-decoration:none}
body .jedi-social-aside .jedi-panel a:hover{background:color-mix(in srgb,var(--jedi-accent) 10%,transparent)}
body .jedi-post-avatar{border-radius:50%;height:50px;width:50px}
body .jedi-post-header strong{font-size:15px}
body .jedi-post-text{font-size:15px;line-height:1.8}
body .jedi-compose textarea,body .jedi-comment-form input,body .jedi-send textarea,body .jedi-social input:not([type="checkbox"]),body .jedi-social select{border:1px solid var(--jedi-line);border-radius:9px;background:var(--jedi-bg);color:var(--jedi-text);padding:10px 12px;min-width:0}
body .jedi-compose textarea:focus,body .jedi-send textarea:focus{border-color:var(--jedi-accent)}
body .jedi-post-buttons button,body .jedi-post-buttons summary{padding:9px 13px;border-radius:8px;color:var(--jedi-muted);font-weight:650}
body .jedi-post-buttons button:hover,body .jedi-post-buttons summary:hover{background:color-mix(in srgb,var(--jedi-accent) 11%,transparent);color:var(--jedi-accent)}
body .jedi-btn,body .jedi-btn-secondary{font-weight:750;padding:10px 17px;border-radius:8px}
body .jedi-bubble{border-radius:15px;max-width:min(85%,630px)}
body .jedi-bubble.mine{background:color-mix(in srgb,var(--jedi-accent) 14%,var(--jedi-surface));color:var(--jedi-text)}
body .jedi-thread{background:color-mix(in srgb,var(--jedi-bg) 86%,var(--jedi-surface))}
body .jedi-conversation-link.active{border-left:3px solid var(--jedi-accent);background:color-mix(in srgb,var(--jedi-accent) 12%,transparent)}
body .jedi-social-entry{gap:14px}
body .jedi-social-entry a>img{border-radius:50%}
body .jedi-design-tiles{grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:14px}
body .jedi-design-tile{min-height:105px;box-shadow:0 4px 10px #0001}
body .jedi-alert,body .jedi-success{border-radius:10px}
body .page-block footer{border-top:1px solid var(--jedi-line);padding:26px!important}
body .jedi-mobile-dock{display:none}
@media(max-width:900px){
 body .page-block>.content{padding:8px 12px 85px}
 body .top-banner{height:40px!important}body .topbar-inner{height:40px!important}
 .jedi-top-caption small{display:none}
 body .top-left{gap:8px}
 .jedi-hero{height:99px!important}body .header-img{height:99px!important}
 .jedi-hero-brand{left:12px!important;gap:9px!important}
 .jedi-hero-crest{width:44px;height:44px}
 .jedi-hero-brand strong{font-size:clamp(17px,4.4vw,25px)!important}
 .jedi-hero-brand small{font-size:8px!important;letter-spacing:.09em!important;margin-top:4px!important}
 .jedi-header-account{right:14px!important;gap:6px!important}
 .jedi-avatar-frame{height:44px!important;width:44px!important;border-width:2px!important}
 body .navbar{min-height:40px!important;overflow-x:auto}
 body .nav-menu{flex-wrap:nowrap!important;gap:0!important}
 body .nav-menu a{font-size:12px!important;padding:7px 11px!important}
 body .jedi-social{display:block;margin:16px auto 30px;padding:0 2px}
 body .jedi-social-aside{margin-top:14px;position:static}
 body .jedi-mobile-dock{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--jedi-header-bg)!important}
 body .jedi-mobile-dock a{font-weight:750;font-size:11px!important}
 body .jedi-panel{padding:17px}
}
@media(max-width:520px){
 .jedi-top-caption{font-size:10px}.jedi-top-indicator{height:5px;width:5px}
 .jedi-hero-brand small{display:none!important}
 .jedi-hero-brand strong{font-size:20px!important;letter-spacing:.035em!important}
 .jedi-hero-crest{width:38px;height:38px}
 .jedi-header-account{right:12px!important}.jedi-avatar-frame{height:42px!important;width:42px!important}
 body .jedi-social-title{flex-direction:column;align-items:flex-start}
 body .jedi-social-split{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
