:root { color-scheme: light; --ink:#1c2430; --muted:#667085; --line:#d9dee7; --panel:#ffffff; --bg:#f5f7fa; --accent:#0f766e; --warn:#b45309; --danger:#b42318; --soft:#edf7f5; }
* { box-sizing: border-box; }
body { margin:0; font-family: Arial, Helvetica, sans-serif; color:var(--ink); background:var(--bg); }
button, input, textarea, select { font: inherit; }
button { border:0; background:var(--accent); color:white; padding:10px 14px; border-radius:6px; cursor:pointer; font-weight:700; }
button.secondary { background:#e9edf3; color:var(--ink); }
.btn { display:inline-flex; align-items:center; justify-content:center; background:#e9edf3; color:var(--ink); padding:10px 14px; border-radius:6px; font-weight:700; border:1px solid transparent; }
.link-button { display:inline-flex; align-items:center; justify-content:center; background:#e9edf3; color:var(--ink); padding:10px 14px; border-radius:6px; font-weight:700; }
a { color:var(--accent); text-decoration:none; }
.login-view { min-height:100vh; display:grid; place-items:center; padding:24px; background:linear-gradient(180deg,#f7fafc,#e9eef5); }
.login-panel { width:min(420px,100%); background:white; border:1px solid var(--line); border-radius:8px; padding:24px; display:grid; gap:14px; box-shadow:0 16px 40px rgba(16,24,40,.08); }
.brand { display:flex; align-items:center; gap:10px; }
.brand span { width:38px; height:38px; display:grid; place-items:center; border-radius:6px; background:var(--ink); color:white; font-weight:800; }
.brand small { display:block; color:var(--muted); margin-top:2px; }
label { display:grid; gap:6px; font-weight:700; }
input, textarea, select { width:100%; border:1px solid var(--line); border-radius:6px; padding:9px 10px; background:white; color:var(--ink); }
textarea { min-height:82px; resize:vertical; }
.error { color:var(--danger); min-height:20px; margin:0; }
#app { min-height:100vh; display:grid; grid-template-columns:260px 1fr; }
.sidebar { background:#111827; color:white; padding:18px; display:flex; flex-direction:column; gap:16px; }
.sidebar .brand span { background:var(--accent); }
.sidebar small { color:#cbd5e1; }
nav { display:grid; gap:4px; }
.nav-btn { width:100%; text-align:left; background:transparent; color:#dbe3ee; border-radius:6px; padding:10px; }
.nav-btn.active, .nav-btn:hover { background:#243143; color:white; }
.planning-link { margin-top:auto; background:#dff5ef; color:#064e3b; padding:10px; border-radius:6px; font-weight:800; text-align:center; }
.content { min-width:0; }
.topbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 24px; border-bottom:1px solid var(--line); background:white; }
h1 { margin:0; font-size:24px; }
p { line-height:1.45; }
#view { padding:20px 24px 36px; display:grid; gap:18px; }
#view > * { min-width:0; max-width:100%; }
.notice { margin:16px 24px 0; padding:12px; border:1px solid #f3bf7b; background:#fff7ed; border-radius:6px; color:#7c2d12; }
.notice-action { margin-left:10px; padding:7px 10px; }
.grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.card, .panel { background:white; border:1px solid var(--line); border-radius:8px; padding:14px; }
.live-summary { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:14px; }
.metric { font-size:26px; font-weight:800; }
.muted { color:var(--muted); }
.table-wrap { overflow:auto; background:white; border:1px solid var(--line); border-radius:8px; }
table { width:100%; border-collapse:collapse; min-width:760px; }
th, td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; overflow-wrap:anywhere; }
th { background:#f9fafb; font-size:13px; color:#344054; }
.badge { display:inline-flex; align-items:center; padding:3px 8px; border-radius:999px; background:var(--soft); color:#075e54; font-weight:700; font-size:12px; max-width:100%; overflow-wrap:anywhere; }
.badge.warn { background:#fff7ed; color:var(--warn); }
.badge.good { background:#e8f7ee; color:#166534; }
.badge.bad { background:#fee4e2; color:#b42318; }
.badge.info { background:#e0f2fe; color:#075985; }
.badge.neutral { background:#edf0f4; color:#475467; }
.toolbar { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:space-between; }
.toolbar > * { min-width:0; }
.toolbar > div { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
form.compact { display:grid; gap:10px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.full { grid-column:1/-1; }
dialog { border:1px solid var(--line); border-radius:8px; padding:0; width:min(720px,calc(100% - 24px)); }
dialog::backdrop { background:rgba(15,23,42,.35); }
#dialog-form { padding:18px; display:grid; gap:12px; }
.form-message { min-height:20px; margin:0; }
.form-message.error { color:var(--danger); }
.form-message.success { color:var(--accent); }
@media (max-width: 880px) { #app { grid-template-columns:1fr; } .sidebar { position:static; } .grid { grid-template-columns:1fr 1fr; } .topbar { align-items:flex-start; flex-direction:column; } }
@media (max-width: 560px) { .grid, .form-grid { grid-template-columns:1fr; } }

[hidden] { display: none !important; }
.menu-toggle { display: none; }
@media (max-width: 880px) {
  html, body { max-width: 100%; overflow-x: hidden; }
  body { overflow-x: hidden; }
  #app { display: block; min-height: 100vh; }
  .sidebar { display:none; position: fixed; inset: 0 auto 0 0; width: min(82vw, 300px); transform: translateX(-105%); transition: transform .18s ease; z-index: 20; box-shadow: 18px 0 40px rgba(15,23,42,.22); }
  .sidebar.open { display:flex; transform: translateX(0); }
  .menu-toggle { display: inline-flex; align-items: center; justify-content: center; }
  .content { min-height: 100vh; }
  #view { padding: 16px; }
  .topbar { position: sticky; top: 0; z-index: 10; }
  table { min-width: 0; }
  .table-wrap { border: 0; background: transparent; overflow: visible; }
  .table-wrap table, .table-wrap thead, .table-wrap tbody, .table-wrap tr, .table-wrap th, .table-wrap td { display: block; width: 100%; }
  .table-wrap thead { display: none; }
  .table-wrap tr { margin-bottom: 12px; background: white; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
  .table-wrap td { border-bottom: 1px solid var(--line); padding: 9px 10px; }
  .table-wrap td:last-child { border-bottom: 0; }
}
.action-card { display:block; width:100%; text-align:left; color:var(--ink); background:white; border:1px solid var(--line); }
.action-card:hover { border-color:var(--accent); background:#f8fbfa; }
.assistant-status-card.active { border-color:var(--accent); background:#eef8f4; box-shadow:0 0 0 2px rgba(43,122,102,.12); }
.assistant-status-card.disabled { color:var(--muted); background:#f4f6f5; border-style:dashed; cursor:not-allowed; }
.assistant-status-card.disabled .metric { opacity:.65; }
.assistant-status-card:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.row-actions { display:flex; flex-wrap:wrap; gap:6px; }
.row-actions button { padding:7px 9px; font-size:12px; }
.project-filter-panel { display:grid; gap:10px; }
.project-primary-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.project-primary-filters button { min-height:46px; font-size:14px; text-align:center; }
.project-more-filters { border-top:1px solid var(--line); padding-top:8px; }
.project-more-filters summary { cursor:pointer; font-weight:800; color:#344054; padding:4px 0 8px; }
.project-detail-panel { display:grid; gap:12px; }
.project-detail-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.project-detail-actions button { min-height:44px; }
.mini-list { display:grid; gap:8px; margin-top:10px; }
.mini-list > div, .mini-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:9px 0; border-top:1px solid var(--line); }
.mini-row { width:100%; border-width:1px 0 0; border-radius:0; background:white; color:var(--ink); text-align:left; font-weight:400; }
.mini-row:hover { background:#f8fbfa; }
.mini-list span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.filter-shell { background:white; border:1px solid var(--line); border-radius:8px; padding:10px 12px; }
.filter-shell summary { cursor:pointer; font-weight:800; }
.filters { display:grid; grid-template-columns:repeat(6,minmax(130px,1fr)); gap:8px; align-items:end; padding-top:10px; }
.document-filter-panel { padding:10px 12px; }
.document-filters { grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(130px,1fr) auto auto; padding-top:0; }
.document-advanced-filters { grid-column:1/-1; border-top:1px solid var(--line); padding-top:8px; }
.document-advanced-filters summary { cursor:pointer; font-weight:800; color:#344054; padding:4px 0 8px; }
.document-advanced-filters .filters { padding-top:0; }
.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.detail-item { background:white; border:1px solid var(--line); border-radius:8px; padding:12px; min-width:0; }
.detail-item span { display:block; color:var(--muted); font-size:12px; font-weight:800; margin-bottom:5px; }
.detail-item strong { display:block; overflow-wrap:anywhere; line-height:1.35; }
pre { white-space:pre-wrap; overflow:auto; max-height:420px; background:#0f172a; color:#e5e7eb; border-radius:6px; padding:12px; }
.image-preview { display:grid; gap:8px; }
.image-preview img { max-width:min(520px,100%); max-height:360px; border:1px solid var(--line); border-radius:8px; object-fit:contain; background:#f8fafc; }
.org-tree { display:grid; gap:8px; margin-top:10px; }
.org-row { display:grid; grid-template-columns:1.4fr 1fr .7fr .8fr .9fr 1fr 1fr auto; gap:10px; align-items:center; padding:10px 0; border-top:1px solid var(--line); }
.org-row div { display:grid; gap:3px; min-width:0; }
.org-row span, .org-row strong { min-width:0; overflow-wrap:anywhere; }
.mobile-cards { display:none; }
.topbar-title { min-width:0; }
.topbar-actions { display:flex; gap:8px; align-items:center; }
.user-chip { max-width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); font-size:13px; font-weight:700; }
.nav-more { display:grid; gap:4px; }
.nav-more summary { color:#dbe3ee; cursor:pointer; padding:10px; font-weight:800; }
.nav-divider { height:1px; background:rgba(255,255,255,.16); }
.nav-secondary { display:grid; gap:6px; }
#view-subtitle:empty { display:none; }
@media (max-width: 880px) {
  .table-wrap td::before { content: attr(data-label); display:block; font-size:12px; font-weight:800; color:var(--muted); margin-bottom:3px; }
  .mini-list > div, .mini-row, .filters, .detail-grid, .org-row { grid-template-columns:1fr; }
  .notice-action { display:block; margin:8px 0 0; }
}

@media (max-width: 700px) {
  :root { --bg:#f7f8fa; }
  body { font-size:16px; }
  button, .link-button { min-height:44px; padding:11px 13px; }
  .login-view { align-items:start; padding:28px 14px; }
  .login-panel { padding:18px; border-radius:8px; box-shadow:none; }
  .sidebar { width:min(88vw, 340px); padding:16px; gap:12px; overflow:auto; }
  .sidebar .brand { margin-bottom:4px; }
  nav { gap:10px; }
  .nav-primary { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .nav-btn { min-height:48px; padding:12px; background:#1f2937; color:#f8fafc; font-size:15px; }
  .nav-btn.active { outline:2px solid #99f6e4; background:#0f766e; }
  .nav-more { border-top:1px solid rgba(255,255,255,.15); padding-top:8px; }
  .nav-more .nav-btn { display:block; width:100%; margin-top:6px; }
  .planning-link { margin-top:8px; }
  .topbar { display:grid; grid-template-columns:auto minmax(0,1fr); gap:10px; padding:12px 14px; align-items:start; }
  .topbar-title { grid-column:2; }
  .topbar-actions { grid-column:1/-1; justify-content:space-between; width:100%; }
  h1 { font-size:20px; line-height:1.2; overflow-wrap:anywhere; }
  #view-subtitle { margin:4px 0 0; font-size:13px; color:#5b6472; }
  #view { padding:12px; gap:12px; }
  .grid { grid-template-columns:1fr; gap:10px; }
  .card, .panel, .detail-item, .filter-shell { border-radius:8px; padding:12px; }
  .action-card { min-height:92px; display:grid; align-content:center; gap:6px; }
  .metric { font-size:28px; line-height:1; }
  .muted { color:#4b5563; }
  .live-summary { display:grid; grid-template-columns:1fr; justify-content:stretch; }
  .table-wrap { display:none; }
  .mobile-cards { display:grid; gap:10px; }
  .mobile-card { background:white; border:1px solid var(--line); border-radius:8px; padding:12px; display:grid; gap:10px; }
  .mobile-card-head { display:flex; justify-content:space-between; gap:8px; align-items:flex-start; }
  .mobile-card-head strong { font-size:16px; line-height:1.25; overflow-wrap:anywhere; }
  .mobile-card dl { display:grid; gap:8px; margin:0; }
  .mobile-card dl div { display:grid; gap:2px; }
  .mobile-card dt { color:#5b6472; font-size:12px; font-weight:800; }
  .mobile-card dd { margin:0; overflow-wrap:anywhere; }
  .row-actions { display:grid; grid-template-columns:1fr; gap:8px; }
  .row-actions button, .row-actions .link-button { width:100%; font-size:14px; }
  .project-primary-filters { grid-template-columns:1fr 1fr; gap:8px; }
  .project-primary-filters button { min-height:48px; padding:9px 7px; }
  .project-detail-actions { grid-template-columns:1fr 1fr; }
  .today-actions { grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
  .today-actions button { min-height:38px; padding:8px 5px; font-size:12px; }
  .today-detail-actions { grid-template-columns:1fr; }
  .filter-shell { padding:0; overflow:hidden; }
  .filter-shell summary { padding:12px 14px; background:#eef7f5; color:#064e3b; }
  .filters { padding:12px; grid-template-columns:1fr; }
  .filters button { width:100%; }
  input, textarea, select { min-height:44px; font-size:16px; }
  textarea { min-height:110px; }
  .form-grid { grid-template-columns:1fr; gap:12px; }
  .toolbar { align-items:stretch; }
  .toolbar > button, .toolbar > .link-button { flex:1 1 100%; }
  .detail-grid { grid-template-columns:1fr; }
  .search-actions { grid-template-columns:1fr; }
  .image-preview img { width:100%; max-height:58vh; }
  .org-row { grid-template-columns:1fr; align-items:start; background:#fff; border:1px solid var(--line); border-radius:8px; padding:12px; }
  .badge { font-size:12px; line-height:1.2; white-space:normal; }
  pre { max-height:260px; font-size:12px; }
  dialog { width:calc(100% - 16px); max-height:90vh; overflow:auto; }
}

.archive-panel { border-color:#9fd4bc; background:#fbfffd; }
.document-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.document-toolbar { align-items:center; }
.document-worklist { display:grid; gap:10px; }
.document-card { background:#fff; border:1px solid var(--line); border-radius:8px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; padding:12px; align-items:start; }
.document-card:hover { border-color:#9fd4bc; background:#fbfffd; }
.document-card-main { width:100%; min-width:0; padding:0; border:0; border-radius:0; background:transparent; color:var(--ink); text-align:left; display:grid; gap:7px; font-weight:400; }
.document-card-main:hover { background:transparent; color:var(--ink); }
.document-card-kicker { color:#667085; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:0; }
.document-card-main strong { font-size:17px; line-height:1.25; overflow-wrap:anywhere; }
.document-card-subtitle { color:#344054; font-weight:700; overflow-wrap:anywhere; }
.document-card-status { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.document-card-path { color:#475467; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.document-card-note { color:#667085; font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
.document-card > .row-actions { justify-content:flex-end; min-width:190px; }
.document-detail-summary { display:grid; gap:12px; }
.document-detail-summary .section-head { align-items:start; }
.document-detail-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.document-detail-actions button { min-height:44px; }
.download-box { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; border:1px solid #b7d8ca; background:#f4fbf7; border-radius:8px; padding:12px; margin:12px 0; }
.download-box p { margin:4px 0 0; color:var(--muted); }
.download-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.download-actions button { min-height:44px; }
.tech-details { margin-top:12px; border-top:1px solid var(--line); padding-top:10px; }
.tech-details summary { cursor:pointer; font-weight:800; color:#344054; }
.archive-org-row { grid-template-columns:1.25fr .8fr .7fr .7fr .7fr .8fr 1fr 1fr 1fr auto; }
@media (max-width: 880px) { .archive-org-row, .download-box, .document-card, .document-detail-actions { grid-template-columns:1fr; } .document-summary-grid { grid-template-columns:1fr 1fr; } .document-card > .row-actions { min-width:0; justify-content:stretch; } .download-actions { justify-content:stretch; } .download-actions button { flex:1 1 100%; } }
.review-workspace { display:grid; gap:14px; border-color:#93c5fd; background:#fbfdff; }
.review-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.review-actions button { min-height:58px; }
.review-steps { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.review-steps li { display:flex; gap:8px; align-items:center; }
.review-steps span { display:inline-grid; place-items:center; width:24px; height:24px; border-radius:999px; background:#dbeafe; color:#1d4ed8; font-weight:800; }
.review-primary { background:#0f766e; }
.review-success { background:#166534; }
.review-warn { background:#b45309; }
.review-danger { background:#b42318; }
.review-columns { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:start; }
.review-box { background:#fff; border:1px solid var(--line); border-radius:8px; padding:12px; display:grid; gap:10px; }
.review-box h3 { margin:0; font-size:16px; }
.review-project-results { display:grid; gap:8px; }
.review-project-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; border:1px solid var(--line); border-radius:8px; padding:10px; background:#fff; }
.review-project-card div { display:grid; gap:3px; min-width:0; }
.review-project-card span, .review-project-card small { color:var(--muted); overflow-wrap:anywhere; }
.review-archive-box { border-color:#bbf7d0; }
button:disabled { opacity:.48; cursor:not-allowed; }
.assistant-list { display:grid; gap:12px; }
.assistant-filter-notice { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.assistant-card { background:#fff; border:1px solid #c9d7cf; border-radius:10px; padding:14px; display:grid; gap:12px; min-width:0; max-width:100%; overflow:hidden; }
.assistant-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; min-width:0; max-width:100%; }
.assistant-head > div { min-width:0; max-width:100%; }
.assistant-head small { display:block; color:var(--muted); margin-top:4px; }
.assistant-badges { display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-end; }
.assistant-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; min-width:0; max-width:100%; }
.assistant-grid div, .assistant-suggestion { border:1px solid var(--line); border-radius:8px; padding:10px; background:#fbfdfc; min-width:0; max-width:100%; overflow:hidden; }
.assistant-grid span { display:block; color:var(--muted); font-size:12px; font-weight:800; margin-bottom:4px; overflow-wrap:anywhere; word-break:break-word; }
.assistant-grid b { display:block; overflow-wrap:anywhere; word-break:break-word; }
.assistant-suggestion p { margin:8px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }
.assistant-form { display:grid; grid-template-columns:1fr 1fr; gap:10px; min-width:0; max-width:100%; }
.assistant-form label { min-width:0; max-width:100%; overflow:hidden; }
.assistant-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; grid-column:1 / -1; min-width:0; max-width:100%; }
.workspace-hero, .start-hero { background:#fff; border:1px solid var(--line); border-radius:8px; padding:18px; display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.workspace-hero h2, .start-hero h2 { margin:4px 0; font-size:28px; line-height:1.15; }
.workspace-hero p, .start-hero p { margin:0; color:var(--muted); }
.eyebrow, .source-note { color:#516070; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:0; }
.hero-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.start-hero h2 { font-size:30px; line-height:1.1; }
.start-hero p { color:#4b5563; }
.start-section { background:#fff; border:1px solid var(--line); border-radius:8px; padding:14px; display:grid; gap:12px; }
.start-list { display:grid; gap:10px; }
.start-card { width:100%; text-align:left; background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:8px; padding:14px; display:grid; gap:6px; }
.start-card strong { font-size:16px; line-height:1.25; }
.start-card em { color:#516070; font-style:normal; font-size:13px; line-height:1.3; }
.start-card span { color:#475467; line-height:1.35; overflow-wrap:anywhere; }
.start-card:hover { border-color:var(--accent); background:#f8fbfa; }
.important-mail-start-card { padding:0; overflow:hidden; }
.important-mail-start-card:hover { background:#fff; }
.start-card-main { width:100%; text-align:left; border:0; background:transparent; color:inherit; padding:14px; display:grid; gap:6px; border-radius:0; }
.start-card-main:hover { background:#f8fbfa; }
.start-card-actions { display:flex; justify-content:flex-end; gap:8px; border-top:1px solid var(--line); padding:10px 12px; background:#fbfcfd; }
.juna-hints { background:#fff; border:1px solid var(--line); border-radius:8px; padding:14px; display:grid; gap:12px; margin-bottom:14px; }
.juna-hint-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.juna-hint-lane { display:grid; gap:8px; align-content:start; min-width:0; }
.juna-hint-lane > strong { font-size:15px; }
.juna-hint-card { width:100%; text-align:left; color:var(--ink); background:#fbfcfd; border:1px solid var(--line); border-radius:8px; padding:12px; display:grid; gap:5px; min-width:0; }
.juna-hint-card:hover { border-color:var(--accent); background:#f8fbfa; }
.juna-hint-card small { color:#516070; font-size:12px; font-weight:800; }
.juna-hint-card strong { font-size:15px; line-height:1.25; overflow-wrap:anywhere; }
.juna-hint-card span { color:#475467; font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
.start-empty { background:#fff; border:1px solid var(--line); border-radius:8px; padding:24px 18px; display:grid; gap:6px; }
.start-empty strong { font-size:20px; }
.start-empty p { margin:0; color:#475467; }
.compact-head { margin-bottom:0; }
.search-panel { display:grid; gap:14px; }
.search-form { display:grid; gap:12px; }
.search-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.focus-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); gap:14px; align-items:start; }
.dashboard-columns { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }
.section-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; }
.section-head strong { font-size:18px; }
.section-head p { margin:3px 0 0; color:var(--muted); }
.priority-panel, .warning-panel { display:grid; gap:10px; }
.work-item { width:100%; background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:8px; padding:12px; display:flex; justify-content:space-between; gap:12px; text-align:left; align-items:flex-start; }
.work-item:hover, .project-card:hover, .business-row:hover, .compact-row:hover { border-color:var(--accent); background:#f8fbfa; }
.today-important-card { border:1px solid var(--line); border-radius:8px; padding:10px; background:#fff; display:grid; gap:8px; min-width:0; overflow:hidden; }
.today-important-main, .today-copy { min-width:0; }
.today-copy { display:grid; gap:4px; }
.today-copy strong, .today-copy p, .today-project, .today-meta { min-width:0; overflow-wrap:anywhere; word-break:break-word; }
.today-copy strong { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.25; font-size:15px; }
.today-copy p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:0; color:#344054; font-size:14px; line-height:1.3; }
.today-meta { color:#475467; font-size:12px; font-weight:800; display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.today-check { color:#b45309; background:#fff7ed; border-radius:999px; padding:2px 7px; }
.today-project { margin:0; color:#475467; font-size:12px; font-weight:700; }
.today-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.today-actions button { min-width:0; width:100%; padding:8px 6px; font-size:12px; }
.today-details { border-top:1px solid var(--line); padding-top:8px; min-width:0; }
.today-details summary, .today-more summary { cursor:pointer; font-weight:800; color:#344054; }
.today-details summary { display:none; }
.today-detail-actions { margin-top:8px; }
.today-more { display:grid; gap:8px; }
.today-more[open] { gap:8px; }
.compact-details { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:8px; }
.work-item p { margin:4px 0 0; color:var(--muted); }
.work-meta { display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-end; min-width:160px; }
.status-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.status-grid div { border:1px solid var(--line); border-radius:8px; padding:10px; background:#fbfcfe; }
.status-grid span { display:block; color:var(--muted); font-size:12px; font-weight:800; }
.status-grid b { display:block; font-size:22px; margin-top:4px; }
.business-list, .compact-list { display:grid; gap:8px; }
.business-row { width:100%; display:grid; grid-template-columns:110px 1.2fr 1fr 1fr auto; gap:10px; align-items:center; color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:8px; padding:10px; text-align:left; }
.business-row span, .business-row strong { min-width:0; overflow-wrap:anywhere; }
.recommendation-grid, .project-grid, .source-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.focus-grid > *, .dashboard-columns > *, .recommendation-grid > *, .project-grid > *, .source-grid > *, .status-grid > *, .report-status > * { min-width:0; max-width:100%; }
.recommendation-card, .source-grid div { border:1px solid var(--line); border-radius:8px; padding:12px; background:#fff; display:grid; gap:8px; }
.recommendation-card strong, .recommendation-card p { min-width:0; overflow-wrap:anywhere; }
.recommendation-card p { margin:0; color:var(--muted); }
.project-card { color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:8px; padding:12px; display:grid; gap:7px; text-align:left; }
.project-card p, .project-card small { margin:0; color:var(--muted); }
.project-facts { display:flex; flex-wrap:wrap; gap:6px; color:#344054; font-size:13px; }
.report-project-grid, .report-project-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.report-project-card, .report-project-block { display:grid; gap:10px; }
.report-project-card strong, .report-project-card p, .report-project-head strong, .report-project-head p { min-width:0; margin:0; overflow-wrap:anywhere; }
.report-project-card p, .report-project-head p { color:var(--muted); }
.report-project-card .work-meta, .report-project-head .work-meta { justify-content:flex-start; min-width:0; }
.report-project-block .table-wrap table { min-width:0; }
.report-project-block { cursor:pointer; }
.report-project-block[open] { cursor:default; }
.report-project-head { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; list-style:none; cursor:pointer; }
.report-project-head::-webkit-details-marker { display:none; }
.report-project-head::after { content:"Aufklappen"; justify-self:start; color:var(--accent); font-weight:800; font-size:13px; }
.report-project-block[open] .report-project-head::after { content:"Einklappen"; }
.report-project-body { border-top:1px solid var(--line); padding-top:10px; }
.report-status { grid-template-columns:repeat(4,minmax(0,1fr)); }
.empty-finance { display:grid; gap:10px; }
.source-grid div span, .source-grid div small { display:block; color:var(--muted); margin-top:4px; }
@media (max-width: 880px) {
  .review-actions, .review-columns, .review-project-card { grid-template-columns:1fr; }
  .review-actions button, .review-project-card button { width:100%; }
  .assistant-grid, .assistant-form, .assistant-actions { grid-template-columns:1fr; }
  .assistant-head, .assistant-badges { justify-content:flex-start; }
  .assistant-filter-notice { align-items:flex-start; }
  .workspace-hero, .start-hero, .focus-grid, .dashboard-columns, .business-row, .recommendation-grid, .project-grid, .source-grid, .report-project-grid, .report-project-list { grid-template-columns:1fr; display:grid; }
  .hero-actions, .work-item { justify-content:stretch; }
  .work-item { display:grid; }
  .work-meta { min-width:0; justify-content:flex-start; }
  .report-status { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 520px) {
  .workspace-hero h2, .start-hero h2 { font-size:24px; }
  .section-head { display:grid; }
  .status-grid, .report-status { grid-template-columns:1fr; }
  .today-important-main, .compact-details { grid-template-columns:1fr; }
}

.start-priority-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.start-system-alert { background:#fff7ed; border:1px solid #f3bf7b; border-radius:8px; padding:12px 14px; display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.start-system-alert p { margin:4px 0 0; color:#7c2d12; }
.start-system-alert strong { color:#7c2d12; }
.start-section-footer { display:flex; justify-content:flex-start; }
.start-quiet { margin:0; }
.start-card small { color:#516070; font-size:12px; font-weight:800; }
@media (max-width: 880px) { .start-priority-grid, .juna-hint-grid { grid-template-columns:1fr; } .start-system-alert { display:grid; } }

.start-toolbar { display:flex; justify-content:flex-end; margin-bottom:-6px; }
.compact-action { min-height:36px; padding:8px 11px; }
.manual-note-start-card { border-color:#a7d8cf; background:#fbfffe; }
.manual-checklist { display:grid; gap:8px; margin:8px 0 4px; }
.manual-check-item { display:flex; align-items:center; gap:10px; border:1px solid var(--line); border-radius:8px; padding:10px; font-weight:700; }
.manual-check-item input { width:22px; min-height:22px; }
.manual-check-item span { overflow-wrap:anywhere; line-height:1.3; }
.manual-check-item:has(input:checked) span { text-decoration:line-through; color:var(--muted); }
@media (max-width:700px) { .start-toolbar { justify-content:stretch; } .compact-action { width:100%; } .manual-check-item { padding:12px; } }

.invoice-page { max-width: 1180px; margin: 0 auto; padding: 18px; color: #161616; }
.invoice-top, .invoice-summary, .invoice-state, .invoice-card, .invoice-detail { display: grid; gap: 12px; }
.invoice-top { grid-template-columns: 1fr auto; align-items: start; margin-bottom: 18px; }
.invoice-top h1 { margin: 6px 0; font-size: 2rem; }
.invoice-export-btn { background: var(--accent); color: #fff; font-size: 1.05rem; min-height: 52px; padding: 15px 22px; box-shadow: 0 8px 18px rgba(15, 118, 110, .2); }
.invoice-export-btn:hover { background: #0b5f59; color: #fff; }
.invoice-summary { grid-template-columns: repeat(4, minmax(0,1fr)); margin-bottom: 14px; }
.invoice-summary > div, .invoice-grid > div, .invoice-card, .invoice-state { background: #fff; border: 1px solid #ddd7cc; border-radius: 8px; padding: 12px; }
.invoice-summary span, .invoice-grid span { display: block; color: #666; font-size: .9rem; margin-bottom: 4px; }
.invoice-state { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); margin-bottom: 14px; }
.invoice-list { display: grid; gap: 12px; }
.invoice-group { background: #fff; border: 1px solid #ddd7cc; border-radius: 8px; overflow: hidden; }
.invoice-group summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; cursor: pointer; font-weight: 700; }
.invoice-group summary b { min-width: 2rem; text-align: center; border-radius: 999px; background: #f0ede6; padding: 3px 8px; }
.invoice-group-list { display: grid; gap: 10px; padding: 0 12px 12px; }
@media (max-width: 760px) { .invoice-group summary { min-height: 48px; } .invoice-group-list { padding: 0 8px 10px; } }
.invoice-card { grid-template-columns: 1.2fr 2fr auto; align-items: center; }
.invoice-card h2 { margin: 6px 0 2px; font-size: 1.15rem; }
.invoice-card-compact { color: var(--ink); grid-template-columns: minmax(160px, 1.5fr) minmax(88px, .7fr) minmax(96px, .7fr) minmax(110px, .8fr); gap: 10px; padding: 9px 10px; align-items: center; }
.invoice-card-compact:hover { border-color: var(--accent); background: #f8fbfa; }
.invoice-card-compact > div { min-width: 0; }
.invoice-card-compact span { display: block; color: var(--muted); font-size: 11px; font-weight: 800; margin-bottom: 2px; }
.invoice-card-compact strong, .invoice-card-compact b { display: block; font-size: 13px; line-height: 1.25; overflow-wrap: anywhere; }
.invoice-card-compact small { display: block; color: var(--muted); font-size: 11px; margin-top: 2px; overflow-wrap: anywhere; }
.invoice-card-compact .badge { display: inline-flex; width: fit-content; }
.invoice-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.invoice-grid.detail { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); margin-top: 12px; }
.invoice-detail { grid-template-columns: minmax(0, 1.5fr) minmax(280px, .8fr); }
.invoice-form { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 12px; }
.invoice-form label { display: grid; gap: 4px; font-weight: 600; }
.invoice-form input, .invoice-form select, .invoice-form textarea { width: 100%; padding: 9px; border: 1px solid #d5cec1; border-radius: 6px; font: inherit; }
.invoice-form .full { grid-column: 1 / -1; }
@media (max-width: 760px) { .invoice-page { padding: 12px; } .invoice-top, .invoice-card:not(.invoice-card-compact), .invoice-detail, .invoice-summary { grid-template-columns: 1fr; } .invoice-card-compact { grid-template-columns: 1fr 1fr; } .invoice-compact-main { grid-column: 1 / -1; } .invoice-top .row-actions { display:grid; grid-template-columns:1fr; gap:8px; } .invoice-export-btn { width:100%; } .invoice-form { grid-template-columns: 1fr; } }


.project-work-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.project-work-card { position:relative; border:1px solid var(--line); border-radius:8px; background:#fff; padding:13px; display:grid; gap:10px; min-width:0; }
.project-open-layer { position:absolute; inset:0; opacity:0; width:100%; height:100%; border:0; background:transparent; cursor:pointer; }
.project-card-head, .project-title-row, .project-card-foot { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; min-width:0; }
.project-card-head strong, .project-title-row strong { display:block; font-size:16px; line-height:1.25; overflow-wrap:anywhere; }
.project-card-head span, .project-title-row p, .project-work-card p { color:var(--muted); margin:3px 0 0; overflow-wrap:anywhere; line-height:1.3; }
.project-status-line { display:flex; align-items:center; gap:8px; color:#344054; font-weight:800; font-size:13px; min-width:0; }
.project-status-line.large { font-size:15px; align-items:flex-start; }
.project-dot { width:10px; height:10px; border-radius:999px; flex:0 0 auto; margin-top:3px; background:#98a2b3; }
.project-dot.good { background:#15803d; } .project-dot.warn { background:#b45309; } .project-dot.info { background:#0369a1; } .project-dot.neutral { background:#667085; }
.project-mini-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.project-mini-metrics.vertical { grid-template-columns:1fr; }
.project-mini-metrics div { border:1px solid var(--line); border-radius:8px; padding:8px; background:#fbfcfe; min-width:0; }
.project-mini-metrics span { display:block; color:var(--muted); font-size:11px; font-weight:800; }
.project-mini-metrics b { display:block; margin-top:2px; font-size:18px; }
.project-card-foot { align-items:center; position:relative; z-index:1; flex-wrap:wrap; }
.project-workspace { display:grid; gap:12px; }
.project-title-row { background:#fff; border:1px solid var(--line); border-radius:8px; padding:14px; align-items:center; }
.project-title-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.project-detail-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr); gap:12px; }
.project-main-panel, .project-side-panel, .project-sections > .panel { min-width:0; }
.project-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.project-doc-types { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.project-doc-types span { border:1px solid var(--line); border-radius:999px; padding:5px 8px; color:#344054; font-size:12px; font-weight:800; background:#fbfcfe; }
.project-timeline { display:grid; gap:8px; }
.project-timeline div { display:grid; grid-template-columns:120px minmax(0,1fr); gap:10px; border-top:1px solid var(--line); padding-top:8px; }
.project-timeline span { color:var(--muted); font-weight:800; }
.project-timeline strong { overflow-wrap:anywhere; }
@media (max-width:880px){ .project-work-grid, .project-detail-layout, .project-sections { grid-template-columns:1fr; } .project-title-row, .project-card-head { display:grid; } .project-title-actions { justify-content:flex-start; } }
@media (max-width:520px){ .project-mini-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .project-timeline div { grid-template-columns:1fr; } }
.email-summary .section-head { align-items:flex-start; }
.email-view-section { display:grid; gap:8px; margin-top:14px; min-width:0; }
.email-view-section h3 { margin:0; font-size:13px; line-height:1.25; color:#475467; text-transform:uppercase; letter-spacing:0; }
.email-view-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:8px; min-width:0; }
.email-view { min-height:48px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; border-radius:8px; text-align:left; line-height:1.2; white-space:normal; }
.email-view span { min-width:0; overflow-wrap:anywhere; hyphens:auto; }
.email-view-count { justify-self:end; min-width:30px; padding:3px 8px; border-radius:999px; background:#eef2f6; color:#1d2939; text-align:center; font-size:13px; line-height:1.3; }
.email-view.active { background:#163f33; color:#fff; border-color:#163f33; }
.email-view.active .email-view-count { background:#fff; color:#163f33; }
.email-view.urgent:not(.active):not(.empty) { border-color:#b54708; background:#fffbf2; }
.email-view.empty:not(.active) { color:#667085; background:#fbfcfe; border-color:var(--line); }
.email-view.empty:not(.active) .email-view-count { background:#f2f4f7; color:#667085; }
.email-view-section-assignments .email-view-grid { grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.email-list { display:grid; gap:10px; }
.email-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:12px; align-items:center; padding:12px; border:1px solid var(--border,#ddd); border-radius:8px; background:#fff; }
.email-main { display:grid; grid-template-columns:14px minmax(0,1fr); gap:10px; text-align:left; background:transparent; border:0; padding:0; color:inherit; }
.email-main strong, .email-main p { overflow-wrap:anywhere; }
.email-main p { margin:.25rem 0; color:var(--muted,#666); }
.email-read-dot { width:10px; height:10px; border-radius:50%; background:#1f6feb; margin-top:5px; }
.email-row.read .email-read-dot { background:#b8b8b8; }
.email-tags { display:flex; flex-wrap:wrap; gap:6px; max-width:360px; }
.email-actions, .email-detail-actions { gap:6px; }
.mail-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.5; }
@media (max-width: 900px) { .email-row { grid-template-columns:1fr; align-items:stretch; } .email-tags { max-width:none; } .email-actions { justify-content:flex-start; } }
@media (max-width: 520px) {
  .email-view-section-status .email-view-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .email-view-section-assignments .email-view-grid { grid-template-columns:1fr; }
  .email-view { min-height:44px; padding:10px; }
  .email-view span { font-size:13px; }
  .email-view-count { min-width:28px; padding:2px 7px; }
}
.email-reply-panel { display:grid; gap:12px; }
.email-reply-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.email-reply-form label { display:grid; gap:5px; font-weight:800; color:#344054; }
.email-reply-form input, .email-reply-form textarea { width:100%; border:1px solid var(--line); border-radius:8px; padding:10px; font:inherit; background:#fff; }
.email-reply-form .full { grid-column:1 / -1; }
.attachment-list { display:grid; gap:8px; }
.attachment-item, .email-send-job, .email-send-confirm { display:grid; gap:6px; border:1px solid var(--line); border-radius:8px; background:#fbfcfe; padding:10px; min-width:0; }
.email-send-job { grid-template-columns:auto minmax(0,1fr) minmax(120px,auto); align-items:center; }
.email-send-job strong, .email-send-job small, .email-send-confirm p { overflow-wrap:anywhere; }
@media (max-width:720px){ .email-reply-form, .email-send-job { grid-template-columns:1fr; } .email-reply-form .row-actions { display:grid; grid-template-columns:1fr; } }
.mail-app { display:grid; gap:10px; min-width:0; }
.mail-topbar { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto auto; gap:10px; align-items:center; padding:10px 0; border-bottom:1px solid var(--line); }
.mail-topbar h2 { margin:0; font-size:18px; line-height:1.2; letter-spacing:0; }
.mailbox-label { display:block; color:var(--muted); font-size:12px; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mail-sync { color:var(--muted); font-size:12px; font-weight:800; }
.mail-sync.warn { color:#b54708; }
.mail-layout { display:grid; grid-template-columns:minmax(210px,.55fr) minmax(360px,1.15fr) minmax(320px,.9fr); gap:0; min-height:640px; border:1px solid var(--line); background:#fff; overflow:hidden; }
.mail-sidebar { border-right:1px solid var(--line); background:#fbfcfe; padding:12px; overflow:auto; min-width:0; }
.mail-nav-group { display:grid; gap:4px; margin-top:14px; }
.mail-nav-group h3 { margin:0 0 4px; color:#667085; font-size:11px; line-height:1.2; text-transform:uppercase; letter-spacing:0; }
.mail-nav-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; min-height:34px; padding:6px 8px; border:0; border-radius:6px; background:transparent; color:#1d2939; text-align:left; font-weight:800; }
.mail-nav-item span { min-width:0; overflow-wrap:anywhere; }
.mail-nav-item strong { min-width:26px; padding:2px 7px; border-radius:999px; background:#eef2f6; color:#344054; text-align:center; font-size:12px; }
.mail-nav-item.active { background:#e8f3ef; color:#0f513f; }
.mail-nav-item.active strong { background:#0f7660; color:#fff; }
.mail-list-pane { min-width:0; overflow:auto; background:#fff; }
.mail-preview-pane { min-width:0; border-left:1px solid var(--line); padding:14px; overflow:auto; background:#fff; }
.mail-preview-pane.empty { color:var(--muted); }
.mail-preview-head { display:grid; grid-template-columns:38px minmax(0,1fr); gap:10px; align-items:center; }
.mail-preview-head strong, .mail-preview-head p, .mail-preview-pane p { overflow-wrap:anywhere; }
.mail-preview-meta { display:flex; flex-wrap:wrap; gap:6px; margin:12px 0; }
.mail-mobile-nav { display:none; border:1px solid var(--line); border-radius:8px; background:#fff; padding:8px; }
.mail-mobile-nav summary { cursor:pointer; font-weight:900; }
.mail-quick-filters { display:flex; gap:6px; overflow-x:auto; padding:4px 0 8px; scrollbar-width:thin; }
.mail-quick-filters button { flex:0 0 auto; min-height:34px; border-radius:999px; padding:7px 12px; background:#fff; color:#344054; border:1px solid var(--line); }
.mail-quick-filters button.active { background:#0f7660; color:#fff; border-color:#0f7660; }
.mail-filter-panel { border-bottom:1px solid var(--line); }
.mail-search-form { display:grid; grid-template-columns:minmax(220px,1fr) minmax(130px,.55fr) minmax(150px,.65fr) minmax(150px,.7fr) auto auto; gap:6px; align-items:center; padding:8px 0; }
.mail-search-form input, .mail-search-form select { min-width:0; border:1px solid var(--line); border-radius:6px; padding:8px; background:#fff; font:inherit; }
.mail-advanced-filters { grid-column:1/-1; border-top:1px solid #edf0f3; padding-top:6px; }
.mail-advanced-filters summary { cursor:pointer; color:#344054; font-size:12px; font-weight:900; }
.mail-advanced-filters div { display:grid; grid-template-columns:repeat(5,minmax(120px,1fr)); gap:6px; padding-top:6px; }
.mail-pager { display:flex; gap:8px; align-items:center; justify-content:flex-end; padding:8px 10px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; }
.mail-pager span { margin-right:auto; }
.mail-message-list { display:grid; }
.mail-message { border-bottom:1px solid #edf0f3; background:#fff; min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch; }
.mail-message.needs-action { box-shadow:inset 3px 0 0 #b54708; }
.mail-message.needs-review { box-shadow:inset 3px 0 0 #0369a1; }
.mail-message-open { width:100%; display:grid; grid-template-columns:30px minmax(0,1fr); gap:8px; align-items:start; min-height:62px; padding:8px 10px; border:0; border-radius:0; background:transparent; color:inherit; text-align:left; }
.mail-message-open:hover, .mail-message-open:focus-visible { background:#f7faf9; }
.mail-message.unread .mail-message-open { box-shadow:inset 3px 0 0 #0f7660; }
.mail-message.unread .mail-sender, .mail-message.unread .mail-subject { font-weight:950; color:#101828; }
.mail-message.read .mail-sender, .mail-message.read .mail-subject { font-weight:760; color:#344054; }
.mail-avatar { width:28px; height:28px; border-radius:50%; display:grid; place-items:center; background:#d9eee7; color:#0f513f; font-size:11px; font-weight:950; }
.mail-message:nth-child(4n+2) .mail-avatar { background:#eef2ff; color:#3538cd; }
.mail-message:nth-child(4n+3) .mail-avatar { background:#fff1e6; color:#b54708; }
.mail-message:nth-child(4n+4) .mail-avatar { background:#f2f4f7; color:#344054; }
.mail-message-body { display:grid; gap:3px; min-width:0; }
.mail-message-line { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
.mail-message-line time { color:#667085; font-size:12px; white-space:nowrap; }
.mail-sender, .mail-subject, .mail-preview { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.mail-subject { font-size:14px; line-height:1.25; }
.mail-preview { color:#667085; font-size:13px; line-height:1.25; }
.mail-icons { display:flex; flex-wrap:wrap; gap:5px; min-height:16px; color:#667085; font-size:11px; font-weight:800; }
.mail-signal { display:inline-flex; align-items:center; padding:1px 6px; border-radius:999px; background:#eef2f6; color:#344054; }
.mail-signal.urgent { background:#fff3e8; color:#b54708; }
.mail-signal.warn { background:#e0f2fe; color:#0369a1; }
.mail-signal.project { background:#edf7f5; color:#0f513f; }
.mail-row-actions { display:flex; align-items:center; gap:4px; padding:7px 8px 7px 0;  }
.mail-message:hover .mail-row-actions, .mail-message:focus-within .mail-row-actions { opacity:1; }
.mail-row-actions button { min-height:30px; padding:6px 8px; font-size:12px; white-space:nowrap; }
.mail-message mark { background:#fef3c7; color:#111827; border-radius:3px; padding:0 2px; }
.mail-priority { color:#b42318; }
.mail-empty { padding:28px 14px; color:var(--muted); text-align:center; }
.mail-work-mode-note { display:flex; justify-content:space-between; gap:10px; align-items:center; padding:9px 10px; background:#f3faf7; border-bottom:1px solid #c8e2d7; color:#0f513f; }
.mail-work-mode-note span { color:#356859; font-size:12px; font-weight:800; }
.mail-focus-mode .mail-sidebar, .mail-focus-mode .mail-preview-pane { display:none; }
.mail-focus-mode .mail-layout { grid-template-columns:minmax(0,1fr); max-width:980px; }
@media (max-width: 1180px) {
  .mail-layout { grid-template-columns:minmax(190px,.5fr) minmax(360px,1fr); }
  .mail-preview-pane { display:none; }
  .mail-search-form { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .mail-row-actions { opacity:1; }
}
@media (max-width: 760px) {
  .mail-topbar { position:sticky; top:0; z-index:5; grid-template-columns:auto minmax(0,1fr) auto auto; background:#f5f7fb; }
  .mail-topbar > strong { font-size:12px; }
  .mail-sync { display:none; }
  .mail-mobile-nav { display:block; }
  .mail-layout { display:block; min-height:0; border:0; }
  .mail-sidebar, .mail-preview-pane { display:none; }
  .mail-search-form { grid-template-columns:1fr auto auto; overflow-x:auto; }
  .mail-search-form select, .mail-search-form input[name="project"], .mail-search-form input[type="date"], .mail-advanced-filters { display:none; }
  .mail-pager { border-top:1px solid var(--line); }
  .mail-message { grid-template-columns:1fr; }
  .mail-message-open { min-height:66px; padding:9px 2px; grid-template-columns:32px minmax(0,1fr); }
  .mail-row-actions { opacity:1; padding:0 2px 8px 34px; overflow-x:auto; }
  .mail-row-actions button { flex:0 0 auto; }
}
@media (max-width: 390px) {
  .mail-topbar { gap:6px; }
  .mail-topbar h2 { font-size:16px; }
  .mail-topbar .secondary, .mail-search-form button { padding:7px 8px; }
}
.email-detail-actions { position:sticky; bottom:0; z-index:4; background:#fff; border-top:1px solid var(--line); padding:8px 0; }
.mail-reader { display:grid; gap:10px; max-width:1040px; margin:0 auto; }
.mail-reader-head { display:grid; gap:6px; }
.mail-reader-head h2 { margin:0; font-size:20px; line-height:1.25; letter-spacing:0; overflow-wrap:anywhere; }
.mail-reader-head p { margin:0; overflow-wrap:anywhere; }
.mail-reader-back { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:4px; }
.mail-recipients { margin-top:6px; }
.mail-recipients summary, .mail-remote-images summary, .mail-juna-compact summary, .mail-organization summary, .mail-technical summary, .mail-thread-item summary, .email-reply-composer summary { cursor:pointer; font-weight:900; color:#344054; }
.mail-reader-body { padding:16px; }
.mail-reader-body .mail-body { overflow-wrap:anywhere; word-break:break-word; line-height:1.55; max-width:100%; color:#111827; }
.mail-reader-body .mail-body-text { white-space:pre-wrap; }
.mail-reader-body .mail-body-formatted { white-space:normal; isolation:isolate; contain:layout style; }
.mail-reader-body .mail-body-formatted :where(p, ul, ol, table, blockquote, h1, h2, h3, h4) { max-width:100%; }
.mail-reader-body .mail-body-formatted p { margin:.65rem 0; }
.mail-reader-body .mail-body-formatted h1,
.mail-reader-body .mail-body-formatted h2,
.mail-reader-body .mail-body-formatted h3 { margin:1rem 0 .5rem; line-height:1.2; letter-spacing:0; }
.mail-reader-body .mail-body-formatted h1 { font-size:22px; }
.mail-reader-body .mail-body-formatted h2 { font-size:19px; }
.mail-reader-body .mail-body-formatted h3 { font-size:17px; }
.mail-reader-body .mail-body-formatted a { color:#0f7660; font-weight:800; text-decoration:underline; text-underline-offset:2px; overflow-wrap:anywhere; }
.mail-reader-body .mail-body-formatted img { max-width:100%; height:auto; display:block; margin:8px 0; }
.mail-reader-body .mail-body-formatted .mail-blocked-image { display:inline-block; min-width:96px; min-height:24px; margin:4px 0; border:1px dashed #cbd5e1; background:#f8fafc; color:#667085; vertical-align:middle; }
.mail-image-controls { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 12px; }
.mail-image-controls button { white-space:normal; }
.mail-reader-body .mail-body-formatted table { width:100% !important; border-collapse:collapse; display:block; overflow-x:auto; }
.mail-reader-body .mail-body-formatted th,
.mail-reader-body .mail-body-formatted td { border:1px solid #e4e7ec; padding:6px 8px; vertical-align:top; min-width:80px; }
.mail-reader-body .mail-body-formatted blockquote { margin:10px 0; padding:8px 12px; border-left:3px solid #98a2b3; color:#475467; background:#f8fafc; }
.mail-view-toggle { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.mail-view-toggle button { min-height:32px; padding:6px 10px; border-radius:8px; }
.mail-view-toggle button.active { background:#0f7660; border-color:#0f7660; color:#fff; }
.mail-render-source { display:block; margin-top:10px; color:#667085; }
.mail-remote-images { margin-top:12px; border-top:1px solid var(--line); padding-top:8px; }
.mail-attachments { display:grid; gap:8px; }
.mail-attachment-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; border-top:1px solid var(--line); padding-top:8px; }
.mail-attachment-row span { display:block; color:var(--muted); font-size:12px; margin-top:2px; }
.mail-reader-actions { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:6px; align-items:center; }
.mail-reader-actions button { flex:0 0 auto; }
.mail-decision-panel { border-color:#9fd4bc; background:#fbfffd; display:grid; gap:10px; }
.mail-decision-main { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:start; }
.mail-decision-main strong { display:block; font-size:18px; line-height:1.25; overflow-wrap:anywhere; }
.mail-decision-main p { margin:6px 0 0; color:#344054; overflow-wrap:anywhere; }
.mail-decision-actions { display:grid; grid-template-columns:repeat(2,minmax(110px,1fr)); gap:6px; min-width:250px; }
.mail-decision-actions button { min-height:36px; padding:8px 10px; }
.mail-decision-chips { display:flex; flex-wrap:wrap; gap:6px; }
.mail-next-step { display:flex; justify-content:space-between; gap:10px; align-items:center; background:#f8fafc; }
.mail-next-step span { color:#344054; font-weight:800; overflow-wrap:anywhere; }
.mail-project-panel { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; }
.mail-project-panel strong, .mail-project-panel p { overflow-wrap:anywhere; }
.mail-project-panel p { margin:4px 0 0; color:#667085; }
.mail-juna-compact, .mail-organization, .mail-technical, .mail-thread-panel { display:grid; gap:10px; }
.mail-juna-compact p { margin:0; }
.mail-org-line { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
.mail-org-line span { overflow-wrap:anywhere; }
.mail-technical[open], .mail-thread-item[open], .email-reply-composer[open] { display:grid; gap:10px; }
.mail-thread-item { border-top:1px solid var(--line); padding-top:8px; }
.mail-thread-summary { display:grid; gap:3px; padding:8px 10px; border:1px solid #d9e5ef; border-radius:8px; background:#f8fbff; }
.mail-thread-summary span { color:#475467; font-size:13px; font-weight:800; overflow-wrap:anywhere; }
.email-reply-composer { display:grid; gap:10px; }
@media (max-width: 760px) {
  .mail-reader { margin:0; gap:8px; }
  .mail-reader-head h2 { font-size:17px; }
  .mail-reader-body { padding:12px; }
  .mail-reader-actions { margin:0 -2px; }
  .mail-org-line { grid-template-columns:1fr; }
  .mail-decision-main, .mail-project-panel, .mail-next-step { grid-template-columns:1fr; display:grid; }
  .mail-decision-actions { min-width:0; grid-template-columns:1fr 1fr; }
  .email-detail-actions {
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    gap:6px;
    white-space:nowrap;
    box-shadow:0 -8px 18px rgba(15,23,42,.08);
    -webkit-overflow-scrolling:touch;
  }
  .email-detail-actions button {
    flex:0 0 auto;
    width:auto !important;
    min-height:36px;
    padding:8px 10px;
    font-size:12px;
  }
  .email-reply-panel .row-actions {
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    gap:6px;
    -webkit-overflow-scrolling:touch;
  }
  .email-reply-panel .row-actions button {
    flex:0 0 auto;
    width:auto !important;
    min-height:36px;
    padding:8px 10px;
    font-size:12px;
  }
}
.mail-reader, .mail-reader * { box-sizing:border-box; }
.mail-reader { min-width:0; overflow:hidden; }
.mail-reader-body { min-width:0; overflow:hidden; }
.mail-reader-body .mail-body-formatted { overflow-x:auto; max-width:100%; }
.mail-reader-body .mail-body-formatted :where(table, tbody, thead, tfoot, tr, td, th, div, section, article, p, img) { max-width:100% !important; }
.mail-reader-body .mail-body-formatted :where(td, th) { word-break:break-word; overflow-wrap:anywhere; }

.mail-dialog { border:1px solid var(--line); border-radius:8px; padding:16px; width:min(520px, calc(100vw - 28px)); box-shadow:0 18px 50px rgba(16,24,40,.22); }
.mail-dialog::backdrop { background:rgba(16,24,40,.35); }
.mail-dialog form { display:grid; gap:12px; }
.mail-dialog label { display:grid; gap:6px; font-weight:800; color:#344054; }
.mail-dialog select { width:100%; border:1px solid var(--line); border-radius:8px; padding:9px; font:inherit; background:#fff; }
.mail-render-notices { margin-bottom:10px; color:#667085; }
.mail-more-details { display:grid; gap:10px; }
.mail-more-details[open] { border:1px solid var(--line); border-radius:8px; padding:10px; background:#fbfcfe; }
@media (max-width:720px){ .mail-reader { padding-bottom:72px; } .mail-attachment-row { grid-template-columns:1fr; } .mail-dialog .row-actions { display:grid; grid-template-columns:1fr; } }
.push-settings { display:grid; gap:14px; }
.push-device-list { display:grid; gap:8px; }
.push-device { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; padding:10px 0; border-top:1px solid var(--line); }
.push-device strong, .push-device span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.push-device span { color:var(--muted); font-size:13px; margin-top:2px; }
@media (max-width: 760px) { .push-device { grid-template-columns:1fr; } .push-device .secondary { width:100%; } }
.notification-preferences h3 { margin: 0; }
.preference-list { display: grid; gap: 10px; }
.preference-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px; border: 1px solid var(--border); border-radius: 8px; background: rgba(255,255,255,.03); }
.preference-row span { display: grid; gap: 3px; min-width: 0; }
.preference-row small { color: var(--muted); line-height: 1.35; }
.preference-row input { width: 22px; height: 22px; flex: 0 0 auto; }
@media (max-width: 520px) { .preference-row { align-items: flex-start; } }


/* Paint One UI refresh 2.4.81-paint-one-ui */
:root {
  color-scheme: light;
  --ink:#111827;
  --ink-2:#1f2937;
  --muted:#5b6675;
  --line:#cfd7e3;
  --line-strong:#aeb8c7;
  --panel:#ffffff;
  --panel-soft:#f8fafc;
  --bg:#edf1f6;
  --accent:#087a68;
  --accent-strong:#065f52;
  --accent-soft:#dff5ef;
  --warn:#b45309;
  --danger:#b42318;
  --soft:#e8f5f1;
  --shadow:0 10px 28px rgba(15,23,42,.08);
}
body { background:var(--bg); color:var(--ink); }
button, .btn, .link-button { border-radius:6px; font-weight:800; letter-spacing:0; }
button { background:var(--accent); box-shadow:0 1px 0 rgba(255,255,255,.16) inset; }
button:hover { background:var(--accent-strong); }
button.secondary, .btn, .link-button { background:#e3e8ef; color:var(--ink); border:1px solid #cbd5e1; }
button.secondary:hover, .btn:hover, .link-button:hover { background:#d6dde8; color:var(--ink); }
.login-view { background:linear-gradient(180deg,#f8fafc 0%,#e2e8f0 100%); }
.login-panel, .card, .panel, .filter-shell, .table-wrap, .detail-item, .mobile-card, .document-card { border-color:var(--line); box-shadow:var(--shadow); }
.brand span { background:#101820; color:#ffffff; border:1px solid rgba(255,255,255,.16); }
.sidebar { background:#101820; border-right:1px solid #0b1220; }
.sidebar .brand span { background:var(--accent); }
.sidebar .brand strong { letter-spacing:0; }
.sidebar small { color:#d0d7e2; }
.nav-primary, .nav-secondary { gap:7px; }
.nav-btn { color:#e5edf7; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); }
.nav-btn.active, .nav-btn:hover { background:var(--accent); color:#fff; border-color:#32b59f; }
.nav-divider { background:rgba(255,255,255,.18); }
.planning-link { background:var(--accent-soft); color:#063f36; border:1px solid #9ad9cb; }
.topbar { background:#ffffff; border-bottom:1px solid var(--line); box-shadow:0 1px 0 rgba(15,23,42,.04); }
h1 { color:#111827; font-weight:850; }
#view-subtitle { color:var(--muted); }
#view { align-content:start; }
.card, .panel, .filter-shell, .detail-item { background:var(--panel); }
.panel > .toolbar:first-child, .section-head, .document-toolbar { padding-bottom:8px; border-bottom:1px solid #edf1f6; margin-bottom:8px; }
.action-card { border-color:var(--line); box-shadow:var(--shadow); }
.action-card:hover { border-color:var(--accent); background:#fbfefd; }
.metric { color:#0f172a; }
.muted { color:var(--muted); }
.badge { border:1px solid rgba(7,94,84,.14); background:var(--soft); color:#064e45; border-radius:6px; }
.badge.warn { border-color:#fed7aa; }
.badge.good { border-color:#bbf7d0; }
.badge.bad { border-color:#fecaca; }
.badge.info { border-color:#bae6fd; }
.badge.neutral { border-color:#d7dde6; }
th { background:#eef3f8; color:#1f2937; }
td { background:#ffffff; }
tr:hover td { background:#fbfefd; }
.notice { border-color:#f1b56f; background:#fff7ed; }
.preference-row, .mini-row, .work-item { border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 4px 14px rgba(15,23,42,.04); }
.preference-row:hover, .mini-row:hover, .work-item:hover { border-color:var(--accent); background:#fbfefd; }
input, textarea, select { border-color:#cbd5e1; }
input:focus, textarea:focus, select:focus { outline:2px solid rgba(8,122,104,.18); border-color:var(--accent); }
@media (max-width: 880px) {
  .topbar { border-bottom-color:#d9e1eb; }
  .sidebar { box-shadow:18px 0 46px rgba(15,23,42,.28); }
}
@media (max-width: 700px) {
  :root { --bg:#edf1f6; }
  .topbar { grid-template-columns:auto minmax(0,1fr); padding:12px; }
  .topbar-actions { background:#f7f9fc; border:1px solid var(--line); border-radius:8px; padding:8px; }
  #view { padding:12px; gap:12px; }
  .card, .panel, .detail-item, .filter-shell, .mobile-card { border-radius:8px; }
  .nav-primary { grid-template-columns:1fr 1fr; }
  .nav-btn { background:#172236; border-color:#2b374b; }
  .nav-btn.active { background:var(--accent); outline:2px solid #9ce3d5; }
  .action-card { min-height:84px; }
  .panel > .toolbar:first-child { align-items:flex-start; }
}
