/* Mission Hub identity + Focus Workspace structure. Loaded after the legacy skin. */
body.workspace-theme { --dark-bg:#111316; --surface:#1a1d21; --surface-raised:#22262b; --line:#363a40; --text-gray:#a4a9b2; background-color:#111316; }
body.workspace-theme [hidden], body.workspace-theme .outside-directory { display:none !important; }
body.workspace-theme .dashboard-root { min-height:100dvh; height:auto; width:100%; overflow:visible; display:flex; padding-left:96px; background:radial-gradient(ellipse at 75% 0, #38271c66, transparent 45%),#111316; }
body.workspace-theme .side-nav.glass-panel { position:fixed; left:16px; top:18px; bottom:18px; width:64px; height:auto; z-index:1100; border:1px solid #3c3e41 !important; border-radius:18px; padding:10px 7px !important; background:#1a1d21f5 !important; box-shadow:0 20px 60px #0005 !important; overflow-x:hidden; overflow-y:auto; transition:width .22s ease,box-shadow .22s; display:flex; flex-direction:column; align-items:stretch; }
body.workspace-theme .side-logo { min-height:64px; padding:8px 3px 18px; margin:0 0 12px; border-bottom:1px solid var(--line); display:flex; gap:12px; }
body.workspace-theme .v-emblem-small { width:40px; min-width:40px; height:40px; font:700 30px 'Rajdhani',sans-serif; border-radius:10px; background:var(--copper); color:#171719; border:0; box-shadow:none; }
body.workspace-theme .side-logo .logo-text { display:flex; opacity:0; white-space:nowrap; transition:opacity .18s; }
body.workspace-theme .side-menu, body.workspace-theme .sidebar-menu-gamer { display:flex; flex-direction:column; gap:7px; width:100%; margin:0; padding:0; }
body.workspace-theme .side-menu { flex:1; }
body.workspace-theme .side-link { position:relative; width:100%; min-height:44px; padding:12px 14px !important; gap:16px; border-radius:10px; background:transparent; border:0 !important; display:flex; align-items:center; white-space:nowrap; overflow:hidden; font-size:12px; text-align:left; color:#a7adb7; }
body.workspace-theme .side-link i { min-width:18px; font-size:17px; text-align:center; }
body.workspace-theme .side-link span { display:block; opacity:0; transition:opacity .18s; }
body.workspace-theme .side-link { justify-content:flex-start; text-transform:none; }
body.workspace-theme .side-link.active { background:#f3934e22 !important; color:#ffab6d !important; box-shadow:inset 3px 0 #f3934e !important; }
body.workspace-theme .side-link:hover { background:#ffffff0c; color:#fff; }
body.workspace-theme .navigation-open .side-nav { width:252px; box-shadow:15px 0 80px #0009 !important; }
body.workspace-theme .navigation-open .side-link span, body.workspace-theme .navigation-open .logo-text { opacity:1; }
body.workspace-theme .navigation-shade { display:none; position:fixed; inset:0; z-index:1090; background:#0006; border:0; border-radius:0; }
body.workspace-theme .navigation-shade > * { visibility:hidden; }
body.workspace-theme .navigation-open .navigation-shade { display:block; }
body.workspace-theme .dashboard-main { padding:0 30px 36px; width:100%; min-width:0; height:auto; overflow:visible; max-width:1800px; margin:0 auto; }
body.workspace-theme .top-bar.glass-panel { display:flex; align-items:center; gap:18px; position:relative; top:0; min-height:88px; margin:0; padding:14px 0; background:transparent !important; border:0; border-bottom:1px solid #ffffff12; border-radius:0; box-shadow:none; flex-wrap:nowrap; z-index:100; }
body.workspace-theme .workspace-menu-toggle { display:flex; align-items:center; gap:9px; background:#ffffff05; border:1px solid var(--line); border-radius:10px; padding:10px 12px; color:#c5c9ce; }
body.workspace-theme .top-title { font-size:20px; margin:0; white-space:nowrap; }
body.workspace-theme .top-bar-right { margin-left:auto; width:min(36%,420px); }
body.workspace-theme .cosmic-search-wrapper { width:100%; }
body.workspace-theme #globalSearchInput { background:#1c2025; border-radius:10px; padding-left:40px; height:44px; width:100%; }
body.workspace-theme .workspace-profile { position:relative; flex-shrink:0; }
body.workspace-theme .user-badge-container { padding:5px 8px !important; border:0; background:transparent !important; box-shadow:none !important; gap:10px; min-height:48px; }
body.workspace-theme .user-avatar { width:38px; height:38px; border-radius:12px; border:1px solid #b17a4f; }
body.workspace-theme .user-info-text .name { font-size:12px; }
body.workspace-theme .user-info-text .role { font-size:9px; letter-spacing:1px; color:var(--copper); }
body.workspace-theme .profile-menu-content { top:calc(100% + 12px) !important; bottom:auto !important; right:0; left:auto; min-width:210px; border:1px solid var(--line); border-radius:12px; background:#22262b !important; box-shadow:0 20px 60px #0008; }
body.workspace-theme .mission-hub { padding:30px 0 24px; }
body.workspace-theme .mission-intro { display:flex; justify-content:space-between; align-items:center; padding:24px 32px 28px; min-height:180px; border:1px solid #ffffff16; border-radius:18px 18px 0 0; background:linear-gradient(90deg,#15181ce8,#15181c33),url('../assets/mission-city.png') center 58%/cover; }
body.workspace-theme .mission-kicker { font:600 10px 'Inter',sans-serif; color:#e5a878; letter-spacing:2px; }
body.workspace-theme .mission-intro h1 { font-size:clamp(28px,3vw,44px); margin:7px 0; line-height:1.1; }
body.workspace-theme .mission-intro p { margin:0; font-size:12px; color:#c4c4c6; }
body.workspace-theme .mission-mark { display:flex; flex-direction:column; text-align:center; font:700 68px/.85 'Rajdhani',sans-serif; color:#f4c8a6; opacity:.7; padding-left:20px; }
body.workspace-theme .mission-mark span { font:600 8px 'Inter',sans-serif; letter-spacing:3px; margin-top:12px; }
body.workspace-theme .mission-modules { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:1px; background:#414044; border:1px solid #414044; border-top:0; border-radius:0 0 16px 16px; overflow:hidden; }
body.workspace-theme .mission-module { display:grid; position:relative; grid-template-columns:32px 1fr; gap:3px 10px; align-items:center; text-align:left; padding:22px 20px; background:#1d2025; border:0; border-radius:0; min-height:100px; color:#d9dce2; transition:background .2s,box-shadow .2s,transform .2s; }
body.workspace-theme .mission-module > i { grid-row:1/3; color:#b38d72; font-size:22px; }
body.workspace-theme .mission-module > span:not(.module-number) { font:700 21px 'Rajdhani',sans-serif; }
body.workspace-theme .module-detail { color:#979da7; font-size:10px; font-weight:400; }
body.workspace-theme .module-number { position:absolute; top:8px; right:12px; font:500 10px 'Inter',sans-serif; color:#777e88; }
body.workspace-theme .mission-module:hover { background:#302920; box-shadow:inset 0 -3px #f3934e; transform:translateY(-2px); }
body.workspace-theme .mission-module.selected { background:linear-gradient(120deg,#583821,#29231e); box-shadow:inset 0 -3px #f3934e; }
body.workspace-theme .mission-module.selected i { color:#ffb77f; }
body.workspace-theme .workspace-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:6px 0 22px; }
body.workspace-theme .workspace-breadcrumb { font-size:9px; letter-spacing:2px; color:#828b99; }
body.workspace-theme .workspace-toolbar h2 { font-size:30px; margin:5px 0 2px; }
body.workspace-theme .workspace-toolbar p { color:#9ca3ad; font-size:12px; margin:0; }
body.workspace-theme .workspace-actions { display:flex; gap:10px; flex-shrink:0; align-items:center; }
body.workspace-theme .workspace-history { display:flex; align-items:center; gap:8px; width:auto; max-width:220px; font-size:10px; border-radius:10px; padding:10px 14px; }
body.workspace-theme .workspace-primary { background:var(--copper); color:#1e1712; display:flex; gap:9px; align-items:center; padding:12px 18px; border:1px solid #ffb47a; border-radius:10px; font-weight:700; font-size:12px; box-shadow:0 5px 20px #ea884517; }
body.workspace-theme .workspace-primary:hover { background:#ffac6d; transform:translateY(-1px); }
body.workspace-theme .content-grid { display:block; padding:0 !important; margin:0; }
body.workspace-theme .content-full { padding:0; }
body.workspace-theme .glass-panel { border-radius:14px !important; border:1px solid #353940; box-shadow:none; }
body.workspace-theme .side-nav.glass-panel { border-radius:18px !important; min-width:0; }
body.workspace-theme .top-bar.glass-panel { border-radius:0 !important; }
body.workspace-theme :is(.sub-panel,.kpi-card,.chart-container,.det-box,.fama-card,.podio-box) { border-radius:12px !important; }
body.workspace-theme .tables-col { width:100%; gap:20px !important; }
body.workspace-theme .app-view.active { animation:workspace-enter .24s ease !important; }
body.workspace-theme .table-wrapper-internal, body.workspace-theme .table-wrapper { border:1px solid #ffffff0b; border-radius:10px; }
body.workspace-theme :is(.cosmic-data-table-staff,.gamer-table) thead th { padding:14px 16px; color:#9ca6b4; background:#15191e !important; font-size:10px; letter-spacing:.7px; }
body.workspace-theme :is(.cosmic-data-table-staff,.gamer-table) tbody td { padding:15px 16px; border-bottom:1px solid #ffffff08; }
body.workspace-theme tbody tr:hover { background:#ffffff04; }
body.workspace-theme .workspace-drawer { justify-content:flex-end !important; align-items:stretch !important; padding:0 !important; background:#080b1099; backdrop-filter:blur(5px); }
body.workspace-theme .workspace-drawer > .modal-content { width:min(680px,100%) !important; max-width:680px !important; height:100dvh; max-height:100dvh !important; margin:0 !important; border:0 !important; border-left:1px solid #55504a !important; border-radius:20px 0 0 20px !important; padding:28px !important; overflow:auto; background:#1a1e24 !important; box-shadow:-25px 0 80px #0005 !important; animation:workspace-slide .24s ease; }
body.workspace-theme :is(#usersModal,#auditModal,#historyModal).workspace-drawer > .modal-content { width:min(960px,100%) !important; max-width:960px !important; }
body.workspace-theme .drawer-heading { display:flex; justify-content:space-between; align-items:center; gap:15px; padding-bottom:22px; margin-bottom:22px; border-bottom:1px solid var(--line); }
body.workspace-theme .drawer-heading h2 { margin:5px 0 0; font-size:30px; }
body.workspace-theme .drawer-close { display:flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:8px; background:#ffffff06; padding:8px 12px; }
body.workspace-theme #workspaceSanctionDrawer .form-col { width:100%; padding:0; background:transparent !important; border:0 !important; }
body.workspace-theme #workspaceSanctionDrawer .card-header-gamer { display:none; }
body.workspace-theme #workspacePlayerDrawer .dir-forms-grid { grid-template-columns:1fr !important; }
body.workspace-theme .workspace-drawer .form-internal-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
body.workspace-theme .workspace-drawer :is(input,select,textarea) { border-radius:8px; }
body.workspace-theme .attendance-workbar { position:sticky; bottom:18px; margin:16px auto 0; padding:15px 20px; background:#30261f; border:1px solid #906441; box-shadow:0 12px 30px #0007; border-radius:14px; display:flex; gap:16px; align-items:center; z-index:10; max-width:760px; }
body.workspace-theme .attendance-workbar strong,.attendance-workbar span { display:block; }
body.workspace-theme .attendance-workbar span { font-size:11px; color:#b6aca4; }
body.workspace-theme .attendance-workbar button { margin-left:auto; display:flex; gap:8px; align-items:center; }
/* Public landing gets the same cinematic identity and a separate access column. */
body.workspace-theme .cosmic-gamer-theme { background:linear-gradient(180deg,#0f121557,#111316 680px),url('../assets/mission-city.png') center top/auto 700px no-repeat; min-height:100dvh; padding:70px 6vw 40px; }
body.workspace-theme .cosmic-viewport { grid-template-columns:minmax(0,1fr) 360px; gap:32px 40px; max-width:1400px; margin-inline:auto; align-items:start; }
body.workspace-theme .cosmic-header { padding:48px clamp(28px,3vw,52px); border-radius:18px; min-width:0; background:linear-gradient(120deg,#15191ee8,#15191e99); }
body.workspace-theme .cosmic-title { max-width:740px; font-size:clamp(38px,5vw,72px); text-align:left; line-height:1; }
body.workspace-theme .cosmic-subtitle,body.workspace-theme .cosmic-description { text-align:left; }
body.workspace-theme .cosmic-status-panel { justify-content:flex-start; }
body.workspace-theme .cosmic-login-card { border-radius:20px; background:#191d23ed; backdrop-filter:blur(16px); border-color:#65513f; }
body.workspace-theme .cosmic-table-card { border-radius:18px; background:#191d23ed; }
@keyframes workspace-enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes workspace-slide { from { opacity:.5; transform:translateX(35px); } to { opacity:1; transform:translateX(0); } }
@media(min-width:1700px) { body.workspace-theme .mission-intro { min-height:230px; } }
@media(max-width:1100px) {
 body.workspace-theme .dashboard-main { padding:0 20px 30px; }
 body.workspace-theme .top-title { display:none; }
 body.workspace-theme .top-bar-right { width:auto; flex:1; }
 body.workspace-theme .module-detail { font-size:9px; }
 body.workspace-theme .mission-module { padding:18px 12px; grid-template-columns:24px 1fr; gap:3px 8px; }
 body.workspace-theme .mission-module > span:not(.module-number) { font-size:18px; }
 body.workspace-theme .cosmic-viewport { gap:28px; }
}
@media(max-width:768px) {
 body.workspace-theme .dashboard-root { padding-left:0; }
 body.workspace-theme .dashboard-main { padding:0 14px 22px; }
 body.workspace-theme .side-nav.glass-panel { transform:translateX(-120%); top:10px; bottom:10px; left:10px; width:252px; transition:transform .22s; }
 body.workspace-theme .navigation-open .side-nav { transform:translateX(0); }
 body.workspace-theme .side-link span,body.workspace-theme .side-logo .logo-text { opacity:1; }
 body.workspace-theme .top-bar.glass-panel { min-height:74px; gap:10px; }
 body.workspace-theme .workspace-menu-toggle span { display:none; }
 body.workspace-theme .user-info-text,body.workspace-theme .dropdown-arrow { display:none; }
 body.workspace-theme .user-badge-container { padding:0 !important; }
 body.workspace-theme .profile-menu-content { position:absolute !important; top:calc(100% + 10px) !important; right:0 !important; }
 body.workspace-theme .mission-hub { padding-top:16px; }
 body.workspace-theme .mission-intro { padding:24px 20px; min-height:170px; }
 body.workspace-theme .mission-mark { display:none; }
 body.workspace-theme .mission-modules { grid-template-columns:1fr 1fr; }
 body.workspace-theme .mission-module { min-height:84px; }
 body.workspace-theme .workspace-toolbar { align-items:flex-start; flex-direction:column; }
 body.workspace-theme .workspace-actions { width:100%; flex-wrap:wrap; }
 body.workspace-theme .workspace-toolbar p { font-size:11px; }
 body.workspace-theme .workspace-drawer > .modal-content { padding:20px 16px !important; border-radius:16px 0 0 16px !important; }
 body.workspace-theme .workspace-drawer .form-internal-grid { grid-template-columns:1fr; }
 body.workspace-theme .cosmic-gamer-theme { padding:24px 18px; }
 body.workspace-theme .cosmic-viewport { grid-template-columns:1fr; }
 body.workspace-theme .cosmic-header { padding:28px 24px; }
 body.workspace-theme .cosmic-login-card { width:100%; max-width:none; }
 body.workspace-theme .attendance-workbar { bottom:10px; padding:12px; gap:10px; }
 body.workspace-theme .attendance-workbar span { max-width:230px; }
}
@media(prefers-reduced-motion:reduce) {
 body.workspace-theme *, body.workspace-theme .app-view.active { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
/* Prevent inherited sidebar minimums and header clipping from breaking controls. */
body.workspace-theme .navigation-close { display:none; flex-shrink:0; margin-left:auto; padding:8px; border:1px solid var(--line); border-radius:8px; background:transparent; color:#d6d9df; }
body.workspace-theme .navigation-close span { display:none; }
body.workspace-theme .navigation-open .navigation-close { display:flex; }
body.workspace-theme .navigation-open .side-logo .logo-text { min-width:0; }
body.workspace-theme .navigation-open .side-logo .logo-text h1 { font-size:15px; white-space:normal; }
body.workspace-theme .top-bar.glass-panel { overflow:visible; border:0 !important; border-bottom:1px solid #ffffff12 !important; }
body.workspace-theme .workspace-profile { overflow:visible; z-index:101; }
body.workspace-theme .workspace-profile .user-badge-container { display:flex; text-align:left; color:#f3f0e8; cursor:pointer; }
body.workspace-theme #profileMenu { position:absolute !important; inset:auto 0 auto auto !important; top:calc(100% + 10px) !important; width:230px !important; max-width:calc(100vw - 28px); min-width:0; z-index:1200 !important; }
body.workspace-theme #profileMenu.show { display:flex !important; visibility:visible; opacity:1; pointer-events:auto; }
@media(min-width:769px) and (max-width:1000px) {
 body.workspace-theme .cosmic-viewport { grid-template-columns:minmax(0,1fr) 320px; gap:24px; }
 body.workspace-theme .cosmic-title { font-size:clamp(30px,4vw,44px); }
}
@media(max-width:768px) {
 body.workspace-theme .cosmic-login-card { grid-column:1; grid-row:auto; }
 body.workspace-theme .cosmic-header { min-height:0; }
}
