/* Shared visual finish. Layout and authorization remain owned by each feature. */
:root{
  --ui-bg:#141414;--ui-surface:#1a1a1a;--ui-raised:#202020;--ui-border:#333;
  --ui-text:#ededed;--ui-secondary:#b6b6b6;--ui-muted:#929292;
  --ui-radius:10px;--ui-control-radius:6px;
}
body,.shell,.modal,.member-popover{font-family:"Segoe UI",Inter,Arial,sans-serif}
.shell{background:var(--ui-bg);--text:var(--ui-text);--muted:var(--ui-muted);--soft:var(--ui-secondary);--forum-radius-panel:var(--ui-radius);--forum-radius-row:8px;--forum-radius-control:var(--ui-control-radius)}
body::before,#ambient::before,#ambient::after{display:none}
.shell .owner-name{color:#eee!important;background:none;-webkit-text-fill-color:currentColor;text-shadow:none;animation:none}
.shell .main{padding-top:28px}
.shell .page-head{gap:16px;margin-bottom:24px}
.shell .page-head h1,.shell .account-page-heading h1{font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.45px}
.shell .page-head .eyebrow,.shell .account-page-heading>span{font-size:11px;color:var(--ui-muted);letter-spacing:.025em}
.shell .page-head p{font-size:13px;color:var(--ui-muted)}
.shell .page-head>div:last-child{min-width:0}
.shell .card{background:var(--ui-surface);border-color:var(--ui-border);border-radius:var(--ui-radius)}
.shell :is(.primary,.secondary,.ghost,.danger-btn),.modal :is(.primary,.secondary,.ghost,.danger-btn){
  min-height:35px;padding:8px 13px;border-radius:var(--ui-control-radius);font-size:12px;font-weight:600;line-height:1.4;letter-spacing:0;
  box-shadow:none;transform:none;transition:background-color .14s,border-color .14s,color .14s;
}
.shell :is(.primary,.secondary,.ghost,.danger-btn):hover,.modal :is(.primary,.secondary,.ghost,.danger-btn):hover{transform:none;box-shadow:none}
.shell .input,.shell .textarea,.modal .input,.modal .textarea{font-size:13px;background:#151515;border-color:#3b3b3b;border-radius:var(--ui-control-radius)}
.shell .input::placeholder,.shell .textarea::placeholder,.modal .input::placeholder{color:#858585}
.shell .input:focus,.shell .textarea:focus,.modal .input:focus,.modal .textarea:focus{border-color:#8a8a8a;outline:0;box-shadow:0 0 0 2px #ffffff09}
.shell .field>span,.modal .field>span{font-size:12px;font-weight:500;color:#c3c3c3}
.shell :is(button,summary,a,input,textarea,select):focus-visible,.member-popover button:focus-visible{outline:2px solid #aaa;outline-offset:3px}
.shell :is(.forum-row,.thread-row,.team-member,.community-forum,.community-thread,.community-ticket):hover{transform:none}

/* Role identity: restrained color and a symbol, never a frame around capitals. */
.member-rank,.shell .member-rank,.member-popover .member-rank{
  --rank-color:#b7bcc3;--rank-bg:#272a2e;
  display:inline-flex;align-items:center;justify-content:flex-start;gap:5px;flex:none;
  width:max-content;max-width:100%;min-height:23px;height:auto;margin:0;padding:3px 8px;
  border:0;border-radius:5px;background:var(--rank-bg);color:var(--rank-color);
  font-size:11px;font-weight:600;line-height:17px;letter-spacing:0;text-transform:none;white-space:nowrap;vertical-align:middle;
}
.member-rank>svg{display:block;flex:none;width:12px;height:12px}
.member-rank>span{display:inline;margin:0;padding:0;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit}
.shell .rank-owner,.member-popover .rank-owner{--rank-color:#d5bc86;--rank-bg:#302a20}
.shell .rank-co_owner,.member-popover .rank-co_owner{--rank-color:#c7c3b5;--rank-bg:#2c2b27}
.shell .rank-admin,.member-popover .rank-admin{--rank-color:#a9bfdc;--rank-bg:#252e3a}
.shell .rank-support,.member-popover .rank-support{--rank-color:#9dc5b8;--rank-bg:#22302b}
.shell .rank-subscriber,.member-popover .rank-subscriber{--rank-color:#c4b7d6;--rank-bg:#2d2735}
.shell .rank-member,.member-popover .rank-member{--rank-color:#b7bcc3;--rank-bg:#272a2e}
.shell .team-id .member-rank{margin-top:4px;font-size:10px;min-height:21px;padding:2px 6px}
.shell .admin-person-copy>div:has(.member-rank){display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.shell .account-sidebar-identity .member-rank{margin-top:7px;font-size:10px;min-height:21px;padding:2px 6px}
.shell .account-summary .member-rank{margin:5px 0 7px}
.member-popover .member-rank{margin:5px 0 2px}

/* Banner and navigation retain their order and the supplied artwork. */
.shell .top-brand{background:var(--ui-bg)}
.shell .topbar::before{background:#1b1b1b;border-color:#303030}
.shell .nav>button,.shell .nav #forums-main{font-weight:600;letter-spacing:.015em}
.shell .profile-button{gap:9px;max-width:220px}
.shell .profile-button>.avatar{width:27px;height:27px}
.shell .profile-button:hover,.shell .top-actions .icon-btn:hover{background:#2a2a2a}
.shell .top-actions .icon-btn{border-radius:6px}
[data-ui-tooltip]{position:relative}
[data-ui-tooltip]::after{
  content:attr(data-ui-tooltip);position:absolute;z-index:100;top:calc(100% + 7px);left:50%;transform:translateX(-50%);
  padding:5px 8px;border:1px solid #454545;border-radius:5px;background:#272727;color:#ddd;
  font-size:11px;font-weight:400;line-height:1.5;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s;
}
[data-ui-tooltip]:hover::after,[data-ui-tooltip]:focus-visible::after{opacity:1;visibility:visible}
[data-ui-tooltip][aria-expanded=true]::after{opacity:0;visibility:hidden}
.shell .topdrop,.shell .profile-menu,.shell .forums-menu{border-color:#414141;border-radius:10px;background:#1c1c1c;box-shadow:0 12px 30px #0006}
.shell .account-tabs{border-radius:9px 9px 0 0}
.shell .account-tabs button{padding:9px 12px;font-size:12px}
.shell .account-summary{padding:16px;gap:14px;min-height:112px}
.shell .account-summary>.avatar{width:64px;height:64px}
.shell .account-summary strong{font-size:15px;font-weight:600}
.shell .account-summary dl{font-size:11px}
.shell .account-links{padding:7px 9px}
.shell .account-links button{min-height:31px;padding:6px 7px;font-size:12px}
.shell .account-logout{padding:10px 16px}
.shell .nav .forums-menu button{min-height:32px;padding:7px 11px}

/* Community: aligned forum rows, readable sidebars and quieter separators. */
.shell .home-columns{gap:22px}
.community-category{padding:9px 14px 14px;margin-bottom:22px;border-color:#333;background:#181818}
.community-category legend{font-size:12px;font-weight:600;letter-spacing:.035em}
.community-category>div{gap:10px}
.community-forum{min-height:76px;gap:16px;padding:14px 18px;background:#1d1d1d;border-color:#323232}
.community-forum:hover{background:#222;border-color:#414141}
.community-forum-name>button{font-size:14px;font-weight:600}
.community-forum-icon>svg{width:21px;height:21px}
.community-count strong{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.community-count small,.community-latest small{color:#929292}
.community-latest strong{font-weight:500}
.community-latest>.avatar{width:32px;height:32px}
.shell .xf-panel{border-radius:10px;border-color:#333;background:#181818}
.shell .xf-panel-title{font-size:12px;font-weight:600;letter-spacing:.025em}
.shell .latest-post-item{padding:10px 14px;gap:10px}
.latest-post-item strong{font-weight:500;font-size:12px}
.latest-post-item small{line-height:1.65}
.shell .team-member{padding:11px 14px;gap:11px}
.shell .team-id strong{font-size:12px;font-weight:600}
.shell .community-stats>div{padding:2px 0}
.shell .forum-notice{border-color:#3b3b3b;border-left:3px solid #9ca99d;background:#1b1e1b;color:#c6d0c7;font-size:12px;border-radius:7px}
.shell .home-chat-messages{padding:5px 0}
.shell .conversation-message{padding:9px 14px}
.shell .conversation-line{font-size:13px;line-height:1.65}
.shell .conversation-line time{color:#858585;font-size:10px;margin-left:8px}
.shell .conversation-line .chat-username{font-weight:600}
.shell .sb-compose{margin:10px 14px 12px;padding:8px 10px;background:#202020;border-color:#3a3a3a}
.shell .sb-compose textarea{font-size:13px}
.shell .sb-footer{background:#1b1b1b;font-size:11px;line-height:1.7}
.community-thread-list,.community-ticket-list{border-color:#343434;background:#181818;border-radius:10px}
.community-thread,.community-ticket{background:#1d1d1d;border-color:#323232;border-radius:7px;margin-bottom:10px}
.community-thread-title>button,.ticket-primary>strong{font-weight:600}
.community-list-toolbar,.ticket-filter-panel{border-color:#303030}
.thread-metrics dd,.ticket-count strong{font-variant-numeric:tabular-nums;font-weight:500}
.ticket-state-label{border:0;border-radius:5px;padding:4px 8px;background:#2b2b2b;color:#bcbcbc;font-size:11px}
.ticket-state-label[data-state=WAITING_FOR_MEMBER]{background:#25302a;color:#abc5b2}
.ticket-state-label[data-state=WAITING_FOR_STAFF]{background:#302d25;color:#c8bb97}

/* Profiles, discussion authors and support conversations share identity sizing. */
.shell .profile-hero{padding:24px;gap:20px;grid-template-columns:76px minmax(0,1fr) auto}
.shell .profile-hero>.avatar{width:76px;height:76px;border-radius:50%}
.shell .profile-hero h1{font-size:25px;font-weight:600;line-height:1.25;margin:0 0 9px;overflow-wrap:anywhere}
.shell .profile-hero .profile-uuid{font-size:11px;color:#929292;margin-top:9px}
.shell .profile-hero>.meta{font-size:12px;color:#999;line-height:1.8}
.shell .post{border-radius:0;grid-template-columns:178px minmax(0,1fr)}
.shell .post:first-child{border-radius:10px 10px 0 0}
.shell .post:last-child{border-radius:0 0 10px 10px}
.shell .post:only-child{border-radius:10px}
.shell .post .author{padding:22px 18px;background:#191919;border-color:#313131;border-radius:0}
.shell .post .author>.avatar{width:54px;height:54px;margin-bottom:12px;border-radius:50%}
.shell .post .author-name{display:block;font-size:13px;line-height:1.5;font-weight:600;margin-bottom:7px;overflow-wrap:anywhere;text-align:left}
.shell .post .author>div>small{display:block;margin-top:9px;font-size:10px;color:#909090}
.shell .post-body{padding:22px;background:#1c1c1c;border-radius:0}
.shell .post-head{font-size:11px;color:#929292;margin-bottom:18px}
.shell .formatted-content{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.shell .ticket-opening,.shell .ticket-response{border-color:#333}
.shell .ticket-opening aside{gap:9px}
.shell .ticket-response header>span{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.shell .ticket-response header strong{font-size:13px;font-weight:600}
.shell .ticket-response header time{font-size:11px;color:#929292}
.shell .editor-shell{background:#191919;border-color:#3a3a3a;border-radius:7px}
.shell .editor-tools{background:#222;border-color:#353535;gap:5px}
.shell .visual-editor{background:#151515;min-height:145px;padding:14px;font-size:14px}
.member-popover{border-color:#424242;border-radius:10px;background:#1b1b1b}
.member-popover-head{padding:20px 34px 20px 20px;gap:16px}
.member-popover-head>.avatar{width:76px;height:76px}
.member-popover h2{font-size:21px;font-weight:600;line-height:1.3}
.member-popover-head small{font-size:11px;color:#999;margin-top:5px}
.member-popover-stats{border-color:#333;background:#1e1e1e;padding:14px}
.member-popover-stats strong{font-size:18px;font-weight:600}
.member-popover-actions{padding:9px 12px;gap:3px}
.member-popover-actions button{font-weight:500}

/* Account and staff tools retain their existing structure and permissions. */
.account-sidebar{border-color:#333}
.account-sidebar-identity{padding:16px;align-items:flex-start}
.account-sidebar-identity>.avatar{width:38px;height:38px}
.account-sidebar nav button{min-height:35px}
.account-page-heading{padding-bottom:21px}
.account-page-body .panel,.account-page-body .profile-section{padding:22px}
.account-setting-row{padding:20px 22px}
.account-setting-row small{color:#a0a0a0}
.account-setting-row input[type=checkbox]{width:18px;height:18px}
.account-form-footer{padding:15px 22px}
.shell .list-row{font-size:13px}
.shell .list-row>strong{font-size:13px;font-weight:600}
.shell .admin-workspace{background:#181818}
.shell .admin-directory-head{font-size:10px;letter-spacing:.025em;background:#212121}
.shell .admin-directory-row{padding-top:20px;padding-bottom:20px;background:#191919}
.shell .admin-directory-row:hover{background:#1e1e1e}
.shell .admin-person-copy .link-btn{font-size:14px;font-weight:600}
.shell .admin-access-cell>strong,.shell .admin-device-cell>strong,.shell .admin-invites-cell>strong{font-size:12px}
.shell .admin-filter summary{border-radius:6px;background:#1d1d1d}
.shell .admin-filter summary .admin-filter-label{text-transform:none;letter-spacing:0;font-size:11px;color:#929292}
.shell .admin-overview b{font-size:21px;font-weight:600}
.shell .admin-account-state.account-restricted>span:first-child{border:0;background:#352727;color:#d1aaaa;border-radius:5px;padding:3px 7px}
.modal-backdrop .modal{border-radius:10px;border-color:#414141;background:#1b1b1b}
.modal .modal-head h2{font-size:19px;font-weight:600}
.modal .modal-copy{font-size:13px;line-height:1.7;color:#aaa}
.device-fingerprint{font:11px "Consolas",monospace;color:#b8b8b8;letter-spacing:.02em;overflow-wrap:anywhere}
.device-reset-summary{margin:0 0 18px;padding:12px 14px;background:#222;border:1px solid #363636;border-radius:7px;font-size:12px}
.device-reset-summary>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;padding:5px 0}
.device-reset-summary dt{color:#999}.device-reset-summary dd{margin:0;overflow-wrap:anywhere;color:#ddd}
.auth-card{border-color:#363636;border-radius:12px;background:#1a1a1a;box-shadow:0 16px 60px #0003}
.auth .input{height:42px;border:1px solid #414141;border-radius:6px;background:#141414;font-size:14px}
.auth .field>span{font-size:12px;font-weight:500;color:#bbb}
.auth .tab{font-size:13px;font-weight:600}
.auth .primary{border-radius:6px;min-height:40px;box-shadow:none}
@media(max-width:1000px){.shell .home-columns{gap:18px}.community-forum{padding:12px}.community-latest>.avatar{width:26px;height:26px}}
@media(max-width:760px){
  .shell .main{padding-top:20px}.shell .page-head h1,.shell .account-page-heading h1{font-size:22px}
  .shell .home-columns{gap:20px}.community-category{padding:8px 10px 10px;margin-bottom:20px}
  .shell .home-side{gap:18px}.shell .home-side .xf-panel{margin-top:14px}
  .shell .profile-hero{grid-template-columns:60px minmax(0,1fr);padding:18px;gap:15px}
  .shell .profile-hero>.avatar{width:60px;height:60px}.shell .profile-hero h1{font-size:21px}
  .shell .profile-hero>.meta{grid-column:1/-1;text-align:left;padding-top:12px;border-top:1px solid #333}
  .shell .post{grid-template-columns:minmax(0,1fr)}
  .shell .post .author{display:flex;align-items:center;gap:12px;padding:15px;border-right:0;border-bottom:1px solid #333}
  .shell .post .author>.avatar{width:42px;height:42px;margin:0}
  .shell .post .author>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px 9px;min-width:0}
  .shell .post .author-name{margin:0}.shell .post .author>div>small{margin:0}
  .shell .post-body{padding:18px}.shell .formatted-content{font-size:13px}
  .shell .ticket-response{padding:18px}.shell .ticket-response header{flex-wrap:wrap;gap:10px}
  .account-sidebar-identity{align-items:center;padding:13px}
  .account-sidebar-identity .member-rank{margin-top:4px}
  .shell .account-page-body .panel,.account-setting-row{padding:18px}
  .shell .admin-directory-row{padding-top:17px;padding-bottom:17px}
}
@media(max-width:420px){
  .member-popover-head{padding:17px 30px 17px 17px;gap:12px}
  .member-popover-head>.avatar{width:60px;height:60px}.member-popover h2{font-size:19px}
  .shell .account-summary{padding:14px;gap:12px}.shell .account-summary>.avatar{width:56px;height:56px}
  .shell .account-links button{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  [data-ui-tooltip]::after,.shell :is(.primary,.secondary,.ghost,.danger-btn),.modal :is(.primary,.secondary,.ghost,.danger-btn){transition:none}
}
.reduce-motion [data-ui-tooltip]::after{transition:none}

