:root {
    --bg: #f6f7f9;
    --text: #25272b;
    --muted: #626c7e;
    --orange: #ec7b36;
    --soft: #fff3e9;
    --line: #e5e8ee;
    --red: #c64343
}

* {
    box-sizing: border-box
}

body {
    margin: 0;
    font: 14px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
    color: var(--text);
    background: var(--bg)
}

button,
input,
select,
textarea {
    font: inherit
}

.task-picker { border-top: 1px solid var(--line); padding-top: 20px; }
.task-picker h2 { margin: 0; }
.task-search { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 14px 0; }
.task-search label { width: 100%; }
.task-search input { flex: 1; min-width: 130px; }
.task-options { max-height: 290px; overflow-y: auto; border: 1px solid var(--line); border-radius: 8px; }
.task-option { display: flex; gap: 10px; padding: 12px; cursor: pointer; border-bottom: 1px solid var(--line); }
.task-option:last-child { border-bottom: 0; }
.task-option input { flex: none; width: 18px; margin-top: 3px; }
.task-option > span { min-width: 0; }
.task-description { display: block; max-height: 70px; overflow-y: auto; margin-top: 4px; }
.selected-task { display: flex; gap: 12px; align-items: center; justify-content: space-between; background: #fff6ee; padding: 10px 12px; border-radius: 8px; margin: 7px 0; }
.selected-task > span { min-width: 0; }
.selected-task button { flex: none; padding: 5px 10px; }
.task-registry-item { padding: 20px 0; border-bottom: 1px solid var(--line); }
.task-registry-item details { margin-top: 12px; }
.task-snapshot { border-left: 3px solid #ee7827; padding-left: 12px; margin: 12px 0; }

button,
a {
    touch-action: manipulation
}

button {
    cursor: pointer;
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 8px;
    padding: 9px 16px;
    color: var(--text)
}

button:hover {
    border-color: #ec7b36
}

button:disabled {
    cursor: default;
    opacity: .5
}

button.primary {
    background: var(--orange);
    color: #fff;
    border-color: var(--orange)
}

button.danger {
    color: var(--red)
}

a {
    color: #b95117;
    text-decoration: none
}

a:hover {
    text-decoration: underline
}

input,
select,
textarea {
    background: #fff;
    border: 1px solid #d8dce4;
    border-radius: 7px;
    padding: 10px 12px;
    max-width: 100%;
    color: var(--text)
}

input:focus,
select:focus,
textarea:focus {
    outline: 2px solid #f7c5a7;
    outline-offset: 1px
}

textarea {
    width: 100%;
    resize: vertical;
    line-height: 1.8;
    min-height: 96px
}

input[type=checkbox] {
    accent-color: var(--orange);
    width: 17px;
    height: 17px;
    vertical-align: middle
}

label {
    display: block;
    font-weight: 500;
    margin-bottom: 7px
}

.muted {
    color: var(--muted)
}

.small {
    font-size: 12px
}

.eyebrow {
    font-size: 10px;
    color: var(--muted);
    letter-spacing: 2px;
    text-transform: uppercase
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 24px;
    font-weight: 750
}

.brand .mark {
    color: var(--orange);
    font-size: 38px;
    line-height: 1
}

.brand-sub {
    font-size: 9px;
    letter-spacing: 2px;
    color: var(--muted);
    font-weight: 400
}

.sidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 224px;
    background: #fff;
    border-right: 1px solid var(--line);
    padding: 28px 16px;
    display: flex;
    flex-direction: column;
    z-index: 10
}

.sidebar .brand {
    padding: 0 15px 35px
}

.nav-title {
    padding: 13px 15px;
    color: var(--muted);
    font-size: 11px
}

.nav-item {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 0;
    text-align: left;
    padding: 12px 15px;
    margin-bottom: 5px;
    color: var(--muted);
    background: transparent
}

.nav-item.active {
    color: #ba531c;
    background: var(--soft);
    font-weight: 650
}

.nav-icon {
    font-size: 18px;
    min-width: 19px
}

.nav-item.disabled {
    opacity: .55;
    cursor: default
}

.nav-item .small {
    margin-left: auto;
    font-size: 10px
}

.side-note {
    margin-top: auto;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 13px;
    background: #fffdfa;
    font-size: 12px
}

.main {
    margin-left: 224px;
    min-height: 100vh
}

.topbar {
    height: 74px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 32px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    gap: 14px
}

.top-actions {
    display: flex;
    align-items: center;
    gap: 12px
}

.avatar {
    border-radius: 50%;
    background: var(--soft);
    color: #b95117;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center
}

.trialbar {
    padding: 8px 32px;
    color: var(--muted);
    font-size: 11px;
    background: #fafbfc;
    border-bottom: 1px solid var(--line)
}

.trialbar .dot {
    color: var(--orange)
}

.content {
    max-width: 1600px;
    margin: auto;
    padding: 30px 32px 60px
}

.page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px
}

h1 {
    font-size: 26px;
    line-height: 1.35;
    margin: 5px 0 8px
}

h2 {
    font-size: 17px;
    margin: 0 0 14px
}

h3 {
    font-size: 15px;
    margin: 0 0 8px
}

.head-actions,
.row-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap
}

.card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 22px;
    margin-bottom: 20px
}

.stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 22px
}

.stat {
    margin: 0
}

.stat-num {
    font-size: 30px;
    font-weight: 700;
    margin: 12px 0 4px
}

.stat-label {
    color: var(--muted);
    font-size: 13px
}

.stat .small {
    color: var(--muted)
}

.section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    gap: 10px
}

.section-title h2 {
    margin: 0
}

.urgent-box {
    border-color: #f3cece;
    border-left: 3px solid #d65252;
    background: #fffafa
}

.urgent-box h2 {
    color: var(--red)
}

.attention-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 12px 0;
    border-top: 1px solid #f4dede
}

.attention-item:first-of-type {
    border-top: 0
}

.attention-item .body {
    flex: 1
}

.plain {
    white-space: pre-wrap;
    overflow-wrap: anywhere
}

.empty {
    text-align: center;
    padding: 46px 20px;
    color: var(--muted)
}

.empty h3 {
    color: var(--text);
    font-size: 17px
}

.empty-symbol {
    font-size: 30px;
    color: #d6dce6;
    margin-bottom: 12px
}

.filters {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: end
}

.filters label {
    font-size: 12px;
    color: var(--muted)
}

.filters input[type=search] {
    min-width: 200px
}

.tab-row {
    display: flex;
    gap: 8px;
    margin-bottom: 18px
}

.tab-row button.selected {
    background: var(--soft);
    color: #b95117;
    border-color: #f5d6c1
}

.report-list {
    width: 100%;
    border-collapse: collapse
}

.report-list th {
    text-align: left;
    background: #fafbfc;
    font-size: 12px;
    color: var(--muted);
    font-weight: 500;
    padding: 12px 14px
}

.report-list td {
    padding: 17px 14px;
    border-top: 1px solid var(--line);
    vertical-align: top
}

.report-title {
    font-weight: 650
}

.excerpt {
    max-width: 380px;
    color: var(--muted);
    font-size: 12px;
    margin-top: 5px
}

.tag {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 4px;
    background: #f0f2f5;
    color: #5f6b80;
    font-size: 11px;
    margin: 2px
}

.tag.orange {
    background: var(--soft);
    color: #a84b18
}

.tag.red {
    background: #ffeded;
    color: var(--red)
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 20px
}

.editor-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 290px;
    gap: 20px
}

.form-field {
    margin-bottom: 23px
}

.form-field:last-child {
    margin-bottom: 0
}

.required {
    color: #b95117
}

.check-line {
    font-size: 13px;
    color: var(--muted);
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0
}

.form-row {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 20px
}

.form-row>div {
    flex: 1;
    min-width: 140px
}

.editor-toolbar {
    position: sticky;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 16px;
    box-shadow: 0 -2px 15px #00000006;
    z-index: 3
}

.save-status {
    font-size: 12px;
    color: var(--muted)
}

.save-status.error,
.error {
    color: var(--red)
}

.notice {
    border-radius: 7px;
    background: #faf5ee;
    border: 1px solid #f3e2cd;
    padding: 10px 13px;
    font-size: 12px;
    margin: 14px 0
}

.link-row {
    display: flex;
    gap: 8px;
    margin-bottom: 8px
}

.link-row input {
    min-width: 0
}

.link-row input:first-child {
    width: 34%
}

.link-row input:nth-child(2) {
    flex: 1
}

.auth-page {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr 1fr
}

.auth-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px 15%;
    background: linear-gradient(140deg, #fff4e9, #f6f7f9)
}

.auth-intro h1 {
    font-size: 38px;
    line-height: 1.45;
    margin-top: 40px
}

.auth-intro p {
    color: var(--muted);
    max-width: 370px
}

.auth-panel {
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 45px
}

.auth-form {
    width: 100%;
    max-width: 360px
}

.auth-form h1 {
    font-size: 25px
}

.auth-form input {
    width: 100%
}

.auth-form button.primary {
    width: 100%;
    margin-top: 8px
}

.auth-form .error {
    min-height: 26px;
    margin: 12px 0
}

.overlay {
    position: fixed;
    inset: 0;
    background: #25272b55;
    z-index: 30;
    display: flex;
    justify-content: flex-end
}

.drawer {
    width: 660px;
    max-width: 100%;
    height: 100%;
    background: var(--bg);
    overflow: auto;
    padding: 24px;
    box-shadow: -12px 0 60px #00000013
}

.drawer-head {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 20px
}

.drawer-head h1 {
    font-size: 23px
}

.detail-section {
    margin: 18px 0
}

.detail-section label {
    font-size: 12px;
    color: var(--muted)
}

.comment {
    border-top: 1px solid var(--line);
    padding: 14px 0
}

.comment-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 12px;
    margin-bottom: 8px
}

.history-item {
    border-top: 1px solid var(--line);
    padding: 14px 0
}

summary {
    cursor: pointer;
    font-weight: 600
}

.admin-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

.admin-grid .card {
    margin-bottom: 0
}

.admin-user {
    border-top: 1px solid var(--line);
    padding: 17px 0
}

.admin-user:first-child {
    border-top: 0
}

.grant-checks {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.grant-checks label {
    font-size: 12px;
    font-weight: 400
}

.admin-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 12px
}

.admin-controls input {
    width: 180px
}

.activation-result {
    padding: 15px;
    border: 1px solid #edbc9d;
    background: var(--soft);
    border-radius: 8px;
    margin-top: 15px
}

.activation-result input {
    width: 100%;
    font-size: 12px
}

.table-wrap {
    overflow: auto
}

#toast {
    position: fixed;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 50;
    background: #25272b;
    color: white;
    border-radius: 9px;
    padding: 12px 20px;
    max-width: 90vw;
    display: none
}

#toast.visible {
    display: block
}

.loading {
    text-align: center;
    padding: 90px;
    color: var(--muted)
}

fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    min-width: 0
}

.mobile-nav {
    display: none
}

.reference-content {
    font-size: 13px
}

.reference-content h3 {
    margin-top: 20px
}

.privacy-note {
    font-size: 12px;
    color: var(--muted);
    margin-top: 8px
}

.conflict {
    border: 1px solid #e4a2a2;
    background: #fff5f5;
    padding: 12px;
    margin-bottom: 16px;
    border-radius: 8px
}

.missing {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    border-top: 1px solid var(--line)
}

@media(max-width:1100px) {
    .editor-grid {
        grid-template-columns: 1fr
    }

    .reference-card {
        order: 2
    }

    .stats {
        gap: 10px
    }

    .card {
        padding: 18px
    }

    .content {
        padding: 24px
    }

    .sidebar {
        width: 200px
    }

    .main {
        margin-left: 200px
    }

    .topbar {
        padding: 0 24px
    }

    .admin-grid {
        grid-template-columns: 1fr
    }
}

@media(max-width:720px) {
    .sidebar {
        display: none
    }

    .main {
        margin-left: 0
    }

    .topbar {
        height: auto;
        min-height: 68px;
        padding: 12px 16px
    }

    .top-actions {
        gap: 7px
    }

    .top-actions .avatar,
    .top-actions .small {
        display: none
    }

    .topbar .crumb {
        font-size: 12px
    }

    .topbar button {
        padding: 6px 10px;
        font-size: 12px
    }

    .trialbar {
        padding: 8px 16px
    }

    .mobile-nav {
        display: flex;
        background: #fff;
        padding: 10px 16px;
        gap: 8px;
        border-bottom: 1px solid var(--line);
        overflow: auto
    }

    .mobile-nav button {
        white-space: nowrap;
        font-size: 12px;
        padding: 8px 10px
    }

    .content {
        padding: 20px 16px 40px
    }

    .page-head {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 20px
    }

    h1 {
        font-size: 23px
    }

    .stats {
        grid-template-columns: 1fr 1fr;
        gap: 10px
    }

    .stat-num {
        font-size: 26px
    }

    .card {
        padding: 16px;
        border-radius: 10px
    }

    .filters>div {
        width: calc(50% - 6px)
    }

    .filters input,
    .filters select {
        width: 100%;
        min-width: 0 !important
    }

    .filters .search-field {
        width: 100%
    }

    .report-list th:nth-child(3),
    .report-list td:nth-child(3) {
        display: none
    }

    .report-list td,
    .report-list th {
        padding: 12px 8px
    }

    .excerpt {
        max-width: 190px
    }

    .row-actions button {
        padding: 7px 10px
    }

    .drawer {
        padding: 18px 14px
    }

    .editor-toolbar {
        padding: 12px;
        flex-direction: column;
        align-items: stretch
    }

    .editor-toolbar .row-actions {
        justify-content: flex-end
    }

    .attention-item {
        gap: 10px;
        flex-direction: column
    }

    .auth-page {
        display: block
    }

    .auth-intro {
        padding: 28px
    }

    .auth-intro h1,
    .auth-intro p {
        display: none
    }

    .auth-panel {
        padding: 35px 28px
    }

    .auth-intro .brand {
        font-size: 23px
    }

    .auth-intro .brand .mark {
        font-size: 30px
    }

    .admin-controls input {
        width: 100%
    }

    .form-row {
        gap: 12px
    }

    .link-row {
        flex-wrap: wrap
    }

    .link-row input:first-child,
    .link-row input:nth-child(2) {
        width: 100%;
        flex: initial
    }

    .pagination {
        font-size: 12px;
        gap: 8px
    }

    .pagination button {
        padding: 7px 10px
    }

    .head-actions {
        width: 100%
    }

    .head-actions input {
        flex: 1;
        min-width: 0
    }
}

/* Boss reading views: content first; the report editor retains its own layout. */
.future-nav { margin: 12px 0; }
.future-nav summary { cursor: pointer; padding: 8px 14px; color: var(--muted); font-size: 12px; }
.future-nav .nav-item { font-size: 12px; padding: 8px 12px; }
.company-grid { display: grid; gap: 18px; grid-template-columns: minmax(0, 1.55fr) minmax(290px, 1fr); grid-template-areas: 'urgent urgent' 'support feedback' 'work work' 'coverage coverage'; align-items: start; }
.company-grid > .card { margin: 0; }
.overview-urgent { grid-area: urgent; }
.overview-support { grid-area: support; }
.overview-work { grid-area: work; }
.overview-feedback { grid-area: feedback; }
.overview-coverage { grid-area: coverage; }
.company-grid h2 { font-size: 17px; margin: 0; }
.section-count { font-size: 12px; color: var(--muted); font-weight: 400; margin-left: 8px; }
.text-button { border: none; padding: 4px 0; background: transparent; color: #a44710; font-size: 12px; }
.source { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.original { margin: 10px 0; overflow-wrap: anywhere; }
.original details { border-left: 2px solid var(--line); padding-left: 12px; }
.original summary { color: #a44710; cursor: pointer; }
.field-label { font-size: 12px; color: var(--muted); margin-bottom: 4px; }
.management-report { padding: 20px 0; border-top: 1px solid var(--line); min-width: 0; }
.management-report:first-child { border-top: 0; padding-top: 0; }
.overview-work .management-report:first-of-type { margin-top: 18px; }
.management-report:last-child { padding-bottom: 0; }
.management-report .section-title { margin-bottom: 8px; }
.report-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.support-preview { padding: 2px 12px; background: #fff8f2; border-radius: 6px; margin: 12px 0; }
.support-item, .feedback-item { padding: 16px 0; border-bottom: 1px solid var(--line); }
.support-item:last-child, .feedback-item:last-child { border-bottom: 0; padding-bottom: 0; }
.author-discussion { border-left: 2px solid var(--orange); padding-left: 12px; }
.compact-empty { font-size: 13px; color: var(--muted); padding: 8px 0; }
.context-empty { padding: 24px 0; }
.context-empty p { margin: 8px 0 14px; }
.coverage-line { font-size: 13px; margin-top: 10px; }
.overview-coverage details { margin-top: 12px; }
.filter-tags { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; padding-top: 14px; }
.filter-tags .tag { margin: 0; display: inline-flex; align-items: center; gap: 6px; }
.filter-tags button:not(.text-button) { border: 0; padding: 0 3px; background: transparent; line-height: 1.2; }
.quick-filters { margin-top: 14px; flex-wrap: wrap; }
.support-field { padding: 12px; border-left: 3px solid var(--orange); background: #fff8f2; }
.urgent-field { padding: 12px; border-left: 3px solid var(--red); background: #fff4f4; }
[data-field] { scroll-margin-top: 18px; }
.attention-item .row-actions { flex-shrink: 0; flex-direction: column; align-items: flex-end; }
@media (max-width: 1100px) {
    .company-grid { grid-template-columns: minmax(0, 1.3fr) minmax(260px, 1fr); }
    .company-grid .section-title { flex-wrap: wrap; gap: 8px; }
}
@media (max-width: 850px) {
    .company-grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'urgent' 'support' 'work' 'feedback' 'coverage'; gap: 14px; }
    .management-report .section-title { flex-wrap: wrap; gap: 10px; }
    .management-report .source { width: 100%; }
    .attention-item .row-actions { flex-direction: row; align-items: center; flex-wrap: wrap; }
    .overview-coverage h2 .section-count { display: block; margin-left: 0; }
    .head-actions { flex-wrap: wrap; }
    .quick-filters { gap: 8px; }
    .source { overflow-wrap: anywhere; }
}
.mobile-future { position: relative; white-space: nowrap; }
.mobile-future summary { cursor: pointer; padding: 8px; font-size: 12px; }
.mobile-future[open] { min-width: 175px; }
.mobile-future[open] button, .mobile-future[open] span { display: block; margin: 4px 8px; }
/* Shared task and report workflow, white/gray/orange. */
.task-card,.task-report,.task-event,.ai-record{padding:18px 0;border-bottom:1px solid var(--border,#e7e7e7);overflow-wrap:anywhere}
.task-title{font-size:17px;font-weight:650;text-align:left}.task-progress{padding:8px 12px;background:#f7f7f7;border-radius:8px}.task-actions{flex-wrap:wrap;gap:8px}.task-card p{margin:8px 0}.work-item{margin:16px 0;background:#fcfcfc}.work-item select{max-width:100%}.work-view{padding:12px 0}.mainline-board{grid-column:1/-1}.ai-record pre,.task-event pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto}.drawer form label{margin-top:10px}.task-search select{flex:1;min-width:0}.drawer textarea{max-width:100%}.ai-adopt textarea{font-family:monospace}
@media(max-width:700px){.task-actions{display:grid;grid-template-columns:1fr 1fr}.task-search{flex-wrap:wrap}.task-title{font-size:16px}.work-item{padding:12px}.task-card .section-title{flex-wrap:wrap;gap:8px}}
.company-grid{grid-template-areas:'urgent urgent' 'mainline mainline' 'support feedback' 'work work' 'coverage coverage'}
.company-grid>.mainline-board{grid-area:mainline}
@media(max-width:800px){.company-grid{grid-template-areas:'urgent' 'mainline' 'support' 'work' 'feedback' 'coverage'}}
.sidebar{overflow-y:auto}.supervisor-feedback{border-left:3px solid var(--orange);margin:18px 0}.performance-rule .form-field{margin:8px 0}.business-form input,.drawer input:not([type=checkbox]),.drawer select{max-width:100%;width:100%}.management-ai{margin-top:24px}.sidebar .nav-item{padding:10px 14px}.action-confirm{border:1px solid #efb090}.management-ai .form-field{display:inline-block;margin:10px 16px 10px 0}.grant-checks{max-height:260px;overflow:auto}.mobile-nav{flex-wrap:wrap}

.mobile-nav select{max-width:170px;font-size:12px;border-color:var(--line);background:#fff}.undertaking-summary{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 12px;border-bottom:1px solid var(--line)}.undertaking-summary button{background:var(--orange-light,#fff4eb);padding:6px 10px;border-radius:6px}
/* v6: three readable modules, monthly work dominates without compressing text. */
.settings-menu{position:relative}.settings-menu summary{cursor:pointer;padding:8px}.settings-menu>div{position:absolute;right:0;top:36px;background:#fff;border:1px solid #ddd;padding:12px;min-width:190px;z-index:30}.settings-menu button{display:block;width:100%;margin:5px 0}.module-tabs{display:flex;gap:10px;margin:15px 0;flex-wrap:wrap}.module-tabs .active{background:#fff2e8;color:#ad4f1d;border-color:#ec7b36}.v6-overview-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:20px}.range-summaries{display:flex;flex-direction:column;gap:16px}.goal-card{padding:18px 0;border-bottom:1px solid #eee}.goal-card>.plain{margin:12px 0}.goal-card details{margin:12px 0}.goal-card details>.task-card,.undertaking-summary{margin-left:14px}.compact-task{padding:14px 0}.compact-urgent{background:#fff3ef;border-left:3px solid #ed814c;padding:12px;margin-bottom:16px;display:flex;gap:12px;flex-wrap:wrap}.report-list-item{padding:16px 0;border-bottom:1px solid #eee}.report-excerpt{max-height:4.5em;overflow:hidden}.candidate details{padding:10px 0}.management-ai{margin-top:22px}#content h1{font-size:26px}.goal-card .task-title{font-size:17px}.range-summary h2{font-size:18px} .range-summary .goal-card{display:none}.module-tabs button{min-width:86px}.candidate-panel{margin-top:20px}.filters label{display:flex;flex-direction:column;gap:6px}.monthly-work,.range-summary{min-width:0}.settings-menu summary{white-space:nowrap}@media(max-width:800px){.v6-overview-grid{grid-template-columns:1fr}.range-summaries{display:grid;grid-template-columns:1fr 1fr}.topbar{flex-wrap:wrap}.top-actions{gap:5px}.compact-urgent span{display:block}.range-summary{padding:14px}}@media(max-width:480px){.range-summaries{grid-template-columns:1fr}.topbar .crumb{display:none}.module-tabs{gap:5px}.module-tabs button{min-width:60px;padding:8px}.head-actions{flex-wrap:wrap}}

/* Standard operating experience: the same white/grey/orange system, no frontend metrics. */
.ops-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.ops-tabs button.active{background:#fff1e7;border-color:#ed8d4d;color:#9c471a;font-weight:650}.ops-demo{border-left:3px solid #ec7b36;background:#fff9f2}.ops-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.ops-filter label{display:flex;flex-direction:column;gap:6px;font-size:13px}.ops-filter input,.ops-filter select{width:auto;min-width:135px}.ops-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:18px 0}.ops-metric{text-align:left;display:flex;flex-direction:column;gap:12px;min-height:140px;align-items:start;width:100%;white-space:normal;color:#25272b}.ops-metric strong{font-size:25px;font-weight:650}.ops-metric small{font-size:12px;font-weight:400;color:#707682}.ops-metric .tag{display:block;margin-top:8px;font-size:12px}.ops-number{font-variant-numeric:tabular-nums}.ops-missing{font-size:14px;font-weight:400;color:#b35a34}.ops-source{padding:14px 18px;background:#f0f1f3;line-height:1.9;margin:18px 0;border-radius:10px}.ops-target{display:flex;justify-content:space-between;align-items:start;padding:20px 0;border-bottom:1px solid #eceef1;gap:20px}.ops-table{width:100%;overflow:auto;margin:14px 0}.ops-table table{width:100%;border-collapse:collapse;font-size:13px;min-width:760px}.ops-table th,.ops-table td{padding:13px 10px;text-align:left;border-bottom:1px solid #eceef1;vertical-align:top}.ops-table th{white-space:nowrap;background:#fafbfc;color:#626873}.ops-table td button{font-size:13px;text-align:left}.ops-table td small{white-space:nowrap}.ops-alert-row{background:#fff4ed}.ops-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:16px 0}.ops-issue .head-actions{flex-wrap:wrap;margin-top:18px}.ops-issue details{margin:16px 0}.ops-issue h2{font-size:19px}.drawer #ops-drawer-form{padding:20px}.drawer #ops-drawer-form textarea{min-height:100px}.drawer #ops-drawer-form p{overflow-wrap:anywhere}.drawer #ops-drawer-form .primary{margin-top:18px}@media(max-width:700px){.ops-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ops-metric{min-height:126px;padding:15px}.ops-metric strong{font-size:20px}.ops-tabs{gap:5px}.ops-tabs button{padding:8px}.ops-filter label{flex:1;min-width:125px}.ops-filter input,.ops-filter select{width:100%;min-width:0}.ops-target{display:block}.ops-target>button{margin-top:8px}}

/* Operating data center: one grouped navigation; result pages share constituent data. */
.data-center { background:#f7f8fa; --muted:#717780; }
.data-center .dc-sidebar { width:236px; padding:30px 20px 22px; display:flex; background:#fff; }
.dc-brand { display:flex; align-items:center; gap:10px; margin:0 0 38px; }
.dc-logo { display:grid; place-items:center; flex:none; width:34px; height:38px; border-radius:9px; color:#cf651f; background:#fff2e7; font-size:22px; font-weight:700; }
.dc-brand strong { font-size:16px; letter-spacing:-.4px; white-space:nowrap; }
.dc-brand small { display:block; font-size:8px; letter-spacing:1.6px; color:#91969e; margin-top:4px; }
.dc-sidebar .nav-group { margin-bottom:26px; }
.dc-sidebar .nav-group h2 { padding:0 14px; color:#a0a5ad; font-size:11px; letter-spacing:2px; margin-bottom:9px; font-weight:500; }
.dc-sidebar .nav-item { display:block; width:100%; text-align:left; background:transparent; border:0; border-radius:7px; padding:11px 14px; margin:3px 0; color:#626975; font-size:14px; }
.dc-sidebar .nav-item:hover { background:#faf5ef; }
.dc-sidebar .nav-item.active { color:#ba591e; background:#fff1e5; font-weight:600; }
.dc-side-note { margin-top:auto; padding:18px 12px 0; border-top:1px solid #f0f0f0; font-size:12px; color:#747b83; }
.dc-side-note small { color:#a0a4aa; font-size:10px; }
.dc-status-dot { display:inline-block; width:6px; height:6px; border-radius:50%; background:#dc914f; margin-right:5px; }
.data-center .main { margin-left:236px; min-width:0; }
.data-center .topbar { height:72px; padding:0 40px; background:#fff; flex-wrap:nowrap; }
.dc-top-title { display:flex; align-items:center; gap:14px; min-width:0; }
.data-center .crumb { font-size:12px; color:#7d838c; }
.data-center .crumb span { margin:0 10px; color:#d5d7dc; }
.data-center .top-actions { gap:14px; white-space:nowrap; font-size:12px; }
.data-center .top-actions button { font-size:12px; border:0; padding:7px; color:#737983; background:transparent; }
.dc-user { padding-right:10px; border-right:1px solid #e8eaee; }
.data-center .content { max-width:1580px; padding:40px 40px 72px; }
.data-center .dc-page-head { align-items:flex-start; margin-bottom:18px; }
.data-center #content h1 { font-size:28px; font-weight:600; letter-spacing:.5px; margin:4px 0 8px; }
.dc-page-head p { margin:0; font-size:13px; }
.dc-company { display:flex; flex-direction:column; gap:6px; font-size:10px; color:#9a9ea5; min-width:200px; }
.dc-company select { font-size:12px; color:#656c76; padding:8px 10px; }
.dc-demo { font-size:11px; color:#a38264; border:0; background:transparent; padding:0; margin-bottom:26px; }
.data-center .card { padding:26px; border:1px solid #eceef1; box-shadow:none; border-radius:10px; margin-bottom:24px; }
.data-center .ops-filter { padding:18px 22px; background:#fff; gap:14px; margin-bottom:26px; }
.data-center .ops-filter>label { flex:1; min-width:120px; font-size:11px; color:#868c95; margin:0; }
.data-center .ops-filter>label select { width:100%; padding:8px 10px; min-width:0; font-size:12px; color:#414852; }
.data-center .ops-filter>button { padding:8px 18px; font-size:12px; }
.dc-more-filters { width:100%; border-top:1px solid #f1f2f4; padding-top:8px; font-size:11px; color:#8b9099; }
.dc-more-filters summary { cursor:pointer; width:max-content; }
.dc-more-filters .ops-filter { padding:14px 0 0; margin:0; border:0; background:transparent; align-items:start; }
.dc-more-filters label { flex:1; min-width:150px; margin:0; font-size:11px; }
.dc-more-filters label input,.dc-more-filters label select { width:100%; }
.dc-more-filters select:disabled { background:#f6f7f8; color:#a4a8ae; border-color:#edeef0; }
.data-center .ops-grid { gap:18px; margin:0 0 28px; }
.data-center .ops-grid>.card { margin:0; }
.data-center .ops-metric { min-height:158px; padding:24px; gap:14px; }
.data-center .ops-metric>span { font-size:12px; color:#7a818c; }
.data-center .ops-metric strong { font-size:27px; font-weight:600; letter-spacing:-.5px; }
.data-center .ops-metric>small { margin-top:auto; font-size:10px; color:#9da2aa; }
.data-center .ops-metric:hover { border-color:#edcdb1; }
.dc-core-results { grid-template-columns:repeat(4,minmax(0,1fr)); }
.dc-summary-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:24px; }
.dc-summary-grid>.card { min-width:0; }
.data-center .section-title h2,.data-center h2 { font-size:16px; font-weight:600; }
.data-center .section-title>button { border:0; padding:4px 0; font-size:11px; color:#b06c3d; }
.dc-summary-grid .ops-table table { min-width:490px; }
.data-center .ops-table { margin:16px 0 0; }
.data-center .ops-table th { background:transparent; color:#9a9fa7; font-weight:400; font-size:11px; padding:12px 8px; border-bottom:1px solid #e9ebef; }
.data-center .ops-table td { padding:17px 8px; font-size:12px; color:#555d68; }
.data-center .ops-table td button { border:0; background:transparent; color:#4a535f; padding:0; }
.data-center .ops-table td button:hover { color:#bb682e; }
.dc-rank { display:inline-block; color:#b8bdc4; margin-right:12px; font-size:11px; }
.dc-alert { width:100%; display:block; text-align:left; background:#fcfaf7; border:0; padding:14px 16px; margin-top:14px; color:#9b724c; font-size:12px; line-height:1.8; }
.dc-section-heading { display:flex; align-items:center; justify-content:space-between; margin:30px 0 20px; }
.dc-section-heading>button { font-size:12px; border:0; background:transparent; color:#b57143; }
.data-center .ops-source { background:transparent; border:0; border-top:1px solid #e6e8ec; border-radius:0; padding:18px 0; color:#989ea6; }
.ops-source summary { cursor:pointer; }
.dc-policy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:20px 0; margin-bottom:18px; border-bottom:1px solid #eceef0; }
.dc-policy-grid span { font-size:11px; }
.dc-policy-grid p { margin:6px 0; font-size:13px; }
.dc-pipeline { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:32px 0; font-size:12px; }
.dc-pipeline span { background:#f7f8fa; padding:10px 14px; border-radius:6px; }
.dc-pipeline b { color:#c9cdd3; font-weight:400; }
.dc-source-options { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin:28px 0; }
.dc-source-options p { font-size:12px; color:#8d939b; }
.dc-empty { padding:48px!important; }
.dc-nav-toggle,.dc-nav-shade { display:none; }
.data-center .auth-intro { background:#faf7f2; }
@media(min-width:1600px){.data-center .content{padding-top:46px}.data-center .dc-page-head{margin-bottom:24px}}
@media(max-width:1150px){.dc-core-results{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-summary-grid{grid-template-columns:minmax(0,1fr)}.data-center .content{padding:30px}.data-center .ops-metric strong{font-size:24px}}
@media(max-width:800px){
 .data-center .dc-sidebar{display:none;width:236px;z-index:60;box-shadow:8px 0 30px #0000000c}
 .data-center.dc-nav-open .dc-sidebar{display:flex}
 .data-center .main{margin-left:0}
 .dc-nav-toggle{display:block;border:0;background:transparent;font-size:19px;padding:4px;color:#707782}
 .dc-nav-open .dc-nav-shade:not([hidden]){display:block;position:fixed;inset:0;z-index:50;background:#252a3340;border:0;border-radius:0}
 .data-center .topbar{padding:0 20px;height:64px;gap:10px}
 .data-center .top-actions{gap:6px}
 .data-center .dc-user{display:none}
 .data-center .content{padding:28px 20px 50px}
 .data-center .crumb{font-size:11px;display:block!important}
 .data-center .crumb span{margin:0 5px}
 .dc-company{min-width:0;width:175px}
 .dc-page-head{flex-wrap:wrap}
 .data-center .card{padding:20px;min-width:0}
 .data-center .ops-metric{padding:19px;min-height:144px}
 .data-center .ops-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .data-center .ops-metric strong{font-size:21px;word-break:break-word}
 .data-center .ops-filter{padding:16px;gap:12px}
 .data-center .ops-filter>label{min-width:120px}
 .data-center .ops-table table{min-width:680px}
 .dc-policy-grid,.dc-source-options{grid-template-columns:1fr 1fr}
 .dc-summary-grid{gap:0}
 .dc-section-heading{align-items:start;gap:12px}
 .data-center .ops-missing{font-size:12px}
 .data-center .dc-empty{padding:25px!important}
}
@media(max-width:420px){.data-center .top-actions button{font-size:10px;padding:5px}.data-center .crumb{max-width:165px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-policy-grid,.dc-source-options{grid-template-columns:1fr}.dc-demo{font-size:10px}.data-center .dc-page-head h1{font-size:25px}.data-center .content{padding:24px 16px 45px}}
