/* WP017: owner-selected light portal surfaces; WP016 font provenance retained. */
@font-face { font-family:Manrope; src:url('/brand/manrope-regular.ttf') format('truetype'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:Manrope; src:url('/brand/manrope-semibold.ttf') format('truetype'); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:'Arctact Inter'; src:url('/brand/inter-medium-latin.woff2') format('woff2'); font-weight:500; font-style:normal; font-display:swap; }
:root {
  --brand-primary:#424B39; --brand-dark:#202522; --brand-mid:#424B39;
  --brand-gold:#424B39; --brand-gold-l:#F1F2EE; --brand-on-primary:#FFFFFF;
  --ar-action:#E3E7DC; --ar-on-action:#202522;
  --vm-ink-deep:#202522; --vm-ink:#202522; --vm-muted:#5D645F;
  --vm-accent:#424B39; --vm-soft:#FFFFFF; --vm-paper:#FFFFFF;
  --bg:#FFFFFF; --card:#FFFFFF; --border:#D5D9D1;
  --ar-soft:#F1F2EE; --ar-olive:#687157; --ar-olive-dark:#424B39;
  --surface:#FFFFFF; --primary:#424B39; --danger:#202522;
  --text:#202522; --text-2:#5D645F; --text-3:#5D645F;
  --ok:#424B39; --risk:#202522; --late:#202522; --paused:#5D645F;
  --sidebar-w:248px; --sidebar-collapsed-w:72px; --radius:4px; --shadow:none; --shadow-md:0 12px 40px rgba(32,37,34,.12);
}
html,body,input,button,textarea,select { font-family:Manrope,Arial,sans-serif; letter-spacing:0; }
html { font-feature-settings:"tnum" 1; color-scheme:light; background:var(--bg); }
body { color:var(--text); background:var(--bg); -webkit-font-smoothing:antialiased; }
::selection { background:#E0E4D6; color:var(--text); }
.ar-performance-dialog{position:fixed;inset:0;margin:auto;width:min(760px,calc(100% - 32px));height:fit-content;max-height:calc(100% - 32px);overflow:auto;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:24px;background:var(--bg);color:var(--text)}
.ar-performance-dialog h2{font-size:20px}.ar-performance-dialog::backdrop{background:rgba(32,37,34,.35)}
.ar-performance-table{overflow:auto}.ar-performance-table table{border-collapse:collapse;width:100%;font-size:13px}.ar-performance-table th,.ar-performance-table td{padding:12px 8px;text-align:left;border-bottom:1px solid var(--border)}
.ar-performance-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
body { font-size:15px; }
button,input,select,textarea { font-size:14px; }
/* Fixed-height legacy selects must retain room for the complete text line. */
select.form-control:not([multiple]):not([size]),select.form-control[size="1"]:not([multiple]) { min-height:36px; padding-block:4px; line-height:1.5; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible { outline:2px solid var(--ar-olive-dark); outline-offset:4px; }
button:disabled { cursor:not-allowed; opacity:.6; border-style:dashed; }
[hidden] { display:none !important; }
.sidebar { --brand-gold:#424B39; background:var(--ar-soft); color:var(--text); border-right:1px solid var(--border); box-shadow:none; height:100dvh; padding:8px 0 0; overflow:visible; }
.sidebar > :not(.sidebar-nav) { flex-shrink:0; }
.sidebar :focus-visible { outline:2px solid var(--ar-olive-dark); outline-offset:-2px; }
.sidebar-brand { display:flex; flex-direction:column; align-items:flex-start; gap:2px; padding:12px 24px 16px; height:auto; border:0; }
.sidebar #btn-toggle-sidebar { position:absolute; left:100%; top:45%; color:var(--text-2); background:var(--ar-soft); border:1px solid var(--border); border-left:0; border-radius:0 6px 6px 0; width:18px; min-width:18px; height:56px; padding:0; margin:0; display:flex; align-items:center; justify-content:center; z-index:2; }
.sidebar #btn-toggle-sidebar svg { width:14px; height:14px; }
.sidebar-toggle:hover { color:var(--text); background:#E3E7DC; }
.sidebar.collapsed .sidebar-brand { padding:8px 0 16px; align-items:center; }
.sidebar.collapsed .sidebar-toggle { margin:0 auto 8px; }
#ar-office { margin:0 24px 8px; padding:18px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); color:var(--text-2); font-size:13px; overflow-wrap:anywhere; max-height:88px; overflow:auto; }
#ar-office img { display:block; width:100%; max-width:144px; height:31px; margin:0 auto; object-fit:contain; object-position:center; }
.sidebar-nav { flex:1 1 0; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; padding:0 12px 12px; gap:3px; scrollbar-width:thin; }
.sidebar-nav .nav-item { flex-shrink:0; color:var(--text-2); padding:10px 12px; min-height:42px; border-radius:6px; font-size:13px; gap:12px; transition:background-color .15s,color .15s; }
.sidebar-nav .nav-item svg { width:18px; height:18px; flex-shrink:0; }
.sidebar-nav .nav-item.active { background:#E3E7DC; color:var(--text); font-weight:600; }
.sidebar-nav .nav-item.active svg { stroke:currentColor; }
.sidebar-nav .nav-item:hover:not(.active) { background:#E8EBE4; color:var(--text); }
.sidebar-nav .nav-item span { font-size:13px; letter-spacing:0; }
.sidebar-nav .nav-item .ar-nav-compact { display:none; }
.sidebar-nav .nav-item[data-ar-primary="false"] { font-size:13px; }
.sidebar-footer { border-top:1px solid var(--border); background:var(--ar-soft); color:var(--text); padding:12px; gap:8px; }
.sidebar-credit,.sidebar .user-name { color:var(--text-2); font-size:12px; letter-spacing:0; text-transform:none; }
.sidebar .user-details { min-width:0; }
.sidebar .user-name { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sidebar .user-avatar { background:#E3E7DC; color:var(--text); flex:0 0 28px; width:28px; height:28px; font-size:12px; }
.sidebar-release-label,.sidebar-release,.sidebar-release strong { color:var(--text-2); font-size:11px; }
.sidebar-release { border-color:var(--border); background:transparent; }
.sidebar-release:hover { color:var(--text); background:#E3E7DC; border-color:var(--border); }
.sidebar-credit { border-color:var(--border); margin:0; padding:8px 0 0; font-size:10px; }
.sidebar-credit:hover { color:var(--text); }
.sidebar .btn-logout { color:var(--text-2); min-width:36px; min-height:36px; border-radius:6px; }
.sidebar .btn-logout:hover { background:#E3E7DC; color:var(--text); }
.sidebar .qt-fab { background:transparent; color:var(--text-2); border:1px solid var(--border); border-radius:6px; height:32px; min-height:32px; padding:6px; margin-bottom:0; box-shadow:none; opacity:1; transition:background-color .15s,color .15s; }
.sidebar .qt-fab svg { width:18px; height:18px; stroke-width:1.75; }
.sidebar .qt-fab:hover,.sidebar .qt-fab:active { background:#E3E7DC; color:var(--text); opacity:1; box-shadow:none; transform:none; }
.sidebar.collapsed .qt-fab:hover::after { display:none; }
.sidebar:not(.collapsed) .user-info-row { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1px; }
.sidebar:not(.collapsed) .user-info-row > .user-info { grid-column:1/-1; min-width:0; }
.sidebar:not(.collapsed) .user-info-row > .btn-logout { margin-right:0 !important; width:36px; padding:6px; }
.sidebar.collapsed #ar-office { display:none; }
.sidebar.collapsed .sidebar-nav { padding:0 8px 8px; }
.sidebar.collapsed .sidebar-footer { padding:8px; }
.sidebar.collapsed .sidebar-credit { display:none; }
.sidebar.collapsed .sidebar-nav .nav-item:hover::after { display:none; }
.sidebar.collapsed .ws-menu { position:fixed; left:calc(var(--sidebar-collapsed-w) + 8px); right:auto; bottom:16px; width:280px; max-width:calc(100vw - var(--sidebar-collapsed-w) - 24px); border:1px solid var(--border); border-radius:8px; }
.sidebar #suggestions-fab { width:36px; height:36px; min-height:36px; padding:8px; margin:0; border:0; background:transparent; color:var(--text-2); box-shadow:none; border-radius:6px; }
.sidebar #suggestions-fab:hover { background:#E3E7DC; color:var(--text); transform:none; }
.sidebar #suggestions-fab svg { width:18px; height:18px; stroke-width:1.75; }
.sidebar #suggestions-fab .fab-label { display:none; }
.sidebar #app-release-button { display:none; }
.sidebar #ar-user-profile { width:100%; min-height:40px; padding:6px 8px; border:1px solid var(--border); border-radius:6px; background:transparent; color:var(--text); text-align:left; cursor:pointer; }
.sidebar #ar-user-profile:hover { background:#E3E7DC; }
.sidebar #ar-user-profile .user-info { display:flex; align-items:center; gap:10px; min-width:0; }
.sidebar.collapsed #ar-user-profile { padding:6px; }
.sidebar.collapsed #ar-user-profile .user-info { justify-content:center; }
.mobile-more-sheet { max-height:85dvh; overflow-y:auto; overscroll-behavior:contain; border-radius:8px 8px 0 0; border-top:1px solid var(--border); }
.mobile-more-item { border-radius:6px; }
.mobile-more-item:hover,.mobile-more-item:active { background:var(--ar-soft); }
.board-panel-header { position:relative; padding-right:52px; flex-wrap:wrap; }
.board-panel { animation:none; }
.board-panel-header > div:nth-child(2) { min-width:180px !important; }
.board-panel-header > div:last-child { flex-wrap:wrap; }
#btn-close-panel { position:absolute; right:10px; top:12px; width:32px; height:32px; display:grid; place-items:center; }
.page-title { font-size:28px; letter-spacing:0; font-weight:400; line-height:1.2; }
.page-header { margin-bottom:32px; flex-wrap:wrap; gap:16px; }
.card { box-shadow:none; border-color:var(--border); border-radius:4px; }
.card .card { border:0; border-radius:0; }
.btn { border-radius:999px; min-height:40px; font-size:14px; letter-spacing:0; white-space:normal; padding:10px 18px; }
.btn-primary { background:var(--ar-action); color:var(--ar-on-action); border:1px solid var(--border); font-weight:600; }
.btn-primary:hover { background:#D5DCCB; color:var(--ar-on-action); }
.btn-secondary { background:#FFFFFF; color:#202522; border:1px solid var(--border); }
.form-control { background:#FFFFFF; color:#202522; border:1px solid var(--border); border-radius:4px; }
.main-content { padding:36px 40px 64px; }
.page-title,.login-title,h1,h2,h3 { font-family:Manrope,Arial,sans-serif; letter-spacing:0; }
.table-striped tbody tr:nth-child(even),.pf-table th,th { background:var(--ar-soft); }
.table-striped tbody tr:hover,.pf-table tbody tr:hover { background:var(--ar-soft); }
.badge-ok,.badge-risk,.badge-late,.badge-paused { background:var(--ar-soft); color:var(--text); }
.modal-content,.modal-box,.dialog-content { background:var(--bg); color:var(--text); border-radius:8px; box-shadow:var(--shadow-md); }
.vm-auth-form input,.vm-auth-form select { background:var(--bg); color:var(--text); border-color:var(--border); border-radius:4px; }
.vm-auth-form small { color:var(--text-2); font-size:13px; }
.vm-auth-form .btn { justify-content:center; text-align:center; }
.login-title { font-weight:400; }
.login-box { width:min(440px,100%); padding:32px 24px; }
.login-box .login-brand { margin-bottom:24px; }
.login-box > a { display:block; margin-top:16px; font-size:14px; color:var(--text-2); }
.access-wrap { max-width:480px; padding:64px 24px 40px; }
.access-wrap .topo { padding:0 0 32px; }
.access-wrap .marca { display:inline-block; padding:12px 24px; border-radius:999px; background:var(--ar-soft); color:var(--text); }
.access-wrap h1 { font-size:28px; font-weight:400; margin-bottom:24px; }
.access-wrap input { border-radius:4px; border-color:var(--border); min-height:48px; }
.access-wrap button { border-radius:999px; min-height:48px; font-weight:600; background:var(--ar-action); color:var(--ar-on-action); }
.access-wrap .secondary { background:transparent; border-color:var(--border); color:var(--text); font-weight:400; }
.wrap:not(.access-wrap) .marca { color:var(--text); font-size:20px; letter-spacing:0; text-transform:none; }
.wrap:not(.access-wrap) button { color:var(--ar-on-action); border-radius:999px; }
.ov-chip-active:hover { background:var(--ar-olive-dark); border-color:var(--ar-olive-dark); color:#FFFFFF; }
.cartao { border-radius:4px; box-shadow:none; }
.login-brand { color:#202522; font-size:32px; font-weight:600; letter-spacing:0; }
.ar-platform-brand { display:inline-flex; align-items:center; color:var(--text); font-size:28px; font-weight:600; line-height:1; white-space:nowrap; }
.ar-product-wordmark { display:inline-flex; align-items:baseline; font-family:'Arctact Inter',Arial,sans-serif; font-weight:500; }
.ar-brand-dot { display:inline-block; width:6px; height:6px; margin-left:3px; border-radius:50%; background:#F17745; }
.ar-brand-byline { display:inline-flex; align-items:center; gap:2px; margin-left:11px; padding-left:10px; border-left:1px solid var(--border); color:var(--text-2); font-size:10px; font-weight:400; }
.ar-brand-byline img { display:block; width:88px; height:40px; object-fit:contain; }
.sidebar-brand .ar-platform-brand { flex-direction:column; align-items:flex-start; font-size:22px; }
.sidebar-brand .ar-brand-byline { display:none; }
.sidebar.collapsed .sidebar-brand .ar-platform-brand { font-size:12px; align-items:center; }
.sidebar.collapsed .sidebar-brand .ar-brand-byline { display:none; }
.sidebar.collapsed .sidebar-brand .ar-brand-dot { width:3px; height:3px; margin-left:2px; }
.access-wrap .marca { padding:0; background:transparent; border-radius:0; }
#screen-login,#screen-noworkspace,#vm-password-screen,#vm-workspace-screen { background:#FFFFFF; }
.login-box { box-shadow:none; background:#FFFFFF; border-radius:0; }
#vm-auth-message,#vm-password-message,#vm-workspace-message { color:#202522; text-decoration:underline; }
.crono-summary { display:flex; gap:24px; flex-wrap:wrap; border:0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); border-radius:0; padding:20px 0; }
.ar-schedule { margin-top:20px; min-width:0; }
.ar-schedule-tools { display:flex; align-items:end; flex-wrap:wrap; gap:16px; margin-bottom:20px; }
.ar-schedule-tools label { display:grid; gap:6px; font-size:13px; color:#5D645F; }
.ar-schedule-tools input,.ar-schedule-tools select { height:36px; padding:6px 10px; border:1px solid var(--border); border-radius:8px; background:#FFFFFF; color:#202522; max-width:100%; }
.ar-period { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.ar-period strong { font-size:15px; font-weight:500; min-width:190px; text-align:center; }
.ar-period button,.ar-pagination button,.ar-detail-close { width:36px; height:36px; border:1px solid var(--border); border-radius:8px; color:#202522; font-size:22px; }
.ar-period [data-ar-today] { width:auto; padding:0 12px; font-size:14px; }
.ar-segments { display:flex; border:1px solid var(--border); border-radius:8px; overflow:hidden; }
.ar-segments button { padding:7px 12px; min-height:36px; color:#5D645F; }
.ar-segments [aria-pressed="true"] { background:#E3E7DC; color:#202522; }
.ar-timeline { overflow:auto; max-height:640px; border:1px solid var(--border); border-radius:8px; }
.ar-time-grid { display:grid; grid-template-columns:280px repeat(var(--ar-days),minmax(34px,1fr)); min-width:calc(280px + var(--ar-days)*34px); }
.ar-schedule-group { grid-column:1 / -1; padding:10px 16px; background:#F1F2EE; color:#424B39; border-bottom:1px solid var(--border); font-size:13px; font-weight:600; overflow-wrap:anywhere; }
.ar-time-heading { position:sticky; top:0; z-index:2; display:flex; flex-direction:column; justify-content:center; align-items:center; height:58px; border-bottom:1px solid var(--border); border-right:1px solid var(--border); background:#FFFFFF; font-size:13px; }
.ar-time-heading small { font-size:13px; color:#5D645F; }
.ar-time-heading.ar-today { background:#E3E7DC; color:#202522; }
.ar-time-heading.ar-today small { color:#424B39; }
.ar-fixed { position:sticky; left:0; z-index:1; background:#FFFFFF; border-right:1px solid var(--border); }
.ar-time-heading.ar-fixed { z-index:3; align-items:flex-start; padding:0 16px; }
.ar-row-label { color:#202522; padding:12px 16px; min-height:72px; display:flex; flex-direction:column; gap:6px; justify-content:center; text-align:left; border-bottom:1px solid var(--border); }
.ar-row-label strong { font-weight:500; font-size:14px; overflow-wrap:anywhere; }
.ar-row-label small { color:#5D645F; font-size:13px; }
.ar-row-track { display:grid; grid-template-columns:repeat(var(--ar-days),minmax(0,1fr)); align-items:center; min-height:72px; border-bottom:1px solid var(--border); }
.ar-bar { min-width:0; height:32px; padding:4px 8px; margin:0 2px; border:1px solid #C6CEBA; border-radius:6px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; background:#E3E7DC; color:#202522; font-size:13px; text-align:left; }
.ar-bar.ar-milestone { background:#F1F2EE; border-color:#687157; }
.ar-schedule-tools .ar-compare { display:flex; align-items:center; align-self:center; gap:8px; }
.ar-schedule-tools .ar-compare { min-height:44px; }
.ar-schedule-tools .ar-compare input[type=checkbox] { flex:0 0 18px; width:18px; height:18px; min-height:18px; padding:0; accent-color:#424B39; }
.ar-comparing { grid-template-rows:minmax(40px,1fr) 28px; padding:6px 0; }
.ar-comparing .ar-date-note { grid-row:3; }
.ar-evidence { justify-self:center; width:24px; height:24px; border:2px solid #5D645F; border-radius:50%; background:#FFFFFF; }
.ar-evidence-forecast { border-style:dashed; border-radius:0; }
.ar-evidence-real { background:#424B39; border-color:#424B39; }
.ar-evidence-legend { display:flex; flex-wrap:wrap; gap:12px 24px; margin:0 0 16px; color:#5D645F; font-size:13px; }
.ar-evidence-legend span { display:flex; align-items:center; gap:6px; }
.ar-evidence-legend span::before { content:""; width:12px; height:12px; border:2px solid #5D645F; border-radius:50%; }
.ar-evidence-legend span:first-child::before { background:#424B39; border:0; width:24px; border-radius:3px; }
.ar-evidence-legend span:nth-child(2)::before { border-style:dashed; border-radius:0; }
.ar-evidence-legend span:last-child::before { background:#424B39; border-color:#424B39; }
.ar-date-note { grid-column:1/-1; padding:8px 16px; font-size:13px; color:#5D645F; }
.ar-pagination { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:16px; font-size:13px; }
.ar-schedule-mobile { display:none; }
.ar-empty { padding:40px 0; color:#5D645F; }
.ar-schedule-detail { margin-top:20px; padding:20px 0; border-top:1px solid var(--border); }
.ar-detail-close { float:right; }
.ar-page-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 24px; }
.ar-page-heading h1 { font-size:28px; font-weight:400; margin:0; }
.ar-page-heading h2 { font-size:20px; font-weight:600; }
.ar-page-heading .btn { display:inline-flex; align-items:center; gap:8px; }
.ar-planning { min-width:0; }
.ar-planning-tabs { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin:20px 0 12px; border-bottom:1px solid var(--border); padding-bottom:12px; }
.ar-planning-tabs>div:first-child,.ar-schedule-buckets { display:flex; flex-wrap:wrap; gap:4px; }
.ar-planning-tabs [data-ar-scope],.ar-schedule-buckets button { padding:9px 10px; font-size:13px; color:var(--text-2); border-radius:4px; min-height:36px; }
.ar-planning-tabs [aria-pressed=true],.ar-schedule-buckets [aria-pressed=true] { color:var(--text); background:var(--ar-soft); }
.ar-planning-tabs [data-ar-scope] span,.ar-schedule-buckets button span { margin-left:8px; font-size:12px; color:var(--text-2); }
.ar-planning-options { font-size:13px; margin:12px 0; }
.ar-planning-options summary { cursor:pointer; color:var(--text-2); padding:8px 0; }
.ar-planning-options>label { display:flex; align-items:center; gap:8px; }
.ar-planning-meta { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:12px 0; font-size:12px; color:var(--text-2); }
.ar-planning-meta button { display:flex; align-items:center; gap:6px; color:var(--text); }
.ar-project-group { margin:0 0 24px; border-top:1px solid var(--border); }
.ar-project-group>header { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:12px 0; }
.ar-project-toggle { display:flex; align-items:center; gap:10px; text-align:left; color:var(--text); min-width:0; padding:4px 0; }
.ar-project-toggle strong { font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.ar-project-toggle span { font-size:12px; color:var(--text-2); }
.ar-project-toggle svg,.ar-stage-toggle svg { flex-shrink:0; }
.ar-stage-toggle { display:flex; align-items:center; gap:8px; width:100%; text-align:left; color:var(--text-2); font-size:12px; background:var(--ar-soft); padding:9px 12px; }
.ar-stage-toggle small { margin-left:auto; }
.ar-task-row { display:grid; grid-template-columns:minmax(240px,1fr) 120px 96px 110px 32px; align-items:center; gap:12px; padding:10px 12px; border-bottom:1px solid #EBEDE7; }
.ar-task-name { text-align:left; min-width:0; color:var(--text); display:grid; gap:4px; }
.ar-task-name strong { font-size:13px; font-weight:400; white-space:normal; overflow-wrap:anywhere; line-height:1.55; }
.ar-task-name small { font-size:11px; color:var(--text-2); }
.ar-task-person,.ar-task-date { font-size:12px; color:var(--text-2); overflow-wrap:anywhere; }
.ar-task-status { background:var(--ar-soft); border:1px solid var(--border); border-radius:4px; padding:5px 7px; min-height:30px; font-size:11px; color:var(--text); }
.ar-icon-button { width:32px; height:32px; display:flex; align-items:center; justify-content:center; color:var(--text-2); flex-shrink:0; border-radius:4px; }
.ar-icon-button:hover,.ar-task-name:hover { color:var(--text); background:var(--ar-soft); }
.ar-load-more { margin:10px 12px; font-size:12px; padding:8px 0; text-decoration:underline; color:var(--text-2); }
.ar-team-dialog { width:min(800px,calc(100vw - 32px)); max-height:85dvh; margin:auto; padding:24px; border:1px solid var(--border); border-radius:8px; overflow:auto; background:white; color:var(--text); }
.ar-team-dialog::backdrop { background:rgba(32,37,34,.3); }
.ar-team-table { overflow:auto; margin:24px 0; }
.ar-team-table table { border-collapse:collapse; width:100%; font-size:13px; }
.ar-team-table td,.ar-team-table th { text-align:left; padding:12px 8px; border-bottom:1px solid var(--border); }
.ar-team-dialog h3 { font-size:16px; margin:24px 0 12px; }
.ar-team-dialog li { padding:10px 0; border-bottom:1px solid var(--border); list-style:none; display:grid; gap:6px; }
.ar-team-dialog li button { text-align:left; color:var(--text); }
.ar-team-dialog small { color:var(--text-2); }
.ar-tool-actions { display:flex; flex-wrap:wrap; gap:16px; }
.ar-tool-actions button { color:var(--text); padding:4px 0; }
.ar-tool-status { color:var(--text-2); font-size:12px; margin:16px 0; }
.ar-tools-dialog { width:min(960px,calc(100vw - 32px)); }
.ar-tool-body label { display:grid; gap:6px; font-size:12px; }
.ar-tool-body input:not([type=checkbox]),.ar-tool-body select,.ar-tool-body textarea { border:1px solid var(--border); padding:8px; border-radius:4px; width:100%; min-width:0; color:var(--text); background:white; }
.ar-tool-dates,.ar-scenario-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:16px; margin:16px 0; }
.ar-scenario-items { max-height:340px; overflow:auto; margin:24px 0; }
.ar-scenario-items fieldset { border:0; border-bottom:1px solid var(--border); padding:12px 0; }
.ar-scenario-items legend label { display:flex; align-items:center; gap:8px; }
.ar-tools-dialog table { border-collapse:collapse; width:100%; font-size:12px; }
.ar-tools-dialog td,.ar-tools-dialog th { padding:12px 8px; text-align:left; border-bottom:1px solid var(--border); }
.ar-tool-body details { margin-top:24px; }.ar-tool-body li button{font-size:12px;text-decoration:underline}
.ar-inbox-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; margin:0 0 24px; }
.ar-inbox-filters label { display:grid; gap:6px; font-size:12px; color:var(--text-2); }
.ar-inbox-filters input,.ar-inbox-filters select { border:1px solid var(--border); border-radius:4px; padding:10px; background:white; color:var(--text); width:100%; min-width:0; }
.ar-inbox-group { border-top:1px solid var(--border); padding-top:12px; margin-top:24px; }
.ar-inbox-group h2,.ar-today-project h3 { font-size:15px; font-weight:600; margin:8px 0 16px; }
.ar-today-project h3 small { font-size:12px; font-weight:400; color:var(--text-2); margin-left:8px; }
.ar-today-project { margin-top:24px; }
.ar-inbox-group>.card { border:0!important; border-bottom:1px solid var(--border)!important; border-radius:0; padding:16px 0; }
.ar-inbox [data-inbox-tab] { font-size:13px!important; }.ar-inbox .page-header+div+div{flex-wrap:wrap}
.ar-inbox [data-inbox-filter] { background:white!important;color:var(--text-2)!important;border-color:var(--border)!important;font-weight:400!important; }
.ar-meetings .ata-tabs { background:var(--ar-soft)!important; border-radius:6px!important; }
.ar-meetings .ata-tab { color:var(--text-2); }.ar-meetings .ata-tab.active{background:white;color:var(--text)}
.ar-meetings .ma-block { border:0; border-top:1px solid var(--border); border-radius:0; box-shadow:none; }
.ar-meetings .ma-block-header { background:white; padding:16px 0; }
.ar-meetings .ata-card { border:1px solid var(--border); border-radius:6px; box-shadow:none; }
@media(max-width:767px){.ar-inbox-filters{grid-template-columns:minmax(0,1fr)}.ar-inbox [data-inbox-tab]{padding:8px!important;min-height:36px}}
.ar-schedule-buckets { margin:0 0 12px; border-bottom:1px solid var(--border); padding-bottom:12px; }
.ar-timeline-outline { margin:12px 0; font-size:12px; }
.ar-timeline-outline label { display:inline-flex; align-items:center; gap:8px; margin:12px 16px 0 0; }
.ar-time-grid { grid-template-columns:300px repeat(var(--ar-days),minmax(24px,1fr)); min-width:calc(300px + var(--ar-days)*24px); }
.ar-time-quarter { grid-template-columns:300px repeat(var(--ar-days),minmax(10px,1fr)); min-width:calc(300px + var(--ar-days)*10px); }
.ar-time-heading { font-size:11px; height:44px; }
.ar-time-heading small { font-size:10px; }
.ar-row-label { min-height:64px; padding:10px 14px; gap:4px; }
.ar-row-label strong { font-size:13px; line-height:1.45; }
.ar-row-label small { font-size:11px; }
.ar-row-track { min-height:64px; background:repeating-linear-gradient(to right,transparent 0,transparent calc(100%/var(--ar-days) - 1px),#F1F2EE calc(100%/var(--ar-days) - 1px),#F1F2EE calc(100%/var(--ar-days))); }
.ar-bar { height:22px; padding:0; border-radius:4px; margin:0 2px; }
.ar-schedule-detail { position:fixed; right:0; top:0; bottom:0; width:min(520px,100vw); z-index:160; background:white; overflow:auto; margin:0; padding:24px; border-left:1px solid var(--border); box-shadow:-10px 0 30px #20252218; }
@media(max-width:1100px) { .ar-task-row { grid-template-columns:minmax(200px,1fr) 92px 82px 94px 28px; gap:8px; } }
@media(max-width:767px) {
  .ar-page-heading { align-items:flex-start; }.ar-page-heading h1{font-size:24px}
  .ar-task-row { grid-template-columns:minmax(0,1fr) auto 32px; gap:8px; padding:12px 4px; }
  .ar-task-name { grid-column:1/-1; }.ar-task-person{grid-column:1}.ar-task-date{grid-column:1;grid-row:3}.ar-task-status{grid-column:2;grid-row:2/4}.ar-task-row>.ar-icon-button{grid-column:3;grid-row:2/4}
  .ar-planning-tabs { align-items:flex-start; }.ar-planning-tabs [data-ar-scope]{padding:8px;font-size:12px}
  .ar-project-toggle strong{font-size:14px}.ar-stage-toggle{padding:9px 4px}.ar-page-heading .btn{font-size:12px;padding:8px 10px;min-height:36px}
}
.ar-schedule-detail .card { border:0; padding-left:0; }
.ar-schedule-detail[open] { left:auto; max-height:100dvh; height:100dvh; max-width:100vw; color:var(--text); border-top:0; border-bottom:0; border-right:0; }
.ar-schedule-detail::backdrop { background:#20252224; }
.ar-today-page { max-width:1120px; margin:0 auto; }
.ar-today-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:12px 0 28px; }
.ar-today-header h1 { font-size:32px; font-weight:400; line-height:1.2; letter-spacing:0; margin-top:8px; }
.ar-eyebrow { color:#5D645F; font-size:14px; }
.ar-today-summary { display:flex; gap:40px; padding:24px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.ar-today-summary > * { display:flex; flex-direction:column; gap:6px; text-align:left; color:#202522; }
.ar-today-summary strong { font-size:28px; font-weight:400; }
.ar-today-summary span { font-size:13px; color:#5D645F; }
.ar-tasks-section { margin-top:32px; }
.ar-tasks-section h2,.ar-section-heading h2 { font-size:20px; font-weight:400; }
.ar-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.ar-section-heading label { display:grid; gap:4px; font-size:13px; color:#5D645F; }
.ar-section-heading input { min-height:36px; border:1px solid var(--border); border-radius:8px; padding:8px 12px; background:#FFFFFF; color:#202522; }
.ar-task { display:grid; width:100%; grid-template-columns:minmax(0,1fr) 160px 112px; align-items:center; gap:16px; text-align:left; padding:20px 0; border-bottom:1px solid var(--border); color:#202522; }
.ar-task:hover { background:rgba(104,113,87,.05); }
.ar-task-copy { display:grid; gap:6px; }
.ar-task-copy strong { font-size:15px; font-weight:500; overflow-wrap:anywhere; }
.ar-task-copy > span,.ar-task-state,.ar-task-date { font-size:13px; color:#5D645F; }
.ar-completed { margin:24px 0; }
.ar-completed summary { font-size:14px; cursor:pointer; min-height:44px; padding:12px 0; }
.ar-today-footer { display:flex; gap:12px; margin-top:24px; flex-wrap:wrap; }
.ar-project-tools { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; margin:24px 0; align-items:end; }
.ar-project-tools .ar-segments { flex-wrap:wrap; }
.ar-project-tools label { display:grid; gap:6px; font-size:13px; }
.ar-project-tools input { border:1px solid var(--border); border-radius:8px; padding:8px 12px; background:var(--bg); min-height:40px; }
.ar-baseline { --ar-baseline-label:280px; color:var(--text); }
.ar-baseline-scroll { overflow:auto; max-height:560px; border:1px solid var(--border); border-radius:8px; isolation:isolate; }
.ar-baseline-canvas { width:calc(var(--ar-baseline-label) + var(--ar-baseline-track)); min-width:100%; }
.ar-baseline-header,.ar-baseline-row { display:flex; width:100%; border-bottom:1px solid var(--border); }
.ar-baseline-header { position:sticky; top:0; z-index:4; background:var(--ar-soft); font-size:12px; font-weight:600; }
.ar-baseline-label { flex:0 0 var(--ar-baseline-label); width:var(--ar-baseline-label); min-width:0; position:sticky; left:0; z-index:2; display:flex; align-items:center; gap:10px; padding:12px; background:inherit; border-right:1px solid var(--border); }
.ar-baseline-track { position:relative; flex:1 0 var(--ar-baseline-track); min-height:48px; }
.ar-baseline-month { position:absolute; top:0; height:48px; padding:14px 0; white-space:nowrap; color:var(--text-2); }
.ar-baseline-month>span { position:sticky; left:calc(var(--ar-baseline-label) + 8px); display:inline-block; padding:0 8px; }
.ar-baseline-body { position:relative; }
.ar-baseline-row { background:var(--bg); }
.ar-baseline-row:nth-child(even) { background:var(--ar-soft); }
.ar-baseline-code { flex:0 0 36px; font-size:11px; color:var(--text-2); overflow-wrap:anywhere; }
.ar-baseline-name { min-width:0; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.ar-baseline-name small { display:block; color:var(--text-2); font-size:11px; text-decoration:underline; }
.ar-baseline-bar { position:absolute; top:50%; transform:translateY(-50%); height:20px; border:1px solid #C6CEBA; border-radius:4px; background:var(--ar-action); overflow:hidden; }
.ar-baseline-bar[data-status="in-progress"] { border-color:var(--ar-olive-dark); }
.ar-baseline-bar[data-overdue="true"] { border:1px dashed var(--text-2); }
.ar-baseline-progress { height:100%; background:var(--ar-olive-dark); }
.ar-baseline-milestone { position:absolute; top:50%; width:12px; height:12px; transform:translateY(-50%) rotate(45deg); border:1px solid var(--text-2); background:var(--ar-action); }
.ar-baseline-milestone[data-status="in-progress"] { border:3px double var(--ar-olive-dark); }
.ar-baseline-milestone[data-status="done"] { background:var(--ar-olive-dark); border-color:var(--ar-olive-dark); }
.ar-baseline-today { position:absolute; top:0; bottom:0; width:1px; background:var(--text-2); pointer-events:none; z-index:1; }
.ar-baseline-no-date { display:block; padding:14px 12px; font-size:12px; color:var(--text-2); }
.ar-baseline-legend { display:flex; flex-wrap:wrap; gap:12px 20px; padding:12px 0; font-size:12px; color:var(--text-2); }
.ar-baseline-legend>span { display:inline-flex; align-items:center; gap:6px; }
.ar-baseline-key { width:20px; height:8px; border:1px solid #C6CEBA; border-radius:2px; background:var(--ar-action); }
.ar-baseline-key[data-state="in-progress"] { border-color:var(--ar-olive-dark); }
.ar-baseline-key[data-state="done"] { background:var(--ar-olive-dark); }
.ar-baseline-key[data-state="overdue"] { border:1px dashed var(--text-2); }
.ar-baseline-key[data-state="milestone"] { width:8px; transform:rotate(45deg); }
.ar-baseline-key[data-state="today"] { width:1px; height:12px; background:var(--text-2); border:0; }
@media(max-width:767px){.ar-baseline{--ar-baseline-label:160px}.ar-baseline-label{gap:6px;padding:10px 8px}.ar-baseline-code{flex-basis:26px}.ar-baseline-name{font-size:12px}select.form-control:not([multiple]):not([size]),select.form-control[size="1"]:not([multiple]){min-height:44px}}
.ar-mobile-sort { display:none; }
.ar-project-table { overflow:auto; }
.ar-project-table .pf-table { width:100%; }
.ar-project-table .pf-table td { font-size:14px !important; }
.ar-project-table .pf-table td span,.ar-project-table .pf-table td div { font-size:13px !important; }
.ar-project-open { text-align:left; color:var(--text); width:100%; min-height:44px; }
.ar-project-table th button { color:var(--text); font-weight:600; min-height:44px; text-align:left; }
.ar-workspace-tabs { display:flex; flex-wrap:wrap; border-bottom:1px solid var(--border); margin-bottom:24px; gap:4px; }
.ar-workspace-tabs button { min-height:44px; padding:10px 14px; color:var(--text-2); border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; font-size:14px; }
.ar-workspace-tabs [aria-selected="true"],.ar-workspace-tabs [aria-current="true"] { border-bottom-color:var(--brand-primary); color:var(--text); background:transparent; font-weight:600; }
.ar-office-panel.card { border:0; border-radius:0; padding:0; background:transparent; }
.ar-office-panel .admin-section { border:0; border-bottom:1px solid var(--border); border-radius:0; padding:20px 0; background:transparent; }
#brand-preview { padding:16px 0; background:transparent; border:0; }
#brand-preview img { max-width:180px; max-height:80px; object-fit:contain; }
#view-form > .card { border:0; border-top:1px solid var(--border); border-radius:0; padding:24px 0; }
#view-form .form-label,#view-form .mode-btn { font-size:14px !important; }
#view-form input,#view-form select,#view-form textarea { min-height:40px; font-size:14px !important; }
@media(max-width:768px) {
  .sidebar,.sidebar.collapsed { width:100%; height:auto; padding:0 0 env(safe-area-inset-bottom); border:0; border-top:1px solid var(--border); transition:none; }
  .sidebar #btn-toggle-sidebar { display:none; }
  .sidebar .global-search-wrapper { display:none; }
  .main-content,.sidebar.collapsed ~ .main-content { margin-left:0; transition:none; }
  .sidebar.collapsed .sidebar-brand,.sidebar.collapsed .sidebar-footer,.sidebar-footer,.sidebar-toggle { display:none; }
  .main-content { padding:24px 20px 100px; }
  .access-wrap { padding-top:32px; }
  .ar-mobile-sort { display:flex; gap:12px; flex-wrap:wrap; }
  .ar-mobile-sort select { min-height:44px; padding:8px; border:1px solid var(--border); border-radius:8px; background:var(--bg); color:var(--text); }
  .ar-today-header { align-items:flex-start; flex-direction:column; }
  .ar-today-summary { gap:20px; flex-wrap:wrap; }
  .ar-section-heading { flex-direction:column; align-items:stretch; }
  .ar-section-heading input { width:100%; min-height:44px; }
  .ar-task { grid-template-columns:minmax(0,1fr) auto; gap:10px; }
  .ar-task-copy { grid-column:1/-1; }
  .ar-task-date { text-align:right; }
  .sidebar-nav,.sidebar.collapsed .sidebar-nav { display:flex; flex-direction:row; flex-wrap:nowrap; overflow-x:auto; overflow-y:hidden; padding:4px; gap:0; }
  .sidebar-nav .nav-item { display:none !important; flex:1 0 0; min-width:0; min-height:58px; padding:6px 2px; border-radius:6px; }
  .sidebar-nav .nav-item[data-view="my-day"],.sidebar-nav .nav-item[data-view="portfolio"],.sidebar-nav .nav-item[data-view="cronograma"],.sidebar-nav .nav-item[data-view="form"] { display:flex !important; }
  .sidebar-nav .nav-item[data-view="planning"] { display:none !important; }
  .sidebar-nav #btn-nav-more { display:flex !important; }
  .sidebar-nav .nav-item span,.sidebar.collapsed .sidebar-nav .nav-item span { display:block; font-size:11px; line-height:16px; white-space:nowrap; }
  .sidebar-nav .nav-item .ar-nav-compact { display:block; }
  .sidebar-nav [data-view="cronograma"] .ar-nav-label,.sidebar-nav [data-view="form"] .ar-nav-label,.sidebar.collapsed .sidebar-nav [data-view="cronograma"] .ar-nav-label,.sidebar.collapsed .sidebar-nav [data-view="form"] .ar-nav-label { display:none; }
  .ar-project-table table,.ar-project-table tbody { display:block; }
  .ar-project-table thead { display:none; }
  .ar-project-table .pf-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:20px 0; border-bottom:1px solid var(--border); }
  .ar-project-table .pf-row td { display:block !important; border:0; padding:0; text-align:left !important; min-width:0; overflow-wrap:anywhere; }
  .ar-project-table .pf-row td:first-child { grid-column:1/-1; }
  .ar-project-table .pf-row td:not(:first-child)::before { content:attr(data-label); display:block; color:var(--text-2); font-size:13px; margin-bottom:4px; }
  .sidebar-brand,#ar-office { display:none; }
  .sidebar-nav [data-ar-primary="false"] { display:none; }
  .ar-timeline { display:none; }
  .ar-schedule-mobile { display:grid; }
  .ar-mobile-row { text-align:left; display:grid; gap:6px; padding:16px 0; border-bottom:1px solid var(--border); color:#202522; overflow-wrap:anywhere; }
  .ar-mobile-row span { color:#5D645F; font-size:13px; }
  .ar-mobile-row strong { font-weight:500; font-size:15px; }
  .ar-schedule-tools { display:grid; grid-template-columns:minmax(0,1fr); }
  .ar-period strong { min-width:0; flex:1; }
  .ar-period button,.ar-pagination button,.ar-segments button { min-height:44px; min-width:44px; }
  .ar-schedule-tools input,.ar-schedule-tools select { min-height:44px; width:100%; }
  .ar-pagination { flex-wrap:wrap; }
  .crono-summary { gap:16px; }
  .page-title { font-size:24px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
