/* Shared office shell. Business pages keep their own forms and tables. */
.oa-body { --blue:#2563d9; --ink:#25334b; --muted:#64748b; --line:#e7ecf3; --bg:#f4f6fa; color:var(--ink); background:var(--bg); font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; font-size:14px; line-height:1.6; -webkit-font-smoothing:antialiased; }
.oa-body :focus-visible { outline:3px solid #82a8ef; outline-offset:3px; }
.oa-body button,.oa-body a { -webkit-tap-highlight-color:transparent; }
.oa-body button { transition:background-color .18s,border-color .18s,color .18s; }
.oa-body button:disabled { cursor:default; }
.oa-body .button { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:7px; min-height:40px; font-size:14px; font-weight:600; }
.oa-body .button:hover:not(:disabled) { filter:brightness(.96); }
.oa-body .button.secondary:hover:not(:disabled) { background:#f3f6fc; filter:none; }
.oa-icon { display:inline-block; width:20px; height:20px; flex:none; vertical-align:middle; }
.oa-shell { display:grid; grid-template-columns:224px minmax(0,1fr); min-height:calc(100svh - 46px); }
.oa-main { min-width:0; }
.oa-sidebar { position:sticky; top:0; height:100svh; display:flex; flex-direction:column; padding:26px 16px 16px; background:#17263e; color:#b8c5d9; align-self:start; z-index:30; }
.oa-brand { display:flex; align-items:center; gap:12px; padding:0 12px; color:#fff; white-space:nowrap; }
.oa-brand-mark { width:37px; height:39px; background:#3979ea; border:1px solid #6396f2; border-radius:11px 11px 11px 3px; display:grid; place-items:center; flex:none; color:white; font-size:29px; font-weight:750; line-height:1; }
.oa-brand-copy { display:flex; flex-direction:column; }
.oa-brand-copy strong { font-size:21px; letter-spacing:1px; line-height:1.2; }
.oa-brand-copy small { font-size:11px; color:#bdcbe0; margin-top:5px; letter-spacing:1px; }
.oa-nav { display:flex; flex-direction:column; gap:6px; margin-top:38px; overflow-y:auto; }
.oa-nav-label { font-size:11px; color:#9baec8; letter-spacing:1.5px; padding:0 16px 6px; margin-top:18px; }
.oa-nav-label:first-child { margin-top:0; }
.oa-nav-link { width:100%; display:flex; gap:13px; align-items:center; text-align:left; padding:12px 15px; border:0; border-radius:7px; color:#bdcbe0; font-size:14px; background:transparent; white-space:nowrap; min-height:46px; }
.oa-nav-link .oa-icon { width:19px; height:19px; }
.oa-nav-link:hover { background:#223550; color:#fff; }
.oa-nav-link[aria-current=page],.oa-nav-link.active { background:#2e6de2; color:#fff; box-shadow:0 4px 12px #061a3d26; font-weight:600; }
.oa-side-bottom { margin-top:auto; padding-top:32px; display:grid; gap:6px; }
.oa-collapse { color:#9baec8; }
.oa-topbar { height:72px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 32px; background:#ffffffed; border-bottom:1px solid var(--line); }
.oa-breadcrumb { display:flex; align-items:center; gap:13px; white-space:nowrap; font-size:13px; }
.oa-breadcrumb-root { color:var(--muted); }
.oa-breadcrumb>.oa-icon { width:12px; height:12px; color:#8794a8; }
.oa-breadcrumb strong { font-weight:600; }
.oa-header-tools { display:flex; align-items:center; gap:18px; }
.oa-command { display:flex; align-items:center; gap:9px; background:#f5f7fb; border:1px solid #edf0f5; border-radius:7px; padding:8px 11px; color:#69788f; font-size:12px; }
.oa-command .oa-icon { width:16px; height:16px; }
.oa-command kbd { font:inherit; font-size:10px; margin-left:26px; color:#718096; border:1px solid #dce3ed; padding:0 5px; border-radius:3px; background:#fff; }
.oa-command:hover { background:#ecf1f9; }
.oa-icon-button { display:grid; place-items:center; border:0; background:transparent; color:#69788f; width:36px; height:36px; border-radius:6px; padding:7px; }
.oa-icon-button:hover { background:#edf2fa; color:var(--blue); }
.oa-mobile-menu { display:none; }
.oa-account { position:relative; }
.oa-account summary { display:flex; gap:10px; align-items:center; cursor:pointer; list-style:none; border-radius:6px; }
.oa-account summary::-webkit-details-marker { display:none; }
.oa-account summary>.oa-icon { width:11px; height:11px; transform:rotate(90deg); color:#64748b; }
.oa-account-name { max-width:112px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.oa-avatar { width:34px; height:34px; background:#e6edfa; border:2px solid #fff; box-shadow:0 0 0 1px #e2e8f2; border-radius:50%; display:grid; place-items:center; color:#315eac; font-size:13px; font-weight:600; }
.oa-account-menu { position:absolute; top:48px; right:0; z-index:40; background:#fff; border:1px solid var(--line); box-shadow:0 12px 32px #2034541f; border-radius:10px; padding:16px; min-width:200px; }
.oa-account-menu>strong,.oa-account-menu>small { display:block; }
.oa-account-menu>small { color:var(--muted); margin-top:3px; }
.oa-account-menu>button { display:flex; gap:10px; align-items:center; width:100%; color:#b73b3b; background:transparent; border:0; border-top:1px solid var(--line); padding:13px 0 0; margin-top:14px; text-align:left; }
.oa-content { max-width:1600px; padding:30px 32px 40px; width:100%; margin:auto; min-width:0; }
.oa-skip { position:fixed; top:8px; left:240px; transform:translateY(-150%); z-index:200; background:#fff; padding:10px 20px; border-radius:6px; }
.oa-skip:focus { transform:none; }
.oa-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.oa-nav-shade { display:none; }
.oa-welcome { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:26px; min-height:110px; }
.oa-date { font-size:12px; color:var(--muted); margin-bottom:8px; }
.oa-welcome h1 { font-size:27px; line-height:1.4; letter-spacing:-.6px; font-weight:650; overflow-wrap:anywhere; }
.oa-welcome-copy { color:var(--muted); font-size:13px; margin-top:8px; }
.oa-welcome-actions { display:flex; flex-direction:column; align-items:flex-end; gap:14px; flex:none; }
.oa-primary { box-shadow:0 4px 8px #2563d916; }
.oa-sync-row { display:flex; align-items:center; gap:12px; }
.oa-sync { font-size:11px; color:var(--muted); }
.oa-sync.warning { color:#a16207; }
.oa-refresh { display:flex; align-items:center; gap:5px; color:#49627f; padding:0; border:0; background:transparent; font-size:11px; white-space:nowrap; }
.oa-refresh .oa-icon { width:13px; height:13px; }
.is-refreshing .oa-icon { animation:spin 1.2s linear infinite; }
.oa-metrics { display:grid; grid-template-columns:repeat(var(--metric-count,4),minmax(0,1fr)); gap:16px; margin-bottom:24px; }
.oa-metric { background:#fff; border:1px solid var(--line); padding:18px 20px 16px; border-radius:10px; color:var(--ink); transition:border-color .18s,box-shadow .18s; min-width:0; }
a.oa-metric:hover { border-color:#b8cbeb; box-shadow:0 3px 12px #263f6810; }
.oa-metric-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:12px; color:#586980; }
.oa-metric-heading>.oa-icon { width:30px; height:30px; padding:6px; border-radius:8px; color:var(--accent); background:var(--tint); }
.oa-metric-bottom { display:flex; justify-content:space-between; align-items:center; margin:4px 0 4px; }
.oa-metric-value { font-size:31px; font-weight:650; font-variant-numeric:tabular-nums; line-height:1.4; letter-spacing:-1px; }
.oa-metric-bottom>.oa-icon { width:16px; height:16px; color:#8a99ad; }
.oa-metric small { color:#65758b; font-size:11px; }
.oa-metric-error small { color:#a16207; }
.blue { --accent:#2865d6; --tint:#edf3ff; }
.amber { --accent:#a86b0a; --tint:#fff6e5; }
.teal { --accent:#168277; --tint:#eaf7f4; }
.violet { --accent:#7656c5; --tint:#f1edfb; }
.oa-metric-loader { display:none; }
.oa-metric-loader:has(.oa-block-error) { display:block; grid-column:1/-1; }
.oa-home-columns { display:grid; grid-template-columns:minmax(0,1fr) 278px; gap:22px; align-items:start; }
.oa-home-primary,.oa-home-secondary { display:grid; gap:22px; min-width:0; }
.oa-panel { background:#fff; border:1px solid var(--line); border-radius:10px; min-width:0; overflow:hidden; }
.oa-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:21px 22px 17px; }
.oa-section-head h2 { font-size:16px; font-weight:650; line-height:1.5; }
.oa-section-head p { color:var(--muted); font-size:11px; margin-top:4px; }
.oa-text-link,.oa-text-button { display:inline-flex; align-items:center; gap:6px; background:transparent; border:0; padding:2px 0; color:var(--blue); font-size:12px; white-space:nowrap; }
.oa-text-link>.oa-icon { width:13px; height:13px; }
.oa-text-link:hover,.oa-text-button:hover { color:#19499c; text-decoration:underline; }
.oa-task-body { border-top:1px solid #edf0f5; }
.oa-task { display:flex; align-items:center; gap:13px; padding:17px 22px; color:var(--ink); border-bottom:1px solid #f0f3f8; }
.oa-task:hover { background:#f8faff; }
.oa-task-dot { width:7px; height:7px; border-radius:2px; background:#d99b39; flex:none; }
.oa-task-copy { flex:1; min-width:0; }
.oa-task-copy strong { display:block; font-size:13px; font-weight:550; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.oa-task-copy small { display:block; color:var(--muted); font-size:11px; margin-top:4px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.oa-task>.oa-icon { color:#9ba7b8; width:13px; height:13px; }
.oa-state { justify-self:start; display:inline-block; color:#5f6d81; background:#f0f3f7; padding:2px 8px; font-size:11px; border-radius:4px; white-space:nowrap; }
.oa-state.pending,.oa-state.pending_approval,.oa-state.locked { background:#fff6e5; color:#98600b; }
.oa-state.signup,.oa-state.open { background:#edf3ff; color:#2865bf; }
.oa-state.ongoing,.oa-state.approved { background:#eaf7f1; color:#17735b; }
.oa-state.rejected,.oa-state.cancelled,.oa-state.canceled { background:#fdf0f0; color:#a44545; }
.oa-task-more { display:block; text-align:center; padding:11px; font-size:12px; color:var(--blue); }
.oa-task-more:hover { background:#f8faff; }
.oa-section-count { font-size:11px; color:var(--muted); border:1px solid var(--line); padding:1px 7px; border-radius:4px; }
.oa-app-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 22px 18px; }
.oa-app-tabs { display:flex; gap:3px; padding:3px; border-radius:7px; background:#f2f5f9; }
.oa-app-tabs>button { border:0; background:transparent; color:#63748b; font-size:12px; padding:5px 12px; border-radius:5px; min-height:30px; white-space:nowrap; }
.oa-app-tabs>button[aria-selected=true] { background:#fff; color:#2b4160; box-shadow:0 1px 4px #213d6114; font-weight:600; }
.oa-app-search { display:flex; align-items:center; position:relative; width:180px; }
.oa-app-search>.oa-icon { position:absolute; left:10px; width:15px; height:15px; color:#74849b; pointer-events:none; }
.oa-app-search input[type=search] { border:1px solid #e3e9f1; border-radius:6px; padding:7px 10px 7px 31px; font-size:12px; width:100%; }
.oa-app-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:0 22px 22px; }
.oa-app-card { position:relative; border:1px solid #e7ecf3; border-radius:8px; min-width:0; transition:border-color .18s,box-shadow .18s; }
.oa-app-card:hover { border-color:#a9c2ed; box-shadow:0 4px 14px #2547770a; }
.oa-app-card-link { display:block; padding:19px 18px 16px; color:var(--ink); height:100%; border-radius:8px; }
.oa-app-icon { width:39px; height:39px; display:grid; place-items:center; background:var(--tint,#edf3ff); color:var(--accent,#2865d6); border:1px solid #ffffff80; border-radius:10px; flex:none; }
.oa-app-icon>.oa-icon { width:21px; height:21px; }
.oa-app-icon.small { width:31px; height:31px; border-radius:8px; }
.oa-app-icon.small>.oa-icon { width:17px; height:17px; }
.oa-app-card h3 { font-size:14px; font-weight:650; margin-top:13px; }
.oa-app-card p { color:#65758b; font-size:12px; line-height:1.8; margin-top:5px; min-height:44px; }
.oa-app-detail { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:10px; color:#64748b; border-top:1px solid #edf1f6; margin-top:15px; padding-top:11px; }
.oa-app-detail>.oa-icon { width:15px; height:15px; color:#4978c7; }
.oa-favorite { position:absolute; top:13px; right:13px; padding:7px; width:32px; height:32px; display:grid; place-items:center; color:#8492a8; border:0; background:transparent; border-radius:6px; }
.oa-favorite>.oa-icon { width:17px; height:17px; }
.oa-favorite:hover { background:#f7f1e4; color:#a86b0a; }
.oa-favorite.selected { color:#ab730f; }
.oa-favorite.selected .oa-icon { fill:#ffe8ac; }
.oa-app-empty { grid-column:1/-1; text-align:center; padding-bottom:14px; }
.oa-app-empty .oa-empty { padding-bottom:15px; }
.oa-quick .oa-section-head { padding-bottom:10px; }
.oa-quick-links { padding:0 10px 10px; }
.oa-quick-link { display:flex; gap:12px; align-items:center; color:#47607e; padding:13px 12px; border-radius:6px; }
.oa-quick-link:hover { background:#f4f7fc; color:var(--blue); }
.oa-quick-link>span { flex:1; min-width:0; }
.oa-quick-link strong { display:block; font-size:12px; font-weight:550; color:var(--ink); }
.oa-quick-link small { display:block; font-size:10px; color:var(--muted); margin-top:3px; }
.oa-quick-link>.oa-icon:first-child { width:18px; height:18px; }
.oa-quick-link>.oa-icon:last-child { width:12px; height:12px; color:#8d9bb0; }
.oa-visits { padding:0 12px 12px; }
.oa-visit { display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:6px; color:#465970; font-size:12px; }
.oa-visit:hover { background:#f5f8fc; }
.oa-visit>.oa-icon { margin-left:auto; width:14px; height:14px; color:#8a9bb2; }
.oa-quiet-empty { padding:0 10px 10px; font-size:12px; color:var(--muted); line-height:1.9; }
.oa-scope { padding:22px; border:1px solid #e0e8f3; border-radius:10px; background:#eef3fb; }
.oa-scope-icon { color:#6487b9; }
.oa-scope h2 { font-size:13px; font-weight:600; margin-top:11px; }
.oa-scope>p { margin-top:4px; color:#65758b; font-size:11px; }
.oa-orgs { display:flex; gap:6px; flex-wrap:wrap; margin-top:13px; }
.oa-orgs>span { border:1px solid #d8e2f0; border-radius:4px; background:#ffffff70; font-size:10px; color:#486485; padding:2px 7px; overflow-wrap:anywhere; }
.oa-scope>small { display:block; color:#64748b; font-size:11px; margin-top:9px; }
.oa-record-tabs { display:flex; border-bottom:1px solid var(--line); gap:24px; padding:0 22px; }
.oa-record-tabs>button { border:0; background:none; color:#65758b; font-size:12px; padding:0 0 12px; border-bottom:2px solid transparent; }
.oa-record-tabs>button[aria-selected=true] { color:var(--blue); border-bottom-color:var(--blue); font-weight:600; }
.oa-record,.oa-record-heading { display:grid; grid-template-columns:minmax(0,1fr) 78px 118px 48px; align-items:center; gap:14px; padding:14px 22px; }
.oa-record-heading { font-size:10px; color:#68798f; background:#fafbfe; padding-top:11px; padding-bottom:11px; }
.oa-record { color:var(--ink); border-top:1px solid #edf1f7; font-size:12px; }
.oa-record:hover { background:#f8faff; }
.oa-record-name { min-width:0; }
.oa-record-name strong { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:12px; font-weight:550; }
.oa-record-name small { color:#65758b; font-size:10px; display:block; margin-top:3px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.oa-record time { color:#65758b; font-size:11px; font-variant-numeric:tabular-nums; }
.oa-record-action { color:var(--blue); display:flex; align-items:center; gap:5px; font-size:11px; }
.oa-record-action>.oa-icon { width:12px; height:12px; }
.oa-record-more { display:block; font-size:12px; text-align:center; padding:13px; border-top:1px solid var(--line); }
.oa-record-more:hover { background:#f8faff; }
.oa-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:30px 22px; min-height:160px; }
.oa-empty-icon { color:#7b91ac; background:#f3f6fa; border-radius:50%; width:38px; height:38px; display:grid; place-items:center; margin-bottom:11px; }
.oa-empty strong { font-size:13px; font-weight:550; margin-top:8px; }
.oa-empty p { font-size:12px; color:var(--muted); margin-top:5px; max-width:320px; }
.oa-skeleton { padding:10px 22px; }
.oa-skeleton>div { display:grid; gap:10px; padding:15px 0; }
.oa-skeleton span { height:12px; border-radius:4px; width:70%; background:#edf1f7; animation:oa-pulse 1.5s ease-in-out infinite alternate; }
.oa-skeleton span+span { height:8px; width:46%; }
.oa-block-error,.oa-service-warning { background:#fffaed; border:1px solid #f1dfb9; color:#8d620f; font-size:12px; padding:12px 16px; display:flex; justify-content:space-between; gap:16px; align-items:center; }
.oa-block-error { margin:12px; border-radius:6px; }
.oa-service-warning { margin-bottom:20px; border-radius:7px; }
.oa-help p { color:var(--muted); font-size:14px; line-height:1.9; }
.oa-help>div { margin-top:22px; }
.oa-help h3 { font-size:15px; margin-bottom:5px; }
.oa-command-dialog { width:590px; }
.oa-command-input[type=search] { width:100%; font-size:14px; padding:12px 14px; }
.oa-command-results { margin-top:14px; max-height:50svh; overflow-y:auto; }
.oa-command-result { display:flex; align-items:center; gap:14px; color:var(--ink); padding:12px 8px; border-radius:7px; }
.oa-command-result:hover { background:#f4f7fd; }
.oa-command-result>span:nth-child(2) { flex:1; }
.oa-command-result strong { display:block; font-size:14px; }
.oa-command-result small { display:block; color:var(--muted); font-size:12px; }
.oa-command-result>.oa-icon { width:16px; height:16px; color:#7b8ba2; }
.oa-command-tip { border-top:1px solid var(--line); margin-top:12px; padding-top:14px; color:var(--muted); font-size:11px; }
.oa-collapsed { grid-template-columns:76px minmax(0,1fr); }
.oa-collapsed .oa-sidebar { padding-inline:12px; }
.oa-collapsed .oa-brand { padding:0; justify-content:center; }
.oa-collapsed .oa-brand-copy,.oa-collapsed .oa-nav-label,.oa-collapsed .oa-nav-link>span { display:none; }
.oa-collapsed .oa-nav { gap:10px; }
.oa-collapsed .oa-nav-link { justify-content:center; padding:13px; }
.oa-collapsed .oa-nav-link .oa-icon { width:21px; height:21px; }
.oa-collapsed .oa-collapse>.oa-icon { transform:rotate(180deg); }
.oa-body .modal { border:1px solid var(--line); border-radius:12px; }
.oa-body .modal-heading h2 { font-size:18px; }
.oa-body .site-icp-footer { padding-left:224px; }
.oa-body:has(.oa-collapsed) .site-icp-footer { padding-left:76px; }
@keyframes oa-pulse { from { opacity:.5; } to { opacity:1; } }
@media(min-width:1700px) { .oa-app-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } .oa-home-columns { grid-template-columns:minmax(0,1fr) 300px; } }
@media(max-width:1250px) {
  .oa-shell { grid-template-columns:198px minmax(0,1fr); }
  .oa-collapsed { grid-template-columns:76px minmax(0,1fr); }
  .oa-brand { padding-inline:5px; gap:10px; }
  .oa-content { padding:24px; }
  .oa-topbar { padding-inline:24px; }
  .oa-home-columns { grid-template-columns:minmax(0,1fr) 240px; gap:18px; }
  .oa-home-primary,.oa-home-secondary { gap:18px; }
  .oa-metrics { gap:12px; }
  .oa-metric { padding:16px; }
  .oa-metric-heading { font-size:11px; gap:6px; }
  .oa-record,.oa-record-heading { grid-template-columns:minmax(0,1fr) 64px 100px; gap:12px; }
  .oa-record-action,.oa-record-heading>span:last-child { display:none; }
  .oa-command kbd { display:none; }
  .oa-welcome h1 { font-size:24px; }
  .oa-sync-row { flex-wrap:wrap; justify-content:flex-end; max-width:220px; gap:5px 10px; }
}
@media(max-width:1080px) {
  .oa-home-columns { grid-template-columns:minmax(0,1fr); }
  .oa-home-secondary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .oa-scope { grid-column:1/-1; }
  .oa-orgs { margin-top:8px; }
  .oa-scope h2 { display:inline; margin-left:9px; }
  .oa-scope>p { display:inline; margin-left:10px; }
  .oa-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .oa-metric-heading { font-size:12px; }
}
@media(max-width:760px) {
  .oa-shell,.oa-collapsed { display:block; }
  .oa-sidebar,.oa-collapsed .oa-sidebar { position:fixed; left:0; top:0; bottom:0; width:242px; padding:26px 16px 16px; height:100dvh; transform:translateX(-100%); visibility:hidden; transition:transform .2s,visibility .2s; }
  .oa-collapsed .oa-brand { padding:0 12px; justify-content:flex-start; }
  .oa-collapsed .oa-brand-copy { display:flex; }
  .oa-collapsed .oa-nav-label { display:block; }
  .oa-collapsed .oa-nav-link>span { display:inline; }
  .oa-collapsed .oa-nav-link { justify-content:flex-start; padding:12px 15px; }
  .oa-collapse { display:none; }
  .oa-nav-open .oa-sidebar { transform:none; visibility:visible; }
  .oa-nav-open .oa-nav-shade { display:block; position:fixed; inset:0; z-index:29; background:#10233d66; border:0; width:100%; height:100%; cursor:pointer; }
  .oa-nav-lock { overflow:hidden; }
  .oa-mobile-menu { display:grid; }
  .oa-topbar { height:62px; padding:0 16px 0 8px; gap:12px; }
  .oa-breadcrumb { gap:8px; }
  .oa-breadcrumb-root,.oa-breadcrumb>.oa-icon { display:none; }
  .oa-header-tools { gap:10px; }
  .oa-command { width:34px; height:34px; padding:8px; background:none; border:0; }
  .oa-command>span { display:none; }
  .oa-command .oa-icon { width:20px; height:20px; }
  .oa-header-tools>.oa-icon-button { display:none; }
  .oa-account-name { max-width:80px; }
  .oa-content { padding:22px 16px 32px; }
  .oa-welcome { gap:16px; margin-bottom:22px; align-items:flex-start; flex-wrap:wrap; }
  .oa-welcome h1 { font-size:25px; }
  .oa-welcome-actions { flex-direction:row; align-items:center; justify-content:space-between; flex:1 1 100%; gap:12px; }
  .oa-welcome-actions .button { font-size:12px; padding:8px 12px; min-height:38px; }
  .oa-sync-row { max-width:200px; }
  .oa-sync { font-size:10px; text-align:right; }
  .oa-metrics { gap:10px; margin-bottom:18px; }
  .oa-metric { padding:14px; }
  .oa-metric-value { font-size:28px; }
  .oa-metric small { font-size:10px; }
  .oa-section-head { padding:18px 16px 15px; }
  .oa-home-columns,.oa-home-primary,.oa-home-secondary { gap:18px; }
  .oa-section-head h2 { font-size:15px; }
  .oa-task { padding:15px 16px; gap:10px; }
  .oa-task-copy strong { font-size:12px; }
  .oa-task-copy small { font-size:10px; }
  .oa-task>.oa-icon { display:none; }
  .oa-app-toolbar { padding:0 16px 16px; gap:10px; }
  .oa-app-search { width:145px; }
  .oa-app-tabs>button { padding:5px 9px; font-size:11px; }
  .oa-app-grid { padding:0 16px 16px; gap:10px; }
  .oa-app-card-link { padding:16px 13px 13px; }
  .oa-app-card p { font-size:11px; min-height:60px; }
  .oa-app-detail { font-size:9px; gap:4px; }
  .oa-favorite { top:9px; right:7px; }
  .oa-record,.oa-record-heading { padding-inline:16px; grid-template-columns:minmax(0,1fr) 62px 88px; gap:10px; }
  .oa-record time { font-size:10px; }
  .oa-record-tabs { padding-inline:16px; }
  .oa-home-secondary { grid-template-columns:minmax(0,1fr); }
  .oa-body .site-icp-footer,.oa-body:has(.oa-collapsed) .site-icp-footer { padding-left:12px; }
  .oa-skip { left:12px; }
  .oa-icon-button,.oa-favorite { min-width:34px; min-height:34px; }
}
@media(max-width:390px) {
  .oa-app-toolbar { flex-wrap:wrap; }
  .oa-app-search { width:100%; }
  .oa-record,.oa-record-heading { grid-template-columns:minmax(0,1fr) 62px; }
  .oa-record time,.oa-record-heading>span:nth-child(3) { display:none; }
  .oa-app-detail { font-size:9px; }
  .oa-welcome-actions { flex-wrap:wrap; }
  .oa-sync-row { max-width:none; }
}
@media(prefers-reduced-motion:reduce) {
  .oa-body *, .oa-body *::before, .oa-body *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

.oa-metrics[data-count="1"] { grid-template-columns:1fr; }

.oa-app-group-title{grid-column:1/-1;font-size:12px;letter-spacing:.08em;color:#68788a;margin:14px 0 0}.oa-app-group-title:first-child{margin-top:0}.oa-nav{overflow:auto;min-height:0}.oa-nav-label{margin-top:18px}

.oa-personnel-tasks{border-top:1px solid #e8edf3;padding:4px 0}.oa-personnel-task-title{padding:16px 24px 4px;display:flex;align-items:center;gap:10px;font-size:12px;color:#536982}.oa-personnel-task-title>span{font-size:10px;color:#8a98a9}.oa-personnel-task-title>a{margin-left:auto;font-size:11px}.oa-personnel-tasks>.oa-quiet-empty{padding:10px 24px 16px}
