:root { --shd-bg: #0a0c0d; --shd-surface: #111415; --shd-surface-raised: #141718; --shd-surface-active: #15191a; --shd-border: #303536; --shd-border-soft: #272c2d; --shd-border-strong: #424849; --shd-text: #ecebe5; --shd-text-muted: #858b8d; --shd-text-dim: #5d6567; --shd-orange: #f6a821; --shd-orange-hover: #ffc45d; --shd-focus-ring: #f6a821; --shd-selection-bg: #f6a821; --shd-selection-text: #111415; --shd-type-telemetry: 12px; --shd-type-supporting: 14px; --shd-type-body: 16px; --shd-success: #75c08c; --shd-danger: #df8069; --shd-info: #70b9d6; --shd-armor-surface: #13211f; --shd-armor-border: #71aaa5; --shd-armor-label: #8eb9b4; --shd-armor-text: #a5d1ca; --shd-font-sans: 'Barlow', 'Arial Narrow', Arial, Helvetica, sans-serif; --shd-font-editorial: 'Source Serif 4', Georgia, serif; --shd-font-mono: 'Cascadia Mono', 'SFMono-Regular', Consolas, monospace; --quality-standard: #69b66f; --quality-specialized: #4f9ed8; --quality-superior: #9b68d4; --quality-high-end: #e4bd3f; --shd-radius: 0px; --shd-gap-xs: 5px; --shd-gap-sm: 8px; --shd-gap-md: 12px; --shd-gap-lg: 20px; --shd-control-height: 40px; --isac-icon-editor-width: 150px; --shd-header-height: 76px; --shd-display-scale: 1; --shd-transition: transform 0.12s ease, filter 0.18s ease, opacity 0.18s ease, box-shadow 0.18s ease; --shd-model-surface: #0d1213; --shd-model-border: #3b4648; --shd-builder-canvas: #0e1112; --shd-builder-selection: #1b170f; --shd-builder-selection-border: #8d6728; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { min-height: calc(100vh / var(--shd-display-scale)); display: flex; flex-direction: column; margin: 0; background: var(--shd-bg); color: var(--shd-text); font-family: var(--shd-font-sans); font-optical-sizing: auto; font-synthesis: none; } button, input { font: inherit; } a, a:hover, a:focus, a:focus-visible, a:active, a:visited { text-decoration: none; } ::selection { background: var(--shd-selection-bg); color: var(--shd-selection-text); } input, textarea { caret-color: var(--shd-orange); } input[type='checkbox'], input[type='radio'], input[type='range'] { accent-color: var(--shd-orange); } :where( input:not([type='checkbox']):not([type='radio']):not([type='range']):not( [type='file'] ):not([type='hidden']), select, textarea ):focus { border-color: var(--shd-focus-ring); outline: none; } :where( input:not([type='checkbox']):not([type='radio']):not([type='range']):not( [type='file'] ):not([type='hidden']), select, textarea ):focus-visible { outline: 1px solid var(--shd-focus-ring); outline-offset: 1px; } :where(input, textarea):-webkit-autofill, :where(input, textarea):-webkit-autofill:hover, :where(input, textarea):-webkit-autofill:focus { -webkit-text-fill-color: var(--shd-text); caret-color: var(--shd-orange); box-shadow: inset 0 0 0 1000px #15130e; transition: background-color 9999s ease-out; } .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; } .site-footer { flex: 0 0 auto; margin-top: auto; } .contact-page.contact-page { margin: 0 auto; } .discord-contact.discord-contact { grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; align-content: normal; gap: 11px; } .discord-contact > img { width: 26px; height: 20px; object-fit: contain; } .discord-contact > span { display: grid; gap: 5px; } .discord-contact > span small { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.2px; } .discord-contact > span strong { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .discord-contact.discord-contact > b { grid-column: auto; grid-row: auto; align-self: center; } .footer-links .footer-discord { min-height: 38px; display: flex; align-items: center; gap: 9px; margin-bottom: 2px; padding: 7px 9px; border: 1px solid #5865f2; background: #171a32; color: #fff; } .footer-discord img { width: 20px; height: 16px; object-fit: contain; } .footer-discord span { display: grid; gap: 3px; font-size: var(--shd-type-telemetry); line-height: 1; } .footer-discord small { color: #aeb6ff; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .footer-links .footer-discord:hover, .footer-links .footer-discord:focus-visible { border-color: #929bff; background: #202446; color: #fff; } .footer-links .footer-discord:active { transform: translateY(1px); filter: brightness(0.88); } .footer-nav { width: max-content; max-width: 520px; height: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 0; margin: 0; } .footer-nav a { display: inline-flex; align-items: center; min-height: 24px; padding: 0 9px; border-left: 1px solid var(--shd-border); color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .footer-nav a:first-child { padding-left: 0; border-left: 0; } .footer-nav a:hover, .footer-nav a:focus-visible { color: var(--shd-orange-hover); } @media (max-width: 800px) { .footer-nav { width: 100%; max-width: none; } .footer-nav a { min-height: 30px; } } @media (max-width: 500px) { .footer-nav { display: grid; grid-template-columns: 1fr 1fr; } .footer-nav a { min-height: 44px; padding: 0 8px; border-top: 1px solid var(--shd-border); border-left: 0; } .footer-nav a:nth-child(even) { border-left: 1px solid var(--shd-border); } .footer-nav a:nth-child(-n + 2) { border-top: 0; } } @media (min-width: 2200px) { :root { --shd-display-scale: 1.15; } html { zoom: var(--shd-display-scale); } } @media (min-width: 2800px) { :root { --shd-display-scale: 1.3; } } @media (min-width: 3400px) { :root { --shd-display-scale: 1.5; } } body:before { content: ''; position: fixed; inset: 0; pointer-events: none; opacity: 0.08; background-image: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px); background-size: 48px 48px; } header { height: 76px; border-bottom: 1px solid #292d2f; display: flex; align-items: center; padding: 0 max(24px, 5vw); position: relative; z-index: 5; background: rgba(10, 12, 13, 0.93); } .brand { display: flex; align-items: center; color: #fff; text-decoration: none; font-weight: 900; } .accent { color: #f6a821; } nav { margin: auto; display: flex; height: 100%; } nav button { border: 0; background: none; color: #868b8d; padding: 0 22px; font-size: 12px; font-weight: 800; letter-spacing: 1.5px; cursor: pointer; border-bottom: 2px solid transparent; } nav button.active, nav button:hover { color: #fff; border-color: #f6a821; } .sign-in { background: none; border: 1px solid #45494a; color: #fff; padding: 12px 18px; font-size: var(--shd-type-telemetry); font-weight: 800; letter-spacing: 1.4px; cursor: pointer; } .sign-in span { color: #f6a821; margin-left: 12px; } main { position: relative; z-index: 1; } .hero { min-height: 660px; display: grid; grid-template-columns: 1fr 1fr; max-width: 1400px; margin: auto; padding: 76px 5vw 40px; gap: 40px; overflow: hidden; } .hero-copy { padding-top: 28px; } .eyebrow { color: #9da1a2; font-size: var(--shd-type-telemetry); letter-spacing: 2.4px; font-weight: 800; } .eyebrow span { display: inline-block; width: 28px; height: 2px; background: #f6a821; vertical-align: middle; margin-right: 10px; } h1, h2, h3, p { margin-top: 0; } .hero h1 { font-size: clamp(58px, 7vw, 105px); line-height: 0.85; letter-spacing: -5px; margin: 28px 0; } .hero h1 em { font-style: normal; color: #f6a821; } .lede { color: #9da1a2; font-family: var(--shd-font-editorial); font-size: 18px; line-height: 1.65; max-width: 620px; } .hero-actions { display: flex; gap: 14px; margin: 36px 0; } .primary, .secondary { border: 0; padding: 16px 22px; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.6px; cursor: pointer; } .primary { background: #f6a821; color: #111; } .primary:hover { background: #ffc45d; } .primary span { margin-left: 16px; } .secondary { background: transparent; color: #ddd; border: 1px solid #3a3e40; } .metrics { border-top: 1px solid #292d2f; padding-top: 28px; display: flex; gap: 60px; } .metrics div { display: flex; flex-direction: column; } .metrics strong { font-size: 25px; } .metrics span { color: #666d70; font-size: var(--shd-type-telemetry); letter-spacing: 1.7px; margin-top: 6px; } .loadout-preview { min-height: 520px; position: relative; border: 1px solid #343738; background: radial-gradient( circle at 50% 46%, #30312c 0, #151819 33%, #0d0f10 68% ); clip-path: polygon(5% 0, 100% 0, 100% 92%, 95% 100%, 0 100%, 0 8%); } .scan-lines { position: absolute; inset: 0; opacity: 0.15; background: repeating-linear-gradient( 0deg, transparent, transparent 5px, #fff 6px ); } .preview-top { padding: 22px; display: flex; justify-content: space-between; font-size: var(--shd-type-telemetry); letter-spacing: 2px; color: #8d9294; } .preview-top b { color: #f6a821; } .agent { height: 385px; position: relative; display: grid; place-items: center; } .agent-shape { width: 145px; height: 285px; background: linear-gradient( 90deg, #1d2121, #737269 46%, #292c2b 53%, #101212 ); clip-path: polygon( 33% 0, 67% 0, 78% 14%, 72% 32%, 89% 58%, 78% 100%, 22% 100%, 12% 58%, 28% 32%, 22% 14% ); filter: drop-shadow(0 10px 18px #000); display: grid; place-items: center; } .agent-shape span { color: #f6a821; font-weight: 900; opacity: 0.5; transform: rotate(-90deg); letter-spacing: 6px; } .orbit { position: absolute; border: 1px solid #555; border-radius: 50%; } .orbit-one { width: 330px; height: 330px; } .orbit-two { width: 250px; height: 250px; border-color: #f6a82144; } .gear-node { position: absolute; width: 74px; background: #141718; border: 1px solid #555; border-left: 2px solid #f6a821; padding: 8px; display: flex; flex-direction: column; } .gear-node small { color: #777; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .gear-node b { font-size: 12px; margin-top: 3px; } .n-0 { left: 8%; top: 12%; } .n-1 { right: 5%; top: 24%; } .n-2 { left: 4%; bottom: 22%; } .n-3 { right: 8%; bottom: 12%; } .preview-name { position: absolute; bottom: 22px; left: 25px; display: flex; flex-direction: column; } .preview-name small { color: #f6a821; font-size: var(--shd-type-telemetry); } .preview-name strong { font-size: 18px; margin: 4px 0; } .preview-name span { font-size: var(--shd-type-telemetry); color: #777; } .featured { background: #101314; padding: 70px max(24px, 5vw) 90px; } .section-heading { max-width: 1240px; margin: 0 auto 28px; display: flex; align-items: end; justify-content: space-between; } .section-heading h2 { font-size: 34px; margin: 8px 0; } .section-heading button { color: #aaa; background: none; border: 0; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .build-grid { max-width: 1240px; margin: auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; } .build-grid article { background: #16191a; border: 1px solid #2d3132; border-top: 2px solid var(--build-color); } .card-top { display: flex; justify-content: space-between; padding: 13px 16px; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .card-top span:first-child { color: var(--build-color); } .weapon-art { height: 135px; background: linear-gradient(135deg, #1e2324, #111); display: grid; place-items: center; position: relative; overflow: hidden; } .weapon-art div { width: 65%; height: 14px; background: var(--build-color); clip-path: polygon( 0 20%, 65% 20%, 75% 0, 100% 25%, 94% 65%, 66% 60%, 58% 100%, 47% 100%, 49% 62%, 0 72% ); opacity: 0.65; } .weapon-art span { position: absolute; font-size: var(--shd-type-telemetry); color: #ffffff33; letter-spacing: 4px; } .card-body { padding: 20px; } .card-body > p { font-size: var(--shd-type-telemetry); color: var(--build-color); letter-spacing: 1.5px; } .card-body h3 { text-transform: uppercase; font-size: 19px; } .tags { display: flex; gap: 7px; } .tags span { font-size: var(--shd-type-telemetry); border: 1px solid #3b4041; padding: 5px 7px; color: #aeb1b2; } .author { display: flex; align-items: center; gap: 8px; border-top: 1px solid #2d3132; margin-top: 18px; padding-top: 15px; font-size: var(--shd-type-telemetry); color: #777; } .author > span:last-child { margin-left: auto; } .avatar { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; background: #2f3435; color: #f6a821; } .app-page { max-width: 1320px; margin: auto; padding: 60px 5vw; min-height: calc(100vh - 76px); } .page-title { display: flex; justify-content: space-between; align-items: end; margin-bottom: 35px; } .page-title h1 { font-size: 50px; margin: 6px 0; } .page-title input { background: transparent; border: 0; border-bottom: 1px solid #333; color: #fff; font-size: 42px; font-weight: 800; max-width: 600px; } .actions { display: flex; align-items: center; gap: 14px; } .actions > span { font-size: var(--shd-type-telemetry); color: #6a6; opacity: 0; } .actions > span.visible { opacity: 1; } .builder-layout { display: grid; grid-template-columns: 1fr 340px; gap: 24px; } .slot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } .slot-card { text-align: left; min-height: 160px; padding: 20px; background: #141718; border: 1px solid #303536; color: #eee; cursor: pointer; display: grid; grid-template-columns: 1fr auto; } .slot-card:hover { border-color: #f6a821; } .slot-card .slot-label { font-size: var(--shd-type-telemetry); text-transform: uppercase; letter-spacing: 1.5px; color: #777; } .slot-icon { font-size: 30px; color: #f6a821; } .slot-card strong, .slot-card small, .slot-card b { grid-column: 1/3; } .slot-card strong { font-size: 20px; } .slot-card small { color: #888; } .slot-card b { color: #f6a821; } .summary, .data-panel { background: #141718; border: 1px solid #303536; padding: 25px; } .summary h2 { font-size: 25px; } .stat { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin: 20px 0; } .stat span { display: flex; align-items: center; gap: 7px; color: #999; font-size: var(--shd-type-telemetry); } .stat span .game-icon { width: 21px; height: 21px; } .stat i { height: 3px; background: #f6a821; grid-column: 1/3; } .summary hr { border: 0; border-top: 1px solid #333; margin: 28px 0; } .mini { display: flex; justify-content: space-between; font-size: var(--shd-type-telemetry); margin: 14px 0; } .mini span { color: #888; } .notice { font-size: var(--shd-type-telemetry); line-height: 1.5; color: #747a7c; border-left: 2px solid #f6a821; padding-left: 12px; margin-top: 30px; } .admin-grid { display: grid; grid-template-columns: 260px 1fr; gap: 20px; } .admin-nav { display: flex; flex-direction: column; } .admin-nav button { display: flex; justify-content: space-between; background: #111415; color: #9ca0a1; border: 0; border-bottom: 1px solid #292d2f; padding: 18px; text-align: left; } .admin-nav button:first-child { color: #f6a821; border-left: 2px solid #f6a821; } .table-head { display: flex; justify-content: space-between; } .table-head p { font-size: var(--shd-type-telemetry); color: #777; } .table-head input { height: 38px; background: #0e1011; color: white; border: 1px solid #333; padding: 0 12px; } .data-row { display: grid; grid-template-columns: 1.4fr 1.2fr 0.8fr 0.6fr 0.3fr; gap: 15px; align-items: center; border-top: 1px solid #2b3031; padding: 18px 4px; font-size: var(--shd-type-telemetry); } .data-row.labels { font-size: var(--shd-type-telemetry); color: #6f7577; } .data-row button { background: none; border: 0; color: #f6a821; font-size: var(--shd-type-telemetry); } .status { color: #73bd8a; font-size: var(--shd-type-telemetry); } .auth-page, .empty-page { min-height: calc(100vh - 76px); display: grid; place-items: center; padding: 40px; } .auth-page section { width: min(430px, 100%); background: #141718; border: 1px solid #343839; border-top: 2px solid #f6a821; padding: 38px; } .auth-page h1, .empty-page h1 { font-size: 46px; margin-bottom: 12px; } .auth-page > section > p:nth-of-type(2) { color: #929798; line-height: 1.5; } .discord { width: 100%; padding: 15px; background: #5865f2; color: #fff; border: 0; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .divider { display: flex; align-items: center; gap: 12px; margin: 30px 0 20px; text-align: center; } .divider:before, .divider:after { content: ''; height: 1px; flex: 1; background: #333; } .divider span { flex: 0 0 auto; font-size: var(--shd-type-telemetry); color: #666; } .auth-page label { display: block; font-size: var(--shd-type-telemetry); letter-spacing: 1px; color: #999; margin: 15px 0; } .auth-page input { width: 100%; display: block; margin-top: 7px; background: #0e1011; border: 1px solid #35393a; color: #fff; padding: 13px; } .full { width: 100%; margin: 8px 0 20px; } .auth-page small { display: block; color: #676d6e; line-height: 1.5; } .empty-page { text-align: center; } .empty-page p:not(.eyebrow) { color: #888; } .toast { position: fixed; z-index: 20; right: 25px; bottom: 25px; background: #f6a821; color: #111; padding: 14px 20px; font-size: var(--shd-type-telemetry); font-weight: bold; } @media (max-width: 900px) { header nav { display: none; } .sign-in { margin-left: auto; } .hero { grid-template-columns: 1fr; padding-top: 35px; } .hero h1 { font-size: 62px; } .loadout-preview { min-height: 500px; } .build-grid { grid-template-columns: 1fr; } .builder-layout, .admin-grid { grid-template-columns: 1fr; } .slot-grid { grid-template-columns: 1fr; } .summary { order: -1; } .page-title { align-items: start; gap: 25px; } .page-title input { font-size: 30px; width: 100%; } } @media (max-width: 560px) { .hero { padding-left: 20px; padding-right: 20px; } .hero h1 { font-size: 48px; letter-spacing: -3px; } .metrics { gap: 25px; } .hero-actions { flex-direction: column; } .loadout-preview { display: none; } .hero { min-height: auto; padding-bottom: 60px; } .page-title { flex-direction: column; } .admin-grid { display: block; } .data-panel { overflow: auto; } .data-row { min-width: 650px; } .brand { font-size: 13px; } } /* Routed application compatibility: preserve the original SHD visual system. */ .site-header { height: 76px; } .site-header nav a { display: grid; place-items: center; color: #868b8d; padding: 0 22px; font-size: 12px; font-weight: 800; letter-spacing: 1.5px; border-bottom: 2px solid transparent; } .site-header nav a.active, .site-header nav a:hover { color: #fff; border-color: #f6a821; } .site-header .account { margin-left: auto; display: flex; align-items: center; gap: 15px; } .site-header .account > a { display: flex; flex-direction: column; font-size: var(--shd-type-telemetry); font-weight: 800; } .site-header .account small { font-size: var(--shd-type-telemetry); color: #6f7577; } .site-header .account button { background: none; border: 1px solid #45494a; color: #fff; padding: 12px 18px; font-size: var(--shd-type-telemetry); font-weight: 800; letter-spacing: 1.2px; } .page { width: 100%; max-width: 1640px; margin: auto; padding: 52px clamp(18px, 3vw, 48px); min-height: calc(100vh - 76px); } .page.hero { max-width: 1400px; padding: 76px 5vw 40px; } .page-head { display: flex; justify-content: space-between; align-items: end; margin-bottom: 35px; } .page-head h1 { font-size: 50px; margin: 6px 0; text-transform: uppercase; } .page-head h2 { font-size: 25px; margin: 5px 0; } .page-head > div > input { background: transparent; border: 0; border-bottom: 1px solid #333; color: #fff; font-size: 42px; font-weight: 800; max-width: 600px; } .muted { color: #858b8d; line-height: 1.55; } .panel, .card, .table { background: #141718; border: 1px solid #303536; } .panel, .card { padding: 24px; } .grid { display: grid; gap: 20px; } .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } .card { border-top: 2px solid #f6a821; } .card small, .label { font-size: var(--shd-type-telemetry); color: #747a7c; letter-spacing: 1.4px; } .card h3 { font-size: 19px; text-transform: uppercase; margin: 14px 0; } .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .field { display: block; font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; color: #999; margin: 9px 0; } .field input, .field select, .field textarea, input, select, textarea { display: block; width: 100%; margin-top: 6px; background: #0d0f10; border: 1px solid #363b3c; color: #fff; padding: 11px; } .field textarea { resize: vertical; } .form-actions { display: flex; justify-content: flex-end; gap: 10px; border-top: 1px solid #303536; margin-top: 14px; padding-top: 14px; } .error, .success { font-size: var(--shd-type-telemetry); border-left: 2px solid; padding-left: 10px; } .error { color: #ff8e78; border-color: #ff6648; } .success { color: #83c998; border-color: #55b673; } .builder { display: grid; grid-template-columns: 1fr 340px; gap: 24px; } .slots { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } .slot { text-align: left; min-height: 160px; background: #141718; border: 1px solid #303536; color: #eee; cursor: pointer; } .slot:hover { border-color: #f6a821; } .stats { height: max-content; } .stats div { display: flex; justify-content: space-between; font-size: var(--shd-type-telemetry); padding: 14px 0; border-bottom: 1px solid #303536; } .admin-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 12px; align-items: start; } .admin-nav { position: sticky; top: 88px; display: flex; flex-direction: column; background: #111415; border: 1px solid #2d3233; padding: 8px 0; } .admin-nav a { color: #9ca0a1; border-bottom: 1px solid #292d2f; padding: 13px 14px; font-size: var(--shd-type-telemetry); } .admin-nav a.active { color: #f6a821; border-left: 2px solid #f6a821; } .table { overflow: auto; } .table-row { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr) 0.35fr; gap: 10px; align-items: center; border-top: 1px solid #2b3031; padding: 11px 14px; font-size: var(--shd-type-telemetry); min-width: 700px; } .table-row.head { font-size: var(--shd-type-telemetry); color: #6f7577; } .table-row button, .card button:not(.primary):not(.secondary) { background: none; border: 0; border-bottom: 1px solid transparent; color: #f6a821; font-size: var(--shd-type-telemetry); cursor: pointer; } .table-row button:hover { border-bottom-color: #f6a821; } .primary, .secondary, .danger { display: inline-block; text-decoration: none; } .auth-page { min-height: calc(100vh - 76px); } hr { border: 0; border-top: 1px solid #303536; margin: 26px 0; } button:disabled, fieldset[disabled] { cursor: wait; } button:not(:disabled):active, a.primary:active, a.secondary:active { transform: translateY(2px) scale(0.985); filter: brightness(0.9); } @media (max-width: 900px) { .site-header nav { display: none; } .cards, .builder, .admin-layout, .form-grid { grid-template-columns: 1fr; } .slots { grid-template-columns: 1fr; } .admin-nav { position: static; display: grid; grid-template-columns: 1fr 1fr; } .page-head { align-items: flex-start; gap: 22px; } } @media (max-width: 560px) { .page-head { flex-direction: column; } .site-header .account > a { display: none; } .cards { grid-template-columns: 1fr; } } /* SHD routed exception console */ .error-page { min-height: calc(100vh - var(--shd-header-height)); display: grid; place-items: center; padding: clamp(20px, 5vw, 72px); background: radial-gradient(circle at 50% 45%, #282116 0, transparent 38%); } .error-console { width: min(900px, 100%); border: 1px solid #4a4337; border-top: 2px solid var(--shd-orange); background: linear-gradient(135deg, #141718, #0d1011); box-shadow: 0 24px 70px #0008; } .error-console.server-fault { border-top-color: var(--shd-danger); } .error-console > header { position: static; height: 65px; padding: 0 18px; border-bottom: 1px solid var(--shd-border); background: #101314; } .error-console > header > div { display: grid; gap: 4px; } .error-console > header span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.4px; } .error-console > header strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .error-console.server-fault > header strong, .error-console.server-fault > header > b { color: var(--shd-danger); } .error-console > header > b { color: var(--shd-orange); font-size: 32px; letter-spacing: -1px; } .error-signal { height: 78px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 15px; padding: 0 clamp(18px, 6vw, 60px); color: var(--shd-orange); } .server-fault .error-signal { color: var(--shd-danger); } .error-signal i { height: 1px; background: linear-gradient(90deg, transparent, currentColor); } .error-signal i:last-child { background: linear-gradient(90deg, currentColor, transparent); } .error-signal span { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid currentColor; font-size: var(--shd-type-telemetry); font-weight: 900; box-shadow: 0 0 18px #f6a82122; } .error-copy { padding: 0 clamp(24px, 7vw, 78px) 34px; text-align: center; } .error-copy .eyebrow { margin-bottom: 15px; } .error-copy h1 { max-width: 720px; margin: 0 auto 17px; font-size: clamp(38px, 6vw, 72px); line-height: 0.9; letter-spacing: -2.5px; } .error-copy > p:last-child { max-width: 650px; margin: 0 auto; color: var(--shd-text-muted); font: 15px/1.6 var(--shd-font-editorial); } .error-console dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--shd-border); border-bottom: 1px solid var(--shd-border); } .error-console dl > div { min-width: 0; display: grid; gap: 5px; padding: 12px 15px; border-left: 1px solid var(--shd-border); } .error-console dl > div:first-child { border-left: 0; } .error-console dt { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .error-console dd { overflow: hidden; margin: 0; color: #c7cbcc; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; text-overflow: ellipsis; white-space: nowrap; } .error-console > footer { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; } .error-console > footer > div { display: flex; align-items: center; gap: 8px; color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .error-console > footer > div i { width: 6px; height: 6px; background: var(--shd-success); box-shadow: 0 0 7px var(--shd-success); } .error-console.server-fault > footer > div i { background: var(--shd-danger); box-shadow: 0 0 7px var(--shd-danger); } .error-console > footer nav { height: auto; margin: 0; display: flex; gap: 8px; } .error-console > footer .primary, .error-console > footer .secondary { min-height: 40px; display: inline-grid; place-items: center; padding: 0 15px; } @media (max-width: 700px) { .error-page { place-items: start center; } .error-console dl { grid-template-columns: 1fr 1fr; } .error-console dl > div:nth-child(3) { border-left: 0; } .error-console dl > div:nth-child(n + 3) { border-top: 1px solid var(--shd-border); } .error-console > footer { align-items: stretch; flex-direction: column; } .error-console > footer nav { width: 100%; } .error-console > footer nav > * { flex: 1; } .error-copy h1 { letter-spacing: -1.5px; } } @media (max-width: 430px) { .error-console dl { grid-template-columns: 1fr; } .error-console dl > div { border-left: 0; border-top: 1px solid var(--shd-border); } .error-console dl > div:first-child { border-top: 0; } .error-console > footer nav { flex-direction: column; } } /* SHD admin operations dashboard */ .admin-page { width: 100%; min-height: calc(100vh - 76px); padding: 18px clamp(14px, 2vw, 32px) 40px; background: linear-gradient(135deg, #101314aa 0, transparent 38%); } .admin-command { height: auto; min-height: 76px; position: relative; top: auto; display: flex; justify-content: space-between; align-items: center; padding: 0 0 16px; background: transparent; border-bottom: 1px solid #303536; } .command-title h1 { margin: 4px 0 2px; font-size: 27px; letter-spacing: 1px; } .command-title > p:last-child { margin: 0; color: #697073; font-size: var(--shd-type-telemetry); letter-spacing: 1.1px; } .command-status { display: flex; gap: 7px; } .command-status > div { position: relative; min-width: 105px; height: 47px; padding: 9px 12px; background: #111415; border: 1px solid #303536; display: grid; align-content: center; } .command-status span { font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; color: #6f7678; } .command-status strong { font-size: var(--shd-type-telemetry); letter-spacing: 1px; margin-top: 3px; } .command-status i { position: absolute; right: 9px; top: 9px; width: 6px; height: 6px; border-radius: 50%; background: #68bd82; box-shadow: 0 0 8px #68bd82; } .admin-dashboard { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 12px; margin-top: 12px; } .admin-sidebar { position: sticky; top: 88px; min-height: 520px; height: calc(100vh - 118px); display: flex; flex-direction: column; background: #0f1213; border: 1px solid #2c3132; } .sidebar-label { height: 43px; padding: 10px 12px; border-bottom: 1px solid #2c3132; display: flex; justify-content: space-between; align-items: center; } .sidebar-label span, .sidebar-label b { font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; } .sidebar-label span { color: #8d9395; } .sidebar-label b { color: #505759; } .admin-sidebar nav { display: flex; flex-direction: column; margin: 0; height: auto; } .admin-sidebar nav a { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; min-height: 49px; padding: 0 12px 0 0; color: #858c8e; border: 0; border-bottom: 1px solid #272c2d; font-size: var(--shd-type-telemetry); } .admin-sidebar nav a small { height: 100%; display: grid; place-items: center; background: #141819; color: #535a5c; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .admin-sidebar nav a span { padding-left: 12px; } .admin-sidebar nav a b { font-size: 17px; color: #f6a821; } .admin-sidebar nav a em { font-style: normal; font-size: var(--shd-type-telemetry); color: #555c5e; letter-spacing: 1px; } .admin-sidebar nav a:hover, .admin-sidebar nav a.active { color: #fff; background: #151819; } .admin-sidebar nav a.active { box-shadow: inset 2px 0 #f6a821; } .admin-sidebar nav a.active small { background: #2b2111; color: #f6a821; } .admin-sidebar nav a.pending { opacity: 0.5; pointer-events: none; } .sidebar-foot { margin-top: auto; padding: 14px; border-top: 1px solid #2c3132; display: grid; } .sidebar-foot span { font-size: var(--shd-type-telemetry); color: #5e6668; letter-spacing: 1.3px; } .sidebar-foot strong { font-size: 14px; color: #f6a821; margin: 4px 0; } .sidebar-foot small { font-size: var(--shd-type-telemetry); color: #596164; } .admin-content { min-width: 0; } .module-toolbar { min-height: 63px; display: flex; align-items: center; justify-content: space-between; padding: 0 2px 12px; border-bottom: 1px solid #303536; } .module-toolbar h2 { font-size: 19px; letter-spacing: 0.4px; margin: 3px 0; } .module-toolbar p { margin: 0; } .module-toolbar > div > p:last-child { font-size: var(--shd-type-telemetry); color: #71787a; } .module-toolbar > div:last-child { display: flex; gap: 8px; } .module-toolbar .primary, .module-toolbar .secondary { height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 15px; } .module-kpis { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 8px; margin: 10px 0; } .module-kpis > div { position: relative; min-height: 70px; padding: 11px 13px; background: #111415; border: 1px solid #2d3233; border-top: 2px solid #3a4041; display: grid; } .module-kpis > div:first-child { border-top-color: #f6a821; } .module-kpis span { font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; color: #737a7c; } .module-kpis strong { font-size: 23px; line-height: 1.1; margin: 3px 0; } .module-kpis small { font-size: var(--shd-type-telemetry); color: #555d5f; } .dashboard-editor { margin: 10px 0; background: #131617; border: 1px solid #4a5051; border-top: 2px solid #f6a821; padding: 14px 16px; } .editor-title { display: flex; justify-content: space-between; align-items: start; padding-bottom: 9px; border-bottom: 1px solid #303536; } .editor-title h3 { font-size: 16px; margin: 3px 0; } .editor-title button { border: 0; background: transparent; color: #7e8587; font-size: 24px; line-height: 1; } .dashboard-editor .form-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; } .dashboard-editor .field { margin: 8px 0; } .dashboard-editor .field input, .dashboard-editor .field select, .dashboard-editor .field textarea { padding: 8px 9px; margin-top: 5px; font-size: var(--shd-type-telemetry); } .range-field > div, .uptime-field > div { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; } .dashboard-table { border: 1px solid #2d3233; background: #111415; overflow: auto; } .dashboard-row { min-width: 820px; display: grid; grid-template-columns: 1.5fr 1fr 0.75fr 0.85fr 0.6fr 0.3fr; align-items: center; gap: 10px; min-height: 46px; padding: 7px 13px; border-top: 1px solid #272c2d; font-size: var(--shd-type-telemetry); } .dashboard-row:hover:not(.table-heading) { background: #15191a; } .dashboard-row > div { display: grid; gap: 3px; } .dashboard-row > div small { font-size: var(--shd-type-telemetry); color: #60686a; } .dashboard-row > span { width: max-content; } .dashboard-row > button { justify-self: end; border: 0; border-bottom: 1px solid transparent; background: transparent; color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; padding: 5px; cursor: pointer; } .dashboard-row > button:hover { border-color: #f6a821; } .table-heading { min-height: 32px; border-top: 0; background: #0d1011; color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .state-dot { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; color: #75c08c; } .state-dot:before { content: ''; display: inline-block; width: 5px; height: 5px; margin-right: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 6px currentColor; } .dashboard-row.archived { opacity: 0.45; } .type-offensive, .type-defensive { padding: 4px 6px; border: 1px solid; } .type-offensive { color: #df8069; border-color: #70463c; } .type-defensive { color: #70b9d6; border-color: #365e6e; } .tier-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 10px; } .tier-card { min-width: 0; padding: 8px 11px 11px; border: 1px solid #343a3b; background: #101314; } .tier-card legend { padding: 0 7px; color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1.3px; } .trigger-list { max-height: 130px; overflow: auto; border: 1px solid #292f30; } .trigger-list > div { display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 33px; padding: 4px 7px; border-top: 1px solid #252a2b; background: #121516; } .trigger-list label { display: flex; align-items: center; gap: 7px; font-size: var(--shd-type-telemetry); } .trigger-list input { width: auto; margin: 0; accent-color: #f6a821; } .trigger-list button, .effects-head button { border: 0; background: transparent; color: #f6a821; font-size: var(--shd-type-telemetry); } .effects-head { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; } .talent-effect { display: grid; grid-template-columns: 1fr 90px 27px; gap: 5px; margin-top: 5px; } .talent-effect select, .talent-effect input { min-width: 0; padding: 7px; margin: 0; font-size: var(--shd-type-telemetry); } .talent-effect button { border: 1px solid #563734; background: #1d1212; color: #da746c; } .talent-identity { grid-template-columns: 2fr 1fr !important; } .uptime-field > span { display: flex; align-items: center; gap: 7px; } .uptime-field > span input { width: auto; margin: 0; accent-color: #f6a821; } .script-note { align-self: end; margin: 8px 0; padding: 9px; border: 1px dashed #394041; display: grid; } .script-note b { font-size: var(--shd-type-telemetry); color: #8e9597; letter-spacing: 1.2px; } .script-note span { font-size: var(--shd-type-telemetry); color: #5d6567; margin-top: 4px; } .configured { color: #79bd8d; font-size: var(--shd-type-telemetry); } .dashboard-table > .registry-inline-editor { position: sticky; left: 0; z-index: 1; width: 100%; background: #101314; animation: registry-editor-reveal 0.18s cubic-bezier(0.16, 1, 0.3, 1); } .registry-inline-editor > .dashboard-editor { margin: 0; border-right: 0; border-left: 0; background: #131617; box-sizing: border-box; } .dashboard-row.registry-row-editing { background: #19170f; box-shadow: inset 2px 0 var(--shd-orange); } .dashboard-row.registry-row-editing:hover { background: #19170f; } .dashboard-row.registry-row-editing > button { color: var(--shd-text); border-color: var(--shd-orange); } @keyframes registry-editor-reveal { from { opacity: 0.82; clip-path: inset(0 0 100% 0); } to { opacity: 1; clip-path: inset(0); } } @media (max-width: 700px) { .registry-inline-editor > .dashboard-editor { padding: 12px; } } @media (prefers-reduced-motion: reduce) { .dashboard-table > .registry-inline-editor { animation: none; } } @media (max-width: 900px) { .admin-command { align-items: flex-start; } .command-status > div:nth-child(n + 2) { display: none; } .admin-dashboard { grid-template-columns: 1fr; } .admin-sidebar { position: static; height: auto; min-height: 0; } .admin-sidebar nav { display: grid; grid-template-columns: 1fr 1fr; } .sidebar-foot { display: none; } .module-kpis { grid-template-columns: 1fr 1fr; } .dashboard-editor .form-grid { grid-template-columns: 1fr 1fr; } .tier-grid { grid-template-columns: 1fr; } } @media (max-width: 560px) { .admin-command, .module-toolbar { flex-direction: column; align-items: flex-start; gap: 12px; } .module-toolbar > div:last-child { width: 100%; } .module-toolbar button { flex: 1; } .module-kpis { grid-template-columns: 1fr 1fr; } .dashboard-editor .form-grid { grid-template-columns: 1fr; } .talent-identity { grid-template-columns: 1fr !important; } } /* Shared SHD routed surfaces */ .site-header .account small i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: var(--shd-success); box-shadow: 0 0 6px var(--shd-success); margin-right: 3px; } .catalogue-page, .guides-page, .profile-page { padding-top: 34px; } .catalogue-hero { min-height: 230px; display: flex; justify-content: space-between; align-items: center; padding: 25px 32px; margin-bottom: 12px; border: 1px solid var(--shd-border); background: radial-gradient(circle at 80% 50%, #332714 0, transparent 30%), linear-gradient(120deg, #141718, #0d1011); clip-path: polygon(0 0, 97% 0, 100% 18%, 100% 100%, 3% 100%, 0 82%); } .catalogue-hero h1 { font-size: clamp(48px, 6vw, 82px); line-height: 0.82; letter-spacing: -3px; margin: 14px 0; } .catalogue-hero h1 em { font-style: normal; color: var(--shd-orange); } .catalogue-hero > div > p:last-child { max-width: 580px; color: var(--shd-text-muted); font: 15px/1.55 var(--shd-font-editorial); } .catalogue-count { min-width: 210px; display: grid; text-align: right; } .catalogue-count strong { font-size: 38px; } .catalogue-count span { font-size: var(--shd-type-telemetry); color: #6d7476; letter-spacing: 1.5px; margin: 3px 0 18px; } .catalogue-count .primary { justify-self: end; } .filter-bar { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: 7px; align-items: end; margin: 12px 0 18px; padding: 11px; background: #101314; border: 1px solid #2d3233; } .filter-bar label { font-size: var(--shd-type-telemetry); color: #72797b; letter-spacing: 1.2px; } .filter-bar input, .filter-bar select { height: 38px; margin-top: 6px; padding: 0 10px; font-size: var(--shd-type-telemetry); } .filter-bar button { height: 38px; padding: 0 14px; } .catalogue-grid { max-width: none; } .catalogue-grid article { position: relative; } .build-open { width: 100%; margin-top: 15px; padding: 10px; border: 1px solid #3a4041; background: #101314; color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .guide-layout { display: grid; grid-template-columns: 1fr 330px; gap: 12px; } .guide-feature { min-height: 360px; padding: 35px; position: relative; border: 1px solid #303536; border-top: 2px solid #f6a821; background: linear-gradient(135deg, #151819, #0d1011); } .guide-code { position: absolute; right: 25px; top: 22px; color: #4f5658; font-size: var(--shd-type-telemetry); letter-spacing: 1.5px; } .guide-feature h2 { font-size: 42px; line-height: 0.95; margin: 20px 0; } .guide-feature > p:not(.eyebrow) { max-width: 650px; color: #858b8d; font: 15px/1.6 var(--shd-font-editorial); } .guide-meta { display: flex; gap: 8px; position: absolute; left: 35px; bottom: 30px; } .guide-meta span { display: grid; padding: 8px 11px; border: 1px solid #303536; color: #60686a; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .guide-meta b { color: #d7d9d5; font-size: var(--shd-type-telemetry); margin-top: 4px; } .guide-index { border: 1px solid #303536; background: #111415; padding: 20px; } .guide-index > div { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; min-height: 54px; border-top: 1px solid #292e2f; } .guide-index small { color: #535b5d; font-size: var(--shd-type-telemetry); } .guide-index span { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .guide-index b { color: #f6a821; } .profile-command { display: flex; justify-content: space-between; align-items: center; padding: 0 0 24px; border-bottom: 1px solid #303536; } .profile-ident { display: flex; align-items: center; gap: 18px; } .profile-avatar { width: 76px; height: 76px; display: block; object-fit: cover; border: 1px solid #f6a821; border-radius: 50%; background: #0a0c0d; box-shadow: 0 0 0 6px #0a0c0d, 0 0 0 7px #f6a82155; } .profile-ident h1 { font-size: 39px; margin: 4px 0; } .role-badge { display: inline-block; padding: 4px 8px; border: 1px solid #6e5226; color: #f6a821; font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; } .profile-metrics { display: flex; gap: 7px; } .profile-metrics div { min-width: 77px; height: 59px; display: grid; place-items: center; padding: 7px; background: #111415; border: 1px solid #303536; } .profile-metrics strong { font-size: 20px; } .profile-metrics span { font-size: var(--shd-type-telemetry); color: #697174; letter-spacing: 1px; } .account-alert { display: flex; gap: 16px; margin: 12px 0; padding: 12px 15px; background: #2a2112; border: 1px solid #795c2a; border-left: 3px solid #f6a821; font-size: var(--shd-type-telemetry); } .account-alert b { color: #f6a821; } .account-alert span { color: #b8ad99; } .profile-dashboard { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 12px; margin-top: 12px; } .profile-feed { display: grid; gap: 12px; } .profile-module, .account-console { background: #111415; border: 1px solid #303536; padding: 16px; } .module-head { display: flex; justify-content: space-between; align-items: center; } .module-head h2, .profile-module h2, .account-console h2 { font-size: 17px; margin: 4px 0 12px; } .module-head .secondary { padding: 10px 12px; } .profile-table { border: 1px solid #292e2f; } .profile-row { display: grid; grid-template-columns: 1.5fr 0.7fr 0.7fr 0.3fr; align-items: center; gap: 9px; min-height: 47px; padding: 7px 11px; border-top: 1px solid #292e2f; font-size: var(--shd-type-telemetry); } .profile-row.heading { min-height: 30px; border: 0; background: #0d1011; color: #636b6d; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .profile-row > div { display: grid; } .profile-row small { font-size: var(--shd-type-telemetry); color: #596164; } .profile-row > span { text-transform: uppercase; color: #858d8f; } .profile-row button { border: 0; background: transparent; color: #f6a821; font-size: var(--shd-type-telemetry); } .profile-empty { text-align: center; padding: 38px; } .profile-empty > span { font-size: 31px; color: #f6a821; } .profile-empty b { display: block; font-size: var(--shd-type-telemetry); letter-spacing: 1px; margin: 10px; } .profile-empty p { color: #71797b; font: 13px var(--shd-font-editorial); } .profile-empty a { color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; } .profile-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } .large-count { font-size: 32px; } .count-label { display: block; font-size: var(--shd-type-telemetry); color: #687073; letter-spacing: 1.2px; } .account-console { height: max-content; } .console-head { display: flex; justify-content: space-between; padding-bottom: 11px; margin-bottom: 15px; border-bottom: 1px solid #303536; color: #747c7e; font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; } .console-head i { width: 6px; height: 6px; border-radius: 50%; background: #75c08c; box-shadow: 0 0 6px #75c08c; } .console-action { width: 100%; margin-top: 9px; } .connection-card { display: grid; grid-template-columns: 35px 1fr auto; align-items: center; padding: 10px; border: 1px solid #303536; } .discord-node { color: #8993ff; font-size: 21px; } .connection-card div { display: grid; } .connection-card b { font-size: var(--shd-type-telemetry); } .connection-card small { font-size: var(--shd-type-telemetry); color: #656d6f; margin-top: 3px; } .connection-card a { color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; } .avatar-picker { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin-bottom: 10px; } .avatar-preset-form, .avatar-preset-form fieldset { min-width: 0; height: 100%; } .avatar-preset { display: grid; gap: 5px; width: 100%; height: 100%; min-width: 0; padding: 4px; background: #0b0e0f; border: 1px solid #303536; color: #747c7e; } .avatar-preset:hover, .avatar-preset:focus-visible { border-color: #8a672b; color: #f6a821; } .avatar-preset.selected { border-color: #f6a821; color: #f6a821; box-shadow: inset 0 -2px #f6a821; } .avatar-preset img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; } .avatar-preset span { min-width: 0; overflow-wrap: anywhere; font-size: var(--shd-type-telemetry); line-height: 1.25; text-transform: uppercase; letter-spacing: 0.4px; } .avatar-upload { min-width: 0; margin-top: 8px; } .account-console .image-drop-input { grid-template-columns: 64px minmax(0, 1fr); } .account-console .image-upload-actions { grid-column: 1/-1; display: grid; grid-template-columns: 1fr 1fr; width: 100%; } .account-console .image-upload-actions button { min-width: 0; } .image-drop-input { display: grid; grid-template-columns: 64px 1fr auto; align-items: center; gap: 10px; min-height: 82px; padding: 8px; border: 1px dashed #4b5152; background: #0b0e0f; cursor: pointer; transition: border-color 0.15s, background 0.15s, transform 0.1s; } .image-drop-input:hover, .image-drop-input:focus-visible, .image-drop-input.dragging { border-color: var(--shd-orange); background: #15130e; outline: none; } .image-drop-input.dragging { transform: translateY(1px); box-shadow: inset 0 0 0 1px #f6a82155; } .image-file-input { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; } .image-upload-preview { display: grid; place-items: center; width: 64px; height: 64px; border: 1px solid #343a3b; background: #070909; color: #62696b; font-size: var(--shd-type-telemetry); text-align: center; } .image-upload-preview img { display: block; width: 100%; height: 100%; object-fit: contain; } .image-drop-copy { display: grid; gap: 4px; min-width: 0; } .image-drop-copy b { color: #c6cbcc; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .image-drop-copy span { overflow: hidden; color: #747c7e; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .image-upload-actions { display: flex; gap: 5px; } .image-upload-actions button { min-width: 92px; padding: 8px; } .image-upload-error { display: block; margin-top: 5px; color: var(--shd-danger); } @media (max-width: 700px) { .image-drop-input { grid-template-columns: 56px 1fr; } .image-upload-preview { width: 56px; height: 56px; } .image-upload-actions { grid-column: 1/-1; } .image-upload-actions button { flex: 1; } } .icon-upload-field .image-drop-input { grid-template-columns: 1fr; gap: 6px; text-align: center; } .icon-upload-field .image-upload-preview { width: 100%; height: 72px; } .icon-upload-field .image-upload-preview img { width: 64px; height: 64px; } .icon-upload-field .image-upload-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; } .icon-upload-field .image-upload-actions button { min-width: 0; padding: 7px 3px; font-size: var(--shd-type-telemetry); } .game-data-render-upload { margin: 8px 0; padding: 8px; border: 1px solid var(--shd-border); background: #0d1011; } .game-data-render-upload legend { padding: 0 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .game-data-render-upload .image-drop-input { grid-template-columns: 84px minmax(0, 1fr) auto; } .game-data-render-upload .image-upload-preview { width: 84px; height: 84px; } .game-data-render-upload .image-upload-preview img { object-fit: cover; } .game-data-render-upload .image-drop-copy { justify-self: stretch; text-align: center; } .game-data-render-upload .render-remove { display: flex; gap: 6px; align-items: center; margin-top: 6px; color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; } .game-data-render-upload .render-remove input { width: auto; margin: 0; accent-color: var(--shd-danger); } .game-data-render-upload > small { display: block; margin-top: 6px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.35; } .dashboard-row > .registry-render-identity { display: flex; align-items: center; gap: 8px; min-width: 0; } .registry-render-identity > div { display: grid; gap: 2px; min-width: 0; } .registry-render { width: 42px; height: 42px; flex: 0 0 auto; object-fit: cover; border: 1px solid var(--shd-border); background: #090b0c; } .database-item-card header:has(.database-item-render) { grid-template-columns: 64px 42px minmax(0, 1fr) auto; } .database-item-render { display: block; width: 64px; height: 64px; object-fit: cover; border: 1px solid var(--shd-border); background: #090b0c; } .proposal-submitted, .data-access-banner { display: flex; align-items: center; gap: 12px; margin-bottom: 9px; padding: 9px 11px; border-left: 3px solid var(--shd-success); background: #101713; color: #a6cbb0; } .proposal-submitted b, .data-access-banner b { font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .proposal-submitted span, .data-access-banner span { font-size: var(--shd-type-telemetry); color: #7e9d86; } .data-access-banner { border-left-color: #657174; background: #111617; color: #aeb7b9; } .data-access-banner.contributor { border-left-color: var(--shd-orange); background: #19150e; color: #d8bc87; } .data-access-error { margin: -3px 0 9px; } .data-readonly form[method='post'] button[type='submit'], .data-readonly form[method='post'] button:not([type]) { filter: grayscale(1); opacity: 0.45; } .admin-sidebar nav a.has-pending { grid-template-columns: minmax(0, 1fr) 18px 18px; } .admin-sidebar nav a.has-pending em { grid-column: 2; display: grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; border: 1px solid #a26c19; background: #211a0e; color: #ffc45d; font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; text-align: center; } .admin-sidebar nav a.has-pending b { grid-column: 3; justify-self: end; } .admin-sidebar nav a.has-pending:hover em, .admin-sidebar nav a.has-pending.active em { border-color: var(--shd-orange); background: #2b2111; color: #fff1d0; } .moderation-row { grid-template-columns: minmax(240px, 1.5fr) minmax(140px, 0.8fr) 150px 80px 75px; } .moderation-review { width: min(1120px, 100%); max-height: calc(100vh - 32px); overflow: auto; } .moderation-metadata { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 10px 0; } .moderation-metadata span { display: grid; gap: 4px; padding: 8px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .moderation-metadata b { color: var(--shd-text); font-size: var(--shd-type-telemetry); } .moderation-review details { margin: 10px 0; border: 1px solid var(--shd-border); background: #0b0e0f; } .moderation-review summary { padding: 9px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); cursor: pointer; } .moderation-review pre { max-height: 260px; overflow: auto; margin: 0; padding: 10px; border-top: 1px solid var(--shd-border); color: #9ca6a8; font-size: var(--shd-type-telemetry); white-space: pre-wrap; } .proposal-change-preview { margin-top: 10px; } .proposal-preview-head { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; border: 1px solid var(--shd-border); background: #0d1011; } .proposal-preview-head > div { display: grid; gap: 3px; } .proposal-preview-head span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .proposal-preview-head small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .proposal-preview-head > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .proposal-compare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 7px; } .proposal-editor-preview { min-width: 0; border: 1px solid var(--shd-border); background: #111415; } .proposal-editor-preview.before { border-top: 2px solid #596164; } .proposal-editor-preview.after { border-top: 2px solid var(--shd-orange); } .proposal-editor-preview > header { display: flex; align-items: center; justify-content: space-between; min-height: 32px; padding: 6px 9px; border-bottom: 1px solid var(--shd-border); background: #0d1011; } .proposal-editor-preview > header span, .proposal-editor-preview > header b { font-size: var(--shd-type-telemetry); letter-spacing: 0.9px; } .proposal-editor-preview > header b { color: var(--shd-text-muted); } .proposal-editor-preview.after > header b { color: var(--shd-orange); } .proposal-attribute-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; padding: 8px; } .preview-field { min-width: 0; display: grid; align-content: start; gap: 5px; } .preview-field.identity { grid-column: span 4; } .preview-field > span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .preview-field > strong, .preview-field.range > div { min-height: 34px; display: flex; align-items: center; padding: 7px 8px; border: 1px solid #363b3c; background: #0d0f10; color: var(--shd-text); font-size: var(--shd-type-telemetry); overflow-wrap: anywhere; } .preview-field.identity > strong { min-height: 43px; font-size: 13px; } .preview-field.range { grid-column: span 2; } .preview-field.range > div { display: grid; grid-template-columns: 1fr auto 1fr; gap: 6px; } .preview-field.range strong:last-child { text-align: right; } .preview-field.range i { color: #555d5f; font-size: var(--shd-type-telemetry); font-style: normal; } .proposal-empty-state { min-height: 180px; display: grid; place-content: center; gap: 6px; text-align: center; } .proposal-empty-state b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .proposal-empty-state span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .proposal-editor-preview.generic { margin-top: 7px; } .proposal-field-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 8px; } .proposal-field-summary > div { min-width: 0; display: grid; align-content: start; gap: 5px; padding: 8px; border: 1px solid #303536; background: #0d0f10; } .proposal-field-summary span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .proposal-field-summary strong { color: var(--shd-text); font-size: var(--shd-type-telemetry); overflow-wrap: anywhere; } .proposal-field-summary small { max-height: 42px; overflow: hidden; color: #687174; font-size: var(--shd-type-telemetry); overflow-wrap: anywhere; } .decision-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; margin: 10px 0; } .decision-tabs button { padding: 9px; border: 1px solid var(--shd-border); background: #111415; color: var(--shd-text-muted); } .decision-tabs button.active { border-color: var(--shd-orange); color: var(--shd-orange); } @media (max-width: 800px) { .moderation-row { grid-template-columns: 1fr; } .moderation-metadata, .proposal-compare-grid { grid-template-columns: 1fr; } .proposal-field-summary { grid-template-columns: 1fr 1fr; } } @media (max-width: 520px) { .proposal-attribute-grid, .proposal-field-summary { grid-template-columns: 1fr; } .preview-field.identity, .preview-field.range { grid-column: auto; } } .account-tabs { width: 100%; height: auto; margin: 0 0 16px; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--shd-border); } .account-tabs button, .account-subtabs button { min-width: 0; height: 34px; padding: 0 5px; border: 0; border-left: 1px solid var(--shd-border); border-bottom: 2px solid transparent; background: #0d1011; color: #6f7779; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; cursor: pointer; transition: var(--shd-transition); } .account-tabs button:first-child, .account-subtabs button:first-child { border-left: 0; } .account-tabs button:hover, .account-tabs button:focus-visible, .account-subtabs button:hover, .account-subtabs button:focus-visible { color: var(--shd-text); background: #171b1c; } .account-tabs button.active, .account-subtabs button.active { border-bottom-color: var(--shd-orange); background: #211a0e; color: var(--shd-orange); } .account-tabs button:active, .account-subtabs button:active { transform: translateY(1px); filter: brightness(0.85); } .account-tabs button:focus-visible, .account-subtabs button:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--shd-orange); outline-offset: 2px; } .account-panel { min-height: 290px; } .account-subtabs { display: grid; grid-template-columns: 1fr 1fr; margin: 0 0 10px; border: 1px solid var(--shd-border); } .account-subtabs button { height: 31px; } .access-subtabs { display: grid; grid-template-columns: repeat(4, 1fr); margin: -2px 0 17px; border: 1px solid var(--shd-border); background: #0b0e0f; } .access-subtabs button { min-width: 0; height: 42px; display: grid; place-content: center; gap: 3px; padding: 4px; border: 0; border-left: 1px solid var(--shd-border); border-bottom: 2px solid transparent; background: transparent; color: var(--shd-text-dim); cursor: pointer; transition: var(--shd-transition); } .access-subtabs button:first-child { border-left: 0; } .access-subtabs button span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .access-subtabs button b { font-size: var(--shd-type-telemetry); } .access-subtabs button:hover, .access-subtabs button:focus-visible { background: #171b1c; color: var(--shd-text); } .access-subtabs button.active { border-bottom-color: var(--shd-orange); background: #211a0e; color: var(--shd-orange); } .access-subtabs button:active { transform: translateY(1px); filter: brightness(0.85); } .access-subtabs button:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--shd-orange); outline-offset: 2px; } .account-retention { color: var(--shd-text-muted); font: 12px/1.55 var(--shd-font-editorial); } .danger-eyebrow { color: var(--shd-danger); } .account-alert.error-alert { background: #261513; border-color: #75443b; border-left-color: #df8069; } .account-alert.error-alert b { color: #df8069; } .account-alert.error-alert span { color: #d2aaa1; } .danger-zone { margin-top: 12px; border: 1px solid #563734; background: #181112; } .danger-zone summary { padding: 10px; color: #df8069; cursor: pointer; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .danger-zone > p, .danger-zone > form { margin: 0; padding: 0 10px 10px; } .danger-zone > p { color: #9f8580; font-size: var(--shd-type-telemetry); line-height: 1.5; } .danger-zone form { padding-bottom: 10px; } .auth-page { display: block; padding: 55px clamp(20px, 5vw, 80px); } .auth-frame { width: min(980px, 100%); min-height: 520px; margin: auto; display: grid; grid-template-columns: 1.15fr 0.85fr; border: 1px solid #34393a; background: #101314; clip-path: polygon(0 0, 96% 0, 100% 7%, 100% 100%, 4% 100%, 0 93%); } .auth-intel { width: auto !important; padding: 65px !important; border: 0 !important; border-right: 1px solid #303536 !important; background: radial-gradient(circle at 15% 80%, #392b15 0, transparent 33%), #0e1112 !important; } .auth-intel h1 { font-size: 66px !important; line-height: 0.85; letter-spacing: -3px; margin: 24px 0; } .auth-intel h1 em { font-style: normal; color: #f6a821; } .auth-intel > p:not(.eyebrow) { max-width: 470px; color: #909698; font: 15px/1.6 var(--shd-font-editorial); } .auth-status { display: flex; justify-content: space-between; margin-top: 55px; padding-top: 14px; border-top: 1px solid #303536; color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .auth-status i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: #75c08c; box-shadow: 0 0 6px #75c08c; margin-right: 5px; } .auth-console { width: auto !important; padding: 34px !important; border: 0 !important; background: #141718 !important; } .auth-console .console-head b { color: #f6a821; } .auth-console .discord { min-height: 48px; margin-top: 18px; padding: 10px 18px; display: flex; align-items: center; justify-content: center; gap: 14px; background: #5865f2; color: #fff; border: 0; border-radius: 4px; font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none; } .auth-console .discord img { display: block; width: 27px; height: 21px; object-fit: contain; flex: 0 0 auto; } .auth-console .discord:hover { background: #4752c4; filter: none; } .auth-console .discord:active { background: #3c45a5; filter: none; } .auth-console .discord:focus-visible { outline-color: #e0e3ff; } .auth-console small { margin-top: 18px; } .signin-provider-rail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; } .signin-provider { position: relative; min-width: 0; min-height: 76px; margin: 0; padding: 8px 4px 7px; display: grid; grid-template-rows: 34px auto; place-items: center; gap: 5px; border: 1px solid #424849; border-radius: 0; background: #101314; color: #dfe1e2; font-family: var(--shd-font-sans); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 800; letter-spacing: 0.3px; text-transform: none; cursor: pointer; transition: var(--shd-transition); } .signin-provider-icon { width: 34px; height: 34px; display: grid; place-items: center; } .signin-provider-icon img { display: block; width: 21px; height: 21px; object-fit: contain; } .signin-provider em { position: absolute; right: 3px; top: 3px; color: #737a7c; font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; letter-spacing: 0.5px; text-transform: uppercase; } .signin-provider:hover:not(:disabled) { transform: translateY(-1px); filter: brightness(1.12); } .signin-provider:active:not(:disabled) { transform: translateY(2px) scale(0.97); } .signin-provider:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .signin-provider:disabled { cursor: not-allowed; opacity: 0.46; filter: saturate(0.55); } .discord-provider { border-color: #5865f2; background: #5865f2; color: #fff; } .discord-provider:hover { background: #4752c4; filter: none !important; } .discord-provider .signin-provider-icon img { width: 25px; height: 19px; } .google-signin-provider { border-color: #8e918f; background: #131314; color: #e3e3e3; } .google-signin-provider .signin-provider-icon { background: #fff; } .apple-signin-provider { border-color: #73777a; background: #000; color: #fff; } .apple-signin-provider .signin-provider-icon img { width: 22px; height: 22px; } .steam-signin-provider { border-color: #66c0f4; background: #171d25; color: #fff; } .steam-signin-provider .signin-provider-icon { color: #fff; } .steam-signin-provider .signin-provider-icon img { width: 25px; height: 25px; } .auth-mode-note { margin: -3px 0 14px; color: #7b8385; font-size: var(--shd-type-telemetry); line-height: 1.5; } .auth-mode-switch { display: grid; grid-template-columns: 1fr 1fr; margin: 12px 0 4px; border: 1px solid #383d3e; } .auth-mode-switch button { height: 34px; border: 0; border-left: 1px solid #383d3e; background: #0d1011; color: #747c7e; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; cursor: pointer; } .auth-mode-switch button:first-child { border-left: 0; } .auth-mode-switch button.active { background: #2b2111; color: var(--shd-orange); box-shadow: inset 0 -2px var(--shd-orange); } .auth-mode-switch button:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .auth-page .auth-console form .full + .identity-note { margin-top: -14px; } .passkey-signin { position: relative; min-height: 48px; margin-top: 18px; } .passkey-signin[aria-busy='true'] { padding-right: 42px; } .passkey-signin[aria-busy='true']:after { content: ''; position: absolute; right: 16px; width: 12px; height: 12px; border: 2px solid #111; border-right-color: transparent; border-radius: 50%; animation: interaction-spin 0.65s linear infinite; } .auth-note { margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .password-fallback { margin: 18px 0; border: 1px solid var(--shd-border); background: #101314; } .password-fallback summary { padding: 12px; color: #8e9698; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; cursor: pointer; } .password-fallback summary:hover { color: var(--shd-orange); } .password-fallback form { padding: 0 12px 12px; } .password-fallback .full { margin-bottom: 0; } .builder-page { width: 100%; min-width: 0; padding-top: 28px; } .builder-command { margin-bottom: 14px; border-bottom: 1px solid #303536; } .builder-command .page-title { margin-bottom: 12px; } .builder-status { display: flex; gap: 24px; padding: 9px 2px; color: #61696b; font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .builder-status i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: #75c08c; box-shadow: 0 0 6px #75c08c; margin-right: 5px; } .builder-page .slot-card { position: relative; overflow: hidden; } .builder-page .slot-card:after { content: ''; position: absolute; right: -24px; bottom: -24px; width: 52px; height: 52px; border: 1px solid #f6a82122; transform: rotate(45deg); } .builder-page .summary { border-top: 2px solid #f6a821; } @media (max-width: 900px) { .filter-bar { grid-template-columns: 1fr 1fr; } .catalogue-hero { align-items: flex-start; } .guide-layout, .profile-dashboard, .auth-frame { grid-template-columns: 1fr; } .profile-command { align-items: flex-start; } .profile-metrics { display: grid; grid-template-columns: 1fr 1fr; } .account-console { order: -1; } .auth-intel { border-right: 0 !important; border-bottom: 1px solid #303536 !important; padding: 42px !important; } .auth-intel h1 { font-size: 52px !important; } } @media (max-width: 560px) { .catalogue-hero, .profile-command { flex-direction: column; align-items: flex-start; } .catalogue-count { text-align: left; margin-top: 20px; } .catalogue-count .primary { justify-self: start; } .filter-bar { grid-template-columns: 1fr; } .guide-meta { position: static; margin-top: 25px; flex-wrap: wrap; } .profile-metrics { width: 100%; margin-top: 20px; } .profile-columns { grid-template-columns: 1fr; } .auth-page { padding: 25px 14px; } .auth-intel, .auth-console { padding: 28px !important; } } @media (max-width: 420px) { .signin-provider-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); } } .discord-connection { display: grid; grid-template-columns: 1fr; gap: 9px; padding: 10px; } .connection-copy { display: flex !important; align-items: center; gap: 10px; } .connection-copy > img { width: 28px; height: 21px; padding: 4px; background: #5865f2; border-radius: 3px; } .discord-link-button { min-height: 42px; padding: 8px 14px; display: flex; align-items: center; justify-content: center; gap: 12px; background: #5865f2; color: #fff !important; border-radius: 4px; font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0; text-transform: none; } .discord-link-button img { display: block; width: 25px; height: 19px; object-fit: contain; } .discord-link-button:hover { background: #4752c4; filter: none; } .discord-link-button:active { background: #3c45a5; filter: none; } .discord-link-button:focus-visible { outline: 2px solid #e0e3ff; outline-offset: 3px; } .discord-link-button[aria-busy='true']::after { content: ''; width: 11px; height: 11px; border: 2px solid #fff; border-right-color: transparent; border-radius: 50%; animation: interaction-spin 0.65s linear infinite; } .provider-stack { display: grid; gap: 7px; } .provider-placeholder { min-height: 52px; display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid var(--shd-border-soft); background: #0d1011; color: #6d7476; opacity: 0.72; } .provider-placeholder > div { display: grid; gap: 3px; } .provider-placeholder b { font-size: var(--shd-type-telemetry); color: #8a9092; } .provider-placeholder small { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .provider-placeholder em { font-style: normal; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; color: #626a6c; } .provider-monogram { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid #3a4041; background: #151819; font-size: var(--shd-type-telemetry); font-weight: 900; } .google-provider { color: #8ab4f8; } .apple-provider { color: #d7d9d5; } .steam-provider { color: #70b9d6; } .provider-connection-card { position: relative; grid-template-columns: 1fr auto !important; min-height: 64px; overflow: hidden; } .connection-state.provider-unlink-trigger { height: auto; padding: 5px 7px; background: transparent; font-family: inherit; cursor: pointer; transition: var(--shd-transition); } .connection-state.provider-unlink-trigger span:last-child { display: none; } .connection-state.provider-unlink-trigger:hover:not(:disabled), .connection-state.provider-unlink-trigger:focus-visible { border-color: var(--shd-danger); background: #281716; color: var(--shd-danger); } .connection-state.provider-unlink-trigger:hover:not(:disabled) span:first-child, .connection-state.provider-unlink-trigger:focus-visible span:first-child { display: none; } .connection-state.provider-unlink-trigger:hover:not(:disabled) span:last-child, .connection-state.provider-unlink-trigger:focus-visible span:last-child { display: inline; } .connection-state.provider-unlink-trigger:focus-visible { outline: 2px solid var(--shd-danger); outline-offset: 2px; } .connection-state.provider-unlink-trigger:disabled { cursor: not-allowed; opacity: 0.55; } .provider-unlink-confirm { position: absolute; z-index: 2; inset: 0; display: grid !important; grid-template-columns: 1fr auto; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid #9a5043; background: #211414; } .provider-unlink-confirm > div:first-child { display: grid !important; gap: 3px; } .provider-unlink-confirm b { color: var(--shd-danger); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .provider-unlink-confirm p { margin: 0; color: #d6aaa1; font-size: var(--shd-type-telemetry); line-height: 1.35; } .provider-unlink-confirm > div:last-child { display: grid !important; grid-template-columns: 74px 104px; gap: 6px; } .provider-unlink-confirm form, .provider-unlink-confirm fieldset { height: 100%; } .provider-unlink-confirm button { width: 100%; height: 32px; padding: 0 7px; border-radius: 0; appearance: none; font-size: var(--shd-type-telemetry); } .provider-unlink-confirm .secondary { border: 1px solid #565d5f; background: #101314; color: #d7d9d5; } .provider-unlink-confirm .secondary:hover { border-color: #8a672b; color: var(--shd-orange); } .provider-unlink-confirm .primary { border: 0; background: var(--shd-orange); color: #111; } .provider-unlink-confirm .primary:hover { background: var(--shd-orange-hover); } .provider-card-message { grid-column: 1/-1; margin: 0; } .linked-connection { grid-template-columns: 1fr auto; } .connection-state { padding: 5px 7px; border: 1px solid #3f6a4c; color: #75c08c; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .unlink-console { margin-top: 8px; } .connection-warning { margin: 8px 0; color: #c29a60; font-size: var(--shd-type-telemetry); line-height: 1.4; } .isac-identity { margin: 10px 0 14px; } .isac-identity > .label { margin-bottom: 6px; } .identity-empty { padding: 12px !important; border: 1px dashed #343a3b; } .isac-avatar-review { margin: 10px 0 14px; } .isac-avatar-review > .label { margin-bottom: 6px; } .avatar-review-card { position: relative; display: grid; grid-template-columns: 58px 1fr auto; align-items: center; gap: 10px; padding: 8px; border: 1px solid #303536; background: #0d1011; overflow: hidden; } .avatar-review-card img { width: 58px; height: 58px; object-fit: cover; border: 1px solid #5a4829; } .avatar-review-card > div { display: grid; gap: 4px; } .avatar-review-card b { font-size: var(--shd-type-telemetry); } .avatar-review-card small { color: #747c7e; font-size: var(--shd-type-telemetry); letter-spacing: 0.4px; } .avatar-review-card > span { color: #75c08c; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .avatar-review-card > span.custom-avatar { color: #f6a821; } .avatar-review-card > .moderation-action { height: 34px; } .avatar-review-note { padding: 9px 0 0; } .avatar-review-card > .avatar-remove-confirm { display: grid; gap: 8px; } .moderation-action, .isac-control-link { position: relative; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border-radius: 0; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.15px; text-transform: uppercase; cursor: pointer; transition: border-color 0.14s ease, background-color 0.14s ease, color 0.14s ease, transform 0.08s ease, filter 0.14s ease; } .moderation-action.secondary, .isac-control-link { border: 1px solid #424849; background: #101314; color: #d7d9d5; } .moderation-action.secondary:hover, .isac-control-link:hover { border-color: #8a672b; background: #181711; color: #f6a821; } .moderation-action.danger { border: 1px solid #70423b; background: #211414; color: #ee8b78; } .moderation-action.danger:hover { border-color: #d06d58; background: #321a17; color: #ffad9d; } .moderation-action:focus-visible, .isac-control-link:focus-visible { outline: 2px solid #f6a821; outline-offset: 3px; } .moderation-action:not(:disabled):active, .isac-control-link:active { transform: translateY(2px) scale(0.985); filter: brightness(0.86); } .moderation-action:disabled { border-color: #343839; background: #121415; color: #5f6668; cursor: not-allowed; opacity: 0.65; } .moderation-panel fieldset[aria-busy='true'] .moderation-action { cursor: wait; padding-right: 34px; } .moderation-panel fieldset[aria-busy='true'] .moderation-action:after { content: ''; position: absolute; right: 12px; width: 10px; height: 10px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: interaction-spin 0.65s linear infinite; } @keyframes interaction-spin { to { transform: rotate(360deg); } } @media (prefers-reduced-motion: reduce) { .moderation-action, .isac-control-link { transition: none; } .moderation-action:not(:disabled):active, .isac-control-link:active { transform: none; } .moderation-panel fieldset[aria-busy='true'] .moderation-action:after, .discord-link-button[aria-busy='true']:after { animation-duration: 1.4s; } } .identity-note { display: block; margin-top: 5px; color: #687073; font-size: var(--shd-type-telemetry); line-height: 1.4; } .passkey-intro { margin: -6px 0 10px; } .passkey-list { display: grid; border: 1px solid var(--shd-border); } .passkey-card { min-height: 48px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; padding: 7px 9px; border-top: 1px solid var(--shd-border-soft); background: #0d1011; } .passkey-card:first-child { border-top: 0; } .passkey-card > div { display: grid; gap: 4px; } .passkey-card b, .verified-email b { font-size: var(--shd-type-telemetry); } .passkey-card small, .verified-email small { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .passkey-remove { height: 30px; padding: 0 8px; border: 1px solid #563734; background: #181112; color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; cursor: pointer; } .passkey-remove:hover { border-color: var(--shd-danger); background: #281716; } .account-method-empty { margin: 0; padding: 20px; text-align: center; border: 1px dashed var(--shd-border); color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .verified-email { display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 9px; border: 1px solid #3f6a4c; background: #101713; } .verified-email > div { display: grid; gap: 4px; } .verified-email > span { color: var(--shd-success); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .method-removal { margin-top: 14px; border: 1px solid #563734; background: #181112; } .method-removal summary { padding: 10px; color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; cursor: pointer; } .method-removal > p, .method-removal > form { margin: 0; padding: 0 10px 10px; } .method-removal > p { color: #9f8580; font-size: var(--shd-type-telemetry); line-height: 1.5; } .brand-name { display: block; max-width: 420px; margin: 10px 0; } .effect-editor { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .effect-band { display: grid; grid-template-columns: 58px minmax(0, 1fr) 100px; align-items: end; gap: 8px; padding: 9px; background: #101314; border: 1px solid #343a3b; } .effect-band > strong { align-self: stretch; display: grid; place-content: center; text-align: center; color: #f6a821; font-size: 23px; border-right: 1px solid #343a3b; } .effect-band > strong small { display: block; color: #707779; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .effect-band .field { margin: 0; } .split-actions { justify-content: space-between; } .split-actions > div { display: flex; gap: 8px; } .brand-set-row { grid-template-columns: 1.1fr 1.2fr 1.2fr 1.2fr 0.6fr 0.3fr; } .empty-dashboard { min-height: 120px; display: grid; place-content: center; text-align: center; gap: 6px; color: #626a6c; } .empty-dashboard strong { font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .empty-dashboard span { font-size: var(--shd-type-telemetry); } .gear-identity { display: grid; grid-template-columns: 2fr 1fr 0.65fr 0.65fr; gap: 8px; } .gear-ranges { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .range-band { grid-template-columns: 58px 1fr 1fr; } .effect-band.unavailable { opacity: 0.4; } .selection-head { display: flex; justify-content: space-between; align-items: end; margin: 14px 0 6px; } .selection-head > div { display: grid; } .selection-head span { font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1.2px; } .selection-head small { font-size: var(--shd-type-telemetry); color: #697174; margin-top: 3px; } .selection-head b { color: #f6a821; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .selection-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #303536; } .selection-grid label { min-height: 38px; display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 5px; padding: 6px 8px; border: 1px solid transparent; border-right-color: #282d2e; border-bottom-color: #282d2e; cursor: pointer; font-size: var(--shd-type-telemetry); } .selection-grid label:hover { background: #171b1c; border-color: #4b4f50; } .selection-grid input { width: auto; margin: 0; accent-color: #f6a821; } .selection-grid small { font-size: var(--shd-type-telemetry); color: #646c6e; letter-spacing: 0.8px; } .selection-grid input:checked ~ small { color: #75c08c; } .gear-row { min-width: 1050px; grid-template-columns: 1.2fr 0.8fr 0.8fr 1.35fr 0.8fr 0.6fr 0.3fr; } .gear-row > span small { font-size: var(--shd-type-telemetry); color: #858b8d; } .unit-field { min-width: 0; margin: 8px 0; padding: 0; border: 0; } .unit-field legend { font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; color: #858b8d; } .unit-picker { display: grid; grid-template-columns: repeat(5, 1fr); height: 32px; margin-top: 5px; border: 1px solid #424849; } .unit-picker label { display: grid; place-items: center; border-left: 1px solid #303536; cursor: pointer; } .unit-picker label:first-child { border-left: 0; } .unit-picker input { position: absolute; opacity: 0; pointer-events: none; } .unit-picker span { width: 100%; height: 100%; display: grid; place-items: center; color: #777f81; font-size: var(--shd-type-telemetry); font-weight: bold; } .unit-picker label:hover span { background: #191d1e; color: #ecebe5; } .unit-picker input:checked + span { background: #2b2111; color: #f6a821; box-shadow: inset 0 -2px #f6a821; } .unit-picker input:focus-visible + span { outline: 2px solid #f6a821; outline-offset: 2px; } .template-field { display: grid; margin-top: 10px; } .template-field small { margin-top: 5px; color: #697174; font-size: var(--shd-type-telemetry); } .tier-preview { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 8px 0 12px; } .tier-preview > div { padding: 9px 11px; border: 1px solid #343a3b; background: #101314; } .tier-preview span, .effect-heading { color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 1.1px; } .tier-preview p { min-height: 30px; margin: 5px 0 0; color: #d9d9d3; font-size: var(--shd-type-telemetry); line-height: 1.45; } .shared-trigger-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 170px; } .shared-effects { border: 1px solid #303536; } .shared-effect { display: grid; grid-template-columns: minmax(180px, 1fr) 120px 120px 30px; gap: 6px; align-items: center; padding: 6px; border-top: 1px solid #292f30; } .shared-effect:first-child { border-top: 0; } .shared-effect select, .shared-effect input { min-width: 0; margin: 0; padding: 7px; font-size: var(--shd-type-telemetry); } .shared-effect button { height: 30px; border: 1px solid #563734; background: #1d1212; color: #da746c; } .effect-heading { min-height: 28px; background: #0d1011; } .effect-heading span:last-child { display: none; } .talent-row { grid-template-columns: minmax(150px, 0.8fr) minmax(105px, 0.45fr) minmax(260px, 1.35fr) minmax(260px, 1.35fr) 80px 45px; min-width: 980px; } .talent-row:not(.table-heading) { align-items: start; padding-top: 10px; padding-bottom: 10px; } .talent-description { margin: 0; color: #b7bcba; font-size: var(--shd-type-telemetry); line-height: 1.45; white-space: normal; } .talent-description.unconfigured { color: #df8069; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .talent-row .state-dot { margin-top: 2px; } .talent-row > button { margin-top: -3px; } .talent-mechanics-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 8px; padding: 8px; border: 1px solid var(--shd-border); background: #0d1011; } .talent-mechanics-grid .field { margin: 0; } .talent-template-note { margin: 6px 0 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.55px; } .talent-cooldown { display: block !important; margin-top: 3px; color: var(--shd-orange) !important; font-style: normal; font-size: var(--shd-type-telemetry) !important; letter-spacing: 0.55px; } .summary-talent .talent-cooldown { margin-top: 5px; } @media (max-width: 700px) { .talent-mechanics-grid { grid-template-columns: 1fr; } } .talent-kpis { grid-template-columns: repeat(6, minmax(105px, 1fr)); } @media (max-width: 1200px) { .talent-kpis { grid-template-columns: repeat(3, minmax(105px, 1fr)); } } @media (max-width: 650px) { .talent-kpis { grid-template-columns: repeat(2, minmax(105px, 1fr)); } } .section-label { margin-top: 10px; border-top: 1px solid #2c3132; } .user-search { display: flex; gap: 6px; } .user-search input { height: 40px; min-width: 240px; margin: 0; padding: 0 10px; font-size: var(--shd-type-telemetry); } .user-search button { height: 40px; } .user-row { min-width: 1160px; grid-template-columns: 1.1fr 0.65fr 1.1fr 1fr 1fr 0.9fr 0.3fr; } .auth-method-summary { display: flex; flex-wrap: wrap; gap: 3px; } .auth-method-summary b { padding: 3px 4px; border: 1px solid #3a4840; color: #75c08c; font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .user-row > span > small { display: block; margin-bottom: 3px; color: #f6a821; font-size: var(--shd-type-telemetry); } .restricted { color: #df8069 !important; } .row-action { justify-self: end; color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: bold; } .selection-head > .row-action { min-height: 34px; display: inline-grid; place-items: center; justify-self: end; padding: 0 12px; border: 1px solid #4c3d26; background: #17140f; color: var(--shd-orange); font-family: var(--shd-font-sans); font-size: var(--shd-type-telemetry); font-weight: 900; line-height: 1; letter-spacing: 0.65px; cursor: pointer; transition: border-color 0.12s ease, background 0.12s ease, color 0.12s ease, transform 0.08s ease; } .selection-head > .row-action:hover, .selection-head > .row-action:focus-visible { border-color: var(--shd-orange); background: #211a0e; color: var(--shd-orange-hover); } .selection-head > .row-action:focus-visible { outline: 1px solid var(--shd-orange); outline-offset: 2px; } .selection-head > .row-action:active:not(:disabled) { transform: translateY(1px); background: #120f0b; filter: brightness(0.9); } .selection-head > .row-action:disabled { border-color: var(--shd-border); background: #111415; color: var(--shd-text-muted); cursor: not-allowed; opacity: 0.58; } @media (max-width: 700px) { .selection-head > .row-action { min-height: 44px; } } @media (prefers-reduced-motion: reduce) { .selection-head > .row-action { transition: none; } .selection-head > .row-action:active:not(:disabled) { transform: none; } } .button-link { display: grid; place-items: center; height: 40px; padding: 0 14px; border: 1px solid #424849; color: #d7d9d5; font-size: var(--shd-type-telemetry); font-weight: bold; } .metric-date { font-size: var(--shd-type-telemetry) !important; } .user-console-grid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 10px; } .user-console-grid .dashboard-editor { margin-top: 0; } .permission-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .moderation-panel .field { display: block; } .console-note { padding: 20px; color: #747c7e; font-size: var(--shd-type-telemetry); } .isac-auth-method-list { display: grid; border: 1px solid #303536; } .isac-auth-method { position: relative; min-height: 45px; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 6px; padding: 7px 8px; border-top: 1px solid #292e2f; background: #0d1011; overflow: hidden; } .isac-auth-method:first-child { border-top: 0; } .isac-auth-method > div { display: grid; gap: 3px; } .isac-auth-method b { font-size: var(--shd-type-telemetry); } .isac-auth-method small { color: #697174; font-size: var(--shd-type-telemetry); line-height: 1.35; } .isac-auth-method > span { color: #626a6c; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .isac-auth-method > span.linked { color: #75c08c; } .isac-auth-method.planned { opacity: 0.55; } .isac-auth-method form, .isac-auth-method fieldset { height: 100%; } .isac-auth-method button { min-height: 28px; height: 100%; padding: 0 7px; font-size: var(--shd-type-telemetry); } .isac-method-confirm { position: absolute; z-index: 2; inset: 0; display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 6px 8px; background: #211414; border: 1px solid #9a5043; } .isac-method-confirm > div:first-child { display: grid; gap: 3px; } .isac-method-confirm > div:first-child b { color: var(--shd-danger); } .isac-method-confirm > div:last-child { height: 30px; display: grid; grid-template-columns: 60px 96px; gap: 5px; } .isac-method-confirm .secondary { border: 1px solid #565d5f; background: #101314; color: #d7d9d5; } .isac-method-confirm .primary { background: var(--shd-orange); color: #111; } .user-history-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .user-history-grid > section { min-width: 0; border: 1px solid #303536; background: #111415; } .history-head { display: flex; justify-content: space-between; padding: 10px; background: #0d1011; color: #727a7c; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .history-list { max-height: 300px; overflow: auto; } .history-list > div { display: grid; grid-template-columns: 1fr auto auto; gap: 8px; padding: 9px 10px; border-top: 1px solid #292e2f; font-size: var(--shd-type-telemetry); } .history-list span { color: #767e80; } .history-list b { font-size: var(--shd-type-telemetry); } .history-list > p { padding: 28px; text-align: center; color: #626a6c; font-size: var(--shd-type-telemetry); } .comment-history > div { grid-template-columns: 1fr; } .comment-history span { white-space: normal; line-height: 1.4; } @media (max-width: 1000px) { .user-console-grid, .user-history-grid { grid-template-columns: 1fr; } .permission-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 560px) { .user-search { width: 100%; } .user-search input { min-width: 0; flex: 1; } .permission-grid { grid-template-columns: 1fr; } } .isac-operation-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 10px 0 0; border: 1px solid var(--shd-border); background: #0d1011; } .isac-operation-tabs button { height: 40px; border: 0; border-left: 1px solid var(--shd-border); border-bottom: 2px solid transparent; background: transparent; color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; cursor: pointer; } .isac-operation-tabs button:first-child { border-left: 0; } .isac-operation-tabs button b { margin-left: 5px; color: var(--shd-success); } .isac-operation-tabs button:hover, .isac-operation-tabs button:focus-visible { background: #171b1c; color: var(--shd-text); } .isac-operation-tabs button.active { border-bottom-color: var(--shd-orange); background: #211a0e; color: var(--shd-orange); } .isac-operation-tabs button:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--shd-orange); outline-offset: 2px; } .user-console-grid { grid-template-columns: minmax(0, 1fr); } .isac-panel-hidden { display: none !important; } .user-history-registries { display: grid; gap: 10px; margin-top: 10px; } .history-registry { min-width: 0; border: 1px solid var(--shd-border); background: var(--shd-surface); } .history-filter { display: grid; grid-template-columns: minmax(180px, 1fr) 170px 80px; gap: 6px; padding: 8px; border-bottom: 1px solid var(--shd-border-soft); } .history-filter input, .history-filter select { height: 34px; margin: 0; padding: 0 9px; font-size: var(--shd-type-telemetry); } .history-filter button { height: 34px; padding: 0 9px; font-size: var(--shd-type-telemetry); } .history-registry:last-child .history-filter { grid-template-columns: minmax(180px, 1fr) 80px; } .history-registry .registry-pagination { margin: 0; border-width: 0 0 1px; } .history-registry .history-list { max-height: none; } .history-registry .comment-history > div { grid-template-columns: minmax(140px, 0.5fr) minmax(260px, 1.5fr) auto; } .history-registry .comment-history span { white-space: normal; line-height: 1.4; } @media (max-width: 650px) { .isac-operation-tabs, .history-filter, .history-registry:last-child .history-filter { grid-template-columns: 1fr; } .isac-operation-tabs button { border-left: 0; border-top: 1px solid var(--shd-border); } .isac-operation-tabs button:first-child { border-top: 0; } } .isac-modal-backdrop { position: fixed; z-index: 50; inset: 0; display: grid; place-items: center; padding: 20px; background: #050607d9; backdrop-filter: blur(3px); } .isac-confirm-modal { width: min(680px, 100%); max-height: calc(100vh - 40px); overflow: auto; padding: 16px; border: 1px solid #5a6061; border-top: 2px solid var(--shd-orange); background: #131617; box-shadow: 0 24px 80px #000; } .access-confirm-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .access-confirm-grid > div { min-height: 120px; align-content: start; display: grid; gap: 5px; padding: 10px; border: 1px solid var(--shd-border); background: #0d1011; } .access-confirm-grid > div > span { margin-bottom: 3px; color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .access-confirm-grid b { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 6px 7px; border-left: 2px solid #596164; background: #151819; color: #aeb3b4; font-size: var(--shd-type-telemetry); } .access-confirm-grid b span { color: inherit; } .access-confirm-grid b em { font-style: normal; color: #747c7e; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .access-confirm-grid b.access-add { border-left-color: var(--shd-success); background: #101713; color: #9bd4ac; } .access-confirm-grid b.access-add em { color: var(--shd-success); } .access-confirm-grid b.access-remove { border-left-color: var(--shd-danger); background: #211414; color: #dca096; text-decoration: line-through; } .access-confirm-grid b.access-remove em { color: var(--shd-danger); text-decoration: none; } .access-confirm-grid small { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); } @media (max-width: 560px) { .access-confirm-grid { grid-template-columns: 1fr; } } .login-investigation-list > div { grid-template-columns: 1fr 1fr 1.2fr auto; align-items: center; } .login-investigation-list > div > div { display: grid; gap: 4px; } .login-investigation-list small { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 0.4px; } .deletion-purge-option { display: grid !important; grid-template-columns: 20px 1fr; align-items: start; gap: 8px; margin: 14px 0 !important; padding: 10px; border: 1px solid #70423b; background: #211414; } .deletion-purge-option input { width: auto; margin: 2px 0 0; accent-color: var(--shd-danger); } .deletion-purge-option span { display: grid; gap: 4px; } .deletion-purge-option b { color: var(--shd-danger); font-size: var(--shd-type-telemetry); } .deletion-purge-option small { margin: 0; color: #b18c85; font-size: var(--shd-type-telemetry); } .site-footer { position: relative; z-index: 2; min-height: 150px; display: grid; grid-template-columns: 1fr auto minmax(300px, 0.9fr); align-items: center; gap: 28px; padding: 28px max(24px, 5vw); border-top: 1px solid var(--shd-border); background: #080a0b; } .footer-brand { width: max-content; } .site-footer > div > p { margin: 8px 0 0; color: var(--shd-text-dim); font: 11px var(--shd-font-editorial); } .footer-links { display: grid; gap: 8px; } .footer-links a { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .fan-disclaimer { min-width: 0; margin: 0; color: #555d5f; font-size: var(--shd-type-telemetry); line-height: 1.6; letter-spacing: 0.55px; overflow-wrap: anywhere; } .legal-page { max-width: 1320px; margin: auto; padding: 55px clamp(18px, 5vw, 72px) 90px; } .legal-hero { padding-bottom: 30px; border-bottom: 1px solid var(--shd-border); } .legal-hero h1 { margin: 18px 0 14px; font-size: clamp(48px, 7vw, 82px); line-height: 0.9; letter-spacing: -3px; } .legal-hero h1 em { color: var(--shd-orange); font-style: normal; } .legal-hero > p:last-child { max-width: 720px; color: var(--shd-text-muted); font: 15px/1.6 var(--shd-font-editorial); } .legal-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 28px; margin-top: 24px; } .legal-index { position: sticky; top: 95px; height: max-content; display: grid; margin: 0; border: 1px solid var(--shd-border); } .legal-index a { padding: 11px; border-top: 1px solid var(--shd-border-soft); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .legal-index a:first-child { border-top: 0; } .legal-index a:hover { color: var(--shd-orange); background: #171b1c; } .legal-document { display: grid; } .legal-document section { scroll-margin-top: 90px; display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 24px 0; border-top: 1px solid var(--shd-border); } .legal-document section:first-child { border-top: 0; padding-top: 0; } .legal-document section > span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .legal-document h2 { font-size: 18px; letter-spacing: 0.6px; } .legal-document p { color: #a1a7a8; font: 13px/1.7 var(--shd-font-editorial); } .legal-document a { color: var(--shd-orange); } @media (max-width: 1100px) { .site-footer { grid-template-columns: 1fr; } .legal-layout { grid-template-columns: 1fr; } .legal-index { position: static; grid-template-columns: 1fr 1fr; } .login-investigation-list > div { grid-template-columns: 1fr 1fr; } } @media (max-width: 500px) { .legal-index, .login-investigation-list > div { grid-template-columns: 1fr; } } .legal-primary { width: max-content; color: #111 !important; margin-top: 8px; } .contact-page { width: 100%; max-width: 1500px; margin: auto; padding: 34px clamp(18px, 4vw, 58px) 52px; } .contact-hero { position: relative; height: auto; min-height: 230px; display: grid; grid-template-columns: minmax(0, 1fr) 310px; align-items: center; gap: 40px; padding: 18px 0 30px; border-bottom: 1px solid var(--shd-border); background: transparent; } .contact-hero > div { min-width: 0; } .contact-hero h1 { margin: 18px 0 14px; font-size: clamp(52px, 7vw, 88px); line-height: 0.85; letter-spacing: -4px; } .contact-hero h1 em { color: var(--shd-orange); font-style: normal; } .contact-hero > div > p:last-child { max-width: 690px; margin-bottom: 0; color: var(--shd-text-muted); font: 15px/1.6 var(--shd-font-editorial); } .discord-contact { min-height: 82px; display: grid; grid-template-columns: 1fr auto; align-content: center; gap: 4px 10px; padding: 15px 17px; border: 1px solid #6571dc; background: #171a32; color: #aeb6ff; } .discord-contact span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.2px; } .discord-contact strong { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .discord-contact b { grid-column: 2; grid-row: 1/3; align-self: center; font-size: 18px; } .discord-contact:hover, .discord-contact:focus-visible { border-color: #929bff; background: #202446; color: #fff; } .contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; align-items: start; gap: 12px; margin-top: 12px; } .contact-console, .contact-guidance { border: 1px solid var(--shd-border); background: var(--shd-surface); } .contact-console { padding: 16px; } .contact-console-head { min-height: 45px; display: flex; align-items: start; justify-content: space-between; padding-bottom: 10px; margin-bottom: 13px; border-bottom: 1px solid var(--shd-border); } .contact-console-head > div { display: grid; gap: 4px; } .contact-console-head span { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .contact-console-head strong { font-size: 13px; } .contact-console-head > b { color: var(--shd-success); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .contact-console .segmented-choice > div { height: 40px; } .contact-console .field { margin: 10px 0; } .contact-console textarea { line-height: 1.5; } .contact-identity { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; } .contact-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; } .dmca-contact-fields { margin-top: 15px; padding: 12px; border: 1px solid #74552a; border-left: 2px solid var(--quality-high-end); background: #131108; } .dmca-contact-fields > header { height: auto; display: flex; align-items: center; justify-content: space-between; padding: 0 0 9px; border-bottom: 1px solid #493a22; background: transparent; } .dmca-contact-fields > header > div { display: grid; gap: 4px; } .dmca-contact-fields > header span { color: #82755f; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .dmca-contact-fields > header strong { color: var(--quality-high-end); font-size: var(--shd-type-telemetry); } .dmca-contact-fields > header a { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .dmca-contact-fields > p { margin: 10px 0; color: #9b927f; font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .legal-attestation { min-height: 46px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 9px; margin-top: 7px; padding: 8px; border: 1px solid #3c382e; background: #0d0f0d; color: #b5b0a3; font-size: var(--shd-type-telemetry); line-height: 1.45; cursor: pointer; } .legal-attestation input { width: auto; margin: 0; accent-color: var(--shd-orange); } .legal-attestation:has(input:checked) { border-color: #7c5c29; background: #1b170d; } .contact-guidance { height: max-content; display: grid; } .contact-guidance > div { position: relative; min-height: 126px; padding: 16px 16px 14px 50px; border-top: 1px solid var(--shd-border); } .contact-guidance > div:first-child { border-top: 0; } .contact-guidance > div > span { position: absolute; left: 15px; top: 17px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .contact-guidance h2 { font-size: 13px; letter-spacing: 0.8px; } .contact-guidance p { margin: 0; color: var(--shd-text-muted); font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .contact-guidance a { display: inline-block; margin-top: 10px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .contact-guidance > small { padding: 14px; border-top: 1px solid var(--shd-border); color: var(--shd-danger); font-size: var(--shd-type-telemetry); line-height: 1.5; letter-spacing: 0.6px; } .contact-success { min-height: 300px; display: flex; align-items: center; justify-content: center; gap: 16px; text-align: left; } .contact-success > span { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid var(--shd-success); color: var(--shd-success); font-size: 18px; } .contact-success strong { font-size: 13px; letter-spacing: 1px; } .contact-success p { max-width: 430px; margin: 7px 0 0; color: var(--shd-text-muted); font: 13px/1.55 var(--shd-font-editorial); } .contact-message-page { width: 100%; max-width: 1200px; min-height: calc(100vh - var(--shd-header-height)); margin: auto; padding: 36px clamp(18px, 4vw, 55px) 70px; } .contact-back { display: inline-block; margin-bottom: 12px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .contact-message { border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: var(--shd-surface); } .contact-message > header { position: static; height: 62px; display: flex; justify-content: space-between; padding: 0 17px; border-bottom: 1px solid var(--shd-border); background: #0d1011; } .contact-message > header > div { display: grid; gap: 4px; } .contact-message > header span { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .contact-message > header strong { font-size: var(--shd-type-telemetry); } .contact-message > header time { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .contact-message-title { padding: 28px clamp(20px, 5vw, 55px); border-bottom: 1px solid var(--shd-border); } .contact-message-title h1 { margin: 12px 0; font-size: clamp(30px, 5vw, 48px); } .contact-message-title > p:last-child { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .contact-message-title a, .contact-message section a { color: var(--shd-orange); } .contact-message > section { padding: 24px clamp(20px, 5vw, 55px); border-bottom: 1px solid var(--shd-border); } .contact-message > section h2 { font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .contact-message > section > p { margin: 12px 0 0; color: #c0c4c5; font: 14px/1.7 var(--shd-font-editorial); white-space: pre-wrap; } .contact-dmca-record dl { display: grid; gap: 10px; } .contact-dmca-record dl > div { display: grid; grid-template-columns: 160px 1fr; gap: 12px; padding-top: 10px; border-top: 1px solid var(--shd-border-soft); } .contact-dmca-record dt { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .contact-dmca-record dd { margin: 0; color: #c0c4c5; font: 12px/1.6 var(--shd-font-editorial); white-space: pre-wrap; } .contact-message > footer { display: flex; justify-content: flex-end; padding: 14px; } .contact-message > footer .primary { padding: 13px 16px; } @media (max-width: 900px) { .contact-hero, .contact-layout { grid-template-columns: 1fr; } .contact-hero { min-height: 0; align-items: start; gap: 20px; padding-top: 8px; } .discord-contact { width: 100%; } } @media (max-width: 600px) { .contact-page { padding-top: 24px; padding-bottom: 36px; } .contact-hero h1 { letter-spacing: -2.5px; } .contact-identity { grid-template-columns: 1fr; } .contact-console .segmented-choice > div { height: auto; grid-template-columns: 1fr; } .contact-console .segmented-choice span { min-height: 44px; } .dmca-contact-fields > header { align-items: flex-start; flex-direction: column; gap: 8px; } .contact-dmca-record dl > div { grid-template-columns: 1fr; } .contact-message > footer .primary { width: 100%; } } @media (max-width: 1100px) { .effect-editor { grid-template-columns: 1fr; } .selection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 900px) { .gear-identity, .gear-ranges { grid-template-columns: 1fr 1fr; } } @media (max-width: 560px) { .effect-band { grid-template-columns: 48px 1fr; } .effect-band .field:last-child { grid-column: 2; } .split-actions { align-items: stretch; } .split-actions, .split-actions > div { width: 100%; } .split-actions > div:last-child button { flex: 1; } .gear-identity, .gear-ranges, .selection-grid { grid-template-columns: 1fr; } .range-band { grid-template-columns: 48px 1fr; } .range-band .field:last-child { grid-column: 2; } } .game-icon { display: block; width: 24px; height: 24px; object-fit: contain; } .weapon-editor { border-top-color: #d07a2c; } .weapon-identity-grid { display: grid; grid-template-columns: 1.6fr repeat(5, minmax(0, 1fr)); gap: 8px; } .weapon-fixed-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; } .damage-type-picker { min-width: 0; margin: 0; padding: 0; border: 0; } .damage-type-picker legend { color: #858b8d; font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .damage-type-picker > div { height: 32px; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 5px; border: 1px solid #363b3c; background: #0d0f10; } .damage-type-picker label { min-width: 0; border-left: 1px solid #303536; cursor: pointer; } .damage-type-picker label:first-child { border-left: 0; } .damage-type-picker input { position: absolute; opacity: 0; pointer-events: none; } .damage-type-picker span { height: 100%; display: flex; align-items: center; justify-content: center; gap: 3px; color: #737a7c; } .damage-type-picker .game-icon { width: 17px; height: 17px; opacity: 0.62; } .damage-type-picker b { overflow: hidden; font-size: var(--shd-type-telemetry); letter-spacing: 0.25px; text-overflow: ellipsis; } .damage-type-picker label:hover span { background: #171b1c; color: #ecebe5; } .damage-type-picker label:active span { transform: translateY(1px); filter: brightness(0.88); } .damage-type-picker input:checked + span { background: #211a0e; color: #f6a821; box-shadow: inset 0 -2px #f6a821; } .damage-type-picker input:checked + span .game-icon { opacity: 1; } .damage-type-picker input:focus-visible + span { outline: 2px solid #f6a821; outline-offset: 2px; } .exotic-toggle > span { min-height: 32px; margin-top: 5px; padding: 0 9px; display: flex; align-items: center; gap: 7px; border: 1px solid #363b3c; background: #0d0f10; color: #d3d5d1; font-size: var(--shd-type-telemetry); } .exotic-toggle input { width: auto; margin: 0; accent-color: #f6a821; } .weapon-tier-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 9px; } .weapon-tier-card { min-width: 0; margin: 0; padding: 7px; border: 1px solid #3b4142; background: #101314; } .weapon-tier-card legend { padding: 0 7px; color: #f6a821; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1.2px; } .weapon-range-row { display: grid; grid-template-columns: 65px 1fr 1fr; gap: 5px; align-items: end; padding: 5px; border-top: 1px solid #282e2f; } .weapon-range-row:first-of-type { border-top: 0; } .weapon-range-row > strong { align-self: center; display: flex; align-items: center; gap: 4px; color: #d7d9d5; font-size: var(--shd-type-telemetry); } .weapon-range-row > strong .game-icon { width: 20px; height: 20px; } .weapon-range-row > strong small { display: block; color: #596164; font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .weapon-range-row label { color: #737a7c; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .weapon-range-row input { margin-top: 3px; padding: 7px; font-size: var(--shd-type-telemetry); } .weapon-talent-pools { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; } .compact-selection { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 210px; overflow: auto; } .weapon-base-bonuses, .weapon-augment-effects { display: grid; gap: 5px; margin-top: 7px; } .base-bonus-row, .augment-effect { display: grid; grid-template-columns: 35px minmax(180px, 1fr) 130px 30px; gap: 6px; align-items: center; padding: 5px; border: 1px solid #303536; background: #101314; } .base-bonus-row > strong, .augment-effect > strong { height: 100%; display: grid; place-items: center; background: #171b1c; color: #f6a821; font-size: var(--shd-type-telemetry); } .base-bonus-row .field, .augment-effect .field { margin: 0; } .base-bonus-row button, .augment-effect button { height: 30px; border: 1px solid #563734; background: #1d1212; color: #da746c; cursor: pointer; } .base-bonus-row button:disabled { opacity: 0.3; cursor: not-allowed; } .augment-effect:not(:has(> button)) { grid-template-columns: 35px minmax(180px, 1fr) 130px; } .augment-sequence { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 5px; margin-top: 7px; } .augment-sequence > div { min-height: 42px; display: grid; place-items: center; padding: 5px; border: 1px solid #303536; background: #0d1011; } .augment-sequence b { color: #f6a821; font-size: var(--shd-type-telemetry); } .augment-sequence span { color: #727a7c; font-size: var(--shd-type-telemetry); } .augment-sequence .exotic-step { border-color: #875d25; background: #211a0e; } .weapon-row { min-width: 1180px; grid-template-columns: 1.3fr 0.7fr 1.2fr 0.6fr 0.6fr 0.5fr 0.5fr 0.3fr; } .weapon-row > span small { color: #596164; } .weapon-damage-label { display: flex !important; align-items: center; gap: 4px; } .weapon-damage-label .game-icon { width: 16px; height: 16px; } .weapon-dashboard-table { margin-top: 10px; } .assignment-picker { border: 1px solid #303536; background: #0d1011; } .assignment-selected { display: grid; grid-template-columns: 70px 1fr; min-height: 45px; border-bottom: 1px solid #303536; } .assignment-summary { display: grid; place-items: center; background: #15191a; } .assignment-summary span { color: #687073; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .assignment-summary b { color: #f6a821; font-size: 14px; } .assignment-chips { display: flex; align-items: center; gap: 5px; overflow: auto; padding: 6px; } .assignment-chips > button { flex: 0 0 auto; display: flex; align-items: center; gap: 7px; padding: 6px 8px; border: 1px solid #6b5128; background: #211a0e; color: #e2cda7; font-size: var(--shd-type-telemetry); cursor: pointer; } .assignment-chips > button:hover { border-color: #f6a821; color: #f6a821; } .assignment-chips > button:active { transform: translateY(1px); } .assignment-chips small { color: #596164; font-size: var(--shd-type-telemetry); } .assignment-search { display: block; padding: 7px 8px; color: #70787a; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .assignment-search input { height: 32px; margin-top: 5px; padding: 0 9px; font-size: var(--shd-type-telemetry); } .assignment-results-head { height: 27px; display: flex; align-items: center; justify-content: space-between; padding: 0 9px; border-top: 1px solid #262b2c; border-bottom: 1px solid #262b2c; color: #687073; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .assignment-results-head b { color: #8a672b; } .assignment-results { max-height: 210px; overflow: auto; } .assignment-results > button { width: 100%; min-height: 34px; display: flex; align-items: center; justify-content: space-between; padding: 6px 9px; border: 0; border-top: 1px solid #24292a; background: #111415; color: #a4aaac; text-align: left; font-size: var(--shd-type-telemetry); cursor: pointer; } .assignment-results > button:first-child { border-top: 0; } .assignment-results > button:hover, .assignment-results > button:focus-visible { background: #171b1c; color: #fff; box-shadow: inset 2px 0 #f6a821; } .assignment-results > button.selected { background: #211a0e; color: #f6a821; box-shadow: inset 2px 0 #f6a821; } .assignment-results > button b { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .assignment-results > button:active { transform: translateY(1px); filter: brightness(0.88); } .assignment-results > p { margin: 0; padding: 25px; text-align: center; color: #596164; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .assignment-picker.compact { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(120px, 0.85fr) minmax(135px, 1fr); min-width: 0; } .assignment-picker.compact:focus-within, .assignment-picker.compact.open { z-index: 20; border-color: #8a672b; } .assignment-picker.compact .assignment-selected { grid-template-columns: 42px minmax(0, 1fr); min-width: 0; min-height: 40px; border-right: 1px solid var(--shd-border); border-bottom: 0; } .assignment-picker.compact .assignment-summary span { font-size: var(--shd-type-telemetry); } .assignment-picker.compact .assignment-summary b { font-size: var(--shd-type-telemetry); } .assignment-picker.compact .assignment-chips { min-width: 0; padding: 4px; } .assignment-picker.compact .assignment-chips > button { max-width: 100%; padding: 5px 6px; } .assignment-picker.compact .assignment-chips > button span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .assignment-picker.compact .assignment-search { display: grid; align-content: center; padding: 4px; } .assignment-picker.compact .assignment-search > span { display: none; } .assignment-picker.compact .assignment-search input { height: 32px; margin: 0; } .assignment-picker.compact .assignment-results-head, .assignment-picker.compact .assignment-results { display: none; position: absolute; left: -1px; right: -1px; background: #0d1011; } .assignment-picker.compact.open .assignment-results-head { top: 100%; display: flex; border: 1px solid #8a672b; border-bottom-color: var(--shd-border); } .assignment-picker.compact.open .assignment-results { top: calc(100% + 27px); display: block; border: 1px solid #8a672b; border-top: 0; box-shadow: 0 12px 24px #000b; } .assignment-picker.compact .assignment-results > button { min-height: 38px; } @media (max-width: 600px) { .assignment-picker.compact { grid-template-columns: 1fr; } .assignment-picker.compact .assignment-selected { border-right: 0; border-bottom: 1px solid var(--shd-border); } } .registry-pagination { width: 100%; height: auto; min-height: 48px; margin: 8px 0 0; padding: 7px 9px; display: grid; grid-template-columns: minmax(190px, 260px) auto 1fr auto; align-items: center; gap: 12px; border: 1px solid #303536; border-bottom: 0; background: #0f1213; } .registry-pagination:not(:has(.pagination-search)) { grid-template-columns: auto 1fr auto; } .pagination-search { min-width: 0; display: grid; grid-template-columns: minmax(100px, 1fr) auto auto; align-items: center; gap: 4px; } .pagination-search input[type='search'] { min-width: 0; height: 30px; margin: 0; padding: 0 8px; font-size: var(--shd-type-telemetry); } .pagination-search button, .pagination-search > a { height: 30px; display: grid; place-items: center; margin: 0; padding: 0 9px; border: 1px solid #3b4142; background: #111415; color: #8c9395; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; cursor: pointer; } .pagination-search button:hover, .pagination-search button:focus-visible, .pagination-search > a:hover, .pagination-search > a:focus-visible { border-color: #8a672b; color: var(--shd-orange); } .pagination-search button:active, .pagination-search > a:active { transform: translateY(1px); filter: brightness(0.88); } .pagination-range { display: flex; align-items: center; gap: 6px; color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .pagination-range b { color: #d7d9d5; font-size: var(--shd-type-telemetry); } .pagination-pages { display: flex; align-items: center; justify-content: center; gap: 4px; } .pagination-pages a, .pagination-sizes a { min-width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid #343a3b; background: #111415; color: #8c9395; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; cursor: pointer; } .pagination-pages a:first-child, .pagination-pages a:last-child { min-width: 58px; padding: 0 8px; } .pagination-pages a:hover, .pagination-pages a:focus-visible, .pagination-sizes a:hover, .pagination-sizes a:focus-visible { border-color: #8a672b; color: #f6a821; } .pagination-pages a.active, .pagination-sizes a.active { border-color: #f6a821; background: #211a0e; color: #f6a821; } .pagination-pages a:active, .pagination-sizes a:active { transform: translateY(1px); filter: brightness(0.88); } .pagination-pages a.disabled { opacity: 0.35; pointer-events: none; } .pagination-gap { color: #555d5f; font-size: var(--shd-type-telemetry); } .pagination-sizes { display: flex; align-items: center; gap: 4px; } .pagination-sizes > span { margin-right: 3px; color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .pagination-sizes a { min-width: 34px; } .registry-pagination a:focus-visible { outline: 2px solid #f6a821; outline-offset: 2px; } .registry-pagination + .dashboard-table { margin-top: 0; } @media (max-width: 1100px) { .registry-pagination, .registry-pagination:not(:has(.pagination-search)) { grid-template-columns: 1fr 1fr; } .pagination-search { grid-column: 1/3; } .pagination-pages { justify-content: flex-end; } } @media (max-width: 650px) { .registry-pagination, .registry-pagination:not(:has(.pagination-search)) { grid-template-columns: 1fr; } .pagination-search { grid-column: auto; } .pagination-range, .pagination-pages, .pagination-sizes { justify-content: center; } } @media (max-width: 560px) { .pagination-search { grid-template-columns: minmax(0, 1fr) auto; } .pagination-search > a { grid-column: 1/3; } .pagination-pages a:not(:first-child):not(:last-child):not(.active), .pagination-gap { display: none; } .pagination-sizes > span { display: none; } } @media (max-width: 1200px) { .weapon-identity-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .weapon-fixed-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .weapon-tier-grid { grid-template-columns: 1fr; } .weapon-talent-pools { grid-template-columns: 1fr; } } @media (max-width: 700px) { .weapon-identity-grid, .weapon-fixed-grid { grid-template-columns: 1fr 1fr; } .compact-selection { grid-template-columns: 1fr; } .base-bonus-row, .augment-effect, .augment-effect:not(:has(> button)) { grid-template-columns: 30px 1fr; } .base-bonus-row .field:nth-of-type(2), .augment-effect .field:nth-of-type(2) { grid-column: 2; } .base-bonus-row > button, .augment-effect > button { grid-column: 2; } .augment-sequence { grid-template-columns: 1fr 1fr; } } @media (max-width: 480px) { .weapon-identity-grid, .weapon-fixed-grid { grid-template-columns: 1fr; } .weapon-range-row { grid-template-columns: 45px 1fr 1fr; } } .weapon-tier-card.unavailable { position: relative; opacity: 0.42; border-color: #292d2e; } .weapon-tier-card.unavailable .weapon-range-row { filter: grayscale(1); } .tier-unavailable { margin: 0; padding: 7px; border-bottom: 1px solid #282e2f; background: #0d1011; color: #7b8284; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; text-align: center; } .core-range-row > strong { gap: 7px; } .core-icon-stack { display: flex; align-items: center; } .core-icon-stack .game-icon { width: 17px; height: 17px; margin-left: -7px; } .core-icon-stack .game-icon:first-child { margin-left: 0; } .weapon-archive-action { min-height: 40px; padding: 0 13px; } .weapon-archive-action > b { font-size: var(--shd-type-telemetry); transform: rotate(90deg); } .legal-table-wrap { overflow-x: auto; margin: 18px 0; } .legal-table { width: 100%; min-width: 720px; border-collapse: collapse; border: 1px solid var(--shd-border); background: #0b0e0f; } .legal-table th, .legal-table td { padding: 12px 14px; border: 1px solid var(--shd-border); text-align: left; vertical-align: top; } .legal-table th { color: var(--shd-orange); background: #111516; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .legal-table td { color: #a1a7a8; font: 12px/1.55 var(--shd-font-editorial); } .legal-table code, .legal-document code { color: #d9dedf; font: 11px Consolas, monospace; } .cookie-notice { position: fixed; z-index: 1000; right: 24px; bottom: 24px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 22px; width: min(620px, calc(100vw - 48px)); padding: 18px 20px; border: 1px solid var(--shd-orange); background: rgba(10, 13, 14, 0.98); box-shadow: 0 14px 48px #000c, 4px 0 0 var(--shd-orange); } .cookie-notice .eyebrow { margin: 0 0 8px; } .cookie-notice div > p:not(.eyebrow) { margin: 0; color: var(--shd-text-muted); font: 12px/1.5 var(--shd-font-editorial); } .cookie-notice a { display: inline-block; margin-top: 10px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .cookie-notice button { min-width: 84px; } @media (max-width: 600px) { .cookie-notice { right: 12px; bottom: 12px; grid-template-columns: 1fr; width: calc(100vw - 24px); } .cookie-notice button { width: 100%; } } .kpi-filters { height: auto; } .kpi-filters > a { position: relative; min-height: 70px; padding: 11px 13px; background: #111415; border: 1px solid #2d3233; border-top: 2px solid #3a4041; display: grid; color: inherit; cursor: pointer; } .kpi-filters > a:hover, .kpi-filters > a:focus-visible { border-color: #8a672b; border-top-color: var(--shd-orange); background: #171a1b; } .kpi-filters > a.active { border-color: #8a672b; border-top-color: var(--shd-orange); background: #211a0e; box-shadow: inset 0 -2px #f6a821; } .kpi-filters > a:active { transform: translateY(1px); filter: brightness(0.88); } .kpi-filters > a span { font-size: var(--shd-type-telemetry); letter-spacing: 1.3px; color: #737a7c; } .kpi-filters > a strong { font-size: 23px; line-height: 1.1; margin: 3px 0; } .kpi-filters > a small { font-size: var(--shd-type-telemetry); color: #555d5f; } .kpi-filters > a.active span, .kpi-filters > a.active strong { color: var(--shd-orange); } .role-kpis { grid-template-columns: repeat(5, minmax(105px, 1fr)); } .role-identity { grid-template-columns: minmax(220px, 0.7fr) minmax(320px, 1.3fr) !important; } .permission-catalogue { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-top: 8px; } .permission-catalogue label { min-height: 54px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid #303536; background: #0d1011; cursor: pointer; } .permission-catalogue label:hover, .permission-catalogue label:focus-within { border-color: #8a672b; background: #151819; } .permission-catalogue label:active { transform: translateY(1px); filter: brightness(0.88); } .permission-catalogue input { width: auto; margin: 0; accent-color: var(--shd-orange); } .permission-catalogue span { display: grid; gap: 4px; } .permission-catalogue b { color: #d7d9d5; font-size: var(--shd-type-telemetry); } .permission-catalogue small { color: #626a6c; font-size: var(--shd-type-telemetry); line-height: 1.35; } .permission-catalogue em { color: #596164; font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; letter-spacing: 0.7px; } .permission-catalogue label:has(input:checked) { border-color: #6e5226; background: #211a0e; } .permission-catalogue label:has(input:checked) em { color: var(--shd-orange); } .role-row { min-width: 960px; grid-template-columns: 1.1fr 0.55fr 2fr 0.65fr 0.3fr; } .role-permission-summary { display: flex !important; flex-wrap: wrap; gap: 3px; } .role-permission-summary b { padding: 3px 5px; border: 1px solid #3a4840; color: #75c08c; font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } @media (max-width: 1000px) { .role-kpis { grid-template-columns: repeat(3, minmax(105px, 1fr)); } } @media (max-width: 700px) { .permission-catalogue, .role-identity { grid-template-columns: 1fr !important; } .role-kpis { grid-template-columns: 1fr 1fr; } } .audit-toolbar > div:last-child { display: block; } .audit-filter { height: auto; display: grid; grid-template-columns: minmax(220px, 1fr) 210px 240px auto; gap: 7px; margin: 10px 0; } .audit-filter input, .audit-filter select, .audit-filter button { height: 40px; margin: 0; } .audit-filter button { display: inline-flex; align-items: center; justify-content: center; padding: 0 14px; line-height: 1; } .audit-row { min-width: 980px; grid-template-columns: 1fr 1fr 1.3fr 0.85fr 0.35fr; } .audit-entry { border-top: 1px solid #272c2d; } .audit-entry:first-of-type { border-top: 0; } .audit-entry summary { border: 0; cursor: pointer; list-style: none; } .audit-entry summary::-webkit-details-marker { display: none; } .audit-entry summary:hover { background: #15191a; } .audit-entry summary:active { transform: translateY(1px); filter: brightness(0.88); } .audit-entry summary > b { justify-self: end; color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .audit-entry[open] summary { background: #171a1b; box-shadow: inset 2px 0 var(--shd-orange); } .audit-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 1px; background: #303536; } .audit-comparison section { min-width: 0; padding: 12px; background: #0b0e0f; } .audit-comparison span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .audit-comparison pre { max-height: 320px; overflow: auto; margin: 9px 0 0; color: #aeb4b5; font: var(--shd-type-telemetry)/1.5 Consolas, monospace; white-space: pre-wrap; word-break: break-word; } @media (max-width: 900px) { .audit-filter { grid-template-columns: 1fr 1fr; } .audit-comparison { grid-template-columns: 1fr; } } @media (max-width: 560px) { .audit-filter { grid-template-columns: 1fr; } } .audit-kpis { grid-template-columns: repeat(5, minmax(120px, 1fr)); } .access-baseline-note { display: flex; align-items: center; gap: 10px; margin: 9px 0; padding: 8px 10px; border-left: 2px solid var(--shd-info); background: #0e1518; color: #94c3d5; } .access-baseline-note b { flex: 0 0 auto; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .access-baseline-note span { color: #6f929f; font-size: var(--shd-type-telemetry); } .access-baseline-note.compact { margin: 0 0 8px; } .audit-revert-bar { min-height: 56px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; border-top: 1px solid #4c302d; background: #1c1111; } .audit-revert-bar > span { color: #a87870; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .audit-revert-button { min-width: 174px; height: 40px; padding: 0 14px; } .audit-revert-button > b { font-size: 15px; line-height: 1; } .audit-revert-button:hover, .audit-revert-button:focus-visible { box-shadow: inset 3px 0 var(--shd-danger); } .audit-revert-bar.completed { border-color: #36563f; background: #101713; } .audit-revert-bar.completed > span { color: var(--shd-success); } .audit-revert-modal > p { color: #969d9f; font: 13px/1.6 var(--shd-font-editorial); } .audit-revert-modal code { color: #d7d9d5; font: 11px Consolas, monospace; } .audit-revert-summary { display: grid; grid-template-columns: 1fr 1fr 1.4fr; gap: 7px; margin: 14px 0; } .audit-revert-summary > div { min-width: 0; display: grid; gap: 5px; padding: 9px; border: 1px solid #303536; background: #0d1011; } .audit-revert-summary span { color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .audit-revert-summary b { overflow: hidden; text-overflow: ellipsis; color: #d7d9d5; font-size: var(--shd-type-telemetry); white-space: nowrap; } @media (max-width: 600px) { .audit-revert-bar { align-items: stretch; flex-direction: column; } .audit-revert-button { width: 100%; } .audit-revert-summary { grid-template-columns: 1fr; } } .metrics-auto { height: 40px; display: flex !important; align-items: center; gap: 7px; padding: 0 10px; border: 1px solid var(--shd-border); background: #0d1011; color: #747c7e; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; cursor: pointer; } .metrics-auto input { width: auto; margin: 0; accent-color: var(--shd-orange); } .metrics-auto:has(input:checked) { border-color: #6e5226; background: #211a0e; color: var(--shd-orange); } .metrics-refresh { min-width: 154px; } .metrics-kpis strong { font-size: 18px; } .metrics-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; } .metrics-panel { min-width: 0; border: 1px solid var(--shd-border); background: var(--shd-surface); } .metrics-panel > header { min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 13px; border-bottom: 1px solid var(--shd-border); background: #0d1011; } .metrics-panel h3 { margin: 4px 0 0; font-size: 14px; letter-spacing: 0.5px; } .metrics-panel > header > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .metric-lines { display: grid; } .metric-lines > div { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 12px; border-top: 1px solid #252a2b; } .metric-lines > div:first-child { border-top: 0; } .metric-lines span { color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 0.9px; } .metric-lines b { max-width: 65%; overflow: hidden; color: #d5d8d5; font-size: var(--shd-type-telemetry); text-align: right; text-overflow: ellipsis; white-space: nowrap; } .metrics-foot { margin: 10px 0 0; padding: 9px; border: 1px solid #292e2f; color: #596164; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } @media (max-width: 850px) { .metrics-grid { grid-template-columns: 1fr; } } @media (max-width: 560px) { .metrics-auto, .metrics-refresh { width: 100%; } .metric-lines b { max-width: 58%; } } .quality-chip { display: inline-flex; width: max-content; align-items: center; padding: 4px 6px; border: 1px solid currentColor; background: #1115; color: var(--quality-standard); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; text-transform: uppercase; } .quality-standard { color: var(--quality-standard) !important; } .quality-specialized { color: var(--quality-specialized) !important; } .quality-superior { color: var(--quality-superior) !important; } .quality-highend { color: var(--quality-high-end) !important; } .protocol-editor { border-top-color: var(--quality-specialized); } .protocol-identity-grid { display: grid; grid-template-columns: 1.4fr 0.7fr 1.5fr; gap: 8px; } .protocol-type-picker { min-width: 0; margin: 0; padding: 0; border: 0; } .protocol-type-picker legend { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .protocol-type-picker > div { height: 32px; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 5px; border: 1px solid #363b3c; background: #0d0f10; } .protocol-type-picker label { min-width: 0; border-left: 1px solid var(--shd-border); cursor: pointer; } .protocol-type-picker label:first-child { border-left: 0; } .protocol-type-picker input { position: absolute; opacity: 0; pointer-events: none; } .protocol-type-picker span { height: 100%; display: flex; align-items: center; justify-content: center; gap: 4px; color: #737a7c; } .protocol-type-picker .game-icon { width: 18px; height: 18px; opacity: 0.55; } .protocol-type-picker b { font-size: var(--shd-type-telemetry); } .protocol-type-picker label:hover span { background: #171b1c; color: var(--shd-text); } .protocol-type-picker label:active span { transform: translateY(1px); filter: brightness(0.88); } .protocol-type-picker input:checked + span { background: #211a0e; color: var(--shd-orange); box-shadow: inset 0 -2px var(--shd-orange); } .protocol-type-picker input:checked + span .game-icon { opacity: 1; } .protocol-type-picker input:focus-visible + span { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .protocol-level-preview { display: grid; grid-template-columns: minmax(220px, 1fr); gap: 3px; padding: 8px 10px; border: 1px solid var(--shd-border); background: #0d1011; } .protocol-level-preview input { width: 100%; margin: 0; accent-color: var(--shd-orange); } .protocol-level-preview > div { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 7px; color: #626a6c; font-size: var(--shd-type-telemetry); } .protocol-level-preview i { height: 2px; background: var(--shd-orange); } .protocol-attribute-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 7px; } .protocol-attribute-card { display: grid; gap: 6px; padding: 8px; border: 1px solid var(--shd-border); background: #101314; } .protocol-attribute-card header { min-height: 38px; display: flex; align-items: center; gap: 6px; border-bottom: 1px solid #282e2f; } .protocol-attribute-card header .game-icon { width: 25px; height: 25px; } .protocol-attribute-card header div { display: grid; gap: 2px; } .protocol-attribute-card header span { color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .protocol-attribute-card header b { font-size: var(--shd-type-telemetry); } .protocol-attribute-card header > strong { margin-left: auto; color: var(--shd-orange); font-size: 12px; } .protocol-attribute-card .field { margin: 0; } .protocol-attribute-card > small { color: #626a6c; font-size: var(--shd-type-telemetry); text-align: right; } .protocol-talent { margin-top: 12px; padding: 8px; border: 1px solid #71552a; background: #0d1011; } .protocol-talent-identity { display: grid; grid-template-columns: 0.7fr 1.3fr; gap: 8px; } .protocol-talent-identity textarea { min-height: 65px; } .protocol-upgrade-preview { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; margin: 8px 0; } .diamond-control { display: flex; align-items: stretch; border: 1px solid var(--shd-border); } .diamond-control button { min-width: 42px; display: grid; place-items: center; padding: 5px; border: 0; border-left: 1px solid var(--shd-border); background: #111415; color: #596164; cursor: pointer; } .diamond-control button:first-child { border-left: 0; font-size: var(--shd-type-telemetry); font-weight: 900; } .diamond-control button span { font-size: 15px; } .diamond-control button small { font-size: var(--shd-type-telemetry); } .diamond-control button:hover, .diamond-control button:focus-visible { background: #171b1c; color: var(--shd-text); } .diamond-control button:active { transform: translateY(1px); filter: brightness(0.88); } .diamond-control button.active { background: #211a0e; color: var(--shd-orange); box-shadow: inset 0 -2px var(--shd-orange); } .protocol-upgrade-preview > div:last-child { padding: 8px 10px; border: 1px solid var(--shd-border); background: #101314; } .protocol-upgrade-preview > div:last-child span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .protocol-upgrade-preview p { margin: 6px 0 0; color: #d7d9d5; font-size: var(--shd-type-telemetry); line-height: 1.45; } .protocol-talent-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .protocol-talent-effects { display: grid; border: 1px solid var(--shd-border); } .protocol-talent-effects > div { display: grid; grid-template-columns: 28px minmax(140px, 1fr) 90px 80px 28px; gap: 5px; align-items: center; padding: 5px; border-top: 1px solid #282e2f; } .protocol-talent-effects > div:first-child { border-top: 0; } .protocol-talent-effects strong { display: grid; place-items: center; height: 100%; background: #171b1c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .protocol-talent-effects select, .protocol-talent-effects input { min-width: 0; margin: 0; padding: 7px; font-size: var(--shd-type-telemetry); } .protocol-talent-effects span { color: #626a6c; font-size: var(--shd-type-telemetry); text-align: center; } .protocol-talent-effects button { height: 28px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .protocol-talent-effects button:disabled { opacity: 0.3; cursor: not-allowed; } .protocol-row { min-width: 1050px; grid-template-columns: 1.2fr 0.65fr 0.8fr 0.7fr 1.1fr 0.55fr 0.3fr; } .protocol-type-label { display: flex !important; align-items: center; gap: 5px; } .protocol-type-label .game-icon { width: 20px; height: 20px; } .mini-diamonds { color: var(--shd-orange); letter-spacing: 1px; } @media (max-width: 1000px) { .protocol-identity-grid { grid-template-columns: 1fr 1fr; } .protocol-type-picker { grid-column: 1/3; } .protocol-attribute-grid, .protocol-talent-grid { grid-template-columns: 1fr; } .protocol-upgrade-preview { grid-template-columns: 1fr; } } @media (max-width: 650px) { .protocol-identity-grid, .protocol-talent-identity { grid-template-columns: 1fr; } .protocol-type-picker { grid-column: auto; } .protocol-type-picker b { font-size: var(--shd-type-telemetry); } .diamond-control { overflow-x: auto; } .protocol-talent-effects > div { grid-template-columns: 26px 1fr; } .protocol-talent-effects input, .protocol-talent-effects span, .protocol-talent-effects button { grid-column: 2; } } .protocol-profile-registry { margin-bottom: 10px; border: 1px solid var(--shd-border); background: #0d1011; } .protocol-profile-registry > summary { margin: 0; padding: 9px 10px; cursor: pointer; list-style: none; } .protocol-profile-registry > summary::-webkit-details-marker { display: none; } .protocol-profile-registry > summary:hover, .protocol-profile-registry > summary:focus-visible { background: #171b1c; } .protocol-profile-registry > summary:active { transform: translateY(1px); filter: brightness(0.88); } .protocol-profile-registry > summary > div:last-child { display: flex; align-items: center; gap: 10px; } .protocol-profile-registry > summary i { color: var(--shd-orange); font-size: 13px; font-style: normal; transition: transform 0.16s ease; } .protocol-profile-registry[open] > summary { border-bottom: 1px solid var(--shd-border); background: #131718; } .protocol-profile-registry[open] > summary i { transform: rotate(45deg); } .protocol-profile-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; padding: 8px; } .protocol-profile-grid > button { min-width: 0; padding: 7px; border: 1px solid var(--shd-border); background: #111415; color: var(--shd-text-muted); text-align: left; cursor: pointer; } .protocol-profile-grid > button:hover, .protocol-profile-grid > button:focus-visible { border-color: #8a672b; background: #171b1c; } .protocol-profile-grid > button:active { transform: translateY(1px); filter: brightness(0.88); } .protocol-profile-grid > button.configured { border-left: 2px solid var(--shd-success); } .protocol-profile-grid header { display: flex; align-items: center; gap: 6px; padding-bottom: 6px; border-bottom: 1px solid #292e2f; } .protocol-profile-grid header .game-icon { width: 23px; height: 23px; } .protocol-profile-grid header div { display: grid; gap: 2px; } .protocol-profile-grid header b { font-size: var(--shd-type-telemetry); text-transform: uppercase; } .protocol-profile-grid header strong { color: #d7d9d5; font-size: var(--shd-type-telemetry); } .protocol-profile-grid header > span { margin-left: auto; color: #6b7274; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; } .protocol-profile-grid > button.configured header > span { color: var(--shd-success); } .protocol-profile-grid > button > div { display: grid; gap: 4px; margin-top: 6px; } .protocol-profile-grid > button > div span { display: flex; justify-content: space-between; gap: 6px; } .protocol-profile-grid > button > div small { overflow: hidden; color: #626a6c; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .protocol-profile-grid > button > div b { color: #b8bdbe; font-size: var(--shd-type-telemetry); } .protocol-profile-editor { border-top-color: var(--shd-success); } .shared-secondary-editor { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; } .selected-secondary-profile { margin: 8px 0; border: 1px solid #36563f; background: #101713; } .selected-secondary-profile.unconfigured { border-color: #65403a; background: #1c1111; } .selected-secondary-profile header { display: flex; justify-content: space-between; padding: 7px 9px; border-bottom: 1px solid currentColor; color: var(--shd-success); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .selected-secondary-profile.unconfigured header { color: var(--shd-danger); } .selected-secondary-profile > div { display: grid; grid-template-columns: repeat(3, 1fr); } .selected-secondary-profile > div span { display: flex; justify-content: space-between; padding: 8px 9px; border-left: 1px solid #2b3d30; } .selected-secondary-profile > div span:first-child { border-left: 0; } .selected-secondary-profile small { color: #6f7b72; font-size: var(--shd-type-telemetry); } .selected-secondary-profile b { font-size: var(--shd-type-telemetry); } .selected-secondary-profile p { margin: 0; padding: 10px; color: #a87870; font-size: var(--shd-type-telemetry); } .protocol-primary-editor { display: grid; grid-template-columns: 1fr 180px 180px; gap: 7px; margin-top: 7px; padding: 8px; border: 1px solid var(--shd-border); background: #101314; } .protocol-primary-editor .field { margin: 0; } .protocol-primary-editor > div { display: grid; align-content: center; gap: 4px; padding: 0 10px; border-left: 2px solid var(--shd-orange); } .protocol-primary-editor > div span, .protocol-primary-editor > div small { color: #626a6c; font-size: var(--shd-type-telemetry); } .protocol-primary-editor > div b { color: var(--shd-orange); font-size: 15px; } .protocol-row { grid-template-columns: 1.2fr 0.65fr 0.8fr 1fr 1.1fr 0.55fr 0.3fr; } @media (max-width: 1100px) { .protocol-profile-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 1000px) { .protocol-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .protocol-primary-editor { grid-template-columns: 1fr 1fr; } .protocol-primary-editor > div { grid-column: 1/3; } } @media (max-width: 650px) { .protocol-profile-grid, .selected-secondary-profile > div, .protocol-primary-editor, .shared-secondary-editor { grid-template-columns: 1fr; } .selected-secondary-profile > div span { border-left: 0; border-top: 1px solid #2b3d30; } .protocol-primary-editor > div { grid-column: auto; } } .weapon-exotic-talent { margin: 10px 0; padding: 10px; border: 1px solid #765426; border-top: 2px solid var(--shd-orange); background: #151208; } .exotic-talent-identity { grid-template-columns: minmax(180px, 0.65fr) minmax(320px, 1.35fr) !important; } .exotic-talent-identity textarea { min-height: 64px; } .exotic-talent-identity small { display: block; margin-top: 5px; color: #69665e; font-size: var(--shd-type-telemetry); } .weapon-exotic-grid { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: 8px; margin-top: 8px; } .exotic-effect-list { display: grid; gap: 5px; } .exotic-effect-row { display: grid; grid-template-columns: 28px minmax(150px, 1fr) 85px 85px 28px; gap: 5px; align-items: center; } .exotic-effect-row > strong { height: 32px; display: grid; place-items: center; background: #211a0e; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .exotic-effect-row select, .exotic-effect-row input { height: 32px; min-width: 0; margin: 0; padding: 0 7px; font-size: var(--shd-type-telemetry); } .exotic-effect-row button { height: 32px; border: 1px solid #563734; background: #1d1212; color: #da746c; cursor: pointer; } .exotic-effect-row button:disabled { opacity: 0.35; cursor: not-allowed; } @media (max-width: 1050px) { .weapon-exotic-grid { grid-template-columns: 1fr; } } @media (max-width: 700px) { .exotic-talent-identity { grid-template-columns: 1fr !important; } .exotic-effect-row { grid-template-columns: 28px 1fr 1fr; } .exotic-effect-row select { grid-column: 2/4; } .exotic-effect-row button { grid-column: 3; } } .protocol-identity-grid { grid-template-columns: minmax(280px, 1.35fr) minmax(420px, 1fr); gap: 12px; } .protocol-classification-stack { display: grid; gap: 7px; } .protocol-quality-picker { min-width: 0; margin: 0; padding: 0; border: 0; } .protocol-quality-picker legend { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: bold; letter-spacing: 1px; } .protocol-quality-picker > div { height: 32px; display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 5px; border: 1px solid #363b3c; background: #0d0f10; } .protocol-quality-picker label { min-width: 0; border-left: 1px solid var(--shd-border); cursor: pointer; } .protocol-quality-picker label:first-child { border-left: 0; } .protocol-quality-picker input { position: absolute; opacity: 0; pointer-events: none; } .protocol-quality-picker span { height: 100%; display: flex; align-items: center; justify-content: center; gap: 4px; } .protocol-quality-picker span i { width: 5px; height: 5px; background: currentColor; } .protocol-quality-picker b { font-size: var(--shd-type-telemetry); text-transform: uppercase; } .protocol-quality-picker label:hover span { background: #171b1c; filter: brightness(1.2); } .protocol-quality-picker label:active span { transform: translateY(1px); filter: brightness(0.88); } .protocol-quality-picker input:checked + span { background: #171b1c; box-shadow: inset 0 -2px currentColor; } .protocol-quality-picker input:focus-visible + span { outline: 2px solid var(--shd-orange); outline-offset: 2px; } @media (max-width: 1000px) { .protocol-identity-grid { grid-template-columns: 1fr; } } @media (max-width: 650px) { .protocol-quality-picker b { font-size: var(--shd-type-telemetry); } } .icon-editor-identity, .talent-icon-identity, .exotic-icon-identity { display: grid; grid-template-columns: var(--isac-icon-editor-width) minmax(0, 1fr); gap: 9px; align-items: start; } .icon-editor-identity > .field { margin: 0; } .talent-icon-identity > .form-grid, .exotic-icon-identity > .form-grid { min-width: 0; } .icon-upload-field { width: var(--isac-icon-editor-width); max-width: 100%; min-width: 0; margin: 0; padding: 7px; border: 1px solid var(--shd-border); background: #0d1011; } .icon-upload-field legend { padding: 0 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .icon-upload-preview { height: 86px; display: grid; place-items: center; margin-bottom: 6px; border: 1px solid #292f30; background: #111415; } .icon-upload-preview img { width: 72px; height: 72px; object-fit: contain; } .icon-upload-preview > span { color: #596164; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .icon-upload-field > label { min-height: 30px; display: grid; place-items: center; border: 1px solid #424849; background: #15191a; color: #d7d9d5; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; cursor: pointer; } .icon-upload-field > label:hover, .icon-upload-field > label:focus-within { border-color: var(--shd-orange); color: var(--shd-orange); } .icon-upload-field > label:active { transform: translateY(1px); filter: brightness(0.88); } .icon-upload-field > label input[type='file'] { position: absolute; width: 1px; height: 1px; opacity: 0; } .icon-upload-field > label.icon-remove { min-height: 24px; display: flex; gap: 5px; margin-top: 5px; border-color: #563734; background: #1d1212; color: var(--shd-danger); } .icon-upload-field > label.icon-remove input { width: auto; margin: 0; accent-color: var(--shd-danger); } .icon-upload-field > small { display: block; margin-top: 5px; color: #596164; font-size: var(--shd-type-telemetry); line-height: 1.4; } .dashboard-editor input[name='name'] { min-height: 46px; padding: 9px 11px; font-size: 15px; font-weight: 800; letter-spacing: 0.35px; } .registry-icon-identity { display: flex !important; align-items: center; gap: 7px; min-width: 0; } .registry-icon-identity > img, .registry-icon-identity > span { flex: 0 0 30px; width: 30px; height: 30px; object-fit: contain; } .registry-icon-identity > span { display: grid; place-items: center; border: 1px solid #303536; color: #596164; } .registry-icon-identity > div { display: grid; min-width: 0; } .registry-icon-identity > div strong, .registry-icon-identity > div small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } @media (max-width: 700px) { .icon-editor-identity, .talent-icon-identity, .exotic-icon-identity { grid-template-columns: 1fr; } .icon-upload-field { width: 100%; max-width: none; } .icon-upload-preview { height: 70px; } } .brand-editor-body { display: grid; grid-template-columns: var(--isac-icon-editor-width) minmax(0, 1fr); gap: 10px; margin-top: 8px; align-items: start; } .brand-editor-body > div { min-width: 0; } .brand-set-editor .brand-name { max-width: none; margin: 0 0 7px; } .brand-set-editor .icon-upload-field { padding: 6px; } .brand-set-editor .icon-upload-preview { height: 58px; margin-bottom: 5px; } .brand-set-editor .icon-upload-preview img { width: 50px; height: 50px; } .brand-set-editor .icon-upload-field > label { min-height: 25px; } .brand-set-editor .icon-upload-field > label.icon-remove { min-height: 22px; } .brand-set-editor .effect-band { padding: 7px; } .brand-set-editor .form-actions { margin-top: 10px; padding-top: 10px; } .brand-archive-action { min-height: 40px; padding: 0 13px; } .brand-archive-action > b { font-size: var(--shd-type-telemetry); transform: rotate(90deg); } @media (max-width: 850px) { .brand-editor-body { grid-template-columns: 1fr; } .brand-set-editor .icon-upload-field { width: 100%; display: grid; grid-template-columns: 70px 1fr; gap: 5px; } .brand-set-editor .icon-upload-field legend, .brand-set-editor .icon-upload-field > small { grid-column: 1/3; } .brand-set-editor .icon-upload-preview { grid-row: 1/3; height: 55px; margin: 0; } .brand-set-editor .icon-upload-field > label { min-height: 25px; } } @media (max-width: 560px) { .brand-set-editor .icon-upload-field { grid-template-columns: 1fr; } .brand-set-editor .icon-upload-field legend, .brand-set-editor .icon-upload-field > small { grid-column: auto; } .brand-set-editor .icon-upload-preview { grid-row: auto; } .brand-archive-action { width: 100%; } } .brand-archive-action.restore > b { transform: none; } .moderation-action.restore { border: 1px solid #3d6849; background: #111d15; color: var(--shd-success); } .moderation-action.restore:hover, .moderation-action.restore:focus-visible { border-color: #69b77d; background: #17271c; color: #a4e5b6; } .pending-reference, .dashboard-row.pending-record { border-color: color-mix(in srgb, var(--shd-orange) 58%, #303536) !important; background: color-mix(in srgb, var(--shd-orange) 7%, #121516) !important; } .pending-reference-label, .state-dot.pending { color: var(--shd-orange); font-family: var(--font-display); font-size: 0.62rem; letter-spacing: 0.08em; white-space: nowrap; } .state-dot.pending:before { background: var(--shd-orange); } .data-access-banner { justify-content: space-between; } .data-access-banner > div { display: grid; gap: 3px; } .data-access-banner form { margin: 0; } .mode-toggle { min-height: 28px; display: inline-flex; align-items: center; padding: 0 9px; border: 1px solid #4b5152; background: #15191a; color: #c7cdce; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.65px; white-space: nowrap; cursor: pointer; } .mode-toggle:hover, .mode-toggle:focus-visible { border-color: var(--shd-orange); color: var(--shd-orange); } .mode-toggle:active { transform: translateY(1px); filter: brightness(0.86); } .contributor-guidelines-toolbar { align-items: flex-end; } .guideline-version { min-width: 120px; display: grid; gap: 4px; padding: 8px 10px; border: 1px solid var(--shd-border); background: #111415; } .guideline-version span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .guideline-version strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .contributor-guidelines { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 10px 0; } .contributor-guidelines section { min-height: 122px; display: grid; grid-template-columns: 34px 1fr; border: 1px solid var(--shd-border); background: #111415; } .contributor-guidelines section > span { display: grid; place-items: start center; padding-top: 11px; border-right: 1px solid var(--shd-border); color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .contributor-guidelines section > div { padding: 11px; } .contributor-guidelines h3 { margin: 0 0 6px; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .contributor-guidelines p { margin: 0; color: #858d8f; font-size: var(--shd-type-telemetry); line-height: 1.55; } .contributor-acceptance { display: flex; align-items: flex-start; gap: 9px; padding: 11px; border: 1px solid #6f511c; background: #19150e; cursor: pointer; } .contributor-acceptance input { width: auto; margin: 2px 0 0; accent-color: var(--shd-orange); } .contributor-acceptance span { display: grid; gap: 4px; } .contributor-acceptance b { color: #e3c487; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .contributor-acceptance small { color: #917d59; font-size: var(--shd-type-telemetry); } .form-actions a.button { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; } @media (max-width: 760px) { .contributor-guidelines { grid-template-columns: 1fr; } .data-access-banner { align-items: flex-start; flex-direction: column; } .mode-toggle { width: 100%; justify-content: center; } } .command-status .data-mode-status { border-left: 2px solid #667174; } .command-status .data-mode-status strong { color: #b8c0c1; white-space: nowrap; } .command-status .data-mode-status.contributor { border-left-color: var(--shd-orange); } .command-status .data-mode-status.contributor strong { color: #f2b64d; } .command-status .data-mode-status.approver { border-left-color: #68a9c4; } .command-status .data-mode-status.approver strong { color: #8ecce5; } .command-status .data-mode-status.data-manager, .command-status .data-mode-status.admin { border-left-color: #75c08c; } .command-status .data-mode-status.data-manager strong, .command-status .data-mode-status.admin strong { color: #8bd49f; } @media (max-width: 900px) { .admin-command { align-items: flex-start; gap: 12px; } .command-status { display: grid; grid-template-columns: repeat(2, minmax(105px, 1fr)); } } @media (max-width: 560px) { .admin-command { display: grid; } .command-status { width: 100%; } .command-status > div { min-width: 0; } } .data-readonly .module-toolbar button, .data-readonly .dashboard-row:not(.table-heading) > button, .data-readonly .dashboard-editor, .data-readonly form[method='post'] { display: none !important; } .command-status .data-mode-status.oversight { border-left-color: #68a9c4; } .command-status .data-mode-status.oversight strong { color: #8ecce5; } .oversight-decision-tabs { grid-template-columns: repeat(3, 1fr); } .proposal-correction-head { display: flex; align-items: center; justify-content: space-between; margin: 10px 0 6px; padding: 8px 9px; border: 1px solid var(--shd-border); background: #0d1011; } .proposal-correction-head > div { display: grid; gap: 3px; } .proposal-correction-head span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .proposal-correction-head small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .proposal-correction-head > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .proposal-correction-grid { max-height: 340px; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; overflow: auto; padding: 7px; border: 1px solid var(--shd-border); background: #0b0e0f; } .proposal-correction-grid .field { margin: 0; } .proposal-correction-grid .field > span { display: flex; justify-content: space-between; } .proposal-correction-grid .field > span small { color: #61696b; font-size: var(--shd-type-telemetry); } .proposal-correction-grid textarea { min-height: 74px; resize: vertical; } .immutable-proposal-file { display: grid; align-content: center; gap: 4px; min-height: 54px; padding: 8px; border: 1px dashed #394041; color: var(--shd-text-muted); } .immutable-proposal-file span, .immutable-proposal-file small { font-size: var(--shd-type-telemetry); } .immutable-proposal-file b { color: var(--shd-text); font-size: var(--shd-type-telemetry); } @media (max-width: 700px) { .oversight-decision-tabs, .proposal-correction-grid { grid-template-columns: 1fr; } } .mobile-nav-toggle, .mobile-nav-layer { display: none; } @media (max-width: 900px) { .site-header { position: relative; z-index: 40; padding: 0 16px; } .site-header > .account, .site-header > .sign-in { display: none; } .mobile-nav-toggle { width: 52px; height: 44px; display: grid; grid-template-columns: 1fr; align-content: center; gap: 4px; margin-left: auto; padding: 6px 8px; border: 1px solid var(--shd-border); background: #111415; color: var(--shd-text); cursor: pointer; } .mobile-nav-toggle > span { width: 20px; height: 1px; margin-left: auto; background: var(--shd-orange); transition: transform 0.14s ease, opacity 0.14s ease; } .mobile-nav-toggle > b { font-size: var(--shd-type-telemetry); letter-spacing: 1px; text-align: right; } .mobile-nav-toggle[aria-expanded='true'] > span:nth-child(1) { transform: translateY(5px) rotate(45deg); } .mobile-nav-toggle[aria-expanded='true'] > span:nth-child(2) { opacity: 0; } .mobile-nav-toggle[aria-expanded='true'] > span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); } .mobile-nav-toggle:hover, .mobile-nav-toggle:focus-visible { border-color: var(--shd-orange); background: #171b1c; } .mobile-nav-toggle:active { transform: translateY(1px); filter: brightness(0.86); } .mobile-nav-layer { position: fixed; z-index: 35; inset: 76px 0 0; display: grid; grid-template-columns: 1fr minmax(270px, 82vw); } .mobile-nav-backdrop { grid-column: 1; grid-row: 1; width: 100%; height: 100%; padding: 0; border: 0; background: #050607c9; backdrop-filter: blur(2px); cursor: pointer; } .mobile-navigation { grid-column: 2; grid-row: 1; width: 100%; height: 100%; display: flex; flex-direction: column; margin: 0; overflow-y: auto; border-left: 1px solid #4a5051; background: #0d1011; box-shadow: -18px 0 40px #000b; } .mobile-nav-heading { min-height: 61px; display: flex; align-items: center; justify-content: space-between; padding: 11px 14px; border-bottom: 1px solid var(--shd-border); background: #111415; } .mobile-nav-heading > div { display: grid; gap: 4px; } .mobile-nav-heading span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .mobile-nav-heading strong { font-size: 13px; letter-spacing: 1px; } .mobile-nav-heading > b { color: var(--shd-success); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .mobile-navigation > a { min-height: 54px; display: grid; grid-template-columns: 42px 1fr 20px; align-items: center; padding: 0 13px 0 0; border-bottom: 1px solid var(--shd-border-soft); color: #a1a8a9; } .mobile-navigation > a small { height: 100%; display: grid; place-items: center; background: #111415; color: #555d5f; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .mobile-navigation > a span { padding-left: 13px; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; text-transform: uppercase; } .mobile-navigation > a > b { color: var(--shd-orange); font-size: 18px; } .mobile-navigation > a:hover, .mobile-navigation > a:focus-visible, .mobile-navigation > a.active { background: #171b1c; color: #fff; } .mobile-navigation > a.active { box-shadow: inset 2px 0 var(--shd-orange); } .mobile-navigation > a.active small { background: #211a0e; color: var(--shd-orange); } .mobile-navigation > a:active { filter: brightness(0.82); } .mobile-agent-state { display: grid; gap: 4px; margin-top: auto; padding: 14px; border-top: 1px solid var(--shd-border); } .mobile-agent-state span { color: #747c7e; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .mobile-agent-state i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: var(--shd-success); box-shadow: 0 0 6px var(--shd-success); } .mobile-agent-state strong { font-size: var(--shd-type-telemetry); } .mobile-navigation form { margin: 0; padding: 0 14px 14px; } .mobile-sign-out { width: 100%; min-height: 40px; border: 1px solid #503b37; background: #1b1211; color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; cursor: pointer; } .mobile-sign-out:hover, .mobile-sign-out:focus-visible { border-color: var(--shd-danger); background: #251715; } .mobile-sign-out:active { transform: translateY(1px); filter: brightness(0.86); } } @media (max-width: 430px) { .mobile-nav-layer { grid-template-columns: 36px 1fr; } } @media (prefers-reduced-motion: reduce) { .mobile-nav-toggle > span { transition: none; } } @media (max-width: 700px) { .module-toolbar { align-items: stretch; flex-direction: column; gap: 11px; padding-bottom: 11px; } .module-toolbar > div:first-child { width: 100%; } .module-toolbar > button { width: 100%; min-height: 48px; justify-content: center; } .module-toolbar > div:last-child:has(button) { width: 100%; display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 7px; } .module-toolbar > div:last-child:has(button) > button { width: 100%; min-height: 48px; padding: 0 14px; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .module-toolbar .primary, .module-toolbar .secondary { height: auto; min-height: 48px; } } /* Gear shared Tactical Augment profiles */ .gear-augment-registry { margin: 10px 0; border: 1px solid var(--shd-border); background: #0d1011; } .gear-augment-registry > summary { margin: 0; padding: 9px 10px; cursor: pointer; list-style: none; } .gear-augment-registry > summary::-webkit-details-marker { display: none; } .gear-augment-registry > summary:hover, .gear-augment-registry > summary:focus-visible { background: #171b1c; } .gear-augment-registry > summary:active { transform: translateY(1px); filter: brightness(0.88); } .gear-augment-registry > summary > div:last-child { display: flex; align-items: center; gap: 10px; } .gear-augment-registry > summary i { color: var(--shd-orange); font-size: 13px; font-style: normal; transition: transform 0.16s ease; } .gear-augment-registry[open] > summary { border-bottom: 1px solid var(--shd-border); background: #131718; } .gear-augment-registry[open] > summary i { transform: rotate(45deg); } .gear-augment-profile-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 8px; } .gear-augment-profile-grid > button { min-width: 0; padding: 8px; border: 1px solid var(--shd-border); background: #111415; color: var(--shd-text-muted); text-align: left; cursor: pointer; } .gear-augment-profile-grid > button:hover, .gear-augment-profile-grid > button:focus-visible { border-color: #8a672b; background: #171b1c; } .gear-augment-profile-grid > button:active { transform: translateY(1px); filter: brightness(0.88); } .gear-augment-profile-grid > button.configured { border-left: 2px solid var(--shd-success); } .gear-augment-profile-grid header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 6px; border-bottom: 1px solid #292e2f; } .gear-augment-profile-grid header div { display: grid; gap: 2px; } .gear-augment-profile-grid header strong { color: #d7d9d5; font-size: var(--shd-type-telemetry); } .gear-augment-profile-grid header small, .gear-augment-profile-grid header > span { color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .gear-augment-profile-grid > button.configured header > span { color: var(--shd-success); } .gear-augment-profile-grid > button > div { display: grid; margin-top: 5px; } .gear-augment-profile-grid > button > div span { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 6px; padding: 5px 2px; border-top: 1px solid #232829; } .gear-augment-profile-grid > button > div span:first-child { border-top: 0; } .gear-augment-profile-grid > button > div small { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .gear-augment-profile-grid > button > div b { overflow: hidden; color: #aeb4b5; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .gear-augment-profile-grid > button > div em { color: #626a6c; font-size: var(--shd-type-telemetry); font-style: normal; } .gear-augment-editor { border-top-color: var(--shd-success); } .gear-augment-slots { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; } .gear-augment-slots section { min-width: 0; padding: 8px; border: 1px solid var(--shd-border); background: #101314; } .gear-augment-slots section > header { display: flex; justify-content: space-between; padding-bottom: 6px; border-bottom: 1px solid #2a2f30; } .gear-augment-slots section > header strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .gear-augment-slots section > header span { color: #596164; font-size: var(--shd-type-telemetry); } .gear-augment-slots .field { margin: 7px 0 0; } .gear-augment-slots .field > span, .gear-augment-slots label { font-size: var(--shd-type-telemetry); } @media (max-width: 1100px) { .gear-augment-slots { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 900px) { .gear-augment-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 560px) { .gear-augment-profile-grid, .gear-augment-slots { grid-template-columns: 1fr; } .gear-augment-profile-grid > button { min-height: 44px; } } .registry-icon-rail { display: flex !important; align-items: center; gap: 4px; } .registry-icon-rail > span { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid #353b3c; background: #0d1011; } .registry-icon-rail img { width: 26px; height: 26px; object-fit: contain; } .registry-icon-rail i { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; letter-spacing: 0.3px; } .registry-icon-rail > span:hover { border-color: #8a672b; background: #171b1c; } .gear-fixed-augment { min-height: 70px; display: grid; align-content: center; gap: 4px; margin-top: 7px; padding: 8px; border: 1px solid #34473a; border-left: 2px solid var(--shd-success); background: #101713; } .gear-fixed-augment span, .gear-fixed-augment small { color: #718078; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .gear-fixed-augment b { color: var(--shd-success); font-size: 17px; } .gear-tier-costs { margin: 8px 0 0; padding: 7px; border: 1px solid #303536; } .gear-tier-costs legend { padding: 0 5px; color: #697174; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .gear-tier-costs > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; } .gear-tier-costs .field { margin: 0; } .gear-augment-profile-grid > button > div em { white-space: nowrap; } @media (max-width: 560px) { .gear-tier-costs > div { grid-template-columns: 1fr 1fr 1fr; } } .gear-identity { grid-template-columns: minmax(360px, 1fr) 200px minmax(150px, 180px); align-items: end; } .gear-identity > .field, .gear-identity > .segmented-choice { margin: 0; } .gear-identity .segmented-choice legend { font-size: var(--shd-type-telemetry); } .gear-identity .segmented-choice > div { margin-top: 5px; } .gear-identity .segmented-choice:first-of-type > div { grid-template-columns: repeat(6, 32px); width: max-content; } .gear-identity .segmented-choice:first-of-type label, .gear-identity .segmented-choice:first-of-type span { width: 32px; } @media (max-width: 900px) { .gear-identity { grid-template-columns: 1fr 1fr; } .gear-identity > .field { grid-column: 1/3; } } @media (max-width: 700px) { .gear-identity { grid-template-columns: 1fr; } .gear-identity > .field { grid-column: auto; } .gear-identity .segmented-choice > div { height: auto; } .gear-identity .segmented-choice span { min-height: 44px; } .gear-identity .segmented-choice:first-of-type > div { grid-template-columns: repeat(3, 44px); } .gear-identity .segmented-choice:first-of-type label, .gear-identity .segmented-choice:first-of-type span { width: 44px; } } .builder-field-range { float: right; color: #5f6769; font-size: var(--shd-type-telemetry); } .builder-scaling-note { margin: 7px 0 0; padding: 7px 9px; border-left: 2px solid #667174; background: #101415; color: #727a7c; font-size: var(--shd-type-telemetry); line-height: 1.45; } .builder-scaling-note.provisional { border-left-color: var(--quality-high-end); background: #18150d; color: #a89568; } .range-value-control { min-width: 0; display: grid; gap: 6px; padding: 8px; border: 1px solid var(--shd-border); background: #0d1011; } .range-value-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .range-value-head b { color: #7f8789; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .range-value-head small { color: #667072; font-size: var(--shd-type-telemetry); letter-spacing: 0.4px; } .range-value-inputs { display: grid; grid-template-columns: minmax(90px, 1fr) 76px; align-items: center; gap: 8px; } .range-value-slider { width: 100%; height: 22px !important; margin: 0 !important; padding: 0 !important; accent-color: var(--shd-orange); cursor: pointer; } .range-value-number { width: 100%; height: 34px !important; margin: 0 !important; padding: 0 7px !important; } .range-value-control:focus-within { border-color: #8a672b; background: #121516; } .range-value-slider:active { filter: brightness(0.86); } .builder-equipment-controls { display: grid; grid-template-columns: minmax(190px, 0.7fr) minmax(0, 1.3fr); align-items: start; gap: 7px; margin-top: 8px; } .builder-equipment-controls > .builder-radio-grid:last-child:nth-child(3) { grid-column: 1/3; } .builder-equipment-controls > .builder-radio-grid.icon-only { align-self: start; margin: 0; } .builder-weapon-controls { display: grid; grid-template-columns: minmax(190px, 0.85fr) minmax(120px, 0.55fr) minmax( 230px, 1fr ); align-items: end; gap: 7px; margin-top: 8px; } .builder-weapon-controls > .segmented-choice > div { height: 50px; } .builder-radio-grid { min-width: 0; margin: 8px 0 0; padding: 0; border: 0; } .builder-radio-grid legend { margin-bottom: 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .builder-radio-search { height: 34px !important; margin: 0 0 5px !important; padding: 0 9px !important; font-size: var(--shd-type-telemetry) !important; } .builder-radio-toggle { width: 100%; min-height: 48px; display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 8px; margin-bottom: 5px; padding: 6px 8px; border: 1px solid var(--shd-border); background: var(--shd-builder-canvas); color: var(--shd-text); text-align: left; } .builder-radio-toggle > img, .builder-radio-toggle > i { width: 32px; height: 32px; object-fit: contain; } .builder-radio-toggle > span { min-width: 0; display: grid; gap: 2px; } .builder-radio-toggle b, .builder-radio-toggle small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-radio-toggle em { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; } .builder-radio-toggle:hover, .builder-radio-toggle:focus-visible { border-color: var(--shd-orange); } .builder-radio-grid > div { display: grid; grid-template-columns: repeat(var(--builder-radio-columns), minmax(0, 1fr)); gap: 4px; } .builder-radio-grid > div > label { min-width: 0; cursor: pointer; } .builder-radio-grid input[type='radio'] { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; } .builder-radio-grid label > span { min-height: 58px; display: grid; grid-template-columns: 34px minmax(0, 1fr); grid-template-rows: 1fr 1fr; align-items: center; gap: 1px 7px; padding: 6px; border: 1px solid #303536; background: #0d1011; color: #747c7e; transition: var(--shd-transition); } .builder-radio-grid img, .builder-radio-grid i { grid-row: 1/3; width: 32px; height: 32px; object-fit: contain; } .builder-radio-grid i { display: grid; place-items: center; border: 1px solid #343a3b; color: #9a702e; font-size: var(--shd-type-telemetry); font-style: normal; } .builder-radio-grid b { align-self: end; overflow: hidden; color: #b9bfc0; font-size: var(--shd-type-telemetry); line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; } .builder-radio-grid small { align-self: start; overflow: hidden; color: #626a6c; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .builder-radio-grid.icon-only > div { width: max-content; max-width: 100%; grid-template-columns: repeat(var(--builder-radio-columns), 58px); } .builder-radio-grid.icon-only label > span { min-height: 0; aspect-ratio: 1; display: grid; grid-template-columns: 1fr; grid-template-rows: 1fr; place-items: center; gap: 0; padding: 4px; } .builder-radio-grid.icon-only img, .builder-radio-grid.icon-only i { grid-column: 1; grid-row: 1; width: 100%; height: 100%; max-width: none; max-height: none; } .builder-radio-grid.icon-only i { font-size: var(--shd-type-telemetry); } .builder-radio-grid.icon-only b, .builder-radio-grid.icon-only small { display: none; } .builder-radio-grid label:hover > span { border-color: #765b2e; background: #16191a; } .builder-radio-grid label:active > span { transform: translateY(1px); filter: brightness(0.88); } .builder-radio-grid input:checked + span { border-color: #9a6c27; background: #1d180e; color: var(--shd-orange); box-shadow: inset 0 -2px var(--shd-orange); } .builder-radio-grid input:focus-visible + span { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .builder-radio-grid > div > p { grid-column: 1/-1; margin: 0; padding: 12px; border: 1px solid var(--shd-border); color: #626a6c; font-size: var(--shd-type-telemetry); text-align: center; } .builder-talent-grids { display: grid; gap: 3px; margin-top: 6px; } .builder-talent-slot { min-width: 0; padding-top: 8px; border-top: 1px solid var(--shd-border-soft); } .builder-talent-slot:first-child { padding-top: 0; border-top: 0; } .builder-exotic-talent > div:first-child { min-height: 48px; display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 8px; padding: 6px 8px; border: 1px solid var(--shd-border); background: var(--shd-builder-canvas); } .builder-exotic-talent > div:first-child > .item-icon { width: 36px; height: 36px; } .builder-exotic-talent > div:first-child > span { min-width: 0; display: grid; gap: 2px; } .builder-exotic-talent small { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.07em; } .builder-rolls.required > div { grid-template-columns: minmax(0, 1fr) minmax(180px, 0.65fr); } @media (max-width: 650px) { .builder-equipment-controls, .builder-weapon-controls { grid-template-columns: 1fr; } .builder-equipment-controls > .builder-radio-grid:last-child:nth-child(3), .builder-weapon-controls .builder-fixed { grid-column: auto; } .builder-radio-grid > div { grid-template-columns: repeat(2, minmax(0, 1fr)); } .builder-radio-grid.icon-only > div { grid-template-columns: repeat(var(--builder-radio-columns), 58px); } .builder-radio-grid label > span { min-height: 62px; } .builder-radio-grid.icon-only label > span { min-height: 0; } .builder-weapon-controls > .segmented-choice > div { height: 44px; } .range-value-inputs { grid-template-columns: minmax(0, 1fr) 84px; } } @media (max-width: 430px) { .builder-radio-grid > div { grid-template-columns: 1fr; } .builder-radio-grid.icon-only > div { grid-template-columns: repeat(2, 58px); } .range-value-inputs { grid-template-columns: 1fr; } .range-value-number { height: 40px !important; } } .builder-core-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 7px; } .builder-range-grid.weapon-damage { grid-template-columns: minmax(220px, 1fr); } .builder-section-title > b.restricted { color: var(--shd-danger); } .global-configuration-editor { margin-top: 10px; } .global-configuration-editor .editor-title > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .configuration-note { margin: 10px 0; padding: 9px; border-left: 2px solid var(--shd-info); background: #101719; color: #8daeb8; font-size: var(--shd-type-telemetry); line-height: 1.5; } .core-configuration-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .core-configuration-grid fieldset { display: grid; grid-template-columns: 64px 1fr 1fr; align-items: end; gap: 7px; margin: 0; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .core-configuration-grid legend { padding: 0 7px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .core-configuration-grid .field { margin: 0; } .core-config-icons { height: 36px; display: flex; align-items: center; justify-content: center; } .core-config-icons .game-icon { width: 24px; height: 24px; margin-left: -5px; } .core-config-icons .game-icon:first-child { margin-left: 0; } .core-configuration-grid small { grid-column: 1/-1; color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; text-align: right; } @media (max-width: 850px) { .core-configuration-grid { grid-template-columns: 1fr; } } @media (max-width: 650px) { .builder-core-grid { grid-template-columns: 1fr; } } /* Builder workbench */ .loadout-workspace { display: grid; grid-template-columns: minmax(230px, 280px) minmax(420px, 1fr) minmax( 290px, 350px ); gap: 10px; align-items: start; } .loadout-slots, .loadout-editor, .loadout-summary { border: 1px solid var(--shd-border); background: #111415; } .loadout-slots > header, .summary-section > header { height: auto; min-height: 36px; display: flex; justify-content: space-between; align-items: center; padding: 9px 10px; border-bottom: 1px solid var(--shd-border); background: #0d1011; color: #6d7577; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .loadout-slots > header b, .summary-section > header b { color: var(--shd-orange); } .loadout-slot-group { display: grid; gap: 4px; padding: 5px; border-bottom: 1px solid #292e2f; } .loadout-slot-group.weapons { grid-template-columns: 1fr 1fr; } .loadout-slot-group.gear { grid-template-columns: 1fr 1fr; } .loadout-slot-group.systems { grid-template-columns: 1fr 1fr; } .loadout-slot-group button { min-width: 0; min-height: 65px; display: grid; align-content: center; gap: 3px; padding: 8px; border: 1px solid #2b3031; border-left: 2px solid #3b4142; background: #101314; color: #c5c9ca; text-align: left; cursor: pointer; } .loadout-slot-group button:hover, .loadout-slot-group button:focus-visible { border-color: #8b682b; background: #171b1c; } .loadout-slot-group button:active { transform: translateY(1px); filter: brightness(0.88); } .loadout-slot-group button.active { border-left-color: var(--shd-orange); background: #1b170f; } .loadout-slot-group small { color: #646c6e; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .loadout-slot-group strong { overflow: hidden; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .loadout-slot-group span { overflow: hidden; color: #7c8486; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .loadout-editor { min-height: 680px; padding: 12px; border-top: 2px solid var(--shd-orange); container-type: inline-size; } .builder-editor-columns, .builder-specialization-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 10px; } .builder-editor-lane { min-width: 0; align-content: start; } .builder-editor-lane + .builder-editor-lane { padding-left: 16px; border-left: 1px solid var(--shd-border); } .builder-editor-lane > :first-child { margin-top: 0; } .builder-editor-lane .builder-weapon-controls { grid-template-columns: minmax(180px, 1fr) minmax(120px, 0.65fr); } .builder-editor-lane .builder-equipment-controls { grid-template-columns: 1fr; } .builder-editor-lane .builder-equipment-controls > .builder-radio-grid:last-child:nth-child(3) { grid-column: auto; } .builder-editor-lane .builder-weapon-controls .builder-fixed { grid-column: 1/-1; } .builder-editor-lane .builder-range-grid { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); } .builder-editor-lane .range-value-inputs { grid-template-columns: minmax(0, 1fr) 72px; } .builder-editor-lane .builder-rolls.required > div, .builder-editor-lane .builder-chip-rolls > div { grid-template-columns: minmax(0, 1fr) minmax(150px, 0.72fr); } .builder-specialization-layout .builder-ability-chip-panels { grid-template-columns: 1fr; } .builder-focus-abilities { display: grid; gap: var(--shd-gap-xs); } .builder-focus-abilities > button { min-width: 0; min-height: 58px; display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: var(--shd-gap-sm); padding: var(--shd-gap-sm); border: 1px solid var(--shd-border); background: var(--shd-builder-canvas); color: var(--shd-text); text-align: left; } .builder-focus-abilities > button:hover, .builder-focus-abilities > button:focus-visible { border-color: var(--shd-orange); } .builder-focus-abilities img { width: 38px; height: 38px; } .builder-focus-abilities .builder-ability-icon { width: 34px; height: 34px; } .builder-focus-abilities span { min-width: 0; display: grid; gap: 2px; } .builder-focus-abilities small, .builder-focus-abilities b { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .builder-focus-abilities strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-focus-abilities b { white-space: nowrap; } .builder-specialization-layout .builder-specialization-identity { grid-template-columns: auto minmax(0, 1fr); } .builder-specialization-layout .builder-specialization-identity > b { grid-column: 1/-1; width: max-content; } .builder-specialization-identity .focus-composite-icon { width: 40px; height: 40px; flex: 0 0 40px; } .builder-specialization-identity .focus-composite-icon > .item-icon { width: 36px; height: 36px; } .builder-specialization-identity .focus-composite-icon > .game-icon { right: -1px; bottom: -1px; width: 17px; height: 17px; padding: 2px; } @container (max-width: 700px) { .builder-editor-columns, .builder-specialization-layout { grid-template-columns: 1fr; gap: 12px; } .builder-editor-lane + .builder-editor-lane { padding-top: 12px; padding-left: 0; border-top: 1px solid var(--shd-border); border-left: 0; } } .loadout-editor-head { display: flex; justify-content: space-between; align-items: end; padding-bottom: 9px; border-bottom: 1px solid #303536; } .loadout-editor-head span { color: #687072; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .loadout-editor-head h2 { margin: 3px 0 0; font-size: 19px; } .loadout-editor-head > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .builder-picker { position: relative; margin-top: 9px; } .builder-picker > span { display: block; margin-bottom: 5px; color: #737b7d; font-size: var(--shd-type-telemetry); font-weight: 800; letter-spacing: 0.8px; } .builder-picker-current { width: 100%; min-height: 48px; display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; grid-template-rows: 1fr 1fr; align-items: center; column-gap: 8px; padding: 6px 9px; border: 1px solid #343a3b; background: #0e1112; color: #d7d9d5; text-align: left; } .builder-picker-current img, .builder-picker-current > i, .builder-picker-panel button img, .builder-picker-panel button > i { grid-row: 1/3; width: 30px; height: 30px; object-fit: contain; } .builder-picker-current > i, .builder-picker-panel button > i { display: grid; place-items: center; color: var(--shd-orange); font-style: normal; } .builder-picker-current b { align-self: end; font-size: var(--shd-type-telemetry); } .builder-picker-current small { align-self: start; color: #666e70; font-size: var(--shd-type-telemetry); } .builder-picker-current em { grid-column: 3; grid-row: 1/3; color: var(--shd-orange); font-size: 14px; font-style: normal; } .builder-picker-panel { position: absolute; z-index: 30; top: 100%; left: 0; right: 0; padding: 6px; border: 1px solid #5a4a2d; background: #0b0e0f; box-shadow: 0 12px 25px #000b; } .builder-picker-panel > input { height: 36px; margin: 0 0 5px; padding: 0 9px; font-size: var(--shd-type-telemetry); } .builder-picker-panel > div { max-height: 250px; overflow: auto; } .builder-picker-panel > div > button { width: 100%; min-height: 42px; display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 5px 7px; border: 0; border-top: 1px solid #272c2d; background: #111415; color: #c4c8c9; text-align: left; } .builder-picker-panel > div > button:hover, .builder-picker-panel > div > button.selected { background: #1b170f; } .builder-picker-panel > div > button:disabled { opacity: 0.35; } .builder-picker-panel button span { display: grid; gap: 2px; } .builder-picker-panel button b { font-size: var(--shd-type-telemetry); } .builder-picker-panel button small, .builder-picker-panel button em { color: #687072; font-size: var(--shd-type-telemetry); font-style: normal; } .builder-picker-panel button.selected em { color: var(--shd-orange); } .builder-picker-panel p { padding: 12px; color: #626a6c; font-size: var(--shd-type-telemetry); } .builder-field-grid, .builder-range-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 8px; } .builder-field-grid > label, .builder-range-grid > label, .builder-chip-rolls label, .builder-rolls label { color: #737b7d; font-size: var(--shd-type-telemetry); font-weight: 800; letter-spacing: 0.7px; } .builder-field-grid select, .builder-range-grid input, .builder-chip-rolls input, .builder-rolls input { height: 38px; margin-top: 5px; padding: 0 8px; font-size: var(--shd-type-telemetry); } .builder-range-grid label > span { float: right; color: #5f6769; font-size: var(--shd-type-telemetry); } .builder-range-grid.weapon { grid-template-columns: repeat(2, 1fr); } .builder-fixed { display: flex; align-items: end; gap: 5px; padding-bottom: 1px; } .builder-fixed span { flex: 1; padding: 9px 5px; border: 1px solid #303536; color: #8e9698; font-size: var(--shd-type-telemetry); text-align: center; } .builder-section-title { display: flex; justify-content: space-between; align-items: end; margin: 13px 0 5px; } .builder-section-title > div { display: grid; gap: 3px; } .builder-section-title span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .builder-section-title small { color: #626a6c; font-size: var(--shd-type-telemetry); } .builder-section-title button { border: 0; background: transparent; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .builder-section-title > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .builder-rolls { display: grid; gap: 5px; } .builder-rolls > div, .builder-chip-rolls > div { display: grid; grid-template-columns: minmax(0, 1fr) 105px 28px; align-items: end; gap: 6px; padding: 6px; border: 1px solid #2d3233; background: #0f1213; } .builder-rolls .builder-picker, .builder-chip-rolls .builder-picker { margin: 0; } .builder-rolls > div > button { height: 38px; border: 1px solid #563734; background: #1d1212; color: #da746c; } .builder-chip-rolls { display: grid; gap: 6px; margin-top: 8px; } .builder-chip-rolls > div { grid-template-columns: minmax(0, 1fr) 105px; } .builder-augment-list { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; } .builder-augment-list label { min-height: 45px; display: grid; grid-template-columns: 18px 1fr auto; align-items: center; gap: 7px; padding: 7px; border: 1px solid #303536; background: #0f1213; cursor: pointer; } .builder-augment-list input { width: auto; margin: 0; accent-color: var(--shd-orange); } .builder-augment-list span { display: grid; gap: 3px; } .builder-augment-list b { font-size: var(--shd-type-telemetry); } .builder-augment-list small { color: #687072; font-size: var(--shd-type-telemetry); } .builder-augment-list em { color: #a77b31; font-size: var(--shd-type-telemetry); font-style: normal; } .builder-inherited { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 8px; border: 1px solid #303536; } .builder-inherited span { display: grid; gap: 4px; padding: 8px; border-left: 1px solid #303536; } .builder-inherited span:first-child { border-left: 0; } .builder-inherited small { color: #687072; font-size: var(--shd-type-telemetry); } .builder-inherited b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .loadout-summary { position: sticky; top: 88px; border-top: 2px solid var(--shd-orange); } .summary-head { display: flex; justify-content: space-between; align-items: end; padding: 12px; } .summary-head h2 { margin: 4px 0 0; font-size: 20px; } .summary-head > b { color: var(--shd-orange); font-size: 22px; } .summary-core { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #303536; border-bottom: 1px solid #303536; } .summary-core > div { min-width: 0; display: flex; align-items: center; gap: 5px; padding: 9px 6px; border-left: 1px solid #303536; } .summary-core > div:first-child { border-left: 0; } .summary-core .game-icon { width: 22px; height: 22px; } .summary-core span { min-width: 0; display: grid; color: #687072; font-size: var(--shd-type-telemetry); overflow-wrap: anywhere; } .summary-core b { min-width: 0; overflow: hidden; color: #d6d9da; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; } .summary-scroll { max-height: calc(100vh - 340px); overflow: auto; } .summary-section > header { position: sticky; top: 0; z-index: 2; } .summary-stat, .summary-bonus { display: grid; grid-template-columns: minmax(0, 1fr) minmax(70px, auto); gap: 8px; padding: 8px 10px; border-top: 1px solid #252a2b; } .summary-stat > span, .summary-bonus > span { min-width: 0; display: grid; gap: 3px; font-size: var(--shd-type-telemetry); } .summary-stat small, .summary-bonus small { color: #626a6c; font-size: var(--shd-type-telemetry); } .summary-stat > b { min-width: 0; overflow-wrap: anywhere; color: #d9dbdc; font-size: var(--shd-type-telemetry); } .summary-bonus em { min-width: 0; overflow-wrap: anywhere; color: var(--shd-success); font-size: var(--shd-type-telemetry); font-style: normal; text-align: right; } .summary-section > p { margin: 0; padding: 12px; color: #626a6c; font-size: var(--shd-type-telemetry); line-height: 1.5; } .summary-talent { display: grid; grid-template-columns: 18px 1fr; gap: 7px; padding: 9px 10px; border-top: 1px solid #252a2b; cursor: pointer; } .summary-talent input { width: auto; margin: 2px 0 0; accent-color: var(--shd-orange); } .summary-talent span { display: grid; gap: 3px; } .summary-talent b { font-size: var(--shd-type-telemetry); } .summary-talent small { color: #8a682f; font-size: var(--shd-type-telemetry); } .summary-talent em { color: #727a7c; font: var(--shd-type-telemetry)/1.45 var(--shd-font-editorial); } .loadout-summary .notice { margin: 0; padding: 11px; border-top: 1px solid #303536; border-left: 0; } .builder-empty-data { display: flex; gap: 12px; margin-bottom: 10px; padding: 12px; border: 1px solid #65403a; border-left: 3px solid var(--shd-danger); background: #1c1111; } .builder-empty-data strong { font-size: var(--shd-type-telemetry); } .builder-empty-data span { color: #a87870; font-size: var(--shd-type-telemetry); } @media (max-width: 1200px) { .loadout-workspace { grid-template-columns: 240px minmax(390px, 1fr); } .loadout-summary { position: static; grid-column: 1/3; } .summary-scroll { max-height: none; display: grid; grid-template-columns: repeat(3, 1fr); } .summary-section { border-left: 1px solid #303536; } .summary-section:first-child { border-left: 0; } } @media (max-width: 800px) { .loadout-workspace { grid-template-columns: 1fr; } .loadout-slots, .loadout-editor, .loadout-summary { grid-column: auto; } .loadout-editor { min-height: 0; } .summary-scroll { display: block; } .summary-section { border-left: 0; } .loadout-summary { order: 3; } .loadout-slot-group.gear { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 560px) { .loadout-slot-group.gear, .loadout-slot-group.systems { grid-template-columns: 1fr 1fr; } .builder-field-grid, .builder-range-grid, .builder-range-grid.weapon, .builder-augment-list, .builder-inherited { grid-template-columns: 1fr; } .builder-inherited span { border-left: 0; border-top: 1px solid #303536; } .builder-rolls > div, .builder-chip-rolls > div { grid-template-columns: 1fr; } .builder-rolls > div > button { min-height: 44px; } .builder-picker-current { min-height: 52px; } .builder-picker-panel > div > button { min-height: 46px; } } .mobile-row-open { display: none; } @media (max-width: 700px) { .mobile-detail-row { position: relative; min-height: 48px; padding-bottom: 25px; cursor: pointer; } .dashboard-row > .mobile-row-open { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; display: block; justify-self: stretch; margin: 0; padding: 0; border: 0; background: transparent; color: transparent; font-size: 0; cursor: pointer; } .mobile-detail-row > .row-action, .mobile-detail-row > button:not(.mobile-row-open) { display: none; } .mobile-detail-row::after { content: 'TAP TO VIEW ›'; position: absolute; right: 10px; bottom: 7px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; pointer-events: none; } .moderation-row.mobile-detail-row::after { content: 'TAP TO REVIEW ›'; } .mobile-detail-row:hover { border-color: #665026; background: #171713; } .mobile-detail-row:has(.mobile-row-open:focus-visible) { outline: 2px solid var(--shd-orange); outline-offset: -2px; } .mobile-detail-row:has(.mobile-row-open:active) { transform: translateY(1px); filter: brightness(0.86); } } @media (prefers-reduced-motion: reduce) { .mobile-detail-row:has(.mobile-row-open:active) { transform: none; } } .avatar-review-filter { grid-template-columns: minmax(220px, 1fr) auto; } .avatar-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } .avatar-review-card { min-width: 0; display: grid; grid-template-columns: 112px minmax(0, 1fr); border: 1px solid var(--shd-border); background: #111415; } .avatar-review-image { position: relative; min-height: 142px; display: grid; place-items: center; overflow: hidden; border-right: 1px solid var(--shd-border); background: #0b0e0f; } .avatar-review-image img { width: 100%; height: 100%; object-fit: cover; } .avatar-review-image > span { padding: 10px; color: #596164; font-size: var(--shd-type-telemetry); font-weight: 900; line-height: 1.5; text-align: center; } .avatar-review-image > b { position: absolute; right: 0; bottom: 0; padding: 5px 7px; border-top: 1px solid currentColor; border-left: 1px solid currentColor; background: #171b1ce8; color: #889092; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .avatar-review-image > b.pending { color: var(--shd-orange); } .avatar-review-image > b.approved { color: var(--shd-success); } .avatar-review-image > b.declined { color: var(--shd-danger); } .avatar-review-details { min-width: 0; display: grid; align-content: start; gap: 4px; padding: 9px; } .avatar-review-details > strong { font-size: var(--shd-type-telemetry); } .avatar-review-details > small { overflow: hidden; color: #697174; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .avatar-review-details dl { display: grid; gap: 4px; margin: 5px 0; } .avatar-review-details dl > div { display: flex; justify-content: space-between; gap: 8px; border-top: 1px solid #292e2f; padding-top: 4px; } .avatar-review-details dt, .avatar-review-details dd { margin: 0; font-size: var(--shd-type-telemetry); } .avatar-review-details dt { color: #697174; } .avatar-review-details dd { color: #b9bebe; text-align: right; } .avatar-review-details > p { margin: 2px 0; color: #8c9495; font-size: var(--shd-type-telemetry); line-height: 1.4; } .avatar-review-details > button { min-height: 31px; margin-top: auto; } .avatar-review-modal { width: min(680px, calc(100vw - 24px)); } .avatar-review-preview { height: min(46vh, 390px); display: grid; place-items: center; margin: 9px 0; overflow: hidden; border: 1px solid var(--shd-border); background: #090b0c; } .avatar-review-preview img { width: 100%; height: 100%; object-fit: contain; } .avatar-review-preview span { color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .avatar-decision-tabs { grid-template-columns: repeat(2, 1fr); } @media (max-width: 1150px) { .avatar-review-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 700px) { .avatar-review-filter, .avatar-review-grid { grid-template-columns: 1fr; } .avatar-review-card { grid-template-columns: 96px minmax(0, 1fr); } .avatar-review-image { min-height: 132px; } .avatar-review-details > button { min-height: 44px; } .avatar-decision-tabs { grid-template-columns: 1fr; } } .assignment-chips > button span, .assignment-results > button > span { display: grid; gap: 2px; } .assignment-chips > button span small, .assignment-results > button > span small { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.55px; } .assignment-chips > button span .assignment-item-unit, .assignment-results > button > span .assignment-item-unit { color: var(--shd-text-muted); font-weight: 700; letter-spacing: 0.45px; } .notification-link { position: relative; width: 34px; height: 34px; display: grid !important; place-items: center; border: 1px solid var(--shd-border); color: var(--shd-orange) !important; } .notification-link > span { font-size: var(--shd-type-telemetry); } .notification-link > b { position: absolute; top: -5px; right: -5px; min-width: 17px; height: 17px; display: grid; place-items: center; padding: 0 4px; border: 1px solid #d98921; background: var(--shd-orange); color: #111; font-size: var(--shd-type-telemetry); } .mobile-navigation > a > em { min-width: 20px; height: 20px; display: grid; place-items: center; padding: 0 4px; background: var(--shd-orange); color: #111; font-size: var(--shd-type-telemetry); font-style: normal; } .notification-page { max-width: 1480px; margin: auto; padding: 36px clamp(14px, 4vw, 56px) 80px; } .notification-command { display: flex; align-items: end; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--shd-border); } .notification-command h1 { margin: 5px 0; font-size: 48px; } .notification-command p { margin: 0; color: var(--shd-text-muted); } .notification-command > div:last-child { display: grid; grid-template-columns: auto auto; align-items: center; gap: 2px 8px; } .notification-command > div:last-child strong { grid-row: 1/3; color: var(--shd-orange); font-size: 32px; } .notification-command > div:last-child span { font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .notification-command > div:last-child button { grid-column: 1/3; margin-top: 6px; } .notification-settings { margin: 10px 0; padding: 10px; border: 1px solid #625025; border-top: 2px solid var(--shd-orange); background: #111415; } .notification-settings .module-head { padding-bottom: 8px; } .notification-settings .module-head > span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .notification-rule { margin: 6px 0; padding: 8px; border-left: 2px solid var(--shd-orange); background: #18150f; color: #8f887a; font-size: var(--shd-type-telemetry); line-height: 1.5; } .notification-rule b { color: #d9bc82; } .browser-permission { margin: 4px 0 8px; } .notification-preference-form { display: grid; } .notification-preference-head, .notification-preference-row { display: grid; grid-template-columns: minmax(190px, 1fr) 100px 100px 150px; align-items: center; gap: 7px; padding: 7px 9px; border-top: 1px solid var(--shd-border); } .notification-preference-head { background: #0d1011; color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .notification-preference-row > div { display: grid; gap: 3px; } .notification-preference-row > div b { font-size: var(--shd-type-telemetry); } .notification-preference-row > div small { color: #697174; font-size: var(--shd-type-telemetry); } .notification-preference-row label { display: flex; align-items: center; gap: 5px; color: #8a9293; font-size: var(--shd-type-telemetry); cursor: pointer; } .notification-preference-row input { width: auto; margin: 0; accent-color: var(--shd-orange); } .notification-preference-row select { height: 31px; margin: 0; font-size: var(--shd-type-telemetry); } .notification-toolbar { display: flex; justify-content: space-between; gap: 8px; margin-top: 12px; } .notification-toolbar form { display: flex; gap: 6px; } .notification-toolbar select { height: 36px; margin: 0; font-size: var(--shd-type-telemetry); } .notification-list { display: grid; border: 1px solid var(--shd-border); } .notification-list > article { display: grid; grid-template-columns: 145px minmax(0, 1fr); border-top: 1px solid var(--shd-border); background: #101314; } .notification-list > article:first-child { border-top: 0; } .notification-list > article.unread { background: #141719; box-shadow: inset 2px 0 var(--shd-orange); } .notification-list > article.mandatory { box-shadow: inset 2px 0 #68a9c4; } .notification-source { display: grid; align-content: start; gap: 4px; padding: 13px; border-right: 1px solid var(--shd-border); background: #0d1011; } .notification-source b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); line-height: 1.4; } .notification-source span { color: #667073; font-size: var(--shd-type-telemetry); } .notification-list > article > div:last-child { padding: 12px 14px; } .notification-list article header { display: flex; justify-content: space-between; gap: 12px; } .notification-list h2 { font-size: 12px; } .notification-list time { color: #697174; font-size: var(--shd-type-telemetry); } .notification-list article p { margin: 7px 0; color: #9aa1a2; font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .notification-list article footer { display: flex; align-items: center; justify-content: space-between; } .notification-list article footer a, .notification-list article footer button, .notification-list article footer span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .notification-list article footer button { padding: 0; border: 0; background: none; cursor: pointer; } .notification-list article footer button:hover { color: #fff; } .notification-list article footer form { margin-left: auto; } @media (max-width: 700px) { .notification-page { padding-top: 22px; } .notification-command { align-items: start; flex-direction: column; gap: 12px; } .notification-command > div:last-child { width: 100%; } .notification-preference-head { display: none; } .notification-preference-row { grid-template-columns: 1fr 1fr 1fr; } .notification-preference-row > div { grid-column: 1/4; } .notification-preference-row select { width: 100%; } .notification-toolbar { align-items: stretch; flex-direction: column; } .notification-toolbar form { display: grid; grid-template-columns: 1fr 1fr; } .notification-toolbar form button { grid-column: 1/3; min-height: 44px; } .notification-toolbar > form:last-child button { width: 100%; } .notification-list > article { grid-template-columns: 1fr; } .notification-source { display: flex; justify-content: space-between; border-right: 0; border-bottom: 1px solid var(--shd-border); } .notification-list article header { display: grid; } .notification-list article footer { min-height: 36px; } } .avatar-remove-reason { grid-template-columns: 1fr; align-content: center; } .avatar-remove-reason > form { display: grid; grid-template-columns: minmax(150px, 1fr) auto; gap: 6px; } .avatar-remove-reason > form > input { height: 30px; margin: 0; padding: 0 7px; font-size: var(--shd-type-telemetry); } .avatar-remove-reason > form > div { height: 30px; display: grid; grid-template-columns: 58px 96px; gap: 5px; } .avatar-remove-reason > form button { height: 30px; min-height: 0; } @media (max-width: 600px) { .avatar-remove-reason > form { grid-template-columns: 1fr; } .avatar-remove-reason > form > div { grid-template-columns: 1fr 1fr; } } .page-breadcrumb { display: flex; align-items: center; gap: 10px; margin: 0; } .page-breadcrumb .breadcrumb-line { flex: 0 0 28px; width: 28px; height: 2px; background: var(--shd-orange); } .page-breadcrumb ol { display: flex; align-items: center; gap: 0; margin: 0; padding: 0; list-style: none; } .page-breadcrumb li { display: flex; align-items: center; } .page-breadcrumb li + li:before { content: '/'; margin: 0 8px; color: #4b5254; } .page-breadcrumb a { color: var(--shd-orange); } .page-breadcrumb [aria-current='page'] { color: #9da1a2; } @media (max-width: 700px) { .page-breadcrumb li + li:before { margin: 0 6px; } } .page-breadcrumb { align-self: start; width: max-content; height: auto; min-height: 14px; line-height: 1; } .page-breadcrumb .breadcrumb-line { margin: 0; } .page-breadcrumb ol { height: auto; } .page-breadcrumb li { line-height: 1; } .page-breadcrumb li > span { display: inline; width: auto; height: auto; margin: 0; background: transparent; vertical-align: baseline; } .notification-message-header > div { display: flex; align-items: center; gap: 8px; min-width: 0; } @media (max-width: 700px) { .notification-message-header { display: grid !important; } .notification-message-header > div { align-items: flex-start; flex-direction: column; } } .notification-severity { flex: 0 0 auto; padding: 3px 5px; border: 1px solid #8a6731; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; } .notification-severity.error-severity, .notification-detail-state .error-severity { border-color: #6d3f39; color: var(--shd-danger); } .system-message-body { display: grid; gap: 6px; margin: 8px 0 7px; padding: 8px 10px; border-left: 2px solid #68a9c4; background: linear-gradient( 90deg, rgba(49, 104, 128, 0.12), rgba(49, 104, 128, 0.025) ); } .system-message-kicker { display: flex; align-items: center; gap: 6px; color: #72b8d5; } .system-message-kicker span { font-size: var(--shd-type-telemetry); } .system-message-kicker b { font-size: var(--shd-type-telemetry); letter-spacing: 1.15px; } .system-message-body > p, .notification-list article .system-message-body > p { margin: 0; color: #a8b1b3; font: var(--shd-type-supporting)/1.5 var(--shd-font-editorial); } .system-message-detail { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 9px; padding-top: 6px; border-top: 1px solid rgba(112, 185, 214, 0.18); } .system-message-detail > span { padding-top: 2px; color: #79bcd6; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.9px; } .system-message-detail > p, .notification-list article .system-message-detail > p { margin: 0; color: #8f999b; font: var(--shd-type-telemetry)/1.5 var(--shd-font-editorial); } .system-message-body.expanded { margin: 0; min-height: 110px; padding: 15px 16px; gap: 10px; border-left-color: #68a9c4; background: linear-gradient( 90deg, rgba(49, 104, 128, 0.16), rgba(14, 17, 18, 0.9) ); } .system-message-body.expanded .system-message-kicker b { font-size: var(--shd-type-telemetry); } .system-message-body.expanded > p { color: #c0c7c8; font-size: 13px; line-height: 1.7; } .system-message-body.expanded .system-message-detail { grid-template-columns: 125px minmax(0, 1fr); padding-top: 10px; } .system-message-body.expanded .system-message-detail > span { font-size: var(--shd-type-telemetry); } .system-message-body.expanded .system-message-detail > p { color: #adb6b8; font-size: 12px; line-height: 1.65; } @media (max-width: 700px) { .system-message-detail, .system-message-body.expanded .system-message-detail { grid-template-columns: 1fr; gap: 4px; } } .system-message-body:not(.expanded) > p, .system-message-body:not(.expanded) .system-message-detail > p, .notification-body-preview { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .notification-actions { display: flex; align-items: center; gap: 7px; } .notification-actions .notification-response-action { min-height: 28px; display: inline-flex; align-items: center; padding: 0 10px; border: 1px solid #6b5329; background: #1b160d; color: var(--shd-orange); transition: var(--shd-transition); } .notification-actions .notification-response-action:hover { border-color: var(--shd-orange); background: #241b0d; color: #fff; } .notification-actions .notification-response-action:active { transform: translateY(1px); filter: brightness(0.9); } .notification-actions .notification-response-action:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .profile-anchor { position: relative; top: calc(-1 * var(--shd-header-height)); visibility: hidden; } @media (max-width: 700px) { .notification-actions { align-items: stretch; flex-direction: column; } .notification-actions .notification-response-action { min-height: 44px; justify-content: center; } } .notification-filter-console { flex: 1; display: grid !important; grid-template-columns: minmax(520px, 1fr) minmax(190px, 0.34fr); align-items: end !important; gap: 8px !important; } .notification-filter-console > input { display: none; } .notification-filter-group { min-width: 0; margin: 0; padding: 0; border: 0; } .notification-filter-group legend { margin-bottom: 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .notification-filter-group > div { height: 40px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid #363b3c; background: #0d0f10; } .notification-filter-group label { min-width: 0; border-left: 1px solid var(--shd-border); cursor: pointer; } .notification-filter-group label:first-child { border-left: 0; } .notification-filter-group input { position: absolute; opacity: 0; pointer-events: none; } .notification-filter-group span { height: 100%; display: flex; align-items: center; justify-content: center; gap: 5px; color: #777f81; transition: var(--shd-transition); } .notification-filter-group span i { width: 5px; height: 5px; border: 1px solid currentColor; background: transparent; } .notification-filter-group b { overflow: hidden; text-overflow: ellipsis; color: inherit; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; white-space: nowrap; } .notification-filter-group label:hover span { background: #171b1c; color: #c4c8c9; } .notification-filter-group label:active span { transform: translateY(1px); filter: brightness(0.88); } .notification-filter-group input:checked + span { background: #171b1c; color: var(--shd-orange); box-shadow: inset 0 -2px currentColor; } .notification-filter-group input:checked + span i { background: currentColor; } .notification-filter-group input:focus-visible + span { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .state-filter-group > div { grid-template-columns: repeat(2, minmax(0, 1fr)); } @media (max-width: 900px) { .notification-filter-console { grid-template-columns: 1fr; } .notification-filter-group > div { height: auto; grid-template-columns: repeat(3, 1fr); } .notification-filter-group span { min-height: 44px; } .state-filter-group > div { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 560px) { .notification-filter-group > div { grid-template-columns: repeat(2, 1fr); } } .segmented-choice { min-width: 0; margin: 0; padding: 0; border: 0; } .segmented-choice legend { margin-bottom: 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .segmented-choice > div { height: 32px; display: grid; grid-template-columns: repeat(var(--segmented-columns), minmax(0, 1fr)); border: 1px solid #363b3c; background: #0d0f10; } .segmented-choice label { min-width: 0; border-left: 1px solid var(--shd-border); cursor: pointer; } .segmented-choice label:first-child { border-left: 0; } .segmented-choice input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; } .segmented-choice span { height: 100%; display: flex; align-items: center; justify-content: center; gap: 5px; color: #777f81; transition: var(--shd-transition); } .segmented-choice span i { width: 5px; height: 5px; border: 1px solid currentColor; background: transparent; } .segmented-choice .game-icon { width: 18px; height: 18px; opacity: 0.55; } .segmented-choice b { overflow: hidden; color: inherit; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; } .segmented-choice label:hover span { background: #171b1c; color: #c4c8c9; } .segmented-choice label:active span { transform: translateY(1px); filter: brightness(0.88); } .segmented-choice input:checked + span { background: #171b1c; color: var(--shd-orange); box-shadow: inset 0 -2px currentColor; } .segmented-choice input:checked + span i { background: currentColor; } .segmented-choice input:checked + span .game-icon { opacity: 1; } .segmented-choice input:focus-visible + span { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .segmented-choice input:disabled + span { opacity: 0.45; cursor: not-allowed; } .protocol-classification-stack .segmented-choice legend { font-size: var(--shd-type-telemetry); } .protocol-classification-stack .segmented-choice > div { margin-top: 5px; } .protocol-classification-stack .quality-standard i, .protocol-classification-stack .quality-specialized i, .protocol-classification-stack .quality-superior i, .protocol-classification-stack .quality-highend i { background: currentColor; } .segmented-choice span.icon-only { gap: 0; } .segmented-choice span.icon-only .game-icon { width: 24px; height: 24px; } .dashboard-editor .form-grid > .segmented-choice { align-self: end; margin: 8px 0; } .dashboard-editor .form-grid > .segmented-choice legend, .talent-identity .segmented-choice legend, .weapon-identity-grid .segmented-choice legend { font-size: var(--shd-type-telemetry); } .talent-identity { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(430px, 1.5fr) !important; align-items: end; gap: 9px; } .talent-identity > .field { margin: 0; } .weapon-identity-grid { grid-template-columns: minmax(360px, 1fr) 200px minmax(145px, 170px) 104px 40px; align-items: end; } .weapon-identity-grid > .field, .weapon-identity-grid > .segmented-choice { margin: 0; } .weapon-identity-grid > .segmented-choice:first-of-type > div { grid-template-columns: repeat(6, 32px); width: max-content; } .weapon-identity-grid > .segmented-choice:first-of-type label, .weapon-identity-grid > .segmented-choice:first-of-type span { width: 32px; } .weapon-identity-grid > .segmented-choice:nth-of-type(3) > div { grid-template-columns: repeat(3, 32px); width: max-content; } .weapon-identity-grid > .segmented-choice:nth-of-type(3) label, .weapon-identity-grid > .segmented-choice:nth-of-type(3) span { width: 32px; } .exotic-toggle > span { justify-content: center; padding: 0; cursor: pointer; } .weapon-identity-grid .exotic-toggle input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; } .exotic-toggle .game-icon { width: 24px; height: 24px; opacity: 0.55; } .exotic-toggle span:has(input:checked) { border-color: #875d25; background: #211a0e; color: var(--shd-orange); box-shadow: inset 0 -2px var(--shd-orange); } .exotic-toggle span:has(input:checked) .game-icon { opacity: 1; } .exotic-toggle span:has(input:focus-visible) { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .weapon-category-label { display: flex !important; align-items: center; gap: 4px; } .weapon-category-label .game-icon { width: 20px; height: 20px; } .weapon-category-label .game-icon:first-child:not(:last-child) { width: 16px; height: 16px; } .history-filter { align-items: end; grid-template-columns: minmax(180px, 1fr) minmax(250px, 0.9fr) 80px; } .history-filter .segmented-choice > div { height: 34px; } .audit-filter > .assignment-picker.compact { height: 40px; } .moderation-filter { grid-template-columns: minmax(220px, 1fr) minmax(280px, 0.9fr) auto; } @media (max-width: 1000px) { .weapon-identity-grid { grid-template-columns: 1fr 1fr; } .weapon-identity-grid > .weapon-name { grid-column: 1/3; } } @media (max-width: 700px) { .talent-identity, .weapon-identity-grid { grid-template-columns: 1fr !important; } .weapon-identity-grid > .weapon-name { grid-column: auto; } .talent-identity .segmented-choice > div, .weapon-identity-grid .segmented-choice > div, .dashboard-editor .form-grid > .segmented-choice > div { height: auto; } .talent-identity .segmented-choice span, .weapon-identity-grid .segmented-choice span, .dashboard-editor .form-grid > .segmented-choice span { min-height: 44px; } .talent-identity .segmented-choice > div { grid-template-columns: repeat(2, 1fr); } .weapon-identity-grid > .segmented-choice:first-of-type > div { grid-template-columns: repeat(3, 44px); } .weapon-identity-grid > .segmented-choice:first-of-type label, .weapon-identity-grid > .segmented-choice:first-of-type span { width: 44px; } .weapon-identity-grid > .segmented-choice:nth-of-type(3) > div { grid-template-columns: repeat(3, 44px); } .weapon-identity-grid > .segmented-choice:nth-of-type(3) label, .weapon-identity-grid > .segmented-choice:nth-of-type(3) span { width: 44px; } .exotic-toggle > span { width: 44px; min-height: 44px; } } @media (max-width: 650px) { .history-filter { grid-template-columns: 1fr; } .history-filter .segmented-choice > div { height: auto; } .history-filter .segmented-choice span { min-height: 44px; } .moderation-filter { grid-template-columns: 1fr; } } .gear-slot-label { display: flex !important; align-items: center; gap: 5px; } .gear-slot-label .game-icon { width: 20px; height: 20px; } .notification-filter-console { min-width: 0; grid-template-columns: minmax(0, 3fr) minmax(180px, 1fr); } .notification-filter-console .segmented-choice > div { height: 40px; } @media (max-width: 900px) { .notification-toolbar .notification-filter-console { grid-template-columns: 1fr; } .notification-filter-console .segmented-choice > div { height: auto; grid-template-columns: repeat(3, 1fr); } .notification-filter-console .segmented-choice span { min-height: 44px; } .notification-filter-console .segmented-choice:last-child > div { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 560px) { .notification-filter-console .segmented-choice > div { grid-template-columns: repeat(2, 1fr); } } .skill-chip-editor { border-top-color: var(--quality-superior); } .skill-chip-identity { display: grid; grid-template-columns: var(--isac-icon-editor-width) minmax(360px, 1fr) minmax(220px, 0.55fr); align-items: start; gap: 10px; } .skill-chip-identity > .field { margin: 0; } .quality-scope { min-height: 62px; display: grid; align-content: center; gap: 5px; padding: 7px 10px; border: 1px solid var(--shd-border); background: #0d1011; } .quality-scope > span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .quality-scope > div { display: flex; gap: 7px; } .quality-scope b { padding: 4px 6px; border: 1px solid currentColor; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .quality-scope small { color: #626a6c; font-size: var(--shd-type-telemetry); } .skill-chip-bonus, .skill-chip-talent { margin-top: 10px; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .skill-chip-bonus { border-left: 2px solid var(--quality-superior); } .skill-chip-bonus-grid { display: grid; grid-template-columns: minmax(360px, 1fr) minmax(260px, 0.65fr); gap: 8px; margin-top: 7px; } .skill-chip-range-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; } .skill-chip-range-fields .field { margin: 0; } .skill-chip-pools { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 10px; } .skill-chip-pools > div { min-width: 0; } .skill-chip-talent { border-left: 2px solid var(--quality-high-end); } .skill-chip-talent-identity { display: grid; grid-template-columns: 0.7fr 1.3fr; gap: 8px; } .skill-chip-talent-identity textarea { min-height: 66px; } .skill-chip-preview { display: grid; grid-template-columns: minmax(360px, 0.9fr) minmax(260px, 1.1fr); align-items: end; gap: 8px; margin: 4px 0 10px; } .skill-chip-preview > div { min-height: 42px; display: grid; align-content: center; gap: 5px; padding: 7px 10px; border: 1px solid var(--shd-border); background: #111415; } .skill-chip-preview > div span { color: var(--quality-high-end); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .skill-chip-preview p { margin: 0; color: #c4c9ca; font: var(--shd-type-telemetry)/1.45 var(--shd-font-editorial); } .skill-chip-talent-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; } .skill-chip-effects { display: grid; border: 1px solid var(--shd-border); } .skill-chip-effects > div { display: grid; grid-template-columns: 27px minmax(140px, 1fr) 75px 75px 27px; align-items: center; gap: 5px; padding: 5px; border-top: 1px solid #282e2f; } .skill-chip-effects > div:first-child { border-top: 0; } .skill-chip-effects strong { display: grid; place-items: center; height: 100%; background: #171b1c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .skill-chip-effects select, .skill-chip-effects input { min-width: 0; margin: 0; padding: 7px; font-size: var(--shd-type-telemetry); } .skill-chip-effects button { height: 28px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .skill-chip-effects button:disabled { opacity: 0.3; cursor: not-allowed; } .skill-chip-row { min-width: 1080px; grid-template-columns: 1.15fr 0.45fr 1.1fr 1.1fr 0.85fr 0.5fr 0.3fr; } .skill-chip-quality-pair { display: flex; gap: 4px; } .skill-chip-quality-pair b { padding: 3px 4px; border: 1px solid currentColor; font-size: var(--shd-type-telemetry); } .skill-chip-row > div:nth-child(4) { display: grid; gap: 3px; } .skill-chip-row > div:nth-child(4) small { color: #626a6c; font-size: var(--shd-type-telemetry); } @media (max-width: 1050px) { .skill-chip-identity { grid-template-columns: var(--isac-icon-editor-width) 1fr; } .quality-scope { grid-column: 1/3; } .skill-chip-pools, .skill-chip-talent-grid, .skill-chip-preview { grid-template-columns: 1fr; } } @media (max-width: 700px) { .skill-chip-identity, .skill-chip-bonus-grid, .skill-chip-range-fields { grid-template-columns: 1fr; } .quality-scope { grid-column: auto; } .skill-chip-preview .segmented-choice > div { height: auto; grid-template-columns: repeat(2, 1fr); } .skill-chip-preview .segmented-choice span { min-height: 44px; } .skill-chip-effects > div { grid-template-columns: 27px 1fr; } .skill-chip-effects input, .skill-chip-effects button { grid-column: 2; } .skill-chip-pools { grid-template-columns: 1fr; } } .profile-metrics > a { display: flex; flex-direction: column; justify-content: center; padding: 0 16px; border-left: 1px solid var(--shd-border); color: inherit; } .profile-metrics > a:hover, .profile-metrics > a:focus-visible { background: #171b1c; } .profile-metrics > a strong { color: var(--shd-orange); } .profile-notifications { border-top: 2px solid #4f4329; } .profile-notification-list { display: grid; border: 1px solid var(--shd-border); } .profile-notification-list > a { min-width: 0; display: grid; grid-template-columns: 145px minmax(0, 1fr) 55px; align-items: center; gap: 10px; padding: 9px 10px; border-top: 1px solid var(--shd-border); background: #0f1213; color: #aeb4b5; } .profile-notification-list > a:first-child { border-top: 0; } .profile-notification-list > a.unread { background: #151718; box-shadow: inset 2px 0 var(--shd-orange); } .profile-notification-list > a.mandatory { box-shadow: inset 2px 0 #68a9c4; } .profile-notification-list > a:hover, .profile-notification-list > a:focus-visible { background: #191d1e; } .profile-notification-list > a > div, .profile-notification-list > a > span { min-width: 0; display: grid; gap: 3px; } .profile-notification-list > a b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .profile-notification-list > a strong { overflow: hidden; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .profile-notification-list > a small { overflow: hidden; color: #697174; font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .profile-notification-list > a em { justify-self: end; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; } .profile-empty.compact { min-height: 90px; } @media (max-width: 700px) { .profile-notification-list > a { grid-template-columns: 1fr auto; } .profile-notification-list > a > div { grid-column: 1/3; } .profile-notification-list > a > span small { white-space: normal; } .profile-metrics > a { min-height: 55px; border-top: 1px solid var(--shd-border); } } .profile-metrics > a { min-width: 77px; height: 59px; align-items: center; padding: 7px; border: 1px solid var(--shd-border); background: #111415; } .notification-command { align-items: center; } .notification-command > div:first-child { display: grid; align-content: center; } .notification-command > div:last-child { align-self: center; } .notification-preference-head > span:not(:first-child) { text-align: center; } .notification-preference-row > label { justify-content: center; } .notification-list > article { grid-template-columns: 190px minmax(0, 1fr); transition: border-color 0.14s ease, background 0.14s ease; } .notification-list > article.isac-message { border-left: 2px solid #68a9c4; background: linear-gradient(90deg, #101a1e 0, #101314 34%); } .notification-list > article.positive { border-left-color: var(--shd-success); } .notification-list > article.negative { border-left-color: var(--shd-danger); } .notification-list > article.positive:not(.isac-message) { background: linear-gradient(90deg, #101914 0, #101314 34%); } .notification-list > article.negative:not(.isac-message) { background: linear-gradient(90deg, #1b1111 0, #101314 34%); } .notification-source { grid-template-columns: 38px minmax(0, 1fr); align-items: center; align-content: center; gap: 9px; } .notification-source > img { width: 38px; height: 38px; object-fit: cover; border: 1px solid #3a4548; border-radius: 50%; background: #111; } .notification-source > span { min-width: 0; display: grid; gap: 4px; } .notification-source > span b, .notification-source > span small { overflow: hidden; text-overflow: ellipsis; } .notification-source > span b { white-space: normal; } .notification-source > span small { color: #667073; font-size: var(--shd-type-telemetry); white-space: nowrap; } .notification-list article header > div { display: flex; align-items: center; gap: 8px; min-width: 0; } .notification-tone { flex: 0 0 auto; padding: 3px 5px; border: 1px solid #50585a; color: #899193; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; } .positive .notification-tone { border-color: #41684b; color: var(--shd-success); } .negative .notification-tone { border-color: #6d3f39; color: var(--shd-danger); } .isac-message .notification-source b { color: #8ecce5; } .notification-list article footer > button:first-child { color: var(--shd-orange); } .notification-detail-modal { width: min(720px, calc(100vw - 24px)); border-top: 3px solid #687174; } .notification-detail-modal.isac-message { border-top-color: #68a9c4; } .notification-detail-modal.positive { border-top-color: var(--shd-success); } .notification-detail-modal.negative { border-top-color: var(--shd-danger); } .notification-detail-sender { display: grid; grid-template-columns: 48px 1fr 34px; align-items: center; gap: 10px; padding-bottom: 10px; border-bottom: 1px solid var(--shd-border); } .notification-detail-sender > img { width: 48px; height: 48px; object-fit: cover; border: 1px solid #485052; border-radius: 50%; background: #111; } .notification-detail-sender > div { display: grid; gap: 4px; } .notification-detail-sender span { color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .notification-detail-sender b { font-size: var(--shd-type-telemetry); } .notification-detail-sender > button { height: 34px; border: 1px solid var(--shd-border); background: #111415; color: #aeb4b5; cursor: pointer; } .notification-detail-state { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 12px; margin: 10px 0; padding: 7px 9px; border: 1px solid var(--shd-border); background: #0d1011; } .notification-detail-state span, .notification-detail-state time { color: #6f7779; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .notification-detail-state b { color: #899193; font-size: var(--shd-type-telemetry); } .notification-detail-modal.positive .notification-detail-state b { color: var(--shd-success); } .notification-detail-modal.negative .notification-detail-state b { color: var(--shd-danger); } .notification-detail-modal h2 { margin: 15px 0 8px; font-size: 20px; } .notification-detail-modal > p { min-height: 90px; margin: 0; padding: 13px; border-left: 2px solid var(--shd-border); background: #0e1112; color: #c0c5c6; font: 13px/1.7 var(--shd-font-editorial); } .notification-detail-modal.isac-message > p { border-left-color: #68a9c4; } .notification-detail-modal.positive > p { border-left-color: var(--shd-success); } .notification-detail-modal.negative > p { border-left-color: var(--shd-danger); } .notification-detail-modal .form-actions { align-items: center; } .notification-detail-modal .form-actions form { margin-right: auto; } .notification-detail-modal .form-actions .button { min-height: 40px; } @media (max-width: 700px) { .notification-list > article { grid-template-columns: 1fr; } .notification-source { display: grid; grid-template-columns: 38px 1fr; justify-content: initial; } .notification-list article header > div { align-items: flex-start; flex-direction: column; } .notification-detail-state { grid-template-columns: 1fr auto; } .notification-detail-state time { grid-column: 1/3; } .notification-detail-modal .form-actions { display: grid; grid-template-columns: 1fr; } .notification-detail-modal .form-actions form, .notification-detail-modal .form-actions button, .notification-detail-modal .form-actions a { width: 100%; margin: 0; } } .notification-command { padding: 0 0 18px; } .notification-command-actions { display: flex !important; align-items: stretch !important; gap: 8px !important; } .notification-unread-summary { min-width: 86px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 7px; padding: 7px 11px; border: 1px solid var(--shd-border); background: #0d1011; } .notification-unread-summary strong { grid-row: auto !important; font-size: 25px !important; line-height: 1; } .notification-unread-summary span { align-self: center; line-height: 1.2; } .notification-command-actions > button, .notification-toolbar button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; margin: 0 !important; padding: 0 18px; line-height: 1; white-space: nowrap; } .notification-command-actions > button > span { font-size: var(--shd-type-telemetry); } .notification-toolbar { align-items: center; padding: 10px 0; } .notification-toolbar form { align-items: center; margin: 0; } .notification-toolbar select { min-width: 125px; height: 40px; } .notification-toolbar form:first-child button { min-width: 150px; } .notification-toolbar > form:last-child { margin-left: auto; } @media (max-width: 700px) { .notification-command-actions { width: 100%; display: grid !important; grid-template-columns: auto 1fr; } .notification-command-actions > button { width: 100%; } .notification-toolbar { align-items: stretch; } .notification-toolbar > form:last-child { margin-left: 0; } } .profile-row > a { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 700; } .builder-save-form { display: inline-block; } .builder-save-form fieldset { display: flex; } .builder-persistence { display: grid; grid-template-columns: minmax(300px, 520px) 1fr auto; gap: 14px; align-items: end; padding: 11px 2px; border-top: 1px solid var(--shd-border); } .builder-persistence p { margin: 0 0 9px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .builder-share-link { align-self: center; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 700; letter-spacing: 1px; } .catalogue-empty { grid-column: 1/-1; display: grid; justify-items: center; gap: 12px; padding: 60px; border: 1px solid var(--shd-border); background: var(--shd-panel); text-align: center; } .catalogue-empty > span { color: var(--shd-orange); font-size: 34px; } .catalogue-empty p { margin: 0; color: var(--shd-text-muted); } .build-open { display: block; text-align: center; } .shared-build-page { padding-top: 28px; } .shared-build-command { display: flex; justify-content: space-between; gap: 24px; align-items: end; padding: 22px; border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: var(--shd-surface); } .shared-build-command h1 { margin: 8px 0; font-size: clamp(30px, 4vw, 52px); } .shared-build-command p:last-child { margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .shared-build-command > div:last-child { display: flex; gap: 8px; } .shared-build-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 10px; } .shared-build-grid > section { border: 1px solid var(--shd-border); background: var(--shd-surface); } .shared-build-intelligence { display: grid; gap: 10px; margin-top: 10px; } .shared-build-grid > section > header { display: flex; justify-content: space-between; padding: 10px 12px; border-bottom: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1.2px; } .shared-build-grid article { display: grid; gap: 4px; min-height: 70px; padding: 12px; border-bottom: 1px solid var(--shd-border); } .shared-build-grid article:last-child { border-bottom: 0; } .shared-build-grid article small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .shared-build-grid article strong { font-size: 12px; } .shared-build-grid article span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .shared-build-grid article > em { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-style: normal; line-height: 1.4; } .shared-item-facts { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 3px; } .shared-item-facts b { padding: 4px 5px; border: 1px solid var(--shd-border-soft); background: var(--shd-bg); color: var(--shd-text); font-size: var(--shd-type-telemetry); letter-spacing: 0.35px; } @media (max-width: 760px) { .builder-command .page-title, .shared-build-command { align-items: stretch; flex-direction: column; } .builder-command .actions, .shared-build-command > div:last-child { flex-wrap: wrap; } .builder-persistence { grid-template-columns: 1fr; } .shared-build-grid { grid-template-columns: 1fr; } } /* Command Grid production builder: matrix navigation, contextual editor, and live telemetry rail. */ .builder-command { min-width: 0; border: 1px solid var(--shd-border); background: var(--shd-surface); } .builder-command .page-title { min-width: 0; padding: 14px 16px; margin: 0; } .builder-command .page-title > div { min-width: 0; } .builder-command .page-title > div:first-child { flex: 1 1 460px; min-width: min(460px, 42vw); } .builder-command .page-title input { width: 100%; max-width: none; font-size: clamp(27px, 3.1vw, 46px); letter-spacing: -0.03em; text-transform: uppercase; } .builder-command .actions { min-width: 0; flex: 0 0 auto; display: grid; grid-template-columns: repeat(3, minmax(0, auto)); align-items: center; gap: 7px; } .builder-command .actions > span { grid-column: 1/-1; color: var(--shd-success); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.08em; text-align: right; } .builder-command .builder-persistence { padding: 10px 14px; } .builder-status { min-width: 0; flex-wrap: wrap; gap: 5px 20px; padding: 9px 14px; border-top: 1px solid var(--shd-border); background: #0c0f10; } .builder-status > span { min-width: 0; overflow-wrap: anywhere; } .builder-notes { min-width: 0; display: grid; grid-template-columns: minmax(260px, 0.65fr) minmax(420px, 1.35fr); gap: 8px; padding: 10px 14px; border-top: 1px solid var(--shd-border); background: var(--shd-builder-canvas); } .builder-notes > * { min-width: 0; } .builder-notes > label { display: grid; align-content: start; gap: 6px; } .builder-notes > label > span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.08em; } .builder-notes > label small { color: var(--shd-text-muted); } .builder-notes textarea { width: 100%; min-height: 150px; padding: 11px; border: 1px solid var(--shd-border); border-radius: 0; background: #0d0f10; color: var(--shd-text); font: var(--shd-type-body)/1.55 var(--shd-font-editorial); resize: vertical; } .loadout-workspace { min-width: 0; grid-template-columns: minmax(300px, 350px) minmax(0, 1fr); gap: 6px; } .loadout-workspace > *, .loadout-editor > *, .loadout-summary > * { min-width: 0; } .loadout-editor { min-width: 0; border-top-color: var(--shd-orange); background: var(--shd-surface); } .loadout-editor-head { min-width: 0; gap: 10px; margin: -12px -12px 10px; padding: 11px 12px; border-bottom-color: var(--shd-border); background: #0c0f10; } .loadout-editor-head > div { min-width: 0; } .loadout-editor-head h2, .loadout-editor-head > b { overflow-wrap: anywhere; } .loadout-editor-head > b { flex: 0 1 auto; text-align: right; } .loadout-summary { min-width: 0; position: static; grid-column: 1/3; max-height: none; overflow: visible; background: var(--shd-surface); } .loadout-summary .summary-scroll { max-height: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); } .builder-editor-lane .builder-radio-grid:not(.icon-only) > div { grid-template-columns: repeat(2, minmax(0, 1fr)); } .builder-picker-current > * { min-width: 0; } .builder-picker-current span, .builder-picker-panel button span { min-width: 0; } .builder-section-title { min-width: 0; gap: 10px; } .builder-section-title > div { min-width: 0; } .builder-section-title small { overflow-wrap: anywhere; } .builder-section-title > b { flex: 0 0 auto; text-align: right; } .builder-ability-chip-panels.single { grid-template-columns: 1fr; } .builder-ability-chip-panels.single section > div { grid-template-columns: repeat(3, minmax(0, 1fr)); } .builder-specialization-identity.ability-identity { grid-template-columns: 46px minmax(0, 1fr) auto; } .builder-specialization-identity.ability-identity > .item-icon { width: 42px; height: 42px; } .shared-build-guide { margin-top: 10px; border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: var(--shd-panel); } .shared-build-guide > header { display: flex; justify-content: space-between; padding: 9px 12px; border-bottom: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.09em; } .shared-build-guide > header b { color: var(--shd-orange); } .shared-build-summary { max-width: 90ch; margin: 0; padding: 15px 18px; border-bottom: 1px solid var(--shd-border); color: var(--shd-text); font: 16px/1.6 var(--shd-font-editorial); } .shared-build-guide > div { padding: 18px; } .shared-build-guide h2 { margin: 0 0 10px; font-size: 18px; letter-spacing: 0.04em; } @media (max-width: 1320px) { .loadout-workspace { grid-template-columns: minmax(270px, 320px) minmax(440px, 1fr); } .loadout-summary { position: static; grid-column: 1/3; max-height: none; overflow: visible; } .summary-scroll { max-height: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); } } @media (max-width: 1050px) { .builder-command .page-title { align-items: stretch; flex-direction: column; } .builder-command .page-title > div:first-child { flex: 0 0 auto; min-width: 0; } .builder-command .actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } .builder-command .actions > span { grid-column: 1/-1; } .builder-command .actions > .secondary, .builder-command .actions > .primary, .builder-command .actions > a, .builder-command .builder-save-form, .builder-command .builder-save-form fieldset, .builder-command .builder-save-form button { width: 100%; } } @media (max-width: 800px) { .builder-command .page-title > div:first-child { min-width: 0; } .builder-notes { grid-template-columns: 1fr; } .loadout-workspace { grid-template-columns: 1fr; } .loadout-workspace > .loadout-matrix, .loadout-editor, .loadout-summary { grid-column: auto; } .builder-ability-chip-panels.single section > div { grid-template-columns: 1fr; } .builder-specialization-identity.ability-identity { grid-template-columns: 48px minmax(0, 1fr); } .builder-specialization-identity.ability-identity > b { grid-column: 1/-1; } .summary-scroll { display: block; } } @media (max-width: 560px) { .builder-command .actions { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; } .builder-command .actions > span, .builder-command .actions > .primary, .builder-command .actions > a.primary, .builder-command .builder-save-form { grid-column: 1/-1; } .builder-command .actions > .secondary, .builder-command .actions > .primary, .builder-command .actions > a, .builder-command .builder-save-form, .builder-command .builder-save-form fieldset, .builder-command .builder-save-form button { width: 100%; } .builder-status { display: grid; grid-template-columns: 1fr 1fr; } .builder-section-title { align-items: flex-start; flex-direction: column; } .builder-section-title > b { align-self: flex-start; text-align: left; } .builder-rolls.required > div { grid-template-columns: 1fr; } .loadout-editor-head { align-items: flex-start; flex-wrap: wrap; } .loadout-editor-head > b { margin-left: auto; } .summary-head { gap: 10px; } .summary-head > b { flex: 0 0 auto; } } .weapon-mod-slot-config { margin-top: 7px; padding-top: 6px; border-top: 1px solid var(--shd-border); } .weapon-mod-slot-config .assignment-picker { margin-top: 5px; } .weapon-mod-editor { border-top-color: var(--shd-orange); } .weapon-mod-identity { display: grid; grid-template-columns: minmax(300px, 1.4fr) 52px minmax(280px, 1fr); align-items: end; gap: 8px; } .weapon-mod-identity > .field, .weapon-mod-identity > .segmented-choice { margin: 0; } .weapon-mod-identity > .segmented-choice { grid-column: 1/-1; } .weapon-mod-identity > .segmented-choice > div { height: 38px; } .weapon-mod-assignment-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; } .weapon-mod-secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; } .weapon-mod-quality-section, .weapon-mod-effect-section { margin-top: 10px; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .weapon-mod-quality-section { border-left: 2px solid var(--quality-high-end); } .weapon-mod-quality-table { display: grid; margin-top: 7px; border: 1px solid var(--shd-border); } .weapon-mod-quality-row { display: grid; grid-template-columns: 110px repeat(4, minmax(180px, 1fr)); align-items: center; border-top: 1px solid var(--shd-border); } .weapon-mod-quality-row:first-child { border-top: 0; } .weapon-mod-quality-row.heading { min-height: 29px; background: #111415; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .weapon-mod-quality-row > span, .weapon-mod-quality-row > strong { padding: 8px; } .weapon-mod-quality-row > strong { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .weapon-mod-quality-row > div { display: grid; grid-template-columns: 1fr 14px 1fr; align-items: center; gap: 4px; padding: 5px; border-left: 1px solid var(--shd-border); } .weapon-mod-quality-row input { height: 30px; margin: 0; padding: 0 6px; font-size: var(--shd-type-telemetry); } .weapon-mod-quality-row i { color: #596164; font-size: var(--shd-type-telemetry); font-style: normal; text-align: center; } .weapon-mod-preview { display: grid; grid-template-columns: minmax(360px, 0.8fr) minmax(420px, 1.2fr); align-items: end; gap: 8px; margin-top: 8px; } .weapon-mod-preview > div:first-child { display: grid; grid-template-columns: 1fr 1.2fr; align-items: end; gap: 8px; } .weapon-mod-preview > div:first-child > label { display: grid; gap: 5px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .weapon-mod-preview input[type='range'] { height: 32px; margin: 0; padding: 0; accent-color: var(--shd-orange); } .weapon-mod-preview-values { display: grid; grid-template-columns: 1.2fr 1fr 1fr; border: 1px solid var(--shd-border); } .weapon-mod-preview-values > span { min-height: 48px; display: grid; grid-template-columns: auto 1fr; grid-template-rows: 1fr 1fr; align-items: center; gap: 2px 7px; padding: 7px; border-left: 1px solid var(--shd-border); } .weapon-mod-preview-values > span:first-child { border-left: 0; } .weapon-mod-preview-values .game-icon { grid-row: 1/3; width: 28px; height: 28px; } .weapon-mod-preview-values small { align-self: end; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .weapon-mod-preview-values b { align-self: start; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .weapon-mod-effects { display: grid; gap: 6px; margin-top: 7px; } .weapon-mod-effects > div { display: grid; grid-template-columns: 30px minmax(230px, 1fr) repeat(4, minmax(90px, 0.45fr)) 30px; align-items: end; gap: 6px; padding: 6px; border: 1px solid var(--shd-border); background: #101314; } .weapon-mod-effects > div > strong { height: 100%; display: grid; place-items: center; background: #171b1c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .weapon-mod-effects label { display: grid; gap: 4px; } .weapon-mod-effects label span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; } .weapon-mod-effects input { height: 32px; margin: 0; padding: 0 6px; } .weapon-mod-effects > div > button { height: 32px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .weapon-mod-effects > div > button:disabled { opacity: 0.3; cursor: not-allowed; } .weapon-mod-rule { padding: 10px; border: 1px solid #74552a; border-left: 2px solid var(--quality-high-end); background: #18150d; color: #a89568; font-size: var(--shd-type-telemetry); } .weapon-mod-rule b { color: var(--quality-high-end); } .weapon-mod-row { min-width: 1240px; grid-template-columns: 1.15fr 0.55fr 0.65fr 1fr 1fr 0.55fr 0.5fr 0.3fr; } .weapon-mod-primary { display: flex; align-items: center; gap: 5px; } .weapon-mod-primary .game-icon { width: 22px; height: 22px; } .weapon-mod-row > span small { color: var(--shd-text-muted); } @media (max-width: 1100px) { .weapon-mod-identity { grid-template-columns: 1fr 52px 1fr; } .weapon-mod-assignment-grid, .weapon-mod-preview { grid-template-columns: 1fr; } .weapon-mod-quality-table { overflow-x: auto; } .weapon-mod-quality-row { min-width: 900px; } .weapon-mod-effects > div { grid-template-columns: 30px 1fr 1fr 1fr; } .weapon-mod-effects label:nth-of-type(3), .weapon-mod-effects label:nth-of-type(4), .weapon-mod-effects > div > button { grid-column: auto; } } @media (max-width: 700px) { .weapon-mod-identity, .weapon-mod-assignment-grid, .weapon-mod-secondary, .weapon-mod-preview > div:first-child { grid-template-columns: 1fr; } .weapon-mod-identity > .segmented-choice { grid-column: auto; } .weapon-mod-identity > .segmented-choice > div { height: auto; grid-template-columns: repeat(2, 1fr); } .weapon-mod-identity > .segmented-choice span { min-height: 44px; } .weapon-mod-effects > div { grid-template-columns: 30px 1fr; } .weapon-mod-effects label, .weapon-mod-effects > div > button { grid-column: 2; } .weapon-mod-preview-values { grid-template-columns: 1fr; } .weapon-mod-preview-values > span { border-left: 0; border-top: 1px solid var(--shd-border); } .weapon-mod-preview-values > span:first-child { border-top: 0; } } .weapon-mod-primary-types { min-height: 58px; display: grid; align-content: center; gap: 5px; padding: 7px; border: 1px solid var(--shd-border); background: #0d1011; } .weapon-mod-primary-types > span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .weapon-mod-primary-types > div { display: flex; gap: 8px; } .weapon-mod-primary-types b { display: flex; align-items: center; gap: 3px; color: #aab0b1; font-size: var(--shd-type-telemetry); } .weapon-mod-primary-types .game-icon { width: 18px; height: 18px; } .weapon-mod-primary-types small { color: #596164; font-size: var(--shd-type-telemetry); } .weapon-mod-compatibility { margin-top: 10px; } .weapon-mod-quality-row { grid-template-columns: 110px repeat(2, minmax(220px, 1fr)); } .weapon-mod-quality-row.heading { grid-template-columns: 110px repeat(2, minmax(220px, 1fr)); } .weapon-mod-preview-values { grid-template-columns: 1.3fr 0.7fr; } .weapon-mod-preview-values .core-icon-stack { grid-row: 1/3; } .weapon-mod-preview-values .core-icon-stack .game-icon { grid-row: auto; width: 22px; height: 22px; } .weapon-mod-secondary-section { margin-top: 10px; padding: 9px; border: 1px solid var(--shd-border); border-left: 2px solid var(--quality-specialized); background: #0d1011; } .weapon-mod-secondary-options { display: grid; gap: 6px; margin-top: 7px; } .weapon-mod-secondary-options > div { display: grid; grid-template-columns: 30px minmax(230px, 1fr) repeat(4, minmax(150px, 0.65fr)) 30px; align-items: end; gap: 6px; padding: 6px; border: 1px solid var(--shd-border); background: #101314; } .weapon-mod-secondary-options > div > strong { height: 100%; display: grid; place-items: center; background: #171b1c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .weapon-mod-secondary-options label { display: grid; gap: 4px; } .weapon-mod-secondary-options label > span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; } .weapon-mod-secondary-options label > div { display: grid; grid-template-columns: 1fr 12px 1fr; align-items: center; } .weapon-mod-secondary-options input { height: 32px; margin: 0; padding: 0 5px; } .weapon-mod-secondary-options i { color: #596164; font-size: var(--shd-type-telemetry); font-style: normal; text-align: center; } .weapon-mod-secondary-options > div > button { height: 32px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .weapon-mod-secondary-options > div > button:disabled { opacity: 0.3; cursor: not-allowed; } .mod-secondary-pool-registry { margin: 10px 0; padding: 10px; border: 1px solid var(--shd-border); border-left: 2px solid var(--quality-specialized); background: #0d1011; } .mod-secondary-capacity { display: grid; grid-template-columns: repeat(5, minmax(120px, 1fr)); margin-top: 8px; border: 1px solid var(--shd-border); } .mod-secondary-capacity > span { min-height: 58px; display: grid; grid-template-columns: 1fr auto; grid-template-rows: 1fr 1fr; align-items: center; gap: 1px 8px; padding: 8px; border-left: 1px solid var(--shd-border); background: #101314; } .mod-secondary-capacity > span:first-child { border-left: 0; } .mod-secondary-capacity b, .mod-secondary-capacity small { font-size: var(--shd-type-telemetry); letter-spacing: 0.55px; } .mod-secondary-capacity small { color: var(--shd-text-muted); } .mod-secondary-capacity strong { grid-row: 1/3; grid-column: 2; color: var(--shd-orange); font-size: 24px; } .mod-secondary-capacity .pool-total { border-left-color: #74552a; background: #18150d; } .mod-secondary-pool-editor { border-top-color: var(--quality-specialized); } .pool-editor-head { margin-top: 12px; } .mod-secondary-pool-options { display: grid; gap: 7px; margin-top: 7px; } .mod-secondary-pool-option { display: grid; grid-template-columns: 30px minmax(220px, 0.9fr) repeat(3, minmax(285px, 1fr)) 30px; align-items: stretch; gap: 6px; padding: 6px; border: 1px solid var(--shd-border); background: #101314; } .mod-secondary-pool-option > strong { display: grid; place-items: center; background: #171b1c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .mod-secondary-quality-range { display: grid; grid-template-columns: 72px 1fr; grid-template-rows: 1fr 1fr; align-items: center; gap: 4px 6px; padding: 6px; border: 1px solid var(--shd-border); } .mod-secondary-quality-range > b { grid-row: 1/3; font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .mod-secondary-quality-range label { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 5px; } .mod-secondary-quality-range label > span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; } .mod-secondary-quality-range label > div { display: grid; grid-template-columns: 1fr 12px 1fr; align-items: center; } .mod-secondary-quality-range input { height: 30px; margin: 0; padding: 0 5px; } .mod-secondary-quality-range i { color: #596164; font-size: var(--shd-type-telemetry); font-style: normal; text-align: center; } .mod-secondary-pool-option > button { align-self: end; height: 32px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .mod-secondary-pool-option > button:disabled { opacity: 0.3; cursor: not-allowed; } @media (max-width: 1100px) { .weapon-mod-quality-row, .weapon-mod-quality-row.heading { min-width: 580px; } .weapon-mod-secondary-options > div { grid-template-columns: 30px 1fr 1fr 1fr; } .weapon-mod-secondary-options label:nth-of-type(3), .weapon-mod-secondary-options label:nth-of-type(4) { grid-column: auto; } .mod-secondary-pool-options { overflow-x: auto; } .skill-chip-shared-config { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 12px; } .skill-chip-shared-config .mod-secondary-pool-registry { margin-bottom: 0; } .skill-chip-profile-options { display: grid; gap: 8px; overflow-x: auto; } .skill-chip-profile-option { min-width: 870px; display: grid; grid-template-columns: minmax(190px, 1.2fr) repeat(4, minmax(130px, 1fr)); gap: 8px; align-items: stretch; padding: 8px; border: 1px solid var(--shd-border); background: #0e1112; } .skill-chip-profile-option.selectable { grid-template-columns: 32px minmax(210px, 1.2fr) repeat(3, minmax(130px, 1fr)) 34px; } .skill-chip-profile-option > div:first-child, .skill-chip-profile-option > label { min-width: 0; display: grid; align-content: center; gap: 6px; padding: 8px; border: 1px solid #292f30; background: #121617; } .skill-chip-profile-option > div:first-child strong, .skill-chip-profile-option > div:first-child small, .skill-chip-profile-option > label > b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .skill-chip-profile-option > div:first-child small, .skill-chip-profile-option > label > b { font-size: var(--shd-type-micro); letter-spacing: 0.08em; } .skill-chip-profile-option > label > span { display: grid; grid-template-columns: 1fr auto 1fr; gap: 5px; align-items: center; } .skill-chip-profile-option input { width: 100%; min-width: 0; padding: 8px 6px; border: 1px solid #353c3d; background: #090c0d; color: var(--shd-text); font: inherit; } .skill-chip-profile-option > strong { align-self: center; color: var(--shd-orange); font-size: var(--shd-type-telemetry); text-align: center; } .skill-chip-profile-option > button:last-child { border: 1px solid #553128; background: #1a1110; color: var(--shd-danger); cursor: pointer; } .skill-chip-profile-option > button:last-child:disabled { opacity: 0.3; cursor: not-allowed; } .skill-chip-profile-option input:focus-visible, .skill-chip-profile-option > button:last-child:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .skill-chip-talent-disclosure, .protocol-talent-disclosure { margin-top: 10px; } .skill-chip-talent-removal, .protocol-talent-removal { display: flex; align-items: center; gap: 8px; margin-top: 10px; padding: 10px; border: 1px solid #57332b; background: #1a1110; color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 800; letter-spacing: 0.06em; } @media (max-width: 900px) { .skill-chip-shared-config { grid-template-columns: 1fr; } } .mod-secondary-pool-option { min-width: 1160px; } } @media (max-width: 700px) { .mod-secondary-capacity { grid-template-columns: 1fr 1fr; } .mod-secondary-capacity > span, .mod-secondary-capacity > span:first-child { border-top: 1px solid var(--shd-border); border-left: 1px solid var(--shd-border); } .mod-secondary-capacity > span:nth-child(odd) { border-left: 0; } .mod-secondary-capacity .pool-total { grid-column: 1/-1; } .weapon-mod-secondary-options > div { grid-template-columns: 30px 1fr; } .weapon-mod-secondary-options label, .weapon-mod-secondary-options > div > button { grid-column: 2; } } .weapon-mod-exotic-quality { min-height: 58px; display: flex; align-items: center; gap: 8px; padding: 7px; border: 1px solid #74552a; border-left: 2px solid var(--quality-high-end); background: #18150d; } .weapon-mod-exotic-quality .game-icon { width: 34px; height: 34px; } .weapon-mod-exotic-quality span { display: grid; gap: 3px; } .weapon-mod-exotic-quality b { color: var(--quality-high-end); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .weapon-mod-exotic-quality small { color: #a89568; font-size: var(--shd-type-telemetry); letter-spacing: 0.35px; } .weapon-mod-exotic-toggle > span { width: 44px; min-height: 42px; padding: 0; } .weapon-mod-exotic-toggle input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; } .weapon-mod-exotic-toggle .game-icon { width: 30px; height: 30px; } .weapon-mod-compatibility .segmented-choice > div { height: 48px; } .weapon-mod-compatibility .segmented-choice .game-icon { width: 34px; height: 34px; } .weapon-mod-exotic-section { margin-top: 10px; padding: 9px; border: 1px solid #74552a; border-left: 2px solid var(--quality-high-end); background: #0d1011; } .weapon-mod-exotic-attributes { display: grid; gap: 6px; margin-top: 7px; } .weapon-mod-exotic-attributes > div { display: grid; grid-template-columns: 30px minmax(240px, 1fr) 150px 150px 30px; align-items: end; gap: 6px; padding: 6px; border: 1px solid var(--shd-border); background: #101314; } .weapon-mod-exotic-attributes > div > strong { height: 100%; display: grid; place-items: center; background: #171b1c; color: var(--quality-high-end); font-size: var(--shd-type-telemetry); } .weapon-mod-exotic-attributes label { display: grid; gap: 4px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.5px; } .weapon-mod-exotic-attributes input { height: 32px; margin: 0; padding: 0 6px; } .weapon-mod-exotic-attributes > div > button { height: 32px; border: 1px solid #563734; background: #1d1212; color: var(--shd-danger); cursor: pointer; } .weapon-mod-exotic-attributes > div > button:disabled { opacity: 0.3; cursor: not-allowed; } @media (max-width: 700px) { .weapon-mod-exotic-attributes > div { grid-template-columns: 30px 1fr; } .weapon-mod-exotic-attributes label, .weapon-mod-exotic-attributes > div > button { grid-column: 2; } .weapon-mod-compatibility .segmented-choice > div { height: auto; grid-template-columns: repeat(3, 1fr); } .weapon-mod-compatibility .segmented-choice span { min-height: 50px; } } .gear-mod-identity { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(560px, 1.5fr); align-items: end; gap: 8px; } .gear-mod-identity > .field { margin: 0; } .gear-mod-primary-types > div { flex-wrap: wrap; } .gear-mod-row { min-width: 1120px; grid-template-columns: 1.2fr 1fr 0.9fr 1fr 0.55fr 0.55fr 0.3fr; } .gear-mod-row > span { display: flex; align-items: center; gap: 6px; } .gear-mod-row > span small { color: var(--shd-text-muted); } @media (max-width: 900px) { .gear-mod-identity { grid-template-columns: 1fr; } } @media (max-width: 700px) { .gear-mod-primary-types > div { display: grid; grid-template-columns: 1fr 1fr; } } .missing-item-icon { opacity: 0.7; filter: saturate(0.75); } .icon-upload-preview .missing-item-icon { width: 66px; height: 66px; opacity: 0.62; } .registry-icon-identity > .missing-item-icon, .registry-icon-rail .missing-item-icon { padding: 2px; border: 1px dashed #424849; background: #101314; } .builder-picker .missing-item-icon, .builder-radio-grid .missing-item-icon { opacity: 0.66; } .database-registry-grid > a { min-height: 180px; display: flex; flex-direction: column; padding: 17px; border: 1px solid var(--shd-border); border-top: 2px solid #43494a; background: #111415; color: var(--shd-text); transition: border-color 0.15s ease, background 0.15s ease, transform 0.1s ease; } .database-registry-grid > a:hover, .database-registry-grid > a:focus-visible { border-top-color: var(--shd-orange); background: #15191a; } .database-registry-grid > a:active { transform: translateY(1px); filter: brightness(0.88); } .database-registry-grid > a > span { margin-top: auto; color: #687073; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .database-category-page { padding-top: 34px; } .database-category-command { display: flex; justify-content: space-between; align-items: end; gap: 28px; padding: 22px; border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: linear-gradient(115deg, #15191a, #0d1011); } .database-category-command h1 { margin: 8px 0 7px; font-size: clamp(30px, 4vw, 52px); line-height: 0.95; } .database-category-command > div:first-child > p:last-child { max-width: 720px; margin: 0; color: #8d9597; font: 12px/1.55 var(--shd-font-editorial); } .database-category-command > div:last-child { min-width: 150px; display: grid; justify-items: end; gap: 3px; } .database-category-command > div:last-child strong { color: var(--shd-orange); font-size: 32px; line-height: 1; } .database-category-command > div:last-child span { color: #687073; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .database-category-command > div:last-child a { margin-top: 8px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .database-category-nav { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); margin: 10px 0; border: 1px solid var(--shd-border); background: #0d1011; } .database-category-nav > a { min-height: 55px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 7px; padding: 9px; border-left: 1px solid var(--shd-border); color: #8e9698; } .database-category-nav > a:first-child { border-left: 0; } .database-category-nav > a small { color: #525a5c; font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .database-category-nav > a span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.35px; } .database-category-nav > a b { color: #4f5759; } .database-category-nav > a:hover, .database-category-nav > a:focus-visible { background: #171b1c; color: var(--shd-text); } .database-category-nav > a.active { box-shadow: inset 0 2px var(--shd-orange); background: #191814; color: var(--shd-orange); } .database-category-nav > a:active { filter: brightness(0.85); } .database-facet-panel { margin: 10px 0; border: 1px solid var(--shd-border); border-left: 2px solid var(--shd-orange); background: #0d1011; } .database-facet-panel > header { height: auto; min-height: 43px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 11px; border-bottom: 1px solid var(--shd-border); background: #15191a; } .database-facet-panel > header > div { display: grid; gap: 3px; } .database-facet-panel > header small { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.9px; } .database-facet-panel > header strong { color: #727a7c; font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .database-facet-panel > header button { min-height: 30px; padding: 0 10px; border: 1px solid #5d4324; background: #1c160d; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; cursor: pointer; } .database-facet-panel > header button:hover, .database-facet-panel > header button:focus-visible { border-color: var(--shd-orange); background: #261c0d; } .database-facet-panel > header button:active { transform: translateY(1px); filter: brightness(0.8); } .database-facet-groups { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 8px; padding: 9px; } .database-facet-group { min-width: 0; margin: 0; padding: 7px; border: 1px solid var(--shd-border); background: #111415; } .database-facet-group legend { display: flex; align-items: center; gap: 7px; padding: 0 4px; color: #a7adaf; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-facet-group legend span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .database-facet-group > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; } .database-facet-group > div > button { min-width: 0; min-height: 46px; display: flex; align-items: center; justify-content: center; gap: 5px; padding: 5px; border: 1px solid #353b3c; background: #0d1011; color: #7f8789; cursor: pointer; } .database-facet-group > div > button :is(.game-icon, img) { width: 28px; height: 28px; flex: 0 0 28px; object-fit: contain; } .database-facet-group > div > button span { overflow: hidden; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.3px; text-overflow: ellipsis; white-space: nowrap; } .database-facet-group > div > button:hover, .database-facet-group > div > button:focus-visible { border-color: #6a4c26; background: #18150f; color: #d0d3d1; } .database-facet-group > div > button.selected { border-color: var(--shd-orange); box-shadow: inset 0 2px var(--shd-orange); background: #21190e; color: var(--shd-orange); } .database-facet-group > div > button:active { transform: translateY(1px); filter: brightness(0.82); } .database-facet-group.searchable > div { max-height: 150px; display: grid; grid-template-columns: 1fr; overflow: auto; } .database-facet-group.searchable > div > button { min-height: 36px; justify-content: flex-start; } .database-facet-group.searchable > div > button :is(img, .game-icon) { width: 25px; height: 25px; flex-basis: 25px; } .database-facet-search { display: block; margin-bottom: 5px; } .database-facet-search input { width: 100%; height: 32px; margin: 0; padding: 0 8px; border: 1px solid #3b4243; background: #0a0d0e; color: var(--shd-text); font-size: var(--shd-type-telemetry); } .database-facet-search input:focus { border-color: var(--shd-orange); outline: 1px solid color-mix(in srgb, var(--shd-orange) 45%, transparent); outline-offset: 1px; } .database-facet-groups.compact { grid-template-columns: 1fr; } .database-facet-groups.compact .database-facet-group > div { grid-template-columns: repeat(4, minmax(0, 1fr)); } .database-category-page > .registry-pagination { margin: 10px 0; } .database-item-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; } .database-item-card { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--shd-border); border-top: 2px solid #404748; background: #111415; } .database-item-card.protocol-quality-standard { border-top-color: var(--quality-standard); } .database-item-card.protocol-quality-specialized { border-top-color: var(--quality-specialized); } .database-item-card.protocol-quality-superior { border-top-color: var(--quality-superior); } .database-item-card.protocol-quality-highend { border-top-color: var(--quality-high-end); } .database-item-card > header { height: auto; min-height: 78px; display: grid; grid-template-columns: 58px minmax(0, 1fr); align-items: center; gap: 12px; padding: 11px 13px; border-bottom: 1px solid var(--shd-border); } .database-item-icon { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid #343a3b; background: #0c0f10; } .database-item-icon :is(img, .game-icon) { width: 52px; height: 52px; object-fit: contain; } .database-item-card > header small { display: block; margin-bottom: 5px; color: #697174; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; text-transform: uppercase; } .database-item-card h2 { overflow-wrap: anywhere; margin: 0; font-size: 14px; line-height: 1.1; } .database-item-badges { display: flex; flex-wrap: wrap; gap: 5px; padding: 8px 12px 0; } .database-item-badges span { padding: 5px 7px; border: 1px solid #424849; background: #171b1c; color: #a5acae; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; text-transform: uppercase; } .database-item-badges .exotic { border-color: #74552a; background: #1a160d; color: var(--quality-high-end); } .database-item-badges :is(.standard, .specialized, .superior, .highend) { border-left-width: 2px; } .database-item-badges .standard { border-left-color: var(--quality-standard); } .database-item-badges .specialized { border-left-color: var(--quality-specialized); } .database-item-badges .superior { border-left-color: var(--quality-superior); } .database-item-badges .highend { border-left-color: var(--quality-high-end); } .database-item-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); margin: 9px 12px 0; border: 1px solid var(--shd-border); } .database-item-facts > div { min-width: 0; display: grid; align-content: center; gap: 4px; min-height: 53px; padding: 7px; border-left: 1px solid var(--shd-border); } .database-item-facts > div:first-child { border-left: 0; } .database-item-facts span, .database-item-lines span { color: #626a6c; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.65px; } .database-item-facts b { overflow-wrap: anywhere; color: #d2d6d3; font-size: var(--shd-type-telemetry); line-height: 1.35; } .database-weapon-mod-slots { display: grid; grid-template-columns: 110px minmax(0, 1fr); align-items: center; gap: 9px; margin: 7px 12px 0; padding: 8px 0; } .database-weapon-mod-slots > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; } .database-weapon-mod-slots > div span, .database-weapon-mod-slots > p { color: #626a6c; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.65px; } .database-weapon-mod-slots ul { display: flex; flex-wrap: wrap; gap: 5px; margin: 0; padding: 0; list-style: none; } .database-weapon-mod-slots li { display: inline-flex; align-items: center; gap: 6px; min-height: 27px; padding: 4px 7px; border: 1px solid #383f40; background: #0d1011; color: #aeb4b5; font-size: var(--shd-type-telemetry); font-weight: 800; } .database-weapon-mod-slots li.has-slot-icon { min-width: 34px; justify-content: center; padding: 4px; } .database-weapon-mod-slots li.upgrade-slot { border-color: #315b6a; background: #0b171c; color: var(--shd-info); } .database-weapon-mod-slots li small { padding-left: 6px; border-left: 1px solid #315b6a; color: var(--shd-info); font-size: var(--shd-type-micro); font-weight: 900; letter-spacing: 0.08em; } .database-weapon-mod-slots > p { margin: 0; } .database-item-lines { display: grid; gap: 1px; margin: 7px 12px 0; border-top: 1px solid var(--shd-border); } .database-item-lines > div { display: grid; grid-template-columns: 110px 1fr; gap: 9px; padding: 8px 0; border-bottom: 1px solid var(--shd-border); } .database-item-lines b { overflow-wrap: anywhere; font-size: var(--shd-type-telemetry); line-height: 1.4; } .database-item-card > p { margin: 9px 12px 0; padding: 9px; border-left: 2px solid var(--shd-orange); background: #0d1011; color: #a2a8aa; font: var(--shd-type-telemetry)/1.55 var(--shd-font-editorial); } .database-item-card > p.secondary-description { margin-top: 5px; border-left-color: #5c6466; } .database-item-card > :last-child { margin-bottom: 12px; } .database-empty { grid-column: 1/-1; display: grid; justify-items: center; gap: 9px; padding: 70px 24px; border: 1px solid var(--shd-border); background: #101314; text-align: center; } .database-empty > span { color: var(--shd-orange); font-size: 30px; } .database-empty strong { font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .database-empty p { margin: 0; color: #7e8688; font: var(--shd-type-supporting)/1.5 var(--shd-font-editorial); } .database-item-facts.stacked { grid-template-columns: 1fr; } .database-item-facts.stacked > div { grid-template-columns: 82px minmax(0, 1fr); align-items: center; min-height: 43px; border-left: 0; border-top: 1px solid var(--shd-border); } .database-item-facts.stacked > div:first-child { border-top: 0; } .database-item-facts.stacked b { color: var(--shd-orange); } .database-item-facts.stacked > div.primary { min-height: 66px; grid-template-columns: minmax(130px, 0.7fr) minmax(0, 1fr); border-left: 3px solid var(--shd-orange); background: linear-gradient(90deg, #21190e, #101314); } .database-item-facts.stacked > div.primary span { padding-left: 5px; color: #c89138; font-size: var(--shd-type-telemetry); } .database-item-facts.stacked > div.primary b { font-size: 20px; letter-spacing: 0.7px; } .database-item-facts:empty { display: none; } .database-item-lines.after-description { margin-top: 6px; } .database-item-lines.after-description > div { padding: 7px 2px; } .database-item-lines.after-description b { color: #9da4a6; } .database-item-card > p.data-description { position: relative; margin-top: 6px; padding: 10px 11px 10px 58px; border: 1px solid var(--shd-border); border-left: 2px solid #4b5355; background: #0e1112; color: #9ca3a5; font: var(--shd-type-telemetry)/1.55 var(--shd-font-sans); } .database-item-card > p.data-description::before { position: absolute; top: 10px; left: 10px; color: #858d8f; font: 700 6px/1 var(--shd-font-sans); letter-spacing: 0.7px; } .database-item-card > p.data-description:first-of-type::before { content: 'TIER I'; } .database-item-card > p.data-description.secondary-description { margin-top: 4px; border-color: #57462c; border-left-color: var(--shd-orange); background: #12130f; color: #bcc1bf; } .database-item-card > p.data-description.secondary-description::before { content: 'TIER II'; color: var(--shd-orange); } .database-item-card > header { position: relative; } .database-item-identity { min-width: 0; padding-right: 52px; } .database-item-identity > small { margin: 0; } .database-header-status { position: absolute; top: 10px; right: 12px; display: flex; align-items: center; gap: 6px; } .database-header-status > .game-icon { width: 19px; height: 19px; object-fit: contain; } .database-header-badge { flex: none; padding: 3px 5px; border: 1px solid #765426; background: #21180d; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-header-badge.exotic { border-color: #74552a; background: #1a160d; color: var(--quality-high-end); } .database-header-badge.highend { border-color: color-mix(in srgb, var(--quality-high-end) 58%, #52431a); background: #1c190c; color: var(--quality-high-end); } .database-header-badge.protocol-badge-standard { border-color: color-mix(in srgb, var(--quality-standard) 58%, #354142); background: #111718; color: var(--quality-standard); } .database-header-badge.protocol-badge-specialized { border-color: color-mix(in srgb, var(--quality-specialized) 58%, #274338); background: #0e1713; color: var(--quality-specialized); } .database-header-badge.protocol-badge-superior { border-color: color-mix(in srgb, var(--quality-superior) 58%, #2c3f5a); background: #10161d; color: var(--quality-superior); } .database-header-badge.protocol-badge-highend { border-color: color-mix(in srgb, var(--quality-high-end) 58%, #52431a); background: #1c190c; color: var(--quality-high-end); } .database-protocol-preview { display: grid; gap: 10px; margin: 9px 12px 0; } .database-protocol-primary { min-height: 66px; display: grid; grid-template-columns: minmax(130px, 0.7fr) minmax(0, 1fr); align-items: center; gap: 9px; padding: 7px; border: 1px solid var(--shd-border); border-left: 3px solid var(--shd-orange); background: linear-gradient(90deg, #21190e, #101314); } .database-protocol-primary span { padding-left: 5px; color: #c89138; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.9px; } .database-protocol-primary b { overflow-wrap: anywhere; color: var(--shd-orange); font-size: 20px; letter-spacing: 0.7px; } .database-protocol-level { min-width: 0; display: flex; align-items: center; gap: 7px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-protocol-level > span { flex: none; color: var(--shd-text); } .database-protocol-level input { width: 104px; accent-color: var(--shd-orange); } .database-protocol-talent { display: grid; } .database-protocol-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .database-protocol-diamonds { display: flex; gap: 5px; } .database-protocol-diamonds button { min-width: 24px; min-height: 24px; padding: 0; border: 0; background: transparent; color: #596164; font-size: 16px; cursor: pointer; } .database-protocol-diamonds button.active, .database-protocol-diamonds button:hover, .database-protocol-diamonds button:focus-visible { color: var(--quality-high-end); } .database-protocol-diamonds button:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .database-protocol-talent p { margin: 0; padding: 9px; border: 1px solid var(--shd-border); background: #101314; color: #a2a8aa; font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .database-fact-value { min-width: 0; display: flex; align-items: center; gap: 8px; } .database-fact-value .game-icon { flex: none; width: 27px; height: 27px; object-fit: contain; } .database-fact-value small { color: #707779; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-item-facts.stacked > div.primary > span { font-size: var(--shd-type-telemetry); letter-spacing: 0.9px; } .database-item-facts.stacked > div.primary .database-fact-value small { align-self: flex-end; margin-bottom: 3px; color: #777d7e; } .database-stat-meters { grid-column: 2; min-width: 0; display: grid; gap: 7px; } .database-stat-meters > div { display: grid; grid-template-columns: 58px minmax(0, 1fr) 25px; align-items: center; gap: 8px; } .database-stat-meters i { color: #737b7d; font-style: normal; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; } .database-stat-meters output { color: #c7ccca; font-size: var(--shd-type-telemetry); font-weight: 900; text-align: right; } .database-stat-meters progress { display: block; width: 100%; min-width: 40px; height: 7px; border: 0; background: #252a2b; accent-color: var(--shd-orange); } .database-stat-meters progress::-webkit-progress-bar { background: #252a2b; } .database-stat-meters progress::-webkit-progress-value { background: linear-gradient(90deg, #86531b, var(--shd-orange)); } .database-stat-meters progress::-moz-progress-bar { background: linear-gradient(90deg, #86531b, var(--shd-orange)); } .database-item-actions { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 12px 12px; padding-top: 9px; border-top: 1px solid var(--shd-border); } .database-item-actions > a { min-height: 34px; display: inline-flex; align-items: center; justify-content: center; padding: 0 11px; border: 1px solid #74552a; background: #1b150c; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.65px; } .database-item-actions > a:hover, .database-item-actions > a:focus-visible { border-color: var(--shd-orange); background: #261b0b; color: #ffd19b; } .database-item-actions > a:active { transform: translateY(1px); filter: brightness(0.82); } .database-facet-group > div > button i { width: 6px; height: 6px; border: 1px solid #596164; background: #171b1c; transform: rotate(45deg); } .database-facet-group > div > button.selected i { border-color: var(--shd-orange); background: var(--shd-orange); box-shadow: 0 0 6px color-mix(in srgb, var(--shd-orange) 65%, transparent); } .database-facet-group.searchable > div { max-height: 220px; } .database-facet-group.searchable > div > button:has(span small) { min-height: 58px; align-items: flex-start; } .database-facet-group.searchable > div > button > span { display: grid; gap: 3px; white-space: normal; text-align: left; } .database-facet-group.searchable > div > button > span > small { display: -webkit-box; overflow: hidden; color: #747c7e; font: var(--shd-type-telemetry)/1.35 var(--shd-font-editorial); -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .database-facet-group.searchable > div > button > span > small > b { margin-right: 5px; color: var(--shd-orange); font: var(--shd-type-telemetry)/1 monospace; letter-spacing: 0.5px; } .database-category-page { overflow-x: clip; } .database-category-command { width: 100%; height: auto; min-height: 132px; } .database-category-command > * { min-width: 0; } .database-category-command h1 { overflow-wrap: anywhere; } .database-category-nav { min-width: 0; } .database-category-nav > a { min-width: 0; grid-template-columns: auto minmax(0, 1fr) auto; } .community-index-hero { height: auto; } .database-item-icon-groups { display: grid; gap: 8px; margin: 8px 12px 0; } .database-item-icon-groups > div { display: grid; grid-template-columns: 110px minmax(0, 1fr); align-items: center; gap: 9px; padding-top: 8px; border-top: 1px solid var(--shd-border); } .database-item-icon-groups > div > span { color: #626a6c; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.65px; } .item-icon-rail { min-width: 0; display: flex; flex-wrap: wrap; gap: 5px; } .item-icon-rail > button { width: 34px; height: 34px; display: grid; place-items: center; padding: 0; border: 1px solid #394041; background: #0d1011; cursor: pointer; } .item-icon-rail > button:hover, .item-icon-rail > button:focus-visible { border-color: var(--shd-orange); background: #211a0e; } .item-icon-rail > button:active { transform: translateY(1px); filter: brightness(0.82); } .item-icon-rail img { width: 30px; height: 30px; object-fit: contain; } .item-icon-rail small { color: #687073; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.55px; } .database-preview-backdrop { position: fixed; z-index: 1200; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(3, 5, 5, 0.82); backdrop-filter: blur(3px); } .database-preview-dialog { width: min(520px, 100%); max-height: calc(100vh - 40px); overflow: auto; border: 1px solid #4b5254; border-top: 2px solid var(--shd-orange); background: #0b0e0f; box-shadow: 0 18px 60px #000; } .database-preview-dialog > header { height: auto; display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; border-bottom: 1px solid var(--shd-border); background: #15191a; } .database-preview-dialog > header > div { display: grid; gap: 3px; } .database-preview-dialog > header small { color: #697174; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .database-preview-dialog > header strong { font-size: var(--shd-type-telemetry); letter-spacing: 0.45px; } .database-preview-dialog > header button { width: 32px; height: 32px; padding: 0; border: 1px solid #434a4c; background: #101314; color: #aab0b2; font-size: 20px; line-height: 1; cursor: pointer; } .database-preview-dialog > header button:hover, .database-preview-dialog > header button:focus-visible { border-color: var(--shd-orange); color: var(--shd-orange); } .database-preview-dialog > .database-item-card { margin: 10px; border-top-color: #404748; } @media (max-width: 1200px) { .database-category-nav { grid-template-columns: repeat(4, 1fr); } .database-category-nav > a:nth-child(5) { border-left: 0; } .database-category-nav > a:nth-child(n + 5) { border-top: 1px solid var(--shd-border); } .database-facet-groups { grid-template-columns: 1fr 1fr; } .database-facet-group:first-child { grid-column: 1/-1; } .database-item-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 700px) { .database-category-command { align-items: stretch; flex-direction: column; } .database-category-command > div:last-child { justify-items: start; } .database-category-nav { grid-template-columns: repeat(2, 1fr); } .database-category-nav > a:nth-child(odd) { border-left: 0; } .database-category-nav > a:nth-child(n + 3) { border-top: 1px solid var(--shd-border); } .database-facet-panel > header { align-items: flex-start; flex-direction: column; } .database-facet-groups { grid-template-columns: 1fr; } .database-facet-group:first-child { grid-column: auto; } .database-facet-group > div, .database-facet-groups.compact .database-facet-group > div { grid-template-columns: repeat(2, minmax(0, 1fr)); } .database-item-grid { grid-template-columns: 1fr; } .database-weapon-mod-slots { grid-template-columns: 1fr; } .database-item-card > header { grid-template-columns: 52px minmax(0, 1fr); } .database-item-icon { width: 52px; height: 52px; } .database-item-icon :is(img, .game-icon) { width: 46px; height: 46px; } } @media (prefers-reduced-motion: reduce) { .database-registry-grid > a { transition: none; } } /* Public talent cards share one readable tier hierarchy in registries and quick views. */ .database-item-card.talent-card > header { min-height: 86px; } @media (max-width: 700px) { .database-item-card > header:has(.database-item-render) { grid-template-columns: 52px 42px minmax(0, 1fr); gap: 8px; } .database-item-card > header:has(.database-item-render) .database-item-render { width: 52px; height: 52px; } .database-item-card > header:has(.database-item-render) .database-header-status { grid-column: 3; position: static; justify-self: end; } } .database-item-card > header:has(.database-item-render) { position: relative; isolation: isolate; grid-template-columns: 44px minmax(0, 1fr); min-height: 104px; overflow: hidden; background: #101415; } .database-item-card > header:has(.database-item-render)::after { content: ''; position: absolute; z-index: 1; inset: 0; background: linear-gradient( 90deg, rgba(8, 11, 12, 0.92) 0%, rgba(8, 11, 12, 0.76) 48%, rgba(8, 11, 12, 0.48) 100% ); pointer-events: none; } .database-item-card > header:has(.database-item-render) .database-item-render { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; opacity: 0.82; } .database-item-card > header:has(.database-item-render) .database-item-icon, .database-item-card > header:has(.database-item-render) .database-item-identity { position: relative; z-index: 2; } .database-item-card > header:has(.database-item-render) .database-header-status { position: absolute; z-index: 2; right: 12px; } .database-item-card > header:has(.database-item-render) .database-item-icon { width: 44px; height: 44px; } .database-item-card > header:has(.database-item-render) .database-item-icon :is(img, .game-icon) { width: 38px; height: 38px; } .database-item-card:not(:has(.database-item-render)) .database-item-icon { width: 48px; height: 48px; } .database-item-card:not(:has(.database-item-render)) .database-item-icon :is(img, .game-icon) { width: 42px; height: 42px; } .database-item-facts.stacked > div.primary.armor-fact { border-left-color: var(--shd-armor-border); background: linear-gradient(90deg, var(--shd-armor-surface), #101516); } .database-item-facts.stacked > div.primary.armor-fact > span { color: var(--shd-armor-label); } .database-item-facts.stacked > div.primary.armor-fact b { color: var(--shd-armor-text); } @media (max-width: 700px) { .database-item-card > header:has(.database-item-render) { grid-template-columns: 42px minmax(0, 1fr); min-height: 92px; } .database-item-card > header:has(.database-item-render) .database-item-icon { width: 42px; height: 42px; } .database-item-card > header:has(.database-item-render) .database-item-icon :is(img, .game-icon) { width: 36px; height: 36px; } .database-item-card:not(:has(.database-item-render)) .database-item-icon { width: 44px; height: 44px; } .database-item-card:not(:has(.database-item-render)) .database-item-icon :is(img, .game-icon) { width: 38px; height: 38px; } } .database-item-card.talent-card h2 { font-size: 18px; line-height: 1.1; } .database-item-card.talent-card > header small, .database-item-card.talent-card .database-item-lines span { color: var(--shd-text-muted); } .database-talent-tiers { display: grid; gap: var(--shd-gap-sm); margin: 10px 12px 0; } .database-talent-tiers > section { display: grid; grid-template-columns: 54px minmax(0, 1fr); align-items: start; border: 1px solid var(--shd-border); background: var(--shd-bg); } .database-talent-tiers > section > span { align-self: stretch; display: grid; place-items: start center; padding: 11px 7px; border-right: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .database-talent-tiers > section > p { margin: 0; padding: 12px 14px; color: var(--shd-text); font: 600 var(--shd-type-body)/1.5 var(--shd-font-sans); } .database-talent-tiers > section:last-child { border-left: 2px solid var(--shd-orange); background: var(--shd-surface-raised); } .database-talent-tiers > section:last-child > span { color: var(--shd-orange); } .talent-card .database-item-lines.after-description { margin-top: 10px; } .talent-card .database-item-lines.after-description > div { grid-template-columns: 132px minmax(0, 1fr); padding: 9px 2px; } .talent-card .database-item-lines.after-description b { color: var(--shd-text); font-size: var(--shd-type-supporting); font-weight: 600; line-height: 1.45; } .talent-card .database-item-actions { margin-top: auto; } .database-preview-dialog:has(.talent-card) { width: min(620px, 100%); } @media (max-width: 700px) { .item-icon-rail > button { width: 44px; height: 44px; } .database-preview-dialog > header button { width: 44px; height: 44px; } .talent-card .database-item-lines.after-description > div { grid-template-columns: 1fr; gap: 5px; } } @media (max-width: 480px) { .database-talent-tiers > section { grid-template-columns: 1fr; } .database-talent-tiers > section > span { place-items: center start; padding: 7px 10px; border-right: 0; border-bottom: 1px solid var(--shd-border); } } /* Authenticated desktop identity and account actions */ .desktop-agent-menu { position: relative; } .site-header .desktop-agent-trigger { display: grid; grid-template-columns: 36px minmax(110px, 1fr) auto 12px; align-items: center; gap: 10px; min-width: 218px; min-height: 50px; padding: 6px 9px; border: 1px solid var(--shd-border); background: #111415; color: var(--shd-text); text-align: left; } .site-header .desktop-agent-trigger:hover, .site-header .desktop-agent-trigger:focus-visible, .site-header .desktop-agent-trigger[aria-expanded='true'] { border-color: var(--shd-orange); background: #171b1c; color: var(--shd-text); } .desktop-agent-trigger > img, .desktop-agent-panel header > img, .mobile-agent-state > img { width: 36px; height: 36px; border: 1px solid var(--shd-border); background: #191d1e; object-fit: cover; } .desktop-agent-trigger > span { display: grid; min-width: 0; line-height: 1; } .desktop-agent-trigger > span small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .desktop-agent-trigger > span b { overflow: hidden; margin-top: 5px; font-size: var(--shd-type-telemetry); letter-spacing: 1px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; } .desktop-agent-trigger > em { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0 5px; border: 1px solid #a86d16; background: #241b0d; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; } .desktop-agent-trigger > strong { color: var(--shd-orange); font: 800 14px/1 monospace; text-align: center; } .desktop-agent-panel { position: absolute; z-index: 80; top: calc(100% + 10px); right: 0; width: min(290px, calc(100vw - 32px)); border: 1px solid #4a5051; background: #0f1213; box-shadow: 0 18px 46px #000a; } .desktop-agent-panel:before { position: absolute; top: -6px; right: 18px; width: 10px; height: 10px; border-top: 1px solid var(--shd-orange); border-left: 1px solid var(--shd-orange); background: #111415; content: ''; transform: rotate(45deg); } .desktop-agent-panel header { height: auto; min-height: 68px; display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 12px; padding: 11px 12px; border-bottom: 1px solid var(--shd-border); background: linear-gradient(90deg, #281e0e66, transparent 70%), #111415; } .desktop-agent-panel header > img { width: 44px; height: 44px; } .desktop-agent-panel header > div { display: grid; min-width: 0; gap: 3px; } .desktop-agent-panel header small, .desktop-agent-panel header span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .desktop-agent-panel header b { overflow: hidden; font-size: var(--shd-type-telemetry); letter-spacing: 1px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; } .desktop-agent-panel > a { min-height: 53px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: 8px 12px; border-bottom: 1px solid var(--shd-border-soft); color: var(--shd-text); } .desktop-agent-panel > a > span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .desktop-agent-panel > a > b { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .desktop-agent-panel > a:hover, .desktop-agent-panel > a:focus-visible, .desktop-agent-panel > a.active { background: #171b1c; color: var(--shd-orange); } .desktop-agent-panel > a:hover > b, .desktop-agent-panel > a:focus-visible > b, .desktop-agent-panel > a.active > b { color: var(--shd-orange); } .desktop-agent-panel form, .desktop-agent-panel fieldset { margin: 0; padding: 0; border: 0; } .site-header .desktop-agent-panel .desktop-agent-sign-out { width: 100%; min-height: 45px; padding: 8px 12px; border: 0; background: #111415; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; text-align: right; cursor: pointer; } .site-header .desktop-agent-panel .desktop-agent-sign-out:hover, .site-header .desktop-agent-panel .desktop-agent-sign-out:focus-visible { background: #211514; color: var(--shd-danger); } .site-header .desktop-agent-panel button:disabled { cursor: wait; opacity: 0.62; } @media (max-width: 900px) { .mobile-agent-state { grid-template-columns: 36px minmax(0, 1fr); column-gap: 10px; } .mobile-agent-state > img { grid-row: 1/3; align-self: center; } .mobile-agent-state > span, .mobile-agent-state > strong { grid-column: 2; } } @media (prefers-reduced-motion: reduce) { .desktop-agent-trigger, .desktop-agent-panel a, .desktop-agent-panel button { transition: none; } } .desktop-agent-trigger > img, .desktop-agent-panel header > img, .mobile-agent-state > img { border-color: var(--shd-orange); border-radius: 50%; box-shadow: 0 0 0 3px #0a0c0d, 0 0 0 4px #f6a82144; } @media (max-width: 900px) { .mobile-navigation { overflow-x: hidden; } .mobile-navigation > a span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } } .mobile-nav-toggle { position: relative; } .mobile-nav-unread { position: absolute; top: -7px; right: -7px; min-width: 18px; height: 18px; display: grid; place-items: center; padding: 0 4px; border: 1px solid #e8a43a; background: var(--shd-orange); box-shadow: 0 0 0 2px #0a0c0d; color: #111; font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; line-height: 1; pointer-events: none; } .oversight-preference-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-top: 18px; padding: 14px 9px 9px; border-top: 1px solid var(--shd-border); } .oversight-preference-heading h3 { margin: 4px 0 0; font-size: 13px; } .oversight-preference-heading > span { color: #8ecce5; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .oversight-preference-form { display: grid; gap: 7px; } .oversight-preference-row { display: grid; grid-template-columns: minmax(190px, 0.65fr) minmax(420px, 1.35fr); align-items: center; gap: 10px; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .oversight-preference-row > div:first-child { display: grid; gap: 4px; } .oversight-preference-row > div:first-child b { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .oversight-preference-row > div:first-child small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .oversight-preference-row fieldset { margin: 0; } @media (max-width: 760px) { .oversight-preference-heading { align-items: start; flex-direction: column; } .oversight-preference-row { grid-template-columns: 1fr; } .oversight-preference-row fieldset > div { grid-template-columns: 1fr 1fr; } } .system-message-editor { margin-bottom: 10px; } .system-message-editor-grid { display: grid; grid-template-columns: 1.1fr 1.1fr 0.8fr; gap: 7px; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .system-message-editor-grid .wide { grid-column: span 1; } .system-message-editor-grid .full { grid-column: 1/-1; } .system-message-editor-grid textarea { min-height: 126px; resize: vertical; } .system-message-editor-grid small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .system-message-enabled { display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 8px; border: 1px solid var(--shd-border); background: #111415; } .system-message-enabled > span { grid-column: 1/-1; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .system-message-enabled input { width: 18px; margin: 0; accent-color: var(--shd-orange); } .system-message-enabled b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .system-message-actions { display: grid; margin-top: 7px; border: 1px solid var(--shd-border); } .system-message-actions > div { min-height: 38px; display: grid; grid-template-columns: 34px minmax(150px, 0.7fr) minmax(220px, 1.3fr); align-items: center; gap: 6px; padding: 5px 7px; border-top: 1px solid var(--shd-border-soft); } .system-message-actions > div:first-child { grid-template-columns: 1fr auto; border-top: 0; background: #0d1011; } .system-message-actions > div:first-child span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .system-message-actions > div:first-child small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .system-message-actions b { color: #5f6769; font-size: var(--shd-type-telemetry); } .system-message-actions input { height: 30px; margin: 0; font-size: var(--shd-type-telemetry); } .system-message-table .dashboard-row { grid-template-columns: 1.3fr 0.7fr 0.7fr 0.7fr 64px; } .system-message-table .dashboard-row > div { display: grid; min-width: 0; gap: 3px; } .system-message-table .dashboard-row small { overflow: hidden; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); text-overflow: ellipsis; white-space: nowrap; } .notification-actions { flex-wrap: wrap; } .notification-detail-actions { flex-wrap: wrap; } .notification-detail-actions > a { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; padding: 0 12px; } @media (max-width: 900px) { .system-message-editor-grid { grid-template-columns: 1fr 1fr; } .system-message-editor-grid .full { grid-column: 1/-1; } .system-message-table .dashboard-row { grid-template-columns: 1fr; } .system-message-table .dashboard-row.heading { display: none; } .system-message-table .dashboard-row > button { min-height: 44px; } } @media (max-width: 600px) { .system-message-editor-grid { grid-template-columns: 1fr; } .system-message-editor-grid .full { grid-column: auto; } .system-message-actions > div, .system-message-actions > div:first-child { grid-template-columns: 1fr; } .system-message-actions > div > b { display: none; } .notification-detail-actions > a { width: 100%; } } /* Global action feedback */ .toast-viewport { position: fixed; z-index: 1000; top: calc(var(--shd-header-height) + 12px); right: clamp(12px, 2vw, 28px); width: min(390px, calc(100vw - 24px)); display: grid; gap: 8px; pointer-events: none; } .toast-message { --toast-tone: #829093; position: relative; min-height: 72px; display: grid; grid-template-columns: 4px minmax(0, 1fr) 34px; overflow: hidden; border: 1px solid #414849; border-top: 2px solid var(--toast-tone); background: linear-gradient(105deg, #171b1cee, #0c0f10f7); box-shadow: 0 12px 30px #000b; color: var(--shd-text); pointer-events: auto; animation: toast-enter 0.18s ease-out; } .toast-message.success { --toast-tone: var(--shd-success); } .toast-message.error { --toast-tone: var(--shd-danger); } .toast-message.warning { --toast-tone: var(--shd-orange); } .toast-message.info { --toast-tone: #6d9daf; } .toast-message > i { width: 4px; height: 100%; background: var(--toast-tone); box-shadow: 0 0 12px color-mix(in srgb, var(--toast-tone) 50%, transparent); } .toast-message > div { min-width: 0; display: grid; align-content: center; gap: 4px; padding: 11px 10px; } .toast-message span { color: var(--toast-tone); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .toast-message strong { overflow-wrap: anywhere; font-size: var(--shd-type-telemetry); line-height: 1.3; letter-spacing: 0.3px; } .toast-message p { margin: 0; color: #91999b; font-size: var(--shd-type-telemetry); line-height: 1.45; } .toast-message > button { width: 34px; height: 34px; margin: 4px 3px 0 0; border: 0; background: transparent; color: #70787a; font-size: 17px; cursor: pointer; } .toast-message > button:hover, .toast-message > button:focus-visible { background: #ffffff09; color: var(--toast-tone); } .toast-message > button:active { transform: translateY(1px); filter: brightness(0.8); } @keyframes toast-enter { from { opacity: 0; transform: translateX(18px); } to { opacity: 1; transform: none; } } @media (max-width: 700px) { .toast-viewport { top: calc(var(--shd-header-height) + 8px); right: 8px; width: calc(100vw - 16px); } .toast-message { min-height: 68px; } } @media (prefers-reduced-motion: reduce) { .toast-message { animation: none; } } .community-metrics { gap: 38px; } .community-metrics strong { color: var(--shd-orange); font-size: 15px; letter-spacing: 1px; } .community-preview .gear-node { width: 98px; color: var(--shd-text); } .community-preview .gear-node:hover, .community-preview .gear-node:focus-visible { border-color: var(--shd-orange); background: #211a0e; } .community-preview .gear-node:active { transform: translateY(1px); filter: brightness(0.86); } .community-preview .gear-node b { font-size: var(--shd-type-telemetry); letter-spacing: 0.55px; } .community-channels { padding: 58px max(24px, 5vw) 70px; border-top: 1px solid var(--shd-border); background: #0c0f10; } .community-channels > .section-heading { max-width: 1240px; } .community-channels > .section-heading > p { max-width: 310px; margin: 0; color: var(--shd-text-muted); font: 12px/1.5 var(--shd-font-editorial); text-align: right; } .community-channel-grid { max-width: 1240px; display: grid; grid-template-columns: repeat(4, 1fr); margin: auto; border: 1px solid var(--shd-border); } .community-channel-grid > a { min-height: 205px; display: flex; flex-direction: column; padding: 20px; border-left: 1px solid var(--shd-border); background: #111415; color: var(--shd-text); } .community-channel-grid > a:first-child { border-left: 0; } .community-channel-grid > a:hover, .community-channel-grid > a:focus-visible { background: #171b1c; box-shadow: inset 0 2px var(--shd-orange); } .community-channel-grid > a:active { filter: brightness(0.84); } .community-channel-grid small { color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .community-channel-grid strong { margin: 18px 0 9px; font-size: 14px; letter-spacing: 0.6px; } .community-channel-grid span { color: #858d8f; font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .community-channel-grid b { margin-top: auto; padding-top: 17px; color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .community-index-page { padding-top: 34px; } .community-index-hero { margin-bottom: 12px; } .community-database-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; } .community-database-intro > div { display: grid; grid-template-columns: 150px 1fr 1.4fr; align-items: center; gap: 12px; min-height: 65px; padding: 10px 13px; border: 1px solid var(--shd-border); background: #101314; } .community-database-intro span { color: #666e70; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .community-database-intro strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .community-database-intro small { color: #7f8789; font: var(--shd-type-telemetry)/1.45 var(--shd-font-editorial); } .database-registry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; } .database-registry-grid article { min-height: 180px; display: flex; flex-direction: column; padding: 17px; border: 1px solid var(--shd-border); border-top: 2px solid #43494a; background: #111415; } .database-registry-grid article:hover { border-top-color: var(--shd-orange); background: #15191a; } .database-registry-grid header { height: auto; display: flex; justify-content: space-between; } .database-registry-grid header small { color: #596164; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .database-registry-grid header b { color: var(--shd-orange); font-size: 20px; } .database-registry-grid h2 { margin: 18px 0 8px; font-size: 16px; } .database-registry-grid p { color: #858d8f; font: var(--shd-type-supporting)/1.55 var(--shd-font-editorial); } .database-registry-grid > article > span { margin-top: auto; color: #687073; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .news-channel-grid { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 10px; } .news-primary { min-height: 390px; padding: 30px; border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: linear-gradient(135deg, #151819, #0d1011); } .news-primary > div:first-child { display: flex; justify-content: space-between; padding-bottom: 13px; margin-bottom: 30px; border-bottom: 1px solid var(--shd-border); color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .news-primary > div:first-child b { color: var(--shd-orange); } .news-primary h2 { max-width: 720px; margin: 19px 0; font-size: clamp(30px, 4vw, 52px); line-height: 0.95; } .news-primary > p:not(.eyebrow) { max-width: 760px; color: #969d9f; font: 14px/1.7 var(--shd-font-editorial); } .news-primary footer { display: flex; gap: 7px; margin-top: 35px; } .news-primary footer span { display: grid; padding: 8px 10px; border: 1px solid var(--shd-border); color: #626a6c; font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .news-primary footer b { margin-top: 4px; color: #d5d8d5; font-size: var(--shd-type-telemetry); } .news-channel-grid > aside { padding: 19px; border: 1px solid var(--shd-border); background: #111415; } .news-channel-grid > aside > div { min-height: 58px; display: grid; grid-template-columns: 30px 1fr auto; align-items: center; border-top: 1px solid var(--shd-border); } .news-channel-grid > aside small { color: #596164; font-size: var(--shd-type-telemetry); } .news-channel-grid > aside span { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .news-channel-grid > aside b { color: #6e7678; font-size: var(--shd-type-telemetry); } @media (max-width: 1100px) { .community-channel-grid { grid-template-columns: 1fr 1fr; } .community-channel-grid > a:nth-child(3) { border-left: 0; border-top: 1px solid var(--shd-border); } .community-channel-grid > a:nth-child(4) { border-top: 1px solid var(--shd-border); } .community-database-intro { grid-template-columns: 1fr; } .database-registry-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 750px) { .community-channels > .section-heading > p { display: none; } .community-channel-grid, .database-registry-grid, .news-channel-grid { grid-template-columns: 1fr; } .community-channel-grid > a { min-height: 155px; border-left: 0; border-top: 1px solid var(--shd-border); } .community-channel-grid > a:first-child { border-top: 0; } .community-database-intro > div { grid-template-columns: 1fr; } .news-primary { padding: 22px; } .news-primary footer { flex-wrap: wrap; } } /* Readable operational type floors */ .eyebrow, .community-index-hero > div:last-child span, .community-database-intro span, .community-database-intro strong, .database-registry-grid header small, .database-registry-grid > a > span { font-size: var(--shd-type-telemetry); line-height: 1.25; letter-spacing: 0.08em; } /* Specialization combat modeling: shared authoring and builder patterns. */ .combat-effect-definition-grid { grid-template-columns: minmax(220px, 0.7fr) minmax(360px, 1.3fr); } .combat-effect-template textarea { min-height: 86px; } .specialization-attack-profile { display: grid; gap: var(--shd-gap-sm); padding: var(--shd-gap-sm); border: 1px solid var(--shd-model-border); border-left: 2px solid var(--shd-info); background: var(--shd-model-surface); } .specialization-skill-chip-sharing { display: grid; gap: var(--shd-gap-sm); margin-top: var(--shd-gap-md); padding: var(--shd-gap-md); border: 1px solid var(--shd-border); background: var(--shd-surface); } .specialization-skill-chip-sharing .assignment-picker { margin: 0; } .specialization-attack-profile > .segmented-choice { margin: 0; } .specialization-attack-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--shd-gap-sm); align-items: end; } .specialization-attack-grid > .field, .specialization-attack-grid > .segmented-choice { margin: 0; } .calculation-note { margin: 0; padding: 8px; border: 1px solid var(--shd-border-soft); color: var(--shd-text-muted); font-size: var(--shd-type-supporting); line-height: 1.45; } .rank-combat-effects { display: grid; gap: var(--shd-gap-sm); margin-top: var(--shd-gap-md); padding-top: var(--shd-gap-md); border-top: 1px solid var(--shd-border); } .rank-combat-effect { display: grid; gap: var(--shd-gap-sm); padding: var(--shd-gap-sm); border: 1px solid var(--shd-model-border); border-left: 2px solid var(--shd-info); background: var(--shd-model-surface); } .rank-combat-effect > header { display: flex; align-items: center; justify-content: space-between; } .rank-combat-effect > header > div { display: grid; gap: 2px; } .rank-combat-effect > header span, .rank-combat-effect > header small { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .rank-combat-effect > header span { color: var(--shd-info); } .combat-trigger-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--shd-gap-sm); } .combat-lifecycle-facts { display: flex; flex-wrap: wrap; gap: var(--shd-gap-xs); } .combat-lifecycle-facts span { padding: 5px 7px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .combat-lifecycle-facts b { color: var(--shd-text); } .combat-modifier-list { display: grid; gap: var(--shd-gap-xs); } .combat-modifier-list > div { display: grid; grid-template-columns: minmax(220px, 1fr) 150px 140px auto; gap: var(--shd-gap-sm); align-items: end; padding: 6px; border-top: 1px solid var(--shd-border-soft); } .combat-modifier-list > div > .field { margin: 0; } .builder-remediation { display: grid; gap: 3px; padding: 9px; border: 1px solid var(--shd-danger); border-left-width: 2px; background: #1d1212; } .builder-remediation strong { color: var(--shd-danger); font-size: var(--shd-type-telemetry); letter-spacing: 0.9px; } .builder-remediation span { color: var(--shd-text-muted); font-size: var(--shd-type-supporting); } .builder-specialization-identity { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--shd-gap-md); align-items: center; padding: var(--shd-gap-md); border: 1px solid var(--shd-model-border); border-left: 2px solid var(--shd-orange); background: var(--shd-model-surface); } .builder-specialization-identity h3, .builder-specialization-identity p { margin: 0; } .builder-specialization-identity small, .builder-specialization-identity > b { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .builder-specialization-identity p { margin-top: 4px; color: var(--shd-text-muted); font-size: var(--shd-type-supporting); } .builder-specialization-identity > b { padding: 5px 7px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); } .builder-specialization-identity > b.configured { border-color: #365d44; color: var(--shd-success); } .builder-ability-chip-panels { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--shd-gap-sm); } .builder-ability-chip-panels > section { min-width: 0; display: grid; grid-template-rows: auto auto; gap: var(--shd-gap-sm); padding: var(--shd-gap-sm); border: 1px solid var(--shd-border); background: var(--shd-surface); } .builder-ability-chip-panels header { height: auto; position: static; min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--shd-gap-sm); align-items: center; padding: 0; border: 0; background: transparent; } .builder-ability-chip-panels header img { width: 38px; height: 38px; } .builder-ability-chip-panels header div { min-width: 0; display: grid; } .builder-ability-chip-panels header strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-ability-chip-panels header small, .builder-ability-chip-panels header b { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .builder-ability-chip-panels header b { white-space: nowrap; } .builder-ability-chip-panels > section > div { min-width: 0; display: grid; gap: 4px; } .builder-ability-chip-panels > section > div > button { min-width: 0; min-height: 54px; display: grid; grid-template-columns: 36px minmax(0, 1fr); grid-template-rows: auto auto; gap: 1px 8px; padding: 7px; border: 1px solid var(--shd-border); background: #0d1011; color: var(--shd-text); text-align: left; cursor: pointer; } .builder-ability-chip-panels > section > div > button:hover, .builder-ability-chip-panels > section > div > button:focus-visible { border-color: var(--shd-orange); } .builder-ability-chip-panels button > .builder-chip-icon { grid-row: 1/3; width: 32px; height: 32px; object-fit: contain; } .builder-ability-chip-panels button small { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .builder-ability-chip-panels button strong, .builder-ability-chip-panels button span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-ability-chip-panels button span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .builder-ability-chip-panels button > span { display: grid; gap: 2px; overflow: hidden; white-space: normal; } .builder-ability-chip-panels button > span > strong, .builder-ability-chip-panels button > span > em { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-ability-chip-panels button em { display: block; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-style: normal; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .builder-specialization-telemetry { display: flex; flex-wrap: wrap; gap: var(--shd-gap-xs); } .builder-specialization-telemetry span { padding: 6px 8px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .builder-specialization-telemetry b { color: var(--shd-orange); } .builder-focus-tree { display: grid; gap: var(--shd-gap-sm); } .builder-focus-tree > section { border: 1px solid var(--shd-border); background: var(--shd-model-surface); } .builder-focus-tree > section > header { height: auto; min-height: 32px; position: static; display: flex; justify-content: space-between; padding: 6px 8px; border-bottom: 1px solid var(--shd-border); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .builder-focus-tree > section > header span { color: var(--shd-orange); } .builder-focus-tree > section > div { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--shd-gap-xs); padding: var(--shd-gap-xs); } .builder-focus-tree article { display: grid; grid-template-columns: auto 1fr; gap: var(--shd-gap-sm); padding: var(--shd-gap-sm); border: 1px solid var(--shd-border); background: var(--shd-surface); } .builder-focus-tree article > img { width: 42px; height: 42px; } .builder-focus-tree article > div { display: grid; gap: 3px; } .builder-focus-tree article small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.35; } .builder-focus-tree article > .segmented-choice { grid-column: 1/-1; margin: 0; } .segmented-choice span.unavailable { opacity: 0.38; cursor: not-allowed; filter: saturate(0.25); } .builder-conditional-effects, .builder-combat-results { display: grid; gap: var(--shd-gap-sm); } .builder-combat-results { padding: var(--shd-gap-sm); border-bottom: 1px solid var(--shd-border); } .builder-planned-model { padding: var(--shd-gap-sm); border-top: 1px solid var(--shd-border); } .builder-return-link { width: max-content; min-height: 36px; padding: 7px 9px; border: 1px solid var(--shd-border); background: transparent; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; cursor: pointer; } .builder-return-link:hover, .builder-return-link:focus-visible { border-color: var(--shd-orange); } .builder-skill-activation { display: grid; gap: var(--shd-gap-sm); } .builder-skill-activation > section { display: grid; grid-template-columns: minmax(180px, 0.7fr) minmax(340px, 1.3fr); gap: var(--shd-gap-sm); align-items: end; padding: var(--shd-gap-sm); border: 1px solid var(--shd-model-border); border-left: 2px solid var(--shd-info); background: var(--shd-model-surface); } .builder-skill-activation > section > header { display: grid; grid-template-columns: auto 1fr; gap: var(--shd-gap-sm); align-items: center; } .builder-skill-activation > section > header img { width: 40px; height: 40px; } .builder-skill-activation > section > header div { display: grid; gap: 2px; } .builder-skill-activation > section > header small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .builder-skill-activation > section > .segmented-choice { margin: 0; } .builder-skill-assumptions { grid-column: 1/-1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--shd-gap-sm); } @media (max-width: 1050px) { .combat-trigger-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .combat-modifier-list > div { grid-template-columns: 1fr 1fr; } .builder-ability-chip-panels { grid-template-columns: 1fr; } .builder-specialization-identity { grid-template-columns: auto 1fr; } .builder-specialization-identity > b { grid-column: 1/-1; width: max-content; } .builder-skill-activation > section { grid-template-columns: 1fr; } .specialization-attack-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 650px) { .combat-effect-definition-grid, .combat-trigger-grid, .combat-modifier-list > div, .specialization-attack-grid { grid-template-columns: 1fr; } .rank-combat-effect button, .builder-return-link, .builder-ability-chip-panels button { min-height: 44px; } .builder-specialization-identity { grid-template-columns: 1fr; } .builder-specialization-identity .focus-composite-icon { justify-self: start; } .builder-skill-assumptions { grid-template-columns: 1fr; } } .community-index-hero > div:last-child .primary { font-size: var(--shd-type-telemetry); } .community-database-intro small, .database-registry-grid p { font-size: var(--shd-type-supporting); line-height: 1.55; letter-spacing: normal; } .database-registry-grid p { max-width: 65ch; } .site-header .desktop-agent-trigger > span small, .site-header .desktop-agent-trigger > span b, .footer-discord span, .footer-discord small, .footer-nav a, .site-footer > div > p, .fan-disclaimer { font-size: var(--shd-type-telemetry); line-height: 1.35; } .site-footer > div > p:not(.fan-disclaimer) { font-size: var(--shd-type-supporting); line-height: 1.5; } .fan-disclaimer { letter-spacing: 0.04em; } /* Keep the user registry action in its dedicated final table column. */ .user-row { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.65fr) minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.9fr) minmax(48px, 0.3fr); } .user-row > .row-action { grid-column: 7; grid-row: 1; white-space: nowrap; } /* ISAC progressive disclosure and compact persistent status. */ .compact-status { display: flex; align-items: center; gap: 0; border: 1px solid var(--shd-border); background: var(--shd-surface); } .compact-status > span { position: relative; min-width: 105px; min-height: 48px; display: grid; align-content: center; gap: 3px; padding: 7px 10px; border-left: 1px solid var(--shd-border); color: var(--shd-text); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; white-space: nowrap; } .compact-status > span:first-child { border-left: 0; } .compact-status small { color: var(--shd-text-dim); font-size: inherit; font-weight: 900; letter-spacing: 1.1px; line-height: 1; } .compact-status strong { color: var(--shd-text); font-size: inherit; letter-spacing: inherit; line-height: 1.05; } .compact-status i { position: absolute; top: 8px; right: 8px; width: 6px; height: 6px; border-radius: 50%; background: var(--shd-success); box-shadow: 0 0 8px color-mix(in srgb, var(--shd-success) 65%, transparent); } .compact-status .data-mode-status { border-left: 1px solid var(--shd-border); } .admin-sidebar { overflow-y: auto; } .sidebar-module-search { display: grid; gap: 5px; padding: 10px; border-bottom: 1px solid var(--shd-border); background: var(--shd-terminal); } .sidebar-module-search span { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .sidebar-module-search input { width: 100%; height: 34px; margin: 0; padding: 0 9px; font-size: var(--shd-type-supporting); } .admin-sidebar button.sidebar-label { width: 100%; flex: 0 0 auto; border: 0; border-bottom: 1px solid var(--shd-border); background: var(--shd-surface); color: inherit; cursor: pointer; text-align: left; } .admin-sidebar button.sidebar-label:hover { background: var(--shd-surface-active); } .admin-sidebar button.sidebar-label:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--shd-orange); outline-offset: -2px; } .sidebar-label b { display: flex; align-items: center; gap: 7px; } .sidebar-label b i { min-width: 12px; color: var(--shd-orange); font-size: 14px; font-style: normal; text-align: center; } .registry-pagination:not(:has(.pagination-pages)) { grid-template-columns: minmax(190px, 260px) 1fr auto; } .registry-pagination:not(:has(.pagination-pages)):not( :has(.pagination-search) ) { grid-template-columns: 1fr auto; } .registry-pagination:not(:has(.pagination-pages)) .pagination-range { justify-content: flex-end; } @media (max-width: 900px) { .compact-status { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; } .compact-status > span:nth-child(3) { border-left: 0; border-top: 1px solid var(--shd-border); } .compact-status > span:nth-child(n + 4) { border-top: 1px solid var(--shd-border); } .compact-status .data-mode-status { grid-column: 1/-1; } } @media (max-width: 650px) { .registry-pagination:not(:has(.pagination-pages)) { grid-template-columns: 1fr; } .registry-pagination:not(:has(.pagination-pages)) .pagination-range { justify-content: center; } } /* Registry columns sort the full filtered result set before pagination. */ .table-heading .sortable-column { min-width: 0; display: flex; align-items: center; justify-content: flex-start; gap: 6px; padding: 5px 0; color: inherit; font: inherit; letter-spacing: inherit; text-decoration: none; cursor: pointer; } .table-heading .sortable-column:hover, .table-heading .sortable-column:focus-visible { color: var(--shd-orange); } .table-heading .sortable-column:focus-visible { outline: 2px solid var(--shd-orange); outline-offset: 2px; } .table-heading .sortable-column:active { transform: translateY(1px); } .table-heading .sortable-column.active { color: var(--shd-text); } .sort-direction { flex: 0 0 auto; color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); } .sortable-column.active .sort-direction { color: var(--shd-orange); } @media (prefers-reduced-motion: reduce) { .table-heading .sortable-column:active { transform: none; } } /* Separate ISAC operational domains from their module destinations. */ .admin-sidebar button.sidebar-label { position: relative; min-height: 39px; height: 39px; padding: 8px 10px; border-bottom-color: #343a3b; background: #171b1c; } .admin-sidebar button.sidebar-label::before { content: ''; flex: 0 0 3px; width: 3px; height: 15px; margin-right: 8px; background: #596164; } .admin-sidebar button.sidebar-label[aria-expanded='true']::before { background: var(--shd-orange); } .admin-sidebar button.sidebar-label:hover { background: #1c2021; } .admin-sidebar button.sidebar-label span { margin-right: auto; color: #c3c8c6; font-weight: 900; } .admin-sidebar button.sidebar-label b { color: #737b7d; } .admin-sidebar nav { background: #0b0e0f; } .admin-sidebar nav a { min-height: 47px; background: #0d1011; color: #7d8587; font-weight: 600; } .admin-sidebar nav a span { padding-left: 20px; } .admin-sidebar nav a.active { box-shadow: inset 3px 0 var(--shd-orange); } .metrics-panel header b.metric-ok, .metric-ok { color: var(--shd-success); } .metrics-panel header b.metric-warning, .metric-warning { color: var(--shd-orange); } .metrics-panel header b.metric-critical, .metric-critical { color: var(--shd-danger); } /* Prelaunch shell: an anonymous deployment surface with authenticated entry. */ .launch-page { position: relative; isolation: isolate; min-height: 100vh; display: flex; flex-direction: column; overflow: hidden; padding: 0 clamp(20px, 4vw, 72px); background: radial-gradient( circle at 72% 35%, rgba(246, 168, 33, 0.09), transparent 27% ), linear-gradient(145deg, #111617 0, #090b0c 48%, #0d1011 100%); } .launch-grid { position: absolute; inset: 0; z-index: -1; opacity: 0.2; background-image: linear-gradient(rgba(100, 110, 112, 0.14) 1px, transparent 1px), linear-gradient(90deg, rgba(100, 110, 112, 0.14) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, #000, transparent 88%); } .launch-header { min-height: 94px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--shd-border); } .launch-header .brand { position: static; } .launch-signal { display: grid; grid-template-columns: 8px auto; column-gap: 9px; align-items: center; padding: 10px 13px; border: 1px solid var(--shd-border); background: rgba(13, 16, 17, 0.8); } .launch-signal i { grid-row: 1/3; width: 7px; height: 7px; border-radius: 50%; background: var(--shd-orange); box-shadow: 0 0 10px rgba(246, 168, 33, 0.7); animation: launch-pulse 2.4s ease-in-out infinite; } .launch-signal span, .launch-signal b { font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .launch-signal span { color: var(--shd-text-dim); } .launch-signal b { color: var(--shd-orange); } .launch-hero { min-height: min(680px, calc(100vh - 94px)); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr); align-items: center; gap: clamp(36px, 7vw, 110px); padding: clamp(54px, 7vh, 90px) 0; } .launch-copy { max-width: 780px; } .launch-copy h1 { margin: 18px 0 22px; font-size: clamp(58px, 7.2vw, 126px); line-height: 0.78; letter-spacing: -0.045em; } .launch-copy h1 em { color: var(--shd-orange); font-style: normal; } .launch-lede { max-width: 680px; margin: 0; color: #a4abad; font: clamp(17px, 1.25vw, 22px)/1.55 var(--shd-font-editorial); } .launch-notice { max-width: 680px; display: grid; gap: 4px; margin: 20px 0 0; padding: 11px 13px; border-left: 3px solid var(--shd-orange); background: #18140d; } .launch-notice b, .launch-notice span { font-size: var(--shd-type-supporting); } .launch-notice b { color: var(--shd-orange); letter-spacing: 0.7px; } .launch-notice span { color: var(--shd-text-muted); } .launch-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; } .launch-actions a { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 26px; padding: 0 17px; } .launch-actions .secondary { border-color: #4a5152; background: rgba(14, 17, 18, 0.8); } .launch-access-note { margin: 13px 0 0; color: #687174; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .launch-core { min-width: 0; display: grid; justify-items: center; gap: 24px; } .launch-radar { position: relative; width: min(38vw, 500px); aspect-ratio: 1; border: 1px solid #3d4445; background: radial-gradient( circle, rgba(246, 168, 33, 0.08), transparent 55% ); transform: rotate(45deg); box-shadow: 0 0 70px rgba(0, 0, 0, 0.45), inset 0 0 55px rgba(0, 0, 0, 0.5); } .radar-ring { position: absolute; inset: 12%; border: 1px solid rgba(132, 142, 143, 0.25); border-radius: 50%; } .radar-ring.ring-b { inset: 27%; } .radar-ring.ring-c { inset: 41%; border-color: rgba(246, 168, 33, 0.5); } .radar-sweep { position: absolute; inset: 8%; border-radius: 50%; background: conic-gradient( from 0deg, transparent 0 82%, rgba(246, 168, 33, 0.14) 96%, rgba(246, 168, 33, 0.55) ); animation: radar-sweep 8s linear infinite; } .radar-core { position: absolute; inset: 39%; display: grid; place-items: center; border: 1px solid var(--shd-orange); background: #0f1213; transform: rotate(-45deg); box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35), inset 0 0 24px rgba(246, 168, 33, 0.1); } .radar-node { position: absolute; display: flex; align-items: center; gap: 7px; color: #8d9597; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; transform: rotate(-45deg); } .radar-node i { width: 7px; height: 7px; border: 1px solid var(--shd-orange); background: #211a0e; } .radar-node.node-0 { left: 7%; top: 47%; } .radar-node.node-1 { right: -4%; top: 47%; } .radar-node.node-2 { left: 42%; top: 8%; } .radar-node.node-3 { left: 42%; bottom: 8%; } .launch-core-status { width: min(100%, 500px); display: grid; gap: 4px; padding: 12px 14px; border-left: 2px solid var(--shd-orange); background: #101314; } .launch-core-status span, .launch-core-status small { color: #687174; font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .launch-core-status b { font-size: var(--shd-type-supporting); letter-spacing: 0.5px; } .launch-channels { padding: 36px 0 48px; border-top: 1px solid var(--shd-border); } .launch-channels > header { display: flex; align-items: end; justify-content: space-between; margin-bottom: 16px; } .launch-channels h2 { margin: 4px 0 0; font-size: clamp(23px, 2.4vw, 36px); } .launch-channels > header > b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .launch-channels > div { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border: 1px solid var(--shd-border); } .launch-channels article { min-height: 148px; display: grid; align-content: space-between; gap: 15px; padding: 16px; border-left: 1px solid var(--shd-border); background: rgba(16, 19, 20, 0.88); } .launch-channels article:first-child { border-left: 0; } .launch-channels article small, .launch-channels article span { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .launch-channels article small { color: #697174; } .launch-channels article h3 { margin: 0; font-size: 14px; line-height: 1.35; } .launch-channels article span { width: max-content; color: #747c7e; } .launch-channels article span::before { content: ''; display: inline-block; width: 5px; height: 5px; margin-right: 6px; background: currentColor; } .launch-channels article span.available { color: var(--shd-success); } .launch-footer { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: auto; border-top: 1px solid var(--shd-border); } .launch-footer p, .launch-footer a { color: #626a6c; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .launch-footer nav { display: flex; gap: 18px; } .launch-footer a:hover, .launch-footer a:focus-visible { color: var(--shd-orange); } @keyframes radar-sweep { to { transform: rotate(1turn); } } @keyframes launch-pulse { 50% { opacity: 0.45; box-shadow: 0 0 3px rgba(246, 168, 33, 0.3); } } @media (max-width: 980px) { .launch-hero { grid-template-columns: 1fr; min-height: auto; } .launch-core { padding-bottom: 22px; } .launch-radar { width: min(76vw, 500px); } .launch-channels > div { grid-template-columns: repeat(2, minmax(0, 1fr)); } .launch-channels article:nth-child(odd) { border-left: 0; } .launch-channels article:last-child { grid-column: 1/-1; } } @media (max-width: 600px) { .launch-page { padding: 0 16px; } .launch-header { min-height: 78px; } .launch-signal span { display: none; } .launch-copy h1 { font-size: clamp(40px, 13vw, 62px); } .launch-actions { display: grid; } .launch-actions a { width: 100%; } .launch-access-note { line-height: 1.45; overflow-wrap: anywhere; } .radar-node { font-size: 8px; letter-spacing: 0.55px; } .radar-node.node-1 { right: 6%; } .launch-channels > header, .launch-footer { align-items: flex-start; flex-direction: column; } .launch-channels > header { gap: 8px; } .launch-channels > div { grid-template-columns: 1fr; } .launch-channels article, .launch-channels article:nth-child(odd) { border-left: 0; border-top: 1px solid var(--shd-border); } .launch-channels article:first-child { border-top: 0; } .launch-channels article:last-child { grid-column: auto; } .launch-footer { padding: 18px 0; } .launch-footer nav { flex-wrap: wrap; } } @media (prefers-reduced-motion: reduce) { .launch-signal i, .radar-sweep { animation: none; } } /* State the consequence of an ISAC data mutation before an editor is opened. */ .module-toolbar > div:first-child:last-child { display: block; } .mutation-policy-strip { display: flex; justify-content: flex-end; min-height: 34px; padding: 0 2px 8px; pointer-events: none; } .mutation-consequence { max-width: 520px; display: flex; align-items: center; gap: 8px; margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.35; } .mutation-consequence b { flex: 0 0 auto; padding: 4px 6px; border: 1px solid var(--shd-orange); color: var(--shd-orange); font-size: inherit; letter-spacing: 0.8px; } .mutation-consequence span { color: var(--shd-text-muted); } .mutation-consequence.direct b { border-color: var(--shd-success); color: var(--shd-success); } @media (max-width: 1100px) { .mutation-policy-strip { justify-content: flex-start; padding: 8px 0; border-bottom: 1px solid var(--shd-border); } } @media (max-width: 600px) { .mutation-consequence { align-items: flex-start; flex-direction: column; gap: 5px; } } /* Public database prioritizes registry lookup over gateway spectacle. */ .community-index-page { padding-top: 20px; } .community-index-hero { min-height: 138px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px; align-items: center; margin-bottom: 8px; padding: 18px 24px; } .community-index-hero h1 { margin: 7px 0 5px; font-size: clamp(34px, 4vw, 56px); line-height: 0.9; letter-spacing: -0.025em; } .community-index-hero > div > p:last-child { max-width: 720px; margin: 0; font-size: var(--shd-type-supporting); line-height: 1.5; } .community-index-hero .catalogue-count { min-width: 230px; justify-items: end; text-align: right; } .community-index-hero .catalogue-count strong { color: var(--shd-text); font-size: var(--shd-type-supporting); letter-spacing: 0.5px; } .community-index-hero .catalogue-count span { margin: 4px 0 10px; } .community-index-hero .catalogue-count .secondary { min-height: 36px; display: grid; place-items: center; padding: 0 12px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .community-index-hero .catalogue-count .secondary:hover, .community-index-hero .catalogue-count .secondary:focus-visible { border-color: var(--shd-orange); color: var(--shd-orange); } .community-index-page .database-registry-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .community-index-page .database-registry-grid > a { min-height: 165px; } .community-index-page .database-registry-grid > a > header { align-items: center; gap: 12px; min-height: 52px; padding: 6px 10px 10px; border-bottom: 1px solid var(--shd-border); border-left: 2px solid var(--shd-orange); } .community-index-page .database-registry-grid h2 { margin: 0; color: var(--shd-text); font-size: clamp(20px, 1.35vw, 24px); line-height: 1; letter-spacing: 0.3px; } .community-index-page .database-registry-grid header b { flex: none; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1; } .community-index-page .database-registry-grid p { margin: 12px 0; } .community-index-page .database-registry-grid > a > footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 12px; } .community-index-page .database-registry-grid footer small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .community-index-page .database-registry-grid footer span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-global-search { display: grid; grid-template-columns: minmax(220px, 0.45fr) minmax(0, 1fr); align-items: center; gap: 18px; margin-bottom: 8px; padding: 12px; border: 1px solid var(--shd-border); border-left: 2px solid var(--shd-orange); background: var(--shd-terminal); } .database-global-search > div { display: grid; gap: 3px; } .database-global-search > div span, .database-global-search > div strong { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.8px; } .database-global-search > div span { color: var(--shd-orange); } .database-global-search > div strong { color: var(--shd-text); } .database-global-search form { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; } .database-global-search input { min-width: 0; min-height: 40px; padding: 0 12px; border: 1px solid var(--shd-border-strong); background: #090b0c; color: var(--shd-text); font: 700 var(--shd-type-supporting)/1 var(--shd-font-ui); letter-spacing: 0.35px; } .database-global-search input:focus-visible { outline: 1px solid var(--shd-orange); outline-offset: 1px; border-color: var(--shd-orange); } .database-global-search :is(button, a) { min-height: 40px; display: grid; place-items: center; padding: 0 14px; border: 1px solid var(--shd-orange); background: var(--shd-orange); color: #101010; font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.7px; } .database-global-search a { border-color: var(--shd-border-strong); background: transparent; color: var(--shd-text-muted); } .database-global-search :is(button, a):hover, .database-global-search :is(button, a):focus-visible { filter: brightness(1.12); } .database-global-search :is(button, a):active { transform: translateY(1px); filter: brightness(0.86); } .database-global-results { margin-bottom: 8px; border: 1px solid var(--shd-border); background: #0e1112; } .database-global-results > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 42px; padding: 7px 12px; border-bottom: 1px solid var(--shd-border); } .database-global-results > header > div { display: flex; align-items: center; gap: 10px; } .database-global-results > header span, .database-global-results > header strong, .database-global-results > header b { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .database-global-results > header span { color: var(--shd-orange); font-weight: 900; } .database-global-results > header strong { color: var(--shd-text); } .database-global-results > header b { color: var(--shd-text-muted); } .database-global-results > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } .database-global-results > div > a { display: grid; grid-template-columns: 110px minmax(0, 1fr) minmax(100px, 0.7fr) auto; align-items: center; gap: 10px; min-height: 48px; padding: 7px 12px; border-top: 1px solid var(--shd-border); color: var(--shd-text); } .database-global-results > div > a:nth-child(-n + 2) { border-top: 0; } .database-global-results > div > a:nth-child(even) { border-left: 1px solid var(--shd-border); } .database-global-results > div > a:hover, .database-global-results > div > a:focus-visible { background: #171b1c; box-shadow: inset 2px 0 var(--shd-orange); } .database-global-results > div > a:active { filter: brightness(0.86); } .database-global-results > div small, .database-global-results > div span, .database-global-results > div b { font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .database-global-results > div small { color: var(--shd-orange); font-weight: 900; } .database-global-results > div strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--shd-type-supporting); } .database-global-results > div span { overflow: hidden; color: var(--shd-text-muted); text-overflow: ellipsis; white-space: nowrap; } .database-global-results > div b { color: var(--shd-orange); } .database-global-results > p { margin: 0; padding: 16px; color: var(--shd-text-muted); font: var(--shd-type-supporting)/1.5 var(--shd-font-editorial); } .database-category-nav > a { grid-template-columns: minmax(0, 1fr) auto; } @media (max-width: 1100px) { .community-index-page .database-registry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .database-global-results > div { grid-template-columns: 1fr; } .database-global-results > div > a:nth-child(n) { border-top: 1px solid var(--shd-border); border-left: 0; } .database-global-results > div > a:first-child { border-top: 0; } } @media (max-width: 750px) { .community-index-hero { grid-template-columns: 1fr; gap: 14px; padding: 18px; } .community-index-hero .catalogue-count { min-width: 0; justify-items: start; text-align: left; } .database-global-search { grid-template-columns: 1fr; gap: 9px; } .database-global-search form { grid-template-columns: 1fr auto; } .database-global-search form input { grid-column: 1/-1; } .database-global-results > header { align-items: flex-start; } .database-global-results > div > a { grid-template-columns: minmax(0, 1fr) auto; } .database-global-results > div :is(small, span) { grid-column: 1/-1; } .community-index-page .database-registry-grid { grid-template-columns: 1fr; } } .database-discovery-console { margin: 10px 0; border: 1px solid var(--shd-border); border-left: 2px solid var(--shd-orange); background: #0d1011; } .database-discovery-console > .database-facet-panel { margin: 0; border: 0; border-left: 0; } .database-discovery-console > .registry-pagination { margin: 0; border: 0; border-top: 1px solid var(--shd-border); background: #101314; } .database-discovery-console > .registry-pagination:first-child { border-top: 0; } .database-facet-actions { display: flex; align-items: center; gap: 5px; } .database-facet-panel > header .database-facet-toggle { display: flex; align-items: center; gap: 8px; border-color: var(--shd-border-strong); background: #101314; color: var(--shd-text); } .database-facet-panel > header .database-facet-toggle b { min-width: 12px; color: var(--shd-orange); font-size: 15px; line-height: 1; } .database-facet-panel > header .database-facet-toggle:hover, .database-facet-panel > header .database-facet-toggle:focus-visible { border-color: var(--shd-orange); color: var(--shd-orange); } .database-facet-panel.collapsed > header { border-bottom: 0; } .database-facet-groups[hidden] { display: none; } @media (max-width: 700px) { .database-facet-panel > header { align-items: stretch; } .database-facet-actions { width: 100%; } .database-facet-actions > button { flex: 1; } } /* ISAC interaction polish: distinguish controls from telemetry and preserve readable supporting data. */ .kpi-filters > a { align-content: center; } .kpi-filters > a > i { position: absolute; top: 50%; right: 9px; padding: 3px 5px; border: 1px solid var(--shd-border-strong); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-style: normal; font-weight: 900; letter-spacing: 0.55px; transform: translateY(-50%); } .kpi-filters > a > strong { padding-right: 76px; } .kpi-filters > a > small { color: var(--shd-text-muted); } .kpi-filters > a.active > i { border-color: var(--shd-orange); background: #211a0e; color: var(--shd-orange); } .kpi-filters > a:hover > i, .kpi-filters > a:focus-visible > i { border-color: var(--shd-orange); color: var(--shd-orange); } .pagination-search-state { min-width: 82px; height: 30px; display: grid; place-items: center; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.55px; white-space: nowrap; } .pagination-search-state.pending { color: var(--shd-orange); } .dashboard-row:not(.table-heading):not(.mobile-detail-row):not( .pending-record ):hover { background: transparent; } .dashboard-row > button:not(.mobile-row-open), .dashboard-row > .row-action, .dashboard-row > .table-action { min-height: 30px; display: inline-grid; place-items: center; justify-self: end; padding: 0 9px; border: 1px solid #4c3d26; background: #17140f; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.55px; cursor: pointer; } .dashboard-row > button:not(.mobile-row-open):hover, .dashboard-row > button:not(.mobile-row-open):focus-visible, .dashboard-row > .row-action:hover, .dashboard-row > .row-action:focus-visible, .dashboard-row > .table-action:hover, .dashboard-row > .table-action:focus-visible { border-color: var(--shd-orange); background: #211a0e; } .dashboard-row > button:not(.mobile-row-open):active, .dashboard-row > .row-action:active, .dashboard-row > .table-action:active { transform: translateY(1px); filter: brightness(0.86); } .module-toolbar > div > p:last-child, .module-kpis small, .dashboard-row > div small, .dashboard-row > span small, .table-heading, .pagination-range, .pagination-sizes > span, .database-category-command > div:last-child span, .database-item-card > header small, .database-item-facts span, .database-item-lines span, .database-item-icon-groups > div > span { color: var(--shd-text-muted); } @media (prefers-reduced-motion: reduce) { .dashboard-row > button:not(.mobile-row-open):active, .dashboard-row > .row-action:active, .dashboard-row > .table-action:active { transform: none; } } .image-library-editor { margin: 10px 0; } .image-library-form { display: grid; grid-template-columns: minmax(330px, 0.8fr) minmax(440px, 1.2fr); gap: 12px; margin-top: 12px; } .image-library-upload .image-drop-input { height: 100%; min-height: 168px; } .image-library-upload .image-upload-preview { width: 112px; height: 112px; } .image-library-metadata { display: grid; grid-template-columns: 1fr 1fr; align-content: start; gap: 8px; } .image-library-metadata .field { margin: 0; } .image-library-metadata .full, .image-processing-options { grid-column: 1/-1; } .image-processing-options { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--shd-border); background: #0d1011; } .image-processing-options label { min-height: 58px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 9px; padding: 9px; cursor: pointer; } .image-processing-options label + label { border-left: 1px solid var(--shd-border); } .image-processing-options input { width: auto; margin: 0; accent-color: var(--shd-orange); } .image-processing-options span { display: grid; gap: 3px; } .image-processing-options b { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .image-processing-options small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.35; } .image-processing-options label:has(input:checked) { background: #1b170e; box-shadow: inset 0 -2px var(--shd-orange); } .image-processing-options label.disabled { opacity: 0.42; cursor: not-allowed; } .image-metadata-edit { display: grid; grid-template-columns: 72px 1fr 1fr 1.4fr; align-items: end; gap: 9px; margin-top: 10px; } .image-metadata-edit > img { width: 72px; height: 72px; object-fit: contain; padding: 5px; border: 1px solid var(--shd-border); background: #090b0c; } .image-metadata-edit .field { margin: 0; } .image-library-grid { display: grid; grid-template-columns: repeat(4, minmax(190px, 1fr)); gap: 8px; margin-top: 8px; } .image-library-grid article { min-width: 0; border: 1px solid var(--shd-border); border-top: 2px solid #4a5152; background: var(--shd-surface); transition: var(--shd-transition); } .image-library-grid article.icon { border-top-color: var(--shd-orange); } .image-library-grid article:hover { border-color: #596061; background: #15191a; } .image-library-preview { height: 150px; display: grid; place-items: center; padding: 14px; border-bottom: 1px solid var(--shd-border); background: linear-gradient( 135deg, #0a0c0d 25%, #101314 25%, #101314 50%, #0a0c0d 50%, #0a0c0d 75%, #101314 75% ); background-size: 16px 16px; } .image-library-preview img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; } .image-library-grid header { position: static; height: auto; min-height: 54px; display: flex; align-items: center; justify-content: space-between; padding: 9px 11px; border-bottom: 1px solid var(--shd-border); background: transparent; } .image-library-grid header > div { min-width: 0; display: grid; gap: 3px; } .image-library-grid header strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; } .image-library-grid header span, .image-library-grid header b { font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .image-library-grid header span { color: var(--shd-text-muted); } .image-library-grid header b { color: var(--shd-orange); } .image-library-tags { min-height: 42px; display: flex; align-content: flex-start; flex-wrap: wrap; gap: 4px; padding: 8px 10px; } .image-library-tags span { width: max-content; padding: 3px 5px; border: 1px solid #3c4243; color: #92999b; font-size: var(--shd-type-telemetry); } .image-library-tags small { color: var(--shd-text-dim); font-size: var(--shd-type-telemetry); } .image-library-grid footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 7px 10px; border-top: 1px solid var(--shd-border); } .image-library-grid footer span { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .image-library-grid footer button { border: 0; background: transparent; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; cursor: pointer; } .image-library-empty { grid-column: 1/-1; min-height: 180px; display: grid; place-content: center; gap: 6px; border: 1px dashed var(--shd-border); color: var(--shd-text-muted); text-align: center; } .image-library-empty strong { color: var(--shd-text); } @media (max-width: 1100px) { .image-library-grid { grid-template-columns: repeat(3, minmax(180px, 1fr)); } } @media (max-width: 800px) { .image-library-form { grid-template-columns: 1fr; } .image-library-grid { grid-template-columns: repeat(2, minmax(150px, 1fr)); } .image-metadata-edit { grid-template-columns: 72px 1fr; } .image-metadata-edit .field:last-child { grid-column: 1/-1; } } @media (max-width: 560px) { .image-library-metadata, .image-processing-options, .image-library-grid { grid-template-columns: 1fr; } .image-library-metadata .full, .image-processing-options { grid-column: auto; } .image-processing-options label + label { border-left: 0; border-top: 1px solid var(--shd-border); } .image-library-preview { height: 132px; } .image-metadata-edit { grid-template-columns: 1fr; } .image-metadata-edit > img { width: 100%; height: 96px; } } /* Managed image library: keep previews contained and reserve clear drop-zone lanes. */ .image-library-upload .image-drop-input { grid-template-columns: 112px minmax(0, 1fr); grid-template-rows: auto auto; align-content: center; column-gap: 14px; padding: 14px; } .image-library-upload .image-upload-preview { grid-column: 1; grid-row: 1/3; } .image-library-upload .image-drop-copy { grid-column: 2; grid-row: 1; align-self: end; } .image-library-upload .image-upload-actions { grid-column: 2; grid-row: 2; align-self: start; } .image-library-preview { overflow: hidden; background-color: #0a0c0d; background-image: linear-gradient( 45deg, #111415 25%, transparent 25%, transparent 75%, #111415 75% ), linear-gradient( 45deg, #111415 25%, transparent 25%, transparent 75%, #111415 75% ); background-position: 0 0, 8px 8px; background-size: 16px 16px; } .image-library-preview img { width: 100%; height: 100%; max-width: none; max-height: none; } .image-library-grid article.icon .image-library-preview img { width: 104px; height: 104px; } .registry-pagination:has(+ .image-library-grid) { margin-bottom: var(--shd-gap-sm); border-bottom: 1px solid var(--shd-border); } .image-library-grid { margin-top: 0; } .image-library-grid article { display: flex; flex-direction: column; } .image-library-grid article:hover { border-color: var(--shd-border); background: var(--shd-surface); } .image-library-grid article.icon:hover { border-top-color: var(--shd-orange); } .image-library-grid header strong { display: -webkit-box; overflow: hidden; font-size: var(--shd-type-supporting); line-height: 1.15; text-overflow: clip; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .image-library-grid header b.assigned { color: var(--shd-info); } .image-library-tags { flex: 1; } .image-library-facts { min-height: 34px; } .image-library-facts span:last-child { text-align: right; } .image-library-actions { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--shd-border); background: var(--shd-bg); } .image-library-actions .table-action { min-width: 0; min-height: 36px; display: grid; place-items: center; padding: 0 8px; border: 0; border-left: 1px solid var(--shd-border); background: transparent; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.6px; cursor: pointer; text-decoration: none; } .image-library-actions .table-action:first-child { border-left: 0; } .image-library-actions .table-action.edit { color: var(--shd-orange); } .image-library-actions .table-action.destructive { color: var(--shd-danger); } .image-library-actions .table-action:hover, .image-library-actions .table-action:focus-visible { background: var(--shd-surface-active); color: var(--shd-text); } .image-library-actions .table-action.edit:hover, .image-library-actions .table-action.edit:focus-visible { color: var(--shd-orange-hover); } .image-library-actions .table-action.destructive:hover, .image-library-actions .table-action.destructive:focus-visible { background: color-mix(in srgb, var(--shd-danger) 12%, var(--shd-bg)); color: var(--shd-danger); } .image-library-actions .table-action:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--shd-focus-ring); outline-offset: 2px; } .image-library-delete-dialog { width: min(560px, 100%); border-top-color: var(--shd-danger); } .image-library-delete-summary { display: grid; grid-template-columns: 104px minmax(0, 1fr); align-items: center; gap: var(--shd-gap-md); margin-top: var(--shd-gap-md); padding: var(--shd-gap-md); border: 1px solid var(--shd-border); background: var(--shd-bg); } .image-library-delete-preview { width: 104px; height: 104px; display: grid; place-items: center; padding: 8px; border: 1px solid var(--shd-border); background: var(--shd-surface); } .image-library-delete-preview img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; } .image-library-delete-summary > div:last-child { display: grid; gap: var(--shd-gap-xs); } .image-library-delete-summary b { color: var(--shd-danger); font-size: var(--shd-type-telemetry); letter-spacing: 0.8px; } .image-library-delete-summary p { margin: 0; color: var(--shd-text-muted); font: var(--shd-type-supporting)/1.45 var(--shd-font-editorial); } .image-library-delete-summary small { color: var(--shd-danger); font-size: var(--shd-type-telemetry); } .image-library-delete-actions { display: grid; grid-template-columns: 1fr 1.35fr; gap: var(--shd-gap-sm); margin-top: var(--shd-gap-md); } .image-library-delete-actions form, .image-library-delete-actions fieldset, .image-library-delete-actions button { width: 100%; height: 100%; } .image-library-delete-actions .secondary, .image-library-delete-actions .danger { min-height: 40px; padding: 0 10px; font-size: var(--shd-type-telemetry); } .image-library-delete-actions .danger { border: 1px solid var(--shd-danger); background: var(--shd-danger); color: var(--shd-bg); } @media (max-width: 700px) { .image-library-upload .image-drop-input { grid-template-columns: 96px minmax(0, 1fr); grid-template-rows: auto auto; padding: 10px; } .image-library-upload .image-upload-preview { grid-row: 1; width: 96px; height: 96px; } .image-library-upload .image-drop-copy { align-self: center; } .image-library-upload .image-upload-actions { grid-column: 1/-1; grid-row: 2; } .image-library-actions .table-action { min-height: 44px; } .image-library-delete-actions .secondary, .image-library-delete-actions .danger { min-height: 44px; } } @media (max-width: 520px) { .image-library-delete-summary { grid-template-columns: 72px minmax(0, 1fr); } .image-library-delete-preview { width: 72px; height: 72px; } .image-library-delete-actions { grid-template-columns: 1fr; } } /* Specialization operations: dense identity editing and a horizontally stable focus-tree composer. */ .specialization-toolbar { align-items: end; } .specialization-progression-console { margin: 10px 0; border: 1px solid var(--shd-border); border-left: 2px solid #5f6a6c; background: #0d1011; } .specialization-progression-console[open] { border-left-color: var(--shd-orange); } .specialization-progression-console > summary { min-height: 54px; cursor: pointer; list-style: none; } .specialization-progression-console > summary::-webkit-details-marker { display: none; } .specialization-progression-console > summary > div:last-child { display: flex; align-items: center; gap: 10px; } .specialization-progression-console > summary i { color: var(--shd-orange); font-size: 18px; font-style: normal; transition: transform var(--shd-transition); } .specialization-progression-console[open] > summary i { transform: rotate(45deg); } .specialization-progression-console form { padding: 10px; border-top: 1px solid var(--shd-border); } .specialization-progression-grid { display: grid; grid-template-columns: minmax(280px, 0.72fr) minmax(520px, 1.28fr); gap: 9px; } .specialization-progression-grid > section { border: 1px solid var(--shd-border); background: #111415; } .specialization-progression-grid > section > header, .specialization-rank-editor > section > header, .specialization-ability-slots > section > header { min-height: 36px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 7px 9px; border-bottom: 1px solid var(--shd-border); background: #0d1011; } .specialization-progression-grid > section > header span, .specialization-progression-grid > section > header b, .specialization-rank-editor > section > header span, .specialization-rank-editor > section > header b, .specialization-ability-slots > section > header span, .specialization-ability-slots > section > header b { font-size: var(--shd-type-telemetry); letter-spacing: 0.75px; } .specialization-progression-grid > section > header b, .specialization-rank-editor > section > header b { color: var(--shd-orange); } .specialization-progression-grid > section:first-child > div { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 9px; } .specialization-progression-grid > section > p { margin: 0; padding: 0 9px 10px; color: var(--shd-text-muted); font-size: var(--shd-type-supporting); line-height: 1.45; } .specialization-rank-profile > div { display: grid; grid-template-columns: repeat(3, 1fr); } .specialization-rank-profile > div > div { display: grid; grid-template-columns: auto 1fr 1.2fr; align-items: end; gap: 6px; padding: 9px; } .specialization-rank-profile > div > div + div { border-left: 1px solid var(--shd-border); } .specialization-rank-profile > div strong { align-self: center; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .specialization-row { grid-template-columns: minmax(260px, 1.65fr) 100px 145px 145px 90px 72px; } .specialization-row.selected { background: #17160f; box-shadow: inset 2px 0 var(--shd-orange); } .specialization-row.archived { opacity: 0.68; } .specialization-row-identity { min-width: 0; display: grid; grid-template-columns: 40px minmax(0, 1fr); align-items: center; gap: 9px; } .specialization-row-identity > img { width: 40px; height: 40px; display: block; object-fit: contain; } .specialization-row-identity > div { min-width: 0; display: grid; gap: 3px; } .specialization-row-identity strong, .specialization-row-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .specialization-row > span { display: grid; align-content: center; gap: 2px; } .specialization-row > span small { font-size: var(--shd-type-telemetry); } .specialization-workbench { margin-top: 12px; border: 1px solid var(--shd-border); border-top: 2px solid var(--shd-orange); background: #0b0e0f; } .specialization-workbench-command { position: static; min-height: 104px; height: auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px; border-bottom: 1px solid var(--shd-border); background: linear-gradient(100deg, rgba(237, 126, 17, 0.08), transparent 42%), #101314; } .specialization-composite-identity { min-width: 0; display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: center; gap: 14px; } .specialization-composite-identity > img { width: 76px; height: 76px; display: block; object-fit: contain; padding: 7px; border-color: #4c3d26; background: #0a0c0d; } .specialization-composite-identity > div { min-width: 0; display: grid; gap: 4px; } .specialization-composite-identity span, .specialization-focus-command > div:first-child > span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .specialization-composite-identity h3, .specialization-focus-command h3 { margin: 0; font-size: clamp(20px, 1.8vw, 28px); letter-spacing: 0.55px; } .specialization-composite-identity p, .specialization-focus-command p { max-width: 760px; margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-supporting); line-height: 1.5; } .specialization-workbench-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; } .specialization-focus-tabs { display: flex; overflow-x: auto; border-bottom: 1px solid var(--shd-border); background: #0d1011; scrollbar-color: #505758 #15191a; } .specialization-focus-tabs > button { min-width: 220px; min-height: 66px; display: grid; grid-template-columns: 45px minmax(0, 1fr); align-items: center; gap: 9px; padding: 8px 12px; border: 0; border-right: 1px solid var(--shd-border); border-bottom: 2px solid transparent; background: #101314; color: var(--shd-text-muted); text-align: left; cursor: pointer; } .specialization-focus-tabs > button:hover, .specialization-focus-tabs > button:focus-visible { background: #161a1b; color: var(--shd-text); } .specialization-focus-tabs > button.active { border-bottom-color: var(--shd-orange); background: #19160f; color: var(--shd-text); } .specialization-focus-tabs > button.pending-reference { border-bottom-color: #c9983f; } .specialization-focus-tabs > button > span:last-child { min-width: 0; display: grid; gap: 4px; } .specialization-focus-tabs strong, .specialization-focus-tabs small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .specialization-focus-tabs strong { font-size: 13px; } .specialization-focus-tabs small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .focus-composite-icon { position: relative; width: 45px; height: 45px; display: grid; place-items: center; } .focus-composite-icon > img:not(.game-icon) { width: 42px; height: 42px; display: block; object-fit: contain; } .focus-composite-icon > .game-icon { position: absolute; right: -2px; bottom: -2px; width: 20px; height: 20px; padding: 3px; border: 1px solid #5b4b30; background: #0b0e0f; } .specialization-focus-empty { min-height: 66px; display: grid; align-content: center; gap: 3px; padding: 10px 14px; } .specialization-focus-empty strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .specialization-focus-empty span { color: var(--shd-text-muted); font-size: var(--shd-type-supporting); } .specialization-focus-command { display: grid; grid-template-columns: minmax(260px, 1fr) auto auto; align-items: center; gap: 18px; padding: 13px 14px; border-bottom: 1px solid var(--shd-border); background: #111415; } .specialization-focus-command > div:first-child { display: grid; gap: 4px; } .specialization-focus-telemetry { display: grid; grid-template-columns: repeat(2, minmax(96px, 1fr)); border: 1px solid var(--shd-border); } .specialization-focus-telemetry span { display: grid; gap: 3px; padding: 7px 9px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.6px; } .specialization-focus-telemetry span:nth-child(even) { border-left: 1px solid var(--shd-border); } .specialization-focus-telemetry span:nth-child(n + 3) { border-top: 1px solid var(--shd-border); } .specialization-focus-telemetry b { color: var(--shd-text); } .specialization-focus-telemetry b.complete { color: var(--shd-success); } .specialization-focus-command > .specialization-mutation { display: flex; gap: 6px; } .specialization-ability-assignment { margin: 10px; } .specialization-ability-slots { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; } .specialization-ability-slots > section { min-width: 0; border: 1px solid var(--shd-border); background: #0d1011; } .specialization-ability-slots > section > header b { color: var(--shd-text-muted); } .specialization-ability-slots .searchable-assignment { margin: 8px; } .specialization-ability-slots p { min-height: 52px; margin: 0; padding: 0 9px 9px; color: var(--shd-text-muted); font-size: var(--shd-type-supporting); line-height: 1.4; } .specialization-ability-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; padding: 10px; border-bottom: 1px solid var(--shd-border); } .specialization-ability-summary > article { position: relative; min-width: 0; display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 9px; border: 1px solid var(--shd-border); border-top: 2px solid #596164; background: #111415; } .specialization-ability-summary > article.tree-linked { border-top-color: #9a6c27; } .specialization-ability-summary > article > img { width: 54px; height: 54px; display: block; object-fit: contain; } .specialization-ability-summary article > div { min-width: 0; display: grid; gap: 4px; } .specialization-ability-summary span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; } .specialization-ability-summary strong { font-size: 13px; } .specialization-ability-summary .ability-chip-readiness { color: var(--shd-danger); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.55px; } .specialization-ability-summary .ability-chip-readiness.ready { color: var(--shd-success); } .specialization-ability-summary p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } /* Exclusive child-record assignments stay close to identity and expose capacity. */ .skill-chip-ability-assignment { margin-top: 10px; padding: 9px; border: 1px solid var(--shd-border); border-left: 2px solid var(--shd-orange); background: #0d1011; } .skill-chip-ability-assignment > .assignment-picker { margin-top: 7px; } .skill-chip-row { min-width: 1240px; grid-template-columns: 1.05fr 1.15fr 0.4fr 1fr 1fr 0.78fr 0.48fr 0.3fr; } .skill-chip-row > div:nth-child(5) { display: grid; gap: 3px; } .skill-chip-row > div:nth-child(5) small, .skill-chip-ability-cell small { color: #626a6c; font-size: var(--shd-type-telemetry); } .skill-chip-ability-cell { min-width: 0; display: grid; gap: 3px; } .skill-chip-ability-cell strong { overflow: hidden; font-size: var(--shd-type-telemetry); line-height: 1.35; text-overflow: ellipsis; } @media (max-width: 700px) { .skill-chip-ability-assignment { padding: 8px; } } .specialization-ability-summary button { align-self: start; border: 0; background: transparent; color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; cursor: pointer; } .specialization-tree-console { margin: 10px; border: 1px solid var(--shd-border); background: #090b0c; } .specialization-tree-console > header { position: static; height: auto; min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 9px 11px; border-bottom: 1px solid var(--shd-border); background: #111415; } .specialization-tree-console > header > div { display: grid; gap: 3px; } .specialization-tree-console > header span, .specialization-tree-console > header small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .specialization-tree-console > header h3 { margin: 0; font-size: 16px; } .specialization-tree-console > header b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .specialization-tree-scroll { overflow-x: auto; padding: 10px; scrollbar-color: #596164 #141718; } .specialization-tree { min-width: 1180px; display: grid; gap: 8px; } .specialization-tree-row { display: grid; grid-template-columns: 160px minmax(930px, 1fr) 160px; align-items: stretch; border: 1px solid var(--shd-border); background: #0e1112; } .specialization-tree-row > header { position: static; height: auto; display: grid; align-content: center; gap: 5px; padding: 10px; border-right: 1px solid var(--shd-border); background: #111415; } .specialization-tree-row > header span { color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 1px; } .specialization-tree-row > header b { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.35; } .specialization-tree-track { position: relative; display: grid; grid-template-columns: repeat(12, minmax(70px, 1fr)); gap: 6px; align-items: center; min-height: 112px; padding: 8px; background-image: linear-gradient( 90deg, transparent calc(100% - 1px), rgba(255, 255, 255, 0.035) 1px ); background-size: calc(100% / 12) 100%; } .specialization-tree-node { position: relative; min-width: 0; height: 94px; display: grid; grid-template-rows: 42px minmax(0, 1fr) auto; justify-items: center; gap: 3px; padding: 6px 4px; border: 1px solid #3c4243; border-top: 2px solid #687274; background: #141718; text-align: center; } .specialization-tree-node.free { border-top-color: var(--shd-orange); background: #19160f; } .specialization-tree-node.pending-record { border-style: dashed; border-top-color: #c9983f; } .specialization-tree-node > img { width: 40px; height: 40px; display: block; object-fit: contain; } .specialization-tree-node > span { width: 100%; overflow: hidden; color: var(--shd-text); font-size: var(--shd-type-telemetry); font-weight: 900; text-overflow: ellipsis; white-space: nowrap; } .specialization-tree-node > b { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .specialization-tree-node > button { position: absolute; inset: 0; border: 0; background: rgba(11, 14, 15, 0.92); color: var(--shd-orange); font-size: var(--shd-type-telemetry); font-weight: 900; opacity: 0; cursor: pointer; } .specialization-tree-node:hover > button, .specialization-tree-node:focus-within > button { opacity: 1; } .specialization-tree-add { min-height: 100%; border: 0; border-left: 1px solid var(--shd-border); } .specialization-add-row { min-height: 64px; display: grid; grid-template-columns: auto auto 1fr; align-items: center; justify-content: center; gap: 8px; padding: 10px; border: 1px dashed #4e5658; background: #0d1011; color: var(--shd-text-muted); cursor: pointer; } .specialization-add-row > span { color: var(--shd-orange); font-size: 18px; } .specialization-add-row > b, .specialization-add-row > small { font-size: var(--shd-type-telemetry); letter-spacing: 0.65px; } .specialization-add-row > small { justify-self: start; } .specialization-add-row:hover, .specialization-add-row:focus-visible { border-color: var(--shd-orange); background: #17140f; color: var(--shd-text); } .specialization-record-drawer { margin: 0 10px 10px; border: 1px solid var(--shd-border); background: #0d1011; } .specialization-record-drawer > summary { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.75px; cursor: pointer; list-style: none; } .specialization-record-drawer > summary::-webkit-details-marker { display: none; } .specialization-record-drawer > summary b { color: var(--shd-orange); } .specialization-record-drawer > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 7px; border-top: 1px solid var(--shd-border); } .specialization-record-drawer article { min-width: 0; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 7px; border: 1px solid var(--shd-border); background: #111415; } .specialization-record-drawer article.archived { opacity: 0.68; } .specialization-record-drawer article > img { width: 40px; height: 40px; display: block; object-fit: contain; } .specialization-record-drawer article > div { min-width: 0; display: grid; gap: 3px; } .specialization-record-drawer strong, .specialization-record-drawer small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .specialization-record-drawer small, .specialization-record-drawer > div > p { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .specialization-record-drawer > div > p { grid-column: 1/-1; margin: 0; padding: 10px; } .specialization-identity-editor, .specialization-focus-editor, .specialization-ability-editor, .specialization-node-editor { margin: 10px 0; } .specialization-record-identity { display: grid; grid-template-columns: 220px minmax(0, 1fr); align-items: start; gap: 8px; } .specialization-record-identity > div:last-child { display: grid; grid-template-columns: minmax(260px, 0.65fr) minmax(360px, 1.35fr); gap: 8px; } .specialization-record-identity > div:last-child > .field:last-child { grid-column: 2; grid-row: 1/3; } .specialization-record-identity textarea { min-height: 100%; } .specialization-identity-editor .specialization-record-identity > div:last-child { grid-template-columns: 1fr; grid-template-rows: auto 1fr; align-self: stretch; } .specialization-identity-editor .specialization-record-identity > div:last-child > .field:last-child { grid-column: auto; grid-row: auto; } .specialization-identity-editor .specialization-record-identity textarea { min-height: 126px; } .specialization-focus-identity { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) 120px; gap: 8px; } .specialization-focus-identity > .segmented-choice, .specialization-focus-identity > .focus-description { grid-column: 1/-1; } .specialization-focus-identity .focus-description textarea { min-height: 72px; } .specialization-ability-mechanics { display: grid; grid-template-columns: 200px 200px minmax(280px, 1fr); gap: 8px; margin-top: 8px; } .specialization-ability-mechanics > div { display: grid; align-content: center; gap: 3px; padding: 8px; border: 1px solid var(--shd-border); background: #0d1011; } .specialization-ability-mechanics span, .specialization-ability-mechanics small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .specialization-ability-mechanics strong { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .specialization-parent-lock > strong { min-height: 37px; display: flex; align-items: center; padding: 7px 9px; border: 1px solid var(--shd-border); background: #101314; color: var(--shd-text); font-size: var(--shd-type-supporting); letter-spacing: 0.35px; } .specialization-node-position { display: grid; grid-template-columns: 110px 110px minmax(300px, 1fr); gap: 8px; } .specialization-node-template { margin-top: 8px; } .specialization-rank-editor { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 8px; } .specialization-rank-editor > section { min-width: 0; border: 1px solid var(--shd-border); background: #111415; } .specialization-rank-editor > section > header > div { display: grid; gap: 3px; } .specialization-rank-editor > section > header small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .specialization-rank-editor > section > .field { margin: 8px; } .specialization-rank-editor textarea { min-height: 74px; } .specialization-component-costs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin: 8px; padding: 8px; border: 1px solid #344e65; background: #0d1318; } .specialization-component-costs legend { padding: 0 5px; color: #77b6e9; font-size: var(--shd-type-telemetry); font-weight: 900; } .specialization-component-costs .field span { display: flex; align-items: center; justify-content: space-between; gap: 4px; } .specialization-component-costs small { color: #77b6e9; font-size: var(--shd-type-telemetry); } .specialization-omega-cost, .specialization-credit-only { min-height: 60px; display: flex; align-items: center; justify-content: space-between; gap: 9px; margin: 8px; padding: 8px; border: 1px solid var(--shd-border); background: #0d1011; } .quality-marker.highend { display: flex; align-items: center; gap: 8px; color: #f2c443; font-size: var(--shd-type-telemetry); font-weight: 900; } .specialization-omega-cost p, .specialization-credit-only span { margin: 0; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); } .specialization-credit-only b { color: var(--shd-orange); font-size: var(--shd-type-telemetry); } .structured-effect-editor { display: grid; gap: 7px; padding: 8px; } .structured-effect-row { min-width: 0; border: 1px solid var(--shd-border); background: #0d1011; } .structured-effect-row > header { position: static; height: auto; min-height: 32px; display: flex; align-items: center; justify-content: space-between; padding: 6px 8px; border-bottom: 1px solid var(--shd-border); } .structured-effect-row > header strong, .structured-effect-row > header button { font-size: var(--shd-type-telemetry); letter-spacing: 0.7px; } .structured-effect-grid { display: grid; grid-template-columns: minmax(260px, 1.1fr) minmax(240px, 1fr) minmax(170px, 0.8fr) 120px minmax(240px, 1fr); align-items: end; gap: 7px; padding: 8px; } .structured-effect-grid > .segmented-choice { grid-column: auto; } .effect-custom-target { min-height: 49px; display: grid; align-content: center; gap: 3px; padding: 7px; border: 1px solid var(--shd-border); background: #111415; } .effect-custom-target span, .effect-custom-target small { font-size: var(--shd-type-telemetry); } .effect-custom-target small { color: var(--shd-text-muted); } .structured-effect-empty { min-height: 72px; display: grid; place-content: center; gap: 4px; border: 1px dashed var(--shd-border); color: var(--shd-text-muted); text-align: center; } .structured-effect-empty strong, .structured-effect-empty span { font-size: var(--shd-type-telemetry); } .structured-effect-add { justify-self: start; } .specialization-proposal-preview .specialization-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } .proposal-structured-list, .proposal-rank-preview { display: grid; gap: 5px; padding: 0 8px 8px; } .proposal-structured-list > header, .proposal-rank-preview section > header { position: static; height: auto; min-height: 30px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 6px 8px; border: 1px solid var(--shd-border); background: #111415; } .proposal-structured-list span, .proposal-structured-list b, .proposal-rank-preview span, .proposal-rank-preview b { font-size: var(--shd-type-telemetry); letter-spacing: 0.65px; } .proposal-structured-list b, .proposal-rank-preview b { color: var(--shd-orange); } .proposal-structured-list p, .proposal-rank-preview p, .proposal-rank-preview small { margin: 0; padding: 6px 8px; border: 1px solid var(--shd-border); color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); overflow-wrap: anywhere; } .proposal-rank-preview section { display: grid; gap: 3px; } .data-readonly .specialization-mutation { display: none !important; } @media (max-width: 1280px) { .specialization-rank-editor { grid-template-columns: 1fr; } .structured-effect-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .specialization-ability-summary { grid-template-columns: 1fr; } } @media (max-width: 1050px) { .specialization-progression-grid { grid-template-columns: 1fr; } .specialization-rank-profile > div > div { grid-template-columns: auto 1fr 1fr; } .specialization-row { grid-template-columns: minmax(230px, 1.5fr) 80px 120px 120px 84px 68px; } .specialization-focus-command { grid-template-columns: 1fr auto; } .specialization-focus-command > div:first-child { grid-column: 1/-1; } .specialization-ability-slots { grid-template-columns: 1fr; } .specialization-record-drawer > div { grid-template-columns: 1fr 1fr; } .specialization-record-identity > div:last-child { grid-template-columns: 1fr; } .specialization-record-identity > div:last-child > .field:last-child { grid-column: auto; grid-row: auto; } } @media (max-width: 800px) { .specialization-workbench-command { align-items: stretch; flex-direction: column; } .specialization-workbench-actions { justify-content: flex-start; } .specialization-focus-command { grid-template-columns: 1fr; } .specialization-focus-command > div:first-child { grid-column: auto; } .specialization-focus-command > .specialization-mutation { width: 100%; } .specialization-focus-command > .specialization-mutation > button { flex: 1; } .specialization-record-identity, .specialization-focus-identity, .specialization-ability-mechanics, .specialization-node-position { grid-template-columns: 1fr; } .specialization-focus-identity > .segmented-choice, .specialization-focus-identity > .focus-description { grid-column: auto; } .specialization-component-costs { grid-template-columns: 1fr; } .specialization-proposal-preview { grid-template-columns: 1fr; } } @media (max-width: 620px) { .specialization-progression-console > summary { align-items: flex-start; flex-direction: column; } .specialization-progression-console > summary > div:last-child { width: 100%; justify-content: space-between; } .specialization-progression-grid > section:first-child > div, .specialization-rank-profile > div { grid-template-columns: 1fr; } .specialization-rank-profile > div > div + div { border-top: 1px solid var(--shd-border); border-left: 0; } .specialization-composite-identity { grid-template-columns: 58px minmax(0, 1fr); } .specialization-composite-identity > img { width: 58px; height: 58px; } .specialization-focus-tabs > button { min-width: 190px; } .specialization-focus-telemetry { grid-template-columns: 1fr 1fr; width: 100%; } .specialization-record-drawer > div, .specialization-proposal-preview .specialization-fields, .structured-effect-grid { grid-template-columns: 1fr; } .specialization-record-drawer article { grid-template-columns: 40px minmax(0, 1fr); } .specialization-record-drawer article > button { grid-column: 1/-1; min-height: 44px; } .specialization-workbench-actions > button, .specialization-focus-command > .specialization-mutation > button, .specialization-tree-add, .specialization-add-row { min-height: 46px; } } @media (prefers-reduced-motion: reduce) { .specialization-progression-console > summary i { transition: none; } } /* Attribute narratives span the dense editor and Oversight comparison surfaces. */ .attribute-editor .attribute-description { grid-column: 1/-1; } .attribute-editor .attribute-description textarea { min-height: 72px; } .attribute-row > div:first-child { min-width: 0; } .attribute-row > div:first-child small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .proposal-attribute-grid .preview-field.description { grid-column: span 4; } @media (max-width: 520px) { .proposal-attribute-grid .preview-field.description { grid-column: auto; } } /* Linked field and section validation for dense ISAC editors. */ .validation-summary { display: grid; gap: 7px; margin: 10px 0; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--shd-danger) 55%, var(--shd-border)); border-left: 2px solid var(--shd-danger); background: color-mix(in srgb, var(--shd-danger) 8%, var(--shd-surface)); scroll-margin-top: calc(var(--shd-header-height) + 12px); } .validation-summary:focus-visible { outline: 1px solid var(--shd-danger); outline-offset: 2px; } .validation-summary > strong { color: var(--shd-danger); font-size: var(--shd-type-telemetry); letter-spacing: 1px; } .validation-summary ul { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; } .validation-summary a { display: grid; grid-template-columns: minmax(120px, 0.32fr) minmax(0, 1fr); gap: 8px; color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); line-height: 1.4; } .validation-summary a:hover, .validation-summary a:focus-visible { color: var(--shd-text); } .validation-summary a span { color: var(--shd-danger); font-weight: 900; text-transform: uppercase; letter-spacing: 0.6px; } .validation-area-error { scroll-margin-top: calc(var(--shd-header-height) + 12px); } .validation-area-error.field, .validation-area-error > .field, .validation-area-error .icon-upload-field, .validation-area-error .mechanic-editor { border-color: var(--shd-danger) !important; } .field-error { display: block; margin: 5px 0 0; color: var(--shd-danger); font-size: var(--shd-type-telemetry); line-height: 1.4; } .mechanic-field-error { padding-left: 10px; border-left: 2px solid var(--shd-danger); } @media (max-width: 560px) { .validation-summary a { grid-template-columns: 1fr; gap: 1px; } } /* Collapsible modeled-data workspace for capture-first ISAC editors. */ .modeling-disclosure { margin-top: 10px; border: 1px solid var(--shd-border); background: var(--shd-surface); } .modeling-disclosure > summary { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 11px; list-style: none; background: var(--shd-surface-raised); cursor: pointer; } .modeling-disclosure > summary::-webkit-details-marker { display: none; } .modeling-disclosure > summary span { display: grid; gap: 3px; } .modeling-disclosure > summary b, .modeling-disclosure > summary strong { font-size: var(--shd-type-telemetry); font-weight: 900; letter-spacing: 0.9px; } .modeling-disclosure > summary small { color: var(--shd-text-muted); font-size: var(--shd-type-telemetry); letter-spacing: 0.5px; } .modeling-disclosure > summary strong { color: var(--shd-orange); } .modeling-disclosure > summary:hover, .modeling-disclosure > summary:focus-visible { background: var(--shd-surface-active); box-shadow: inset 2px 0 var(--shd-orange); outline: none; } .modeling-disclosure[open] > summary { border-bottom: 1px solid var(--shd-border); box-shadow: inset 2px 0 var(--shd-orange); } .modeling-disclosure.validation-area-error { border-color: var(--shd-danger); } .modeling-disclosure.validation-area-error > summary { box-shadow: inset 2px 0 var(--shd-danger); } .modeling-content { padding: 10px; } @media (max-width: 560px) { .modeling-disclosure > summary { min-height: 56px; } .modeling-content { padding: 7px; } } @media (prefers-reduced-motion: reduce) { .modeling-disclosure > summary { transition: none; } } /* Optional visual identity in shared assignment options. */ .assignment-item-icon { flex: 0 0 auto; object-fit: contain; background: var(--shd-bg); } .assignment-chip-icon { width: 24px; height: 24px; } .assignment-results > button.with-icon { min-height: 44px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 9px; } .assignment-result-icon { width: 32px; height: 32px; } .assignment-results > button.with-icon > span { min-width: 0; overflow-wrap: anywhere; } .assignment-results > button:disabled, .assignment-results > button:disabled:hover { cursor: not-allowed; opacity: 0.58; background: var(--shd-bg); color: var(--shd-text-muted); box-shadow: none; transform: none; filter: none; } .assignment-picker.visual-grid .assignment-results { display: grid; grid-template-columns: repeat(auto-fill, minmax(52px, 1fr)); grid-auto-rows: 52px; gap: 2px; max-height: none; padding: 2px; overflow: visible; background: var(--shd-border-soft); } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option { position: relative; min-width: 0; min-height: 44px; display: grid; place-items: center; padding: 5px; border: 0; background: var(--shd-surface); } .assignment-grid-icon { width: 38px; height: 38px; } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option::after { content: attr(data-tooltip); position: absolute; left: 50%; bottom: calc(100% + 6px); z-index: 30; width: max-content; max-width: 210px; padding: 5px 7px; border: 1px solid var(--shd-border-strong); background: var(--shd-bg); color: var(--shd-text); font-size: var(--shd-type-telemetry); font-weight: 700; line-height: 1.25; white-space: normal; opacity: 0; pointer-events: none; transform: translateX(-50%); } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option:hover::after, .assignment-picker.visual-grid .assignment-results > button.visual-grid-option:focus-visible::after { opacity: 1; } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option:hover { background: var(--shd-surface-active); box-shadow: inset 0 0 0 1px var(--shd-border-strong); } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option:focus-visible { outline: 2px solid var(--shd-focus-ring); outline-offset: -2px; } .assignment-picker.visual-grid .assignment-results > button.visual-grid-option.selected { background: var(--shd-surface-active); box-shadow: inset 0 0 0 2px var(--shd-orange); } .assignment-picker.toggle-grid { border: 0; background: transparent; } .assignment-picker.toggle-grid .assignment-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(94px, 1fr)); gap: 5px; max-height: none; overflow: visible; } .assignment-picker.toggle-grid .assignment-results > button.toggle-grid-option { min-width: 0; min-height: 44px; display: grid; grid-template-columns: minmax(0, 1fr); padding: 7px 9px; border: 1px solid var(--shd-border); background: var(--shd-surface); color: var(--shd-text-muted); } .assignment-picker.toggle-grid .assignment-results > button.toggle-grid-option > span { min-width: 0; font-size: var(--shd-type-supporting); font-weight: 700; overflow-wrap: anywhere; } .assignment-picker.toggle-grid .assignment-results > button.toggle-grid-option:hover { border-color: var(--shd-border-strong); background: var(--shd-surface-active); color: var(--shd-text); } .assignment-picker.toggle-grid .assignment-results > button.toggle-grid-option:focus-visible { outline: 2px solid var(--shd-focus-ring); outline-offset: 2px; } .assignment-picker.toggle-grid .assignment-results > button.toggle-grid-option.selected { border-color: var(--shd-orange); background: var(--shd-surface-active); color: var(--shd-orange); box-shadow: inset 2px 0 var(--shd-orange); } @media (max-width: 560px) { .assignment-picker.visual-grid .assignment-results { grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); } .assignment-picker.toggle-grid .assignment-results { grid-template-columns: repeat(2, minmax(0, 1fr)); } } /* Shared weapon-category bonus profiles. */ .weapon-bonus-registry { margin-top: 10px; } .weapon-bonus-profile-grid > button header strong { display: flex; align-items: center; gap: 6px; } .weapon-bonus-editor { border-top-color: var(--shd-success); } .weapon-bonus-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 9px; } .weapon-mod-slot-note { display: flex; align-items: center; gap: 10px; margin: 8px 0; padding: 8px 10px; border: 1px solid #74552a; background: #18150d; color: #a89568; font-size: var(--shd-type-telemetry); line-height: 1.45; } .weapon-mod-slot-note b { flex: 0 0 auto; color: var(--shd-orange); letter-spacing: 0.8px; } .weapon-mod-slot-config { margin-top: 8px; padding: 9px; border: 1px solid var(--shd-border); background: #0d1011; } .weapon-mod-slot-config b.config-required, .state-dot.config-required { color: var(--shd-orange); } .weapon-t0-exclusion { margin-top: 10px; padding-top: 9px; border-top: 1px solid var(--shd-border); } .weapon-t0-exclusion > .segmented-choice { margin-top: 7px; } .weapon-t0-exclusion > .segmented-choice > div { height: auto; min-height: 44px; } @media (max-width: 700px) { .weapon-mod-slot-note { align-items: flex-start; flex-direction: column; gap: 4px; } .weapon-t0-exclusion > .segmented-choice > div { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } } .weapon-bonus-fields .field { margin: 0; } @media (max-width: 700px) { .weapon-bonus-fields { grid-template-columns: 1fr; } }