:root {
    --bg: #f4f7f6;
    --surface: #ffffff;
    --surface-soft: #f8faf9;
    --line: #dce6e2;
    --line-strong: #c8d7d1;
    --text: #17231f;
    --muted: #687a73;
    --primary: #176b52;
    --primary-dark: #0e4f3c;
    --primary-soft: #e1f1eb;
    --accent: #d99a32;
    --danger: #bd3b43;
    --danger-soft: #fdebed;
    --success: #1f7a57;
    --warning: #a26614;
    --shadow: 0 16px 42px rgba(26, 67, 54, .08);
    --radius: 22px;
    --radius-sm: 14px;
    --sidebar: 276px;
}

* { box-sizing: border-box; }
html { color-scheme: light; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: "Segoe UI", Arial, sans-serif; font-size: 15px; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
h1,h2,h3,p { margin-top: 0; }
small { color: var(--muted); }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--sidebar) minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 20px 16px; background: #102d24; color: #eef7f3; display: flex; flex-direction: column; overflow-y: auto; z-index: 50; }
.brand { display: flex; align-items: center; gap: 12px; padding: 8px 9px 20px; }
.brand img { width: 48px; height: 48px; object-fit: contain; border-radius: 14px; background: white; padding: 4px; }
.brand div { min-width: 0; }
.brand strong { display: block; font-size: 20px; letter-spacing: .08em; }
.brand span { display: block; color: #a9c7bb; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 12px; margin-top: 3px; }
.nav-section { display: grid; gap: 5px; margin: 10px 0; }
.nav-caption { color: #7fa89a; font-size: 10px; letter-spacing: .16em; font-weight: 800; padding: 7px 10px; }
.nav-section a { display: flex; align-items: center; gap: 10px; min-height: 42px; border-radius: 12px; padding: 9px 11px; color: #dcebe5; transition: .18s ease; }
.nav-section a:hover { background: rgba(255,255,255,.09); color: white; transform: translateX(2px); }
.nav-icon { width: 22px; text-align: center; color: #94d2ba; font-size: 16px; }
.sidebar-foot { margin-top: auto; border-top: 1px solid rgba(255,255,255,.11); padding: 17px 10px 6px; display: grid; gap: 4px; }
.sidebar-foot span { font-weight: 700; }
.sidebar-foot small { color: #9ab9ad; }
.link-button { border: 0; background: transparent; color: #d5e7df; padding: 8px 0 0; text-align: left; }
.link-button:hover { color: white; }
.main-area { min-width: 0; }
.topbar { height: 78px; position: sticky; top: 0; z-index: 40; background: rgba(244,247,246,.9); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(200,215,209,.75); display: flex; align-items: center; gap: 16px; justify-content: space-between; padding: 0 28px; }
.menu-button { display: none; border: 1px solid var(--line); background: white; border-radius: 12px; width: 42px; height: 42px; }
.company-pill { display: flex; align-items: center; gap: 10px; min-width: 0; }
.company-pill .pulse { width: 10px; height: 10px; border-radius: 50%; background: #38a978; box-shadow: 0 0 0 6px rgba(56,169,120,.12); }
.company-pill small { display: block; color: var(--muted); font-size: 9px; letter-spacing: .12em; }
.company-pill strong { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 380px; }
.top-actions { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--primary); color: white; display: grid; place-items: center; font-weight: 800; }
.content { width: min(1520px, calc(100% - 44px)); margin: 0 auto; padding: 28px 0 56px; }

.page-header, .page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.page-header h1, .page-head h1 { font-size: clamp(27px, 3.4vw, 42px); line-height: 1.08; margin: 4px 0 8px; letter-spacing: -.035em; }
.page-header p, .page-head p { color: var(--muted); margin-bottom: 0; max-width: 760px; line-height: 1.6; }
.page-header.split, .page-head.split { align-items: center; }
.eyebrow { color: var(--primary); font-size: 11px; letter-spacing: .15em; font-weight: 850; }
.eyebrow.light { color: #b8d9cc; }
.header-actions, .inline-actions, .filter-actions, .form-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

.btn { border: 1px solid transparent; min-height: 43px; padding: 10px 17px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-weight: 750; transition: .18s ease; white-space: nowrap; }
.btn:hover { transform: translateY(-1px); box-shadow: 0 8px 18px rgba(25,64,51,.12); }
.btn.primary { background: var(--primary); color: white; }
.btn.primary:hover { background: var(--primary-dark); }
.btn.secondary { background: white; border-color: var(--line-strong); color: var(--text); }
.btn.ghost { background: transparent; border-color: var(--line); color: var(--primary-dark); }
.btn.success { background: var(--success); color: white; }
.btn.danger { background: var(--danger); color: white; }
.btn.compact { min-height: 36px; padding: 7px 12px; font-size: 13px; border-radius: 10px; }
.btn.wide { width: 100%; }

.panel { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow); }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.panel-head h2 { margin: 3px 0 3px; font-size: 20px; }
.panel-head p { margin: 0; color: var(--muted); }
.two-column, .two-column-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(320px, .75fr); gap: 20px; align-items: start; }
.narrow-panel { max-width: 620px; }

.notice { border-radius: 14px; padding: 13px 16px; margin-bottom: 18px; border: 1px solid; }
.notice.success { background: #e9f7f0; border-color: #b5dfcd; color: #14593f; }
.notice.danger { background: var(--danger-soft); border-color: #f2bec4; color: #8c2931; }
.notice.warning { background: #fff4dc; border-color: #edd29a; color: #7a4a08; }

.kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 28px; }
.kpi-card { padding: 21px; border-radius: 20px; background: linear-gradient(145deg,#fff,#f4f8f6); border: 1px solid var(--line); box-shadow: var(--shadow); }
.kpi-card span { color: var(--muted); font-size: 12px; }
.kpi-card strong { display: block; font-size: 34px; margin: 7px 0 5px; letter-spacing: -.04em; }
.kpi-card small { color: var(--primary); }
.section-title { display: flex; align-items: end; justify-content: space-between; margin: 28px 0 14px; }
.section-title h2 { margin: 3px 0 0; }
.module-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.module-card { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 20px; box-shadow: var(--shadow); display: grid; grid-template-columns: auto 1fr; gap: 14px; }
.module-icon { width: 46px; height: 46px; border-radius: 14px; background: var(--primary-soft); color: var(--primary); display: grid; place-items: center; font-weight: 900; font-size: 18px; }
.module-content h3 { margin: 0 0 6px; }
.module-content p { color: var(--muted); font-size: 13px; line-height: 1.5; min-height: 40px; }
.module-content strong { font-size: 24px; }
.module-actions { grid-column: 1/-1; display: flex; gap: 8px; }
.recent-list { display: grid; }
.recent-item { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.recent-item:last-child { border-bottom: 0; }
.recent-badge { width: 38px; height: 38px; border-radius: 12px; background: var(--primary-soft); display: grid; place-items: center; color: var(--primary); font-weight: 800; }
.recent-item > div { flex: 1; min-width: 0; }
.recent-item strong, .recent-item span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.recent-item span, .recent-item time { color: var(--muted); font-size: 12px; }
.quick-panel ul { padding-left: 18px; color: var(--muted); line-height: 1.85; }

.filter-bar, .filter-panel { background: white; border: 1px solid var(--line); border-radius: 18px; padding: 17px; margin-bottom: 18px; box-shadow: var(--shadow); }
.filter-bar { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; }
.filter-grid { display: grid; grid-template-columns: repeat(6, minmax(150px, 1fr)); gap: 13px; align-items: end; }
.filter-actions { margin-top: 15px; }
.field { display: grid; gap: 7px; min-width: 0; }
.field.grow { flex: 1; min-width: 200px; }
.field.compact { min-width: 145px; }
.field.span-2, .field.full { grid-column: 1 / -1; }
.field label { font-size: 12px; font-weight: 750; color: #40534c; }
.field input, .field select, .field textarea, .definition-card textarea { width: 100%; border: 1px solid var(--line-strong); background: white; color: var(--text); border-radius: 12px; padding: 11px 12px; outline: none; transition: .16s ease; }
.field input, .field select { min-height: 44px; }
.field textarea, .definition-card textarea { resize: vertical; line-height: 1.55; }
.field input:focus, .field select:focus, .field textarea:focus, .definition-card textarea:focus { border-color: #6aa88f; box-shadow: 0 0 0 4px rgba(54,139,105,.11); }
.field span.field-validation-error, .field > span:not(:empty) { color: var(--danger); font-size: 12px; }
.check, .check-field { display: flex; align-items: center; gap: 8px; color: #465851; min-height: 43px; }
.check input, .check-field input { width: 17px; height: 17px; accent-color: var(--primary); }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.form-grid.single { grid-template-columns: 1fr; }
.form-panel .form-actions { margin-top: 4px; }

.table-panel { padding: 0; overflow: hidden; }
.table-panel .panel-head { padding: 20px 22px 0; }
.table-wrap, .public-table-wrap { overflow: auto; }
.data-table, .public-table { width: 100%; border-collapse: collapse; min-width: 760px; }
.data-table th, .data-table td { padding: 13px 15px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
.data-table th { background: #f2f7f5; color: #4b5f57; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; position: sticky; top: 0; z-index: 1; }
.data-table tbody tr:hover { background: #f8fbfa; }
.data-table tr.out-row { background: #fff4f2; }
.data-table small { color: var(--muted); }
.actions-cell { text-align: right !important; }
.table-link { color: var(--primary); font-weight: 750; }
.status, .status-pill { display: inline-flex; align-items: center; border-radius: 999px; padding: 5px 9px; font-size: 11px; font-weight: 800; }
.status.normal, .status-pill.normal { background: #dff3e9; color: #166044; }
.status.passive, .status-pill.neutral, .status-pill.empty { background: #edf1ef; color: #65756f; }
.status-pill.low { background: #e9efff; color: #3155a2; }
.status-pill.high { background: #ffe9e8; color: #a73339; }

.empty-state, .empty-inline { padding: 45px 18px; text-align: center; color: var(--muted); }
.empty-state.small { padding: 25px; }
.empty-state.compact { padding: 20px; }
.empty-icon { width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; margin: 0 auto 12px; background: var(--primary-soft); color: var(--primary); font-weight: 900; }

.record-form { display: grid; gap: 18px; }
.form-section { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 20px; box-shadow: var(--shadow); }
.form-section-head { margin-bottom: 16px; }
.form-section-head h2 { margin-bottom: 4px; font-size: 19px; }
.form-section-head p { color: var(--muted); margin: 0; }
.security-section { border-color: #e9ce9b; background: #fffaf0; }
.sticky-actions { position: sticky; bottom: 14px; display: flex; justify-content: flex-end; gap: 10px; background: rgba(255,255,255,.92); backdrop-filter: blur(12px); border: 1px solid var(--line); box-shadow: var(--shadow); border-radius: 16px; padding: 12px; z-index: 20; margin-top: 16px; }
.summary-strip { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-bottom: 18px; }
.summary-strip > div { background: white; border: 1px solid var(--line); border-radius: 16px; padding: 15px; }
.summary-strip span { display: block; color: var(--muted); font-size: 11px; margin-bottom: 5px; }
.result-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.result-card { border: 1px solid var(--line); border-radius: 16px; padding: 15px; background: #fbfcfc; }
.result-card.low { border-color: #b9cafa; background: #f3f6ff; }
.result-card.high { border-color: #f0b2b6; background: #fff5f5; }
.result-card.normal { border-color: #a9d8c2; background: #f2fbf7; }
.result-head { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.result-card .value { font-size: 24px; font-weight: 850; }
.result-card .reference, .result-card .assessment { color: var(--muted); font-size: 12px; margin-top: 7px; line-height: 1.5; }
.share-panel, .action-panel { margin-top: 18px; }
.share-link-row { display: flex; gap: 8px; }
.share-link-row input { flex: 1; min-width: 0; border: 1px solid var(--line); border-radius: 12px; padding: 11px; background: var(--surface-soft); }

.timeline { position: relative; display: grid; gap: 16px; }
.timeline::before { content: ""; position: absolute; top: 4px; bottom: 4px; left: 13px; width: 2px; background: var(--line); }
.timeline-item { position: relative; padding-left: 42px; }
.timeline-dot { position: absolute; left: 5px; top: 18px; width: 18px; height: 18px; border: 4px solid var(--bg); background: var(--primary); border-radius: 50%; z-index: 1; }
.timeline-card { background: white; border: 1px solid var(--line); border-radius: 18px; padding: 18px; box-shadow: var(--shadow); }
.timeline-head { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.restore-form { display: flex; align-items: end; gap: 10px; flex-wrap: wrap; border-top: 1px solid var(--line); margin-top: 14px; padding-top: 14px; }

.definition-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }
.definition-card textarea { min-height: 180px; }
.settings-layout { display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 28px; }
.logo-editor { display: grid; align-content: start; gap: 15px; }
.logo-preview { aspect-ratio: 1; border: 1px dashed var(--line-strong); border-radius: 22px; background: var(--surface-soft); display: grid; place-items: center; overflow: hidden; }
.logo-preview img { width: 78%; height: 78%; object-fit: contain; }
.settings-layout > .form-actions.full { grid-column: 1/-1; justify-content: flex-end; }

.switch-company { display: flex; gap: 8px; align-items: center; }
.switch-company select { min-height: 39px; border: 1px solid var(--line); border-radius: 10px; padding: 7px 10px; }

.mobile-hero { background: linear-gradient(135deg,#164f3e,#238064); color: white; border-radius: 26px; padding: 28px; margin-bottom: 18px; box-shadow: var(--shadow); }
.mobile-hero .eyebrow { color: #bce4d4; }
.mobile-hero h1 { font-size: 34px; margin: 6px 0 8px; }
.mobile-hero p { color: #d9eee6; margin: 0; }
.mobile-modules { display: grid; gap: 16px; }
.mobile-module { background: white; border: 1px solid var(--line); border-radius: 20px; overflow: hidden; box-shadow: var(--shadow); }
.mobile-module-head { padding: 16px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--line); }
.mobile-module-head > div { display: flex; align-items: center; gap: 10px; }
.mobile-module-head h2 { margin: 0; font-size: 17px; }
.mobile-module-head a { color: var(--primary); font-weight: 750; font-size: 13px; }
.mobile-result-list { display: grid; }
.mobile-result { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 17px; border-bottom: 1px solid var(--line); }
.mobile-result:last-child { border-bottom: 0; }
.mobile-result strong, .mobile-result span { display: block; }
.mobile-result span, .mobile-result time { color: var(--muted); font-size: 12px; margin-top: 3px; }

.chart-panel { min-height: 560px; }
.chart-stage { width: 100%; min-height: 430px; position: relative; }
.chart-stage canvas { width: 100%; height: 430px; display: block; }
.chart-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 16px; }
.chart-summary > div { border: 1px solid var(--line); background: var(--surface-soft); border-radius: 14px; padding: 13px; }
.chart-summary span { color: var(--muted); display: block; font-size: 11px; }
.chart-summary strong { display: block; font-size: 20px; margin-top: 4px; }

.login-body { min-height: 100vh; background: #eef4f1; }
.login-shell { min-height: 100vh; display: grid; grid-template-columns: 1.1fr .9fr; }
.login-visual { padding: clamp(35px,6vw,90px); background: linear-gradient(145deg,#0c3127,#176a51 70%,#28856a); color: white; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; }
.login-visual::after { content:""; position:absolute; width:430px; height:430px; border-radius:50%; background:rgba(255,255,255,.06); right:-180px; bottom:-160px; }
.login-brand { display: flex; align-items: center; gap: 15px; margin-bottom: 50px; }
.login-brand img { width: 66px; height: 66px; border-radius: 18px; background: white; object-fit: contain; padding: 5px; }
.login-visual h1 { font-size: clamp(38px,5vw,70px); letter-spacing: -.05em; margin: 8px 0 18px; max-width: 720px; }
.login-visual > p { color: #cee4db; font-size: 17px; line-height: 1.7; max-width: 620px; }
.login-features { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 35px; max-width: 680px; }
.login-features div, .login-features span { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 15px; padding: 15px; }
.login-card { align-self: center; width: min(470px,calc(100% - 40px)); margin: 30px auto; background: white; border: 1px solid var(--line); border-radius: 26px; padding: 32px; box-shadow: 0 30px 80px rgba(27,61,50,.15); }
.login-card-head h2 { font-size: 30px; margin: 5px 0 8px; }
.login-card-head p { color: var(--muted); }
.form-stack { display: grid; gap: 15px; }
.login-foot { margin: 20px 0 0; color: var(--muted); font-size: 12px; text-align: center; }

.public-result-body { min-height: 100vh; background: #edf4f1; }
.public-result-shell { width: min(1180px,calc(100% - 28px)); margin: 0 auto; padding: 25px 0 45px; }
.public-header { display: flex; justify-content: space-between; align-items: center; gap: 18px; background: white; border: 1px solid var(--line); border-radius: 22px; padding: 18px; box-shadow: var(--shadow); }
.public-brand { display: flex; align-items: center; gap: 15px; }
.public-brand img { width: 72px; height: 72px; border-radius: 17px; object-fit: contain; background: #f5f8f7; padding: 5px; }
.public-brand h1 { margin: 3px 0 3px; font-size: 23px; }
.public-brand p { margin: 0; color: var(--muted); }
.public-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.public-hero { margin: 18px 0; background: linear-gradient(135deg,#144e3c,#23775e); color: white; border-radius: 24px; padding: 25px; display: grid; grid-template-columns: 1fr 1.2fr; gap: 24px; align-items: center; }
.public-hero h2 { font-size: 34px; margin: 12px 0 8px; }
.public-hero p { color: #d5e9e1; margin: 0; line-height: 1.6; }
.public-meta { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.public-meta div { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.15); border-radius: 14px; padding: 13px; }
.public-meta span { display: block; color: #c3ded3; font-size: 10px; }
.public-meta strong { display: block; margin-top: 5px; }
.public-results { background: white; border: 1px solid var(--line); border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); }
.public-table th, .public-table td { padding: 13px 15px; border-bottom: 1px solid var(--line); text-align: left; }
.public-table th { background: #eaf3ef; color: #40554c; font-size: 11px; text-transform: uppercase; }
.assessment-row td { background: #fbf9f2; color: #675b3d; font-size: 13px; line-height: 1.55; }
.public-footer { text-align: center; color: var(--muted); padding: 22px 10px; }
.public-error { max-width: 620px; margin: 100px auto; text-align: center; background: white; border: 1px solid var(--line); border-radius: 24px; padding: 45px; box-shadow: var(--shadow); }



/* Dashboard üst ince aktif şirket şeridini gizle */
.top-strip,
.company-banner,
.dashboard-topbar {
    display: none !important;
}

/* Dashboard ana içerik */
.dashboard-page,
.dashboard-content,
.dashboard-grid {
    row-gap: 28px;
}

/* Son kayıtlar bölümü üstten boşluk alsın */
.recent-records-section,
.recent-analyses-section,
.dashboard-recent-section {
    margin-top: 28px !important;
}

    /* Son kayıtlar başlığı ile üst section arası daha rahat olsun */
    .recent-records-section .section-eyebrow,
    .recent-analyses-section .section-eyebrow,
    .dashboard-recent-section .section-eyebrow {
        margin-bottom: 10px;
        display: inline-block;
    }

    .recent-records-section h2,
    .recent-analyses-section h2,
    .dashboard-recent-section h2 {
        margin-top: 0;
        margin-bottom: 18px;
        line-height: 1.2;
    }


@media (max-width: 1180px) {
    .filter-grid { grid-template-columns: repeat(3,minmax(150px,1fr)); }
    .result-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .module-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .definition-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 920px) {
    .app-shell { grid-template-columns: 1fr; }
    .sidebar { position: fixed; left: 0; transform: translateX(-105%); width: min(310px,88vw); transition: .2s ease; box-shadow: 25px 0 55px rgba(0,0,0,.25); }
    body.menu-open .sidebar { transform: translateX(0); }
    body.menu-open::after { content:""; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:45; }
    .menu-button { display: grid; place-items: center; }
    .content { width: min(100% - 28px, 1500px); }
    .topbar { padding: 0 16px; }
    .two-column, .two-column-layout { grid-template-columns: 1fr; }
    .kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .settings-layout { grid-template-columns: 1fr; }
    .logo-editor { max-width: 260px; }
    .public-hero { grid-template-columns: 1fr; }
    .login-shell { grid-template-columns: 1fr; }
    .login-visual { min-height: 420px; }
    .login-card { margin: 35px auto; }
}
@media (max-width: 680px) {
    .page-header, .page-head, .page-header.split, .page-head.split { align-items: stretch; flex-direction: column; }
    .header-actions { width: 100%; }
    .header-actions .btn { flex: 1; }
    .kpi-grid, .module-grid, .definition-grid, .summary-strip, .result-grid, .chart-summary { grid-template-columns: 1fr; }
    .filter-grid { grid-template-columns: 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .field.span-2, .field.full { grid-column: auto; }
    .top-actions .btn { display: none; }
    .company-pill strong { max-width: 180px; }
    .public-header { align-items: stretch; flex-direction: column; }
    .public-actions .btn { flex: 1; }
    .public-meta { grid-template-columns: 1fr; }
    .public-brand img { width: 58px; height: 58px; }
    .login-features { grid-template-columns: 1fr; }
    .login-visual { padding: 38px 25px; }
    .login-visual h1 { font-size: 40px; }
    .login-card { padding: 24px; }
    .share-link-row { flex-direction: column; }
    .sticky-actions { position: static; }
    .sticky-actions .btn { flex: 1; }
}

@media print {
    .sidebar,.topbar,.header-actions,.filter-bar,.filter-panel,.sticky-actions,.public-actions,.btn { display:none !important; }
    .app-shell { display:block; }
    .content,.public-result-shell { width:100%; padding:0; }
    body,.public-result-body { background:white; }
    .panel,.public-header,.public-results,.public-hero,.result-card { box-shadow:none; break-inside:avoid; }
    .public-hero { background:white; color:black; border:1px solid #bbb; }
    .public-hero p { color:#555; }
}
