.registration-page{padding:28px 16px}.registration-page .login-card{width:420px;max-width:100%}.registration-page input{width:100%}.registration-submit{width:100%;margin-top:4px}.registration-link{margin-top:20px;text-align:center;font-size:13px}.registration-notice{margin-top:22px;line-height:1.7}.registration-success{margin-bottom:18px;line-height:1.6}.mail-recipients{margin-top:16px;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:#171e29}.mail-recipients.is-enabled{border-color:#375071}.mail-recipients .mail-toggle{display:flex;align-items:center;gap:9px;margin:0;font-size:13px;cursor:pointer}.mail-toggle>input,.mail-recipient-row>input{width:15px;height:15px;padding:0;margin:0;flex:0 0 15px;accent-color:var(--accent)}.mail-hint{display:block;margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.mail-text-button{background:transparent;border:0;color:#93b7ee;padding:2px 3px;font-size:12px}.mail-recipient-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;color:#aab9cf;font-size:12px}.mail-recipient-toolbar>div{display:flex;gap:5px}.mail-recipient-toolbar button{padding:4px 7px;font-size:12px;white-space:nowrap}.mail-recipient-search{width:100%;margin-top:10px}.mail-recipient-list{display:grid;gap:1px;max-height:220px;overflow-y:auto;overscroll-behavior:contain;margin-top:9px;scrollbar-width:thin}.mail-recipient-list .mail-recipient-row{display:flex;align-items:center;gap:10px;padding:8px;margin:0;min-width:0;border-radius:5px;cursor:pointer}.mail-recipient-row:hover{background:#222e40}.mail-recipient-row>span{min-width:0;overflow-wrap:anywhere}.mail-recipient-row strong{display:block;font-size:12px;font-weight:500}.mail-recipient-row small{display:block;font-size:11px;color:var(--muted)}.mail-selection-hint{margin:8px 0 0;font-size:12px;color:#d7b477}.mail-inline-error{display:flex;align-items:center;gap:10px;margin-top:8px;color:#f3a4af;font-size:12px}.mail-inline-error>span{flex:1;min-width:0;overflow-wrap:anywhere}.mail-inline-error>button{flex-shrink:0}.announcement-mail{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:13px;padding:9px 11px;border:1px solid #2a3d48;border-radius:6px;background:#17252d;color:#99b9c9;font-size:11px}.announcement-mail.is-failed{border-color:#594632;background:#29231d}.announcement-mail .mail-failed{color:#ebb37b}.announcement-mail>button{margin-left:auto;padding:3px 8px;font-size:11px}.announcement-mail-error{flex:1 0 100%;margin:0;color:#e5aa99;overflow-wrap:anywhere}.announcement-mail-edit-hint{margin:13px 0 0;color:var(--muted);font-size:12px}@media (max-width: 480px){.mail-recipient-toolbar{flex-wrap:wrap}.mail-recipient-toolbar>div{margin-left:auto}.mail-recipients{padding:12px}}.announcements-page{max-width:1200px}.announcements-page-heading{margin-bottom:28px}.announcements-page-heading .page-title{margin-bottom:6px;font-size:24px}.announcements-page-heading>p{margin:0;color:var(--muted)}.announcement-board{min-width:0}.announcement-board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.announcement-board-label{display:flex;align-items:center;gap:9px;min-width:0}.announcement-board-label>svg{width:19px;height:19px;color:#85aaf0;flex-shrink:0}.announcement-board-label h3{margin:0;font-size:15px;font-weight:600}.announcement-board-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.announcement-board-controls>select{width:210px;max-width:100%;text-overflow:ellipsis}.announcement-board-controls>button{flex-shrink:0;white-space:nowrap;min-height:34px}.announcement-feed{display:grid;gap:14px}.announcement-card{min-width:0;padding:20px 22px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.announcement-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.announcement-origin{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0}.announcement-project{display:inline-flex;align-items:center;gap:7px;color:#a1adc0;min-width:0;font-size:12px}.announcement-project>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.announcement-project>strong{color:#c7d5eb;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.announcement-project:hover>strong{color:var(--accent-hover)}.announcement-source{display:inline-block;padding:2px 7px;border:1px solid #303747;border-radius:5px;background:#1c222d;color:#9da9bb;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.announcement-source-version{background:#192a3c;border-color:#2b435d;color:#8ebcec}.announcement-time{color:#8590a2;font-size:11px;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}.announcement-content{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;max-height:7.4em;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;color:#e0e5ed;font-size:14px}.announcement-content.is-compact{-webkit-line-clamp:2;max-height:3.7em}.announcement-content.is-expanded{display:block;-webkit-line-clamp:unset;max-height:360px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:8px}.announcement-content:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.announcement-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:10px;border-top:1px solid #242c3a}.announcement-author{display:flex;align-items:center;gap:7px;min-width:0;color:#95a0b1;font-size:11px}.announcement-author>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.announcement-author-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#293247;color:#a8bee3;flex-shrink:0;font-size:11px}.announcement-edited{color:#7c889a;white-space:nowrap}.announcement-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.announcement-card-actions>button{min-height:30px;padding:4px 8px;background:transparent;border-color:transparent;color:#9bb8e4;font-size:12px;white-space:nowrap}.announcement-card-actions>button:hover{background:#253044;color:#c5d8f5}.announcement-card-actions>.announcement-delete{color:#8b97aa}.announcement-card-actions>.announcement-delete:hover{background:#332328;color:#f29b9b}.announcement-more{display:flex;justify-content:center;margin-top:16px}.announcement-more>button{min-width:120px;color:#adbcd2}.announcement-loading{padding:34px 20px;color:var(--muted);text-align:center}.announcement-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:48px 20px;border:1px dashed #303a4b;border-radius:10px;color:#a4aec0;background:var(--panel)}.announcement-empty>svg{width:30px;height:30px;margin-bottom:12px;color:#7185a5}.announcement-empty>strong{font-size:14px;font-weight:500}.announcement-empty>p{margin:6px 0 0;color:#7f8c9f;font-size:12px;text-align:center}.announcement-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:14px;border:1px solid #63353b;border-radius:7px;background:#2b1d23;color:#f3a4af;overflow-wrap:anywhere}.announcement-error>button{flex-shrink:0}.announcement-board-project{padding:16px;margin-bottom:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.announcement-board-project .announcement-feed{gap:10px}.announcement-board-project .announcement-card{padding:13px 16px 10px;background:#19202b;border-color:#293241}.announcement-board-project .announcement-card-header{margin-bottom:9px}.announcement-board-project .announcement-card-footer{margin-top:10px;padding-top:6px}.announcement-board-project .announcement-empty{padding:18px 14px;border:0;background:transparent}.announcement-board-project .announcement-empty>svg{display:none}.announcement-board-project .announcement-empty>p{margin-top:4px}.dialog.announcement-editor{width:660px;min-width:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;color:var(--text);margin:auto}.announcement-editor::backdrop{background:#05090fb8}.announcement-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.announcement-editor-heading>h3{margin:0;font-size:18px}.announcement-editor-heading>button{flex-shrink:0;color:#a8b4c6}.announcement-editor-hint{margin:8px 0 22px;color:var(--muted);font-size:12px}.announcement-editor form>label{display:block;margin-bottom:16px}.announcement-editor form>label>select,.announcement-editor form>label>textarea{width:100%}.announcement-editor form>label>textarea{min-height:200px;padding:12px;line-height:1.75;resize:vertical}.announcement-editor-context{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:16px;color:#b9c8df;font-size:13px;overflow-wrap:anywhere}.announcement-version-field{margin-bottom:16px}.announcement-version-field>label{display:block;margin:0}.announcement-version-field select{width:100%;text-overflow:ellipsis}.announcement-version-hint{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.announcement-version-error{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:12px;color:#f3a4af}.announcement-version-error>span{flex:1;min-width:0;overflow-wrap:anywhere}.announcement-version-error>button{flex-shrink:0}.announcement-editor-count{margin-top:-10px;color:#8390a4;text-align:right;font-size:11px;font-variant-numeric:tabular-nums}.announcement-editor .dialog-actions{padding-top:16px;margin-top:20px;border-top:1px solid var(--border)}@media (max-width: 640px){.announcements-page-heading{margin-bottom:20px}.announcement-board-toolbar{flex-wrap:wrap;gap:12px}.announcement-board-controls{flex:1 1 auto}.announcement-board-controls>select{flex:1;min-width:0;width:140px}.announcement-board-project .announcement-board-controls{flex:0 0 auto}.announcement-card{padding:16px 14px 10px}.announcement-card-header{align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:12px}.announcement-project>span:first-child{max-width:100px}.announcement-project>strong{max-width:160px}.announcement-card-footer{align-items:flex-start;flex-wrap:wrap;gap:6px}.announcement-card-actions{margin-left:auto}.announcement-author{min-height:30px}.announcement-board-project{padding:14px}.announcement-board-project .announcement-card{padding:12px}.announcement-board-project .announcement-card-header{flex-direction:row;align-items:center;flex-wrap:wrap}.dialog.announcement-editor{padding:20px}}.hierarchy-intro{margin:-4px 0 16px;font-size:13px;line-height:1.7}.hierarchy-error{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px;overflow-wrap:anywhere}.hierarchy-error button{flex-shrink:0}.hierarchy-table-scroll{width:100%;min-width:0;overflow-x:auto;border:1px solid var(--border);border-radius:10px}.hierarchy-table-scroll table{margin:0;min-width:760px}.hierarchy-table-scroll .hierarchy-empty,.hierarchy-empty{text-align:center;padding:24px 16px;margin:0}.customer-tree-table td{vertical-align:middle}.customer-tree-name{display:flex;align-items:center;gap:7px;min-width:200px;max-width:520px}.customer-tree-name a{overflow-wrap:anywhere}.customer-tree-toggle,.customer-tree-spacer{display:inline-flex;width:30px;min-width:30px;height:30px;align-items:center;justify-content:center;padding:0}.customer-tree-toggle{border-color:transparent;background:transparent;color:var(--muted);font-size:19px}.customer-tree-toggle:hover{background:#ffffff0f;color:var(--text)}.customer-tree-description{max-width:320px;overflow-wrap:anywhere}.customer-tree-date{white-space:nowrap;font-size:12px}.customer-tree-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.customer-tree-actions button{padding:6px 9px;font-size:12px}.dialog.hierarchy-dialog{margin:auto;width:520px;min-width:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text)}.hierarchy-dialog::backdrop{background:#05090fb8}.hierarchy-dialog fieldset{margin:0;padding:0;border:0;min-width:0}.hierarchy-dialog label{display:block;margin-top:13px}.hierarchy-dialog label>input:not([type=checkbox]),.hierarchy-dialog label>textarea,.hierarchy-dialog label>select{width:100%}.hierarchy-dialog .lbl{display:block;margin-bottom:6px}.hierarchy-dialog input[readonly]{color:var(--muted)}.hierarchy-field-hint{margin:7px 0 12px;font-size:12px;line-height:1.7}.membership-filters{flex-wrap:wrap}.membership-filters>select{max-width:300px;min-width:160px}.membership-table{min-width:1100px!important;table-layout:fixed}.membership-table td:first-child{max-width:260px;overflow-wrap:anywhere}.membership-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.membership-table th{white-space:nowrap}.membership-user-group{cursor:pointer}.membership-user-group td{background:#171f2b;height:68px}.membership-user-group:hover td{background:#1c2735}.membership-user-heading{display:flex;align-items:center;gap:10px;min-width:0}.membership-user-identity{display:flex;flex-direction:column;min-width:0;max-width:440px;gap:5px}.membership-user-identity strong,.membership-user-identity>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.membership-user-identity strong{font-size:13px;font-weight:600;color:#e6edf6}.membership-user-identity>span{color:var(--muted);font-size:11px}.membership-user-count{flex-shrink:0;font-size:11px;color:#91a0b5;padding:3px 8px;border:1px solid #303b4c;border-radius:12px;white-space:nowrap}.membership-user-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;padding:7px;border-color:transparent;background:transparent;color:var(--muted)}.membership-user-toggle svg{width:14px;height:14px;transition:transform .15s}.membership-user-toggle.is-expanded svg{transform:rotate(90deg)}.membership-group-action{padding:5px 9px;font-size:12px;min-height:32px;background:transparent;white-space:nowrap}.membership-detail-row td{vertical-align:middle}.membership-detail-row select{max-width:100%}.membership-detail-user{display:block;padding-left:36px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.membership-target{max-width:420px;min-width:180px;overflow-wrap:anywhere}.membership-grant-coverage{display:block;color:var(--muted);font-size:11px;line-height:1.6;margin-top:4px}.dialog.membership-grant-dialog{width:620px}.membership-scope-note{padding:10px 12px;border-radius:7px;background:#ffffff08;color:var(--muted);font-size:12px;line-height:1.7;margin:10px 0}.membership-existing-note{border:1px solid rgb(251 191 36 / 25%);color:#d9bb78}.membership-project-picker{border:1px solid var(--border);border-radius:9px;margin:16px 0;overflow:hidden}.membership-picker-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px 6px;font-size:13px}.membership-picker-heading .muted{font-size:12px}.membership-picker-actions{display:flex;flex-wrap:wrap;gap:8px;padding:7px 14px 12px}.membership-picker-actions button{font-size:12px;padding:5px 10px}.membership-project-picker>.hierarchy-field-hint{padding:0 14px}.membership-project-list{max-height:240px;overflow-y:auto;border-top:1px solid var(--border);overscroll-behavior:contain}.hierarchy-dialog label.membership-project-option{margin:0;display:flex;align-items:center;gap:11px;padding:12px 14px;cursor:pointer;border-bottom:1px solid var(--border)}.membership-project-option:last-child{border-bottom:0}.membership-project-option:hover{background:#ffffff08}.membership-project-option input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin:0}.membership-project-option>span:first-of-type{min-width:0;flex:1;overflow-wrap:anywhere}.membership-project-option strong{display:block;font-size:13px;font-weight:500}.membership-project-option small{display:block;margin-top:3px;font-size:11px}.membership-project-existing{cursor:default!important;color:var(--muted)}.membership-project-option .tag{font-size:11px;flex-shrink:0}@media (max-width: 640px){.dialog.hierarchy-dialog{padding:20px 16px}.membership-filters>select{max-width:100%;width:100%}.membership-project-option{flex-wrap:wrap}.membership-project-option .tag{margin-left:27px}.hierarchy-error{align-items:flex-start}}.files-card{min-width:0}.files-toolbar{margin-bottom:14px;gap:12px;flex-wrap:wrap}.files-toolbar input{width:420px;max-width:100%;min-width:0}.files-count{font-size:12px;white-space:nowrap}.files-search-hint{margin:-3px 0 14px;font-size:12px;line-height:1.65}.files-error{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;overflow-wrap:anywhere}.files-error button{flex-shrink:0}.files-table-scroll{width:100%;min-width:0;overflow-x:auto;border:1px solid var(--border);border-radius:8px;scrollbar-color:#394252 transparent}.files-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.files-table{width:100%;min-width:1296px;table-layout:fixed;border:0;border-collapse:separate;border-spacing:0;border-radius:0;overflow:visible}.files-table th{white-space:nowrap;padding:10px;font-size:12px;color:#8e99aa;background:#1b202a}.files-table td{height:68px;vertical-align:middle;padding:10px;background:var(--panel)}.files-table .tag{white-space:nowrap;font-size:10px;padding:1px 6px;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.files-group-row{cursor:pointer}.files-group-row td{background:#171f2b}.files-group-row:hover td{background:#1c2735}.files-detail-row:hover td{background:#1a202a}.files-detail-version{padding-left:36px}.files-customer-path{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.55;font-size:12px}.files-project{display:flex;flex-direction:column;gap:4px;min-width:0}.files-project a,.files-project>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.files-project a{color:#b3c4e4;font-size:13px}.files-project a:hover{color:var(--accent-hover)}.files-project>span{font-size:10px}.files-project.is-subdued a{font-size:12px;color:#909fb5}.files-size{white-space:nowrap;font-size:12px}.files-firmware-count{font-size:12px;color:#adb8c9;white-space:nowrap}.files-action{min-height:32px;padding:5px 9px;font-size:12px;border-color:#313b4a;background:transparent;white-space:nowrap}.files-action:hover{background:#263143;border-color:#45546a}.files-table .files-empty{height:auto;padding:28px 16px;text-align:center}@media (max-width: 640px){.files-toolbar input{width:100%}.files-toolbar{gap:8px}}.registration-settings{margin-bottom:20px}.registration-settings-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.registration-settings-heading>div{min-width:0}.registration-settings-heading h3{font-size:14px;margin:0 0 7px}.registration-settings-heading p{font-size:12px;line-height:1.7;margin:0;max-width:760px}.registration-toggle{display:inline-flex;align-items:center;gap:9px;margin:0;flex-shrink:0;cursor:pointer;font-size:13px}.registration-switch{display:inline-flex;position:relative;width:38px;height:24px;flex-shrink:0}.registration-switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:1}.registration-switch>span{width:38px;height:24px;border-radius:20px;background:#384353;transition:background .15s}.registration-switch>span:after{content:"";position:absolute;width:16px;height:16px;top:4px;left:4px;border-radius:50%;background:#cbd5e1;transition:transform .15s}.registration-switch input:checked+span{background:#347aa0}.registration-switch input:checked+span:after{transform:translate(14px);background:#fff}.registration-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.registration-switch input:disabled{cursor:wait}.registration-switch input:disabled+span{opacity:.6}.registration-settings-status{margin:12px 0 0;font-size:12px}.registration-settings-error{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:12px;font-size:12px;overflow-wrap:anywhere}.registration-settings-error button{flex-shrink:0}.dialog.user-password-dialog{width:480px;min-width:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;color:var(--text)}.user-password-dialog::backdrop{background:#05090fb8}.user-password-dialog fieldset{border:0;margin:0;padding:0;min-width:0}.user-password-dialog label{display:block;margin:14px 0}.user-password-dialog .lbl{display:block;margin-bottom:6px}.user-password-dialog input,.user-password-dialog select{width:100%}.user-password-dialog .error,.password-confirmation-message{margin:12px 0;font-size:12px;overflow-wrap:anywhere}.user-password-dialog .password-dialog-description{color:var(--muted);font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:-6px 0 14px}.password-range-hint{color:var(--muted);font-size:12px;line-height:1.6;margin:8px 0 14px}@media (max-width: 640px){.registration-settings-heading{flex-direction:column;align-items:stretch;gap:14px}.registration-toggle{align-self:flex-start;min-height:32px}.dialog.user-password-dialog{padding:20px 16px}}.mail-settings-page{max-width:920px}.mail-settings-header{margin-bottom:24px}.mail-settings-header .page-title{margin-bottom:8px}.mail-settings-header p,.mail-settings-hint{color:var(--muted);font-size:13px;line-height:1.6}.mail-settings-header p{margin:0}.mail-settings-card{padding:24px;border-radius:12px}.mail-settings-card h3{margin-bottom:6px;font-size:16px}.mail-settings-card>.mail-settings-hint{margin:0 0 20px}.mail-settings-fields{padding:0;margin:0;min-width:0;border:0}.mail-settings-toggle{display:flex;align-items:flex-start;gap:12px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:24px;cursor:pointer}.mail-settings-toggle input{margin:3px 0 0;width:16px;height:16px;flex:0 0 auto;accent-color:var(--accent)}.mail-settings-toggle strong{font-weight:500}.mail-settings-toggle small{display:block;margin-top:5px;color:var(--muted);line-height:1.5}.mail-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 20px}.mail-settings-grid label{display:block;margin:0;min-width:0}.mail-settings-grid input,.mail-settings-grid select,.mail-settings-test-row input{width:100%;min-width:0;min-height:38px}.mail-settings-wide{grid-column:1 / -1}.mail-settings-grid .mail-settings-hint{margin:-8px 0 0}.mail-settings-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.mail-settings-footer p{margin:0;font-size:13px}.mail-settings-footer button{flex-shrink:0}.mail-settings-test-row{display:flex;gap:12px;align-items:flex-end}.mail-settings-test-row label{flex:1;min-width:0;margin:0}.mail-settings-test-row button{min-height:38px;flex-shrink:0}.mail-settings-test form>p{font-size:13px;line-height:1.6;margin:12px 0 0}@media (max-width: 620px){.mail-settings-card{padding:18px 16px}.mail-settings-grid{grid-template-columns:minmax(0,1fr);gap:16px}.mail-settings-test-row{flex-direction:column;align-items:stretch}.mail-settings-footer{flex-wrap:wrap;justify-content:flex-end}.mail-settings-footer>div{flex:1 0 100%}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.collapse{visibility:collapse}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.break-all{word-break:break-all}.lowercase{text-transform:lowercase}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #0f1115;--panel: #161a22;--panel-2: #1e232e;--border: #2a3140;--text: #e6e8ec;--muted: #9aa3b2;--accent: #4f8cff;--accent-hover: #6da0ff;--danger: #ef4444;--success: #22c55e;--warning: #f59e0b;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.app{display:grid;grid-template-columns:240px minmax(0,1fr);height:100vh}.sidebar{background:var(--panel);border-right:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:4px}.brand{font-size:18px;font-weight:700;letter-spacing:.5px;padding:8px 12px 16px;border-bottom:1px solid var(--border);margin-bottom:12px}.nav-link{display:block;padding:8px 12px;border-radius:6px;color:var(--text)}.nav-link:hover{background:var(--panel-2)}.nav-link.active{background:var(--accent);color:#fff}.sidebar .spacer{flex:1}.sidebar .user-box{padding:8px 12px;border-top:1px solid var(--border);margin-top:8px}.sidebar .user-box .email{font-size:12px;color:var(--muted)}.sidebar .user-box button{margin-top:6px}.lang-switch-fixed{position:fixed;right:16px;bottom:16px;z-index:1000;display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--panel);border:1px solid var(--border);border-radius:999px;box-shadow:0 4px 14px #0000002e}.lang-switch-fixed select{border:0;background:transparent;color:inherit;font-size:13px;cursor:pointer;padding:2px 4px}.lang-switch-fixed select:focus{outline:none}.content{min-width:0;overflow:auto;padding:24px}.page-title{font-size:20px;font-weight:600;margin:0 0 16px}.page-actions{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.project-detail-title{overflow-wrap:anywhere}button,.btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px}button:hover,.btn:hover{background:#29303c}button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover,.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.danger,.btn.danger{background:#2a1c1c;border-color:#4a2a2a;color:#ff8a8a}button.danger:hover,.btn.danger:hover{background:#3a2424}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:6px 10px;border-radius:6px;font-size:13px;font-family:inherit}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}label{display:block;margin-bottom:12px}label .lbl{display:block;color:var(--muted);margin-bottom:4px;font-size:12px}table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px}th{background:var(--panel-2);color:var(--muted);font-weight:500}tr:last-child td{border-bottom:none}tr:hover td{background:#1a1f2a}.tag-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.version-card-header,.version-notes-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}.version-card-header h3,.version-notes-header h3{margin:0}.version-section-title{display:flex;align-items:center;gap:9px}.version-section-title h3{font-size:15px;font-weight:600}.version-count{color:var(--muted);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;min-width:24px;padding:0 6px;text-align:center;font-size:12px}.version-section-hint{color:var(--muted);font-size:12px;margin:-3px 0 14px}.version-empty-archive{color:var(--muted);font-size:13px;margin:0;padding:5px 0 1px}.version-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.version-actions button{white-space:nowrap}.version-table-scroll{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:8px;scrollbar-color:#394252 transparent}.version-table{table-layout:fixed;min-width:1604px;border:0;border-collapse:separate;border-spacing:0;border-radius:0;overflow:visible}.version-table th{white-space:nowrap;padding:10px;font-size:12px;color:#8e99aa;background:#1b202a}.version-table td{height:68px;vertical-align:middle;padding:10px;background:var(--panel)}.version-table tr:hover td{background:#1a202a}.version-table .tag{white-space:nowrap;font-size:10px;padding:1px 6px}.version-table td:nth-child(4)>.tag{max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.version-table td:nth-child(n+5):nth-child(-n+10){white-space:nowrap}.version-group-row{cursor:pointer}.version-group-row td{background:#171f2b}.version-group-row:hover td{background:#1c2735}.version-detail-row td:first-child{padding-left:40px}.version-group-main{display:flex;align-items:center;gap:8px;min-width:0}.version-identity{display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0}.version-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:600;color:#edf2f8}.version-meta{display:flex;align-items:center;gap:6px;white-space:nowrap;color:var(--muted);font-size:10px}.version-public-label{color:#8fa4bc}.version-toggle{flex:0 0 28px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:6px;border-color:transparent;background:transparent;color:var(--muted)}.version-toggle svg{width:14px;height:14px;transition:transform .15s}.version-toggle.is-expanded svg{transform:rotate(90deg)}.version-channel-list{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.version-channel-list .tag{max-width:88px;overflow:hidden;text-overflow:ellipsis}.version-channel-more{font-size:10px;color:var(--muted)}.version-upload-time{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#bdc5d1;white-space:nowrap}.version-upload-time span+span{color:#7e8999;font-size:11px}.version-checksum{color:#8491a4;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}.version-filename{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b5bfce;font-size:12px}.version-row-actions{display:flex;align-items:center;gap:5px;flex-wrap:nowrap;white-space:nowrap}.version-row-actions button{flex-shrink:0;min-height:32px;padding:5px 8px;font-size:12px;border-color:#313b4a;background:transparent;white-space:nowrap}.version-row-actions button:hover{background:#263143;border-color:#45546a}.version-row-actions .version-current-action{color:#9bbcff;border-color:#334867}.version-row-actions .version-current-action.is-active{color:#86cbd0;border-color:#2d5059}.version-row-actions .version-icon-button{width:32px;height:32px;padding:7px;display:inline-flex;justify-content:center;align-items:center;border-color:transparent;color:#94a1b4}.version-row-actions .version-icon-button:hover{color:#e0e8f4}.version-row-actions .version-icon-button.is-public{color:#73adb7}.version-row-actions .version-delete-action:hover{color:#f99a9a;background:#39272c}.version-icon-button svg{width:16px;height:16px}.version-action-divider{flex:0 0 1px;height:16px;background:var(--border)}.version-actions-cell{position:sticky;right:0;z-index:1;box-shadow:-1px 0 0 var(--border),-8px 0 12px -10px #090c11}.version-table th.version-actions-cell{z-index:2}.version-notes-cell{overflow:hidden}.version-special-button{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:3px 0;border:0;background:transparent;text-align:left}.version-special-button:hover{background:transparent}.version-special-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.version-special-label{display:block;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b9cce8;font-size:12px}.version-special-button>svg{flex:0 0 14px;width:14px;height:14px;color:#748399}.version-special-button:hover>svg{color:var(--accent)}.dialog.special-version-dialog{width:480px;overflow-y:auto}.upload-version-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.upload-version-fields>label{min-width:0}@media (max-width: 600px){.upload-version-fields{grid-template-columns:1fr;gap:0}}.version-notes-preview{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:3px 0;border:0;background:transparent;text-align:left;line-height:1.55;color:#c2cad6}.version-notes-preview:hover{background:transparent;color:#e5ecf6}.version-notes-preview:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.version-notes-preview>svg{flex:0 0 14px;width:14px;height:14px;color:#748399}.version-notes-preview:hover>svg{color:var(--accent)}.version-notes-content{display:block;min-width:0;flex:1}.version-notes-excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.version-notes-preview.has-multiple .version-notes-excerpt{-webkit-line-clamp:1}.version-notes-preview.is-empty{color:#748399}.version-notes-more{display:block;color:#809bc0;font-size:10px;margin-top:3px}.version-notes-tooltip{position:fixed;z-index:1200;width:min(440px,calc(100vw - 24px));overflow-y:auto;overscroll-behavior:contain;padding:13px 15px;border:1px solid #3d4d65;border-radius:9px;background:#202a39;color:#e2e9f3;box-shadow:0 10px 28px #0006;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;-moz-user-select:text;user-select:text;scrollbar-color:#526580 #202a39}.version-notes-tooltip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 1000px){.version-actions-cell{position:static;box-shadow:none}}.card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:16px}.card h3{margin-top:0}.muted{color:var(--muted)}.error{color:var(--danger)}.success{color:var(--success)}.tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;background:var(--panel-2);color:var(--muted);border:1px solid var(--border)}.tag.admin{background:#2a1f3a;color:#c084fc;border-color:#4a2f6a}.tag.stable{background:#1f2a1f;color:#86efac;border-color:#2f4a2f}.tag.beta{background:#2a2519;color:#fbbf24;border-color:#4a4029}.tag.current{background:#14302f;color:#67e8f9;border-color:#23666f}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:32px;width:360px}.login-card h1{margin:0 0 8px;font-size:24px}.login-card .sub{color:var(--muted);margin-bottom:24px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar input,.toolbar select{min-width:180px}.code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;background:var(--panel-2);padding:2px 6px;border-radius:4px;font-size:12px;word-break:break-all}.dialog-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.dialog{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;width:420px;min-width:420px;max-width:90vw;max-height:90vh;overflow:auto}.dialog h3{margin-top:0}.dialog .muted{overflow-wrap:anywhere}.dialog input,.dialog select,.dialog textarea{max-width:100%}.dialog-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}.dialog.version-notes-dialog{width:720px;min-width:0;max-width:calc(100vw - 32px);max-height:85vh;margin:auto;color:var(--text);overflow:hidden}.version-notes-dialog[open]{display:flex;flex-direction:column}.version-notes-dialog::backdrop{background:#0009}.version-notes-header{flex-shrink:0;align-items:flex-start}.version-notes-header h3{overflow-wrap:anywhere;flex:1}.version-notes-hint{color:var(--muted);margin:0 0 16px;font-size:13px}.version-notes-body{overflow-y:auto;min-height:0;padding-right:8px}.version-notes-section+.version-notes-section{border-top:1px solid var(--border);padding-top:20px;margin-top:20px}.version-notes-channels{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.version-notes-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;margin-top:12px;-webkit-user-select:text;-moz-user-select:text;user-select:text}.version-notes-editor{width:100%;min-height:240px;line-height:1.8;resize:vertical}.notes-layer+.notes-layer{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.notes-layer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.notes-layer-heading h4{margin:0;font-size:14px;font-weight:600}.notes-layer-heading button{font-size:12px}.notes-layer-description{color:#8a97ab;font-size:12px;margin:0 0 12px}.version-level-notes{padding:14px;background:#182131;border:1px solid #2b3a50;border-radius:8px}.version-level-notes .version-notes-text{margin-top:0}.version-note-files{display:grid;gap:8px}.version-note-file-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.version-note-file-identity{display:flex;align-items:center;gap:8px;min-width:0}.version-note-file-identity .tag{flex-shrink:0;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-note-filename{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#bcc7d6}.version-note-file-row button{flex-shrink:0;font-size:12px}.version-notes-body .lbl{overflow-wrap:anywhere}.dialog.upload-dialog{width:740px;min-width:0;max-width:calc(100vw - 32px);padding:0;margin:auto;overflow:hidden;color:var(--text)}.upload-dialog::backdrop{background:#000000a6}.upload-dialog[open]{display:flex}.upload-dialog>form{display:flex;flex-direction:column;width:100%;max-height:calc(90vh - 2px);min-height:0}.upload-dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px 18px;flex-shrink:0}.upload-dialog-heading h3{margin:0 0 5px;font-size:17px;font-weight:600}.upload-dialog-heading p{margin:0;color:var(--muted);font-size:12px}.upload-dialog-heading>button{flex-shrink:0}.upload-dialog-body{overflow-y:auto;min-height:0;padding:0 24px 20px}.upload-file-picker{display:flex;justify-content:space-between;align-items:center;gap:12px}.upload-file-picker strong{display:block;font-size:13px;font-weight:500}.upload-file-picker span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.upload-select-button{position:relative;display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:34px;padding:6px 12px;border:1px solid #3c5479;border-radius:6px;color:#aac7ff;background:#1d293b;font-size:12px;white-space:nowrap}.upload-select-button:hover{background:#273752}.upload-select-button:focus-within{outline:2px solid var(--accent);outline-offset:2px}.upload-select-button.is-disabled{opacity:.5}.upload-file-input{position:absolute;inset:0;opacity:0;width:100%;height:100%;padding:0;cursor:pointer}.upload-selection-warning{margin:10px 0;color:#e3bd7c;font-size:12px;overflow-wrap:anywhere}.upload-file-empty{border:1px dashed #354153;border-radius:8px;padding:22px 16px;color:#8592a6;text-align:center;font-size:12px;margin:12px 0 20px}.upload-file-list{list-style:none;margin:12px 0 20px;padding:0;max-height:264px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;background:#141b25}.upload-file-row{padding:10px 12px}.upload-file-row+.upload-file-row{border-top:1px solid var(--border)}.upload-file-main{display:flex;align-items:center;gap:10px;min-width:0}.upload-file-icon{display:flex;align-items:center;justify-content:center;width:32px;height:36px;flex:0 0 32px;border-radius:6px;color:#8fabc9;background:#202c3d}.upload-file-icon svg{width:18px;height:18px}.upload-file-detail{flex:1;min-width:0}.upload-file-channel{flex:0 0 138px;min-width:0}.upload-file-channel>label{color:#8190a5;font-size:10px;margin:0 0 3px}.upload-file-channel select,.upload-file-channel input{min-height:30px;padding:4px 7px;font-size:12px}.upload-file-channel button{padding:3px 6px;font-size:10px}.upload-file-duplicate{background:#2c2026}.upload-file-duplicate .upload-file-channel select,.upload-file-duplicate .upload-file-channel input{border-color:#985963}.upload-file-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#d7e0ed}.upload-file-size{display:block;font-size:11px;color:#7f8da1;margin-top:3px}.upload-file-status{flex-shrink:0;color:#8995a8;font-size:11px;white-space:nowrap}.upload-file-status.success{color:#7ac5a0}.upload-file-status.error{color:#f19090}.upload-file-status.sha256,.upload-file-status.upload{color:#92b8fb}.upload-file-main .upload-remove-file{flex:0 0 28px;width:28px;height:28px;padding:0;border-color:transparent;background:transparent;color:#8190a5;font-size:19px}.upload-file-main .upload-remove-file:hover{background:#293346;color:var(--text)}.upload-file-row .progress{height:4px;margin-top:9px}.upload-file-notes{margin-top:6px;padding-left:42px}.upload-file-notes-toggle{display:inline-flex;align-items:center;gap:6px;padding:2px 0;min-height:24px;border:0;color:#8da8cc;font-size:11px;background:transparent}.upload-file-notes-toggle:hover{background:transparent;color:#b4d2fc}.upload-file-notes-toggle svg{width:13px;height:13px}.upload-file-notes textarea{display:block;width:100%;margin-top:5px;font-size:12px;line-height:1.6;resize:vertical}.upload-version-notes{width:100%;line-height:1.6}.upload-version-notes:-moz-read-only{color:#92a1b7}.upload-version-notes:read-only{color:#92a1b7}.upload-announcement{margin-top:16px;padding:14px 16px;border:1px solid var(--border);border-radius:8px;background:#181f2a}.upload-announcement.is-enabled{border-color:#354b69}.upload-announcement .upload-announcement-toggle{display:flex;align-items:center;gap:9px;margin:0;cursor:pointer;font-size:13px;font-weight:500}.upload-announcement-toggle input{margin:0;width:15px;height:15px;accent-color:var(--accent)}.upload-announcement>.upload-notes-hint{margin:10px 0 14px;line-height:1.6}.upload-announcement>label:last-child{margin-bottom:0}.upload-announcement-content{width:100%;min-height:96px;line-height:1.7}.upload-announcement-count{display:block;margin-top:5px;text-align:right;color:var(--muted);font-size:11px}.upload-announcement-success{margin:10px 0 0;font-size:12px}.upload-notes-hint{display:block;color:#8390a5;font-size:11px;margin-top:5px}.upload-file-error{margin:7px 0 0 42px;color:#f19090;font-size:12px;overflow-wrap:anywhere}.upload-mandatory{display:flex;align-items:center;gap:7px;font-size:12px;color:#abb7c8;margin-bottom:0}.upload-batch-lock-hint{color:#7f8da1;font-size:11px;margin:8px 0 0}.upload-conflict-files{padding-left:18px;margin:8px 0;max-height:120px;overflow-y:auto;font-size:12px;overflow-wrap:anywhere}.upload-dialog-body .inline-warning p{margin:7px 0;font-size:12px}.upload-dialog-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 24px;border-top:1px solid var(--border);background:#181e28;flex-shrink:0}.upload-summary{color:#8d9bad;font-size:12px}@media (max-width: 600px){.upload-dialog-heading{padding:18px 16px}.upload-dialog-body{padding:0 16px 16px}.upload-dialog-footer{padding:14px 16px}.upload-file-row{padding:10px 8px}.upload-file-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.upload-file-detail{grid-column:1;grid-row:1}.upload-file-status{grid-column:2;grid-row:1}.upload-file-main .upload-remove-file{grid-column:3;grid-row:1}.upload-file-channel{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:8px}.upload-file-channel>label{margin:0}.upload-file-icon{display:none}.upload-file-error{margin-left:0}.upload-file-notes{padding-left:0}}.inline-warning{margin:12px 0;padding:12px;border:1px solid #5b4320;border-radius:8px;background:#241d12;color:#f8d28a;overflow-wrap:anywhere}.inline-warning .muted{color:#d8b978}.progress{height:6px;background:var(--panel-2);border-radius:3px;overflow:hidden}.progress>div{height:100%;background:var(--accent);transition:width .2s}.token-table-scroll{overflow-x:auto;max-width:100%}.token-table{min-width:930px}.token-table th{white-space:nowrap}.token-table td:nth-child(1){max-width:200px;overflow-wrap:anywhere}.token-table td:nth-child(4){width:320px;min-width:230px;max-width:360px}.token-table td:nth-child(6){white-space:nowrap;font-size:12px}.token-table-actions{white-space:nowrap}.token-authorization{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.token-scope-tag{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-width:0;padding:3px 7px;border:1px solid #334057;border-radius:5px;background:#1b2737;font-size:11px;color:#b9cbe4}.token-scope-tag small{font-size:10px;color:#8597af;flex-shrink:0}.token-scope-tag>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.token-file-scope{flex-basis:100%}.token-file-scope.is-unavailable{color:#d5ac7f;border-color:#59442e;background:#29231d}.dialog.token-dialog{width:640px;min-width:0;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;color:var(--text)}.token-dialog::backdrop{background:#05090fb8}.token-form-fields{min-width:0;margin:0;padding:0;border:0}.token-form-fields>label,.token-form-grid>label{display:block;min-width:0;margin-bottom:14px}.token-form-fields input,.token-form-fields select{width:100%;min-width:0;text-overflow:ellipsis}.token-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.token-range-section{padding:16px;border:1px solid #303d50;border-radius:8px;background:#181f2b;margin-top:4px}.token-range-section h4{margin:0 0 5px;font-size:13px}.token-range-hint{margin:0 0 16px;font-size:12px;color:var(--muted);line-height:1.7}.token-match-summary{margin:0;color:#91b2d2;font-size:12px}.token-match-summary.is-empty,.token-range-warning{color:#e6b47c}.token-range-warning{margin:0 0 12px;font-size:12px}.token-selected-file{margin:0 0 13px;font-size:11px;color:#9babc2;overflow-wrap:anywhere}.token-selected-file strong{color:#c6d6ed;font-weight:500}.token-selected-file>span{display:block;margin-top:3px}.token-dialog-error{margin:14px 0 0;overflow-wrap:anywhere}@media (max-width: 540px){.dialog.token-dialog{padding:20px 16px}.token-form-grid{grid-template-columns:minmax(0,1fr)}.token-range-section{padding:13px}}@media (max-width: 800px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border);flex-direction:row;flex-wrap:wrap;align-items:center}.brand{border-bottom:none;padding:0 12px 0 0;margin:0 12px 0 0}.sidebar .spacer{display:none}.sidebar .user-box{border:none;margin:0;padding:0}.dialog{width:calc(100vw - 32px);min-width:0}}
