/* SUTACC / Sutra V2. Shared across accounting, administration and authentication. */
:root {
  --sa-bg:#eef3f8; --sa-surface:#fff; --sa-subtle:#f6f8fb; --sa-line:#dfe8f3;
  --sa-line-strong:#cedceb; --sa-text:#172033; --sa-muted:#64748b;
  --sa-brand:#1688f8; --sa-brand-deep:#0868c3; --sa-brand-soft:#eaf4ff;
  --sa-teal:#0ca9aa; --sa-purple:#722ed1; --sa-shadow:0 8px 26px rgba(23,50,88,.055);
  --sa-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
body.sutacc-v2 { background:linear-gradient(180deg,#f7fbff 0%,var(--sa-bg) 48%,#f6f2ff 100%); color:var(--sa-text); font:14px/1.55 var(--sa-font); min-height:100vh; letter-spacing:0; }
.sutacc-v2 *, .sutacc-v2 *::before, .sutacc-v2 *::after { box-sizing:border-box; }
.sutacc-v2 h1,.sutacc-v2 h2,.sutacc-v2 h3,.sutacc-v2 h4,.sutacc-v2 h5,.sutacc-v2 h6,.sutacc-v2 .h1,.sutacc-v2 .h2,.sutacc-v2 .h3,.sutacc-v2 .h4 { color:var(--sa-text); font-weight:700; letter-spacing:-.025em; }
.sutacc-v2 a { color:var(--sa-brand-deep); }
.sutacc-v2 a:hover { color:var(--sa-brand); }
.sutacc-v2 .text-muted,.sutacc-v2 .text-secondary { color:var(--sa-muted)!important; }
.sutacc-v2 .text-primary { color:var(--sa-brand-deep)!important; }
.sutacc-v2 .text-success { color:#128267!important; }
.sutacc-v2 .text-danger { color:#d13e51!important; }
.sutacc-v2 .text-warning { color:#986400!important; }
.sutacc-v2 .text-info { color:#087d98!important; }
.sutacc-v2 small,.sutacc-v2 .small { font-size:12px; }
.sutacc-v2 strong { font-weight:650; }
.sutacc-v2 .main-content { margin:0!important; padding:0!important; min-width:0; }
.sutacc-v2 .main-content > .container-fluid { max-width:1800px; padding:24px 28px 40px; }
.sutacc-skip-link { position:fixed; top:-80px; left:20px; padding:12px 18px; background:var(--sa-surface); border:2px solid var(--sa-brand); border-radius:10px; z-index:5000; }
.sutacc-skip-link:focus { top:12px; }
.sutacc-v2 :focus-visible { outline:3px solid #1688f8; outline-offset:3px; }
.sutacc-v2 .sutacc-topnav { border:0; background:var(--sa-surface); box-shadow:0 3px 16px rgba(15,44,81,.05); backdrop-filter:none; }
.sutacc-v2 .sutacc-topnav::before { content:""; position:absolute; top:0; inset-inline:0; height:4px; background:linear-gradient(90deg,#1890ff,#13c2c2 58%,#722ed1); }
.sutacc-v2 .sutacc-topnav-header { min-height:84px; padding:16px 28px; gap:24px; background:linear-gradient(110deg,#edf7ff,#f8fbff 56%,#f5efff); border-bottom:1px solid var(--sa-line); }
.sutacc-v2 .sutacc-brand { display:flex; align-items:center; gap:18px; min-width:0; }
.sutacc-v2 .sutacc-brand img { display:block; width:auto; max-width:none; height:52px; object-fit:contain; }
.sutacc-brand-caption { font-size:10px; font-weight:750; color:var(--sa-muted); letter-spacing:.12em; line-height:1.5; padding-inline-start:18px; border-inline-start:1px solid var(--sa-line-strong); text-transform:uppercase; }
.sutacc-v2 .sutacc-topnav-tools { margin-inline-start:auto; flex:0 1 auto; }
.sutacc-v2 .sutacc-topnav-meta .nav { gap:8px; align-items:center; }
.sutacc-v2 .sutacc-topnav-meta .nav-item { margin:0!important; }
.sutacc-v2 .sutacc-topnav-meta .nav-link,.sutacc-v2 .sutacc-topnav-meta .btn { margin:0!important; border-radius:10px; height:38px; min-width:38px; width:auto; padding:8px 10px!important; display:inline-flex; align-items:center; justify-content:center; line-height:1.2; color:#536580; border:1px solid transparent; background:transparent; }
.sutacc-v2 .sutacc-topnav-meta .nav-link:hover { background:var(--sa-brand-soft); border-color:var(--sa-line); }
.sutacc-v2 .sutacc-topnav-meta .sutacc-company-switch { background:var(--sa-surface); border:1px solid #cfe2f5; color:var(--sa-brand-deep); gap:8px; }
.sutacc-v2 .sutacc-topnav-meta .sutacc-area-switch { color:#5c46a2; background:#f0eaff; border-color:#e4dbf7; gap:7px; }
.sutacc-v2 .sutacc-topnav-meta .btn .btn-text { display:inline; max-width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:650; }
.sutacc-v2 .sutacc-topnav-meta .sutacc-profile-link { padding:0!important; gap:9px; height:42px; }
.sutacc-avatar { display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:12px; background:linear-gradient(140deg,#dceeff,#e7dcff); color:#245384; font-size:13px; font-weight:750; flex-shrink:0; }
.sutacc-profile-copy { display:flex; flex-direction:column; text-align:start; font-size:12px; line-height:1.4; color:var(--sa-text); max-width:130px; }
.sutacc-profile-copy strong { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sutacc-profile-copy small { color:var(--sa-muted); font-size:10px; }
.sutacc-v2 .sutacc-topnav-meta .dropdown-menu { min-width:200px; }
.sutacc-v2 .sutacc-topnav-meta .dropdown-menu .nav-link { width:100%; justify-content:flex-start; padding:10px 12px!important; height:auto; font-size:13px; }
.sutacc-v2 .sutacc-nav-shell { padding:9px 24px; background:var(--sa-surface); }
.sutacc-v2 .sutacc-nav-list { gap:3px; padding:4px; border:1px solid var(--sa-line); border-radius:14px; background:var(--sa-subtle); justify-content:space-between; }
.sutacc-v2 .sutacc-nav-link { min-height:37px; padding:9px 10px; border-radius:9px; font-size:12px; font-weight:650; color:#50647f; gap:7px; }
.sutacc-v2 .sutacc-nav-link:hover,.sutacc-v2 .sutacc-nav-item.is-open > .sutacc-nav-link { background:var(--sa-brand-soft); color:var(--sa-brand-deep); }
.sutacc-v2 .sutacc-nav-item.active > .sutacc-nav-link { background:var(--sa-brand); color:#fff; box-shadow:0 3px 9px rgba(24,144,255,.22); }
.sutacc-v2 .sutacc-dropdown,.sutacc-v2 .sutacc-submenu { background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:14px; box-shadow:0 18px 48px rgba(24,46,79,.14); padding:8px; }
.sutacc-v2 .sutacc-dropdown-link,.sutacc-v2 .sutacc-submenu-trigger { color:var(--sa-text); font-size:13px; border-radius:8px; padding:9px 11px; line-height:1.45; }
.sutacc-v2 .sutacc-dropdown-link:hover,.sutacc-v2 .sutacc-submenu-trigger:hover { color:var(--sa-brand-deep); background:var(--sa-brand-soft); }
.sutacc-v2 .sutacc-mega-heading { color:var(--sa-brand-deep); font-size:11px; letter-spacing:.04em; font-weight:750; }
.sutacc-v2 .sutacc-nav-toggle { background:var(--sa-surface); color:var(--sa-brand-deep); border-color:var(--sa-line-strong); border-radius:11px; flex-shrink:0; }
.sutacc-page-hero { position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:144px; padding:27px 30px; margin-bottom:25px; border:1px solid rgba(22,136,248,.2); border-radius:22px; background:radial-gradient(ellipse at 80% 20%,rgba(19,194,194,.17),transparent 50%),linear-gradient(120deg,#082f62,#095da4 70%,#088caa); box-shadow:0 15px 36px rgba(18,56,96,.13); color:#fff; }
.sutacc-page-hero::after { content:""; position:absolute; z-index:-1; width:320px; height:320px; border:1px solid rgba(255,255,255,.1); border-radius:50%; top:-230px; right:12%; box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.025); pointer-events:none; }
.sutacc-hero-copy { display:flex; align-items:center; gap:18px; min-width:0; }
.sutacc-hero-icon { display:flex; align-items:center; justify-content:center; width:56px; height:56px; flex-shrink:0; border:1px solid rgba(255,255,255,.2); border-radius:17px; background:rgba(255,255,255,.1); color:#72e6e2; font-size:23px; }
.sutacc-eyebrow { font-size:10px; font-weight:750; text-transform:uppercase; letter-spacing:.14em; color:#b9d9ee; margin-bottom:8px; }
.sutacc-eyebrow span { margin:0 8px; opacity:.5; }
.sutacc-v2 .sutacc-page-hero h1 { color:#fff; font-size:clamp(23px,2.3vw,32px); font-weight:750; line-height:1.15; margin:0 0 8px; letter-spacing:-.035em; overflow-wrap:anywhere; }
.sutacc-page-hero p { color:#c5e0f3; margin:0; font-size:12px; max-width:620px; }
.sutacc-hero-context { display:flex; align-items:flex-end; flex-direction:column; flex-shrink:0; gap:5px; max-width:32%; text-align:end; }
.sutacc-context-label { font-size:12px; font-weight:650; color:#fff; overflow-wrap:anywhere; }
.sutacc-context-label i { margin-inline-end:5px; color:#7be8e2; }
.sutacc-context-detail { font-size:11px; color:#c5e0f3; }
.sutacc-hero-search { margin-top:8px; padding:8px 11px; display:flex; gap:9px; align-items:center; color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.22); border-radius:10px; font-size:11px; cursor:pointer; }
.sutacc-hero-search:hover { background:rgba(255,255,255,.19); }
.sutacc-hero-search kbd { color:#cce3f2; background:rgba(0,0,0,.12); font:10px var(--sa-font); }
.sutacc-overline { display:block; font-size:10px; letter-spacing:.12em; font-weight:750; color:var(--sa-muted); margin-bottom:5px; }
.sutacc-v2 .card { border:1px solid var(--sa-line); border-radius:16px; background:var(--sa-surface); box-shadow:var(--sa-shadow)!important; min-width:0; }
.sutacc-v2 .card-header { padding:17px 22px; background:transparent; border-bottom:1px solid var(--sa-line); border-radius:16px 16px 0 0; color:var(--sa-text); gap:12px; flex-wrap:wrap; }
.sutacc-v2 .card-header strong,.sutacc-v2 .card-title { font-size:13px; font-weight:700; letter-spacing:.005em; }
.sutacc-v2 .card-body { padding:22px; }
.sutacc-v2 .card-footer { padding:15px 22px; border-color:var(--sa-line); background:var(--sa-subtle); border-radius:0 0 16px 16px; }
.sutacc-v2 .card .card { box-shadow:none!important; }
.sutacc-v2 .btn { border-radius:9px; font-size:13px; font-weight:600; padding:9px 14px; line-height:1.4; box-shadow:none; transition:background .15s,color .15s,border-color .15s,box-shadow .15s; }
.sutacc-v2 .btn-sm,.sutacc-v2 .btn-group-sm > .btn { padding:6px 10px; font-size:12px; min-height:32px; }
.sutacc-v2 .btn-lg { padding:12px 20px; font-size:14px; }
.sutacc-v2 .btn-primary { background:var(--sa-brand); border-color:var(--sa-brand); color:#fff; }
.sutacc-v2 .btn-primary:hover,.sutacc-v2 .btn-primary:focus { background:var(--sa-brand-deep); border-color:var(--sa-brand-deep); }
.sutacc-v2 .btn-secondary { background:#596a82; border-color:#596a82; color:white; }
.sutacc-v2 .btn-outline-primary { color:var(--sa-brand-deep); background:var(--sa-surface); border-color:#c4ddf6; }
.sutacc-v2 .btn-outline-primary:hover,.sutacc-v2 .btn-outline-primary.active { color:#fff; background:var(--sa-brand); border-color:var(--sa-brand); }
.sutacc-v2 .btn-light,.sutacc-v2 .btn-outline-secondary { background:var(--sa-surface); border-color:var(--sa-line-strong); color:var(--sa-muted); }
.sutacc-v2 .btn-light:hover,.sutacc-v2 .btn-outline-secondary:hover,.sutacc-v2 .btn-outline-secondary.active { background:var(--sa-subtle); border-color:var(--sa-muted); color:var(--sa-text); }
.sutacc-v2 .btn-success { color:#fff; background:#128267; border-color:#128267; }
.sutacc-v2 .btn-danger { color:#fff; background:#d13e51; border-color:#d13e51; }
.sutacc-v2 .btn-warning { background:#fff3d6; border-color:#f4d58e; color:#835600; }
.sutacc-v2 .btn-info { color:#fff; background:#087d98; border-color:#087d98; }
.sutacc-v2 .btn-group > .btn { border-radius:0; }
.sutacc-v2 .btn-group > .btn:first-child { border-start-start-radius:9px; border-end-start-radius:9px; }
.sutacc-v2 .btn-group > .btn:last-child { border-start-end-radius:9px; border-end-end-radius:9px; }
.sutacc-v2 label,.sutacc-v2 .form-label { font-size:12px; color:var(--sa-text); font-weight:600; margin-bottom:7px; }
.sutacc-v2 .form-group { margin-bottom:20px; }
.sutacc-form-section { border:0; min-width:0; padding:0 0 5px; margin:0 0 24px; border-bottom:1px solid var(--sa-line); }
.sutacc-form-section legend { display:flex; align-items:center; gap:10px; width:auto; padding:0; font-size:15px; font-weight:700; margin-bottom:5px; }
.sutacc-form-section legend i { color:var(--sa-brand); }
.sutacc-form-section > p { color:var(--sa-muted); font-size:12px; margin-bottom:20px; }
.sutacc-form-actions { display:flex; gap:10px; flex-wrap:wrap; padding-top:2px; }
.sutacc-v2 .form-control,.sutacc-v2 .custom-select { min-height:40px; height:40px; border:1px solid var(--sa-line-strong); border-radius:9px; color:var(--sa-text); background:var(--sa-surface); font-size:13px; padding:9px 12px; line-height:1.5; box-shadow:none; }
.sutacc-v2 textarea.form-control,.sutacc-v2 select[multiple].form-control { height:auto; min-height:110px; }
.sutacc-v2 .form-control::placeholder { color:#8a98ac; opacity:1; }
.sutacc-v2 .form-control:focus,.sutacc-v2 .custom-select:focus { border-color:var(--sa-brand); box-shadow:0 0 0 3px rgba(24,144,255,.12); }
.sutacc-v2 .form-control[readonly],.sutacc-v2 .form-control:disabled { background:var(--sa-subtle); color:var(--sa-muted); }
.sutacc-v2 .form-control.is-invalid { border-color:#d13e51; }
.sutacc-v2 .invalid-feedback,.sutacc-v2 label.error { color:#c52e43; font-size:12px; }
.sutacc-v2 .form-text { font-size:12px; line-height:1.5; }
.sutacc-v2 .input-group-text { border-color:var(--sa-line-strong); border-radius:9px; background:var(--sa-subtle)!important; color:var(--sa-muted); font-size:13px; }
.sutacc-v2 .input-group > .form-control:not(:last-child) { border-start-end-radius:0; border-end-end-radius:0; }
.sutacc-v2 .input-group-append .input-group-text,.sutacc-v2 .input-group-append .btn { border-start-start-radius:0; border-end-start-radius:0; }
.sutacc-v2 input[type=checkbox],.sutacc-v2 input[type=radio] { accent-color:var(--sa-brand); }
.sutacc-v2 .select2-container--default .select2-selection--single,.sutacc-v2 .select2-container--default .select2-selection--multiple { min-height:40px; border:1px solid var(--sa-line-strong); border-radius:9px; background:var(--sa-surface); }
.sutacc-v2 .select2-container--default .select2-selection--single .select2-selection__rendered { color:var(--sa-text); line-height:38px; padding-inline-start:12px; font-size:13px; }
.sutacc-v2 .select2-container--default .select2-selection--single .select2-selection__arrow { height:38px; }
.sutacc-v2 .select2-dropdown { background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:12px; box-shadow:0 15px 40px rgba(20,40,70,.15); padding:6px; }
.sutacc-v2 .select2-results__option { font-size:13px; border-radius:7px; padding:8px 10px; color:var(--sa-text); }
.sutacc-v2 .select2-container--default .select2-results__option--highlighted[aria-selected] { color:var(--sa-brand-deep); background:var(--sa-brand-soft); }
.sutacc-v2 .select2-search__field { color:var(--sa-text); background:var(--sa-surface); border:1px solid var(--sa-line-strong)!important; border-radius:7px; }
.sutacc-v2 .bootstrap-select > .dropdown-toggle { min-height:40px; border:1px solid var(--sa-line-strong); background:var(--sa-surface); color:var(--sa-text); padding:9px 12px; font-size:13px; font-weight:400; }
.sutacc-v2 .bootstrap-select.form-control { padding:0; border:0; background:transparent; box-shadow:none; }
.sutacc-v2 .dropdown-menu { background:var(--sa-surface); border:1px solid var(--sa-line); color:var(--sa-text); padding:7px; border-radius:12px; box-shadow:0 16px 42px rgba(22,47,82,.14); }
.sutacc-v2 .dropdown-item { padding:9px 11px; font-size:13px; color:var(--sa-text); border-radius:7px; }
.sutacc-v2 .dropdown-item:hover,.sutacc-v2 .dropdown-item.active { background:var(--sa-brand-soft); color:var(--sa-brand-deep); }
.sutacc-v2 .table { color:var(--sa-text); font-size:12px; font-variant-numeric:tabular-nums; margin-bottom:0; }
.sutacc-v2 .table th,.sutacc-v2 .table td { padding:12px 14px; border-color:var(--sa-line); vertical-align:middle; }
.sutacc-v2 .table thead th,.sutacc-v2 .table .thead-light th,.sutacc-v2 table.dataTable thead th { color:#566b87; font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.045em; font-weight:750; background:var(--sa-subtle); border-bottom:1px solid var(--sa-line-strong); border-top:0; }
.sutacc-v2 .table-bordered { border-color:var(--sa-line); }
.sutacc-v2 .table-bordered th,.sutacc-v2 .table-bordered td { border-left:0; border-right:0; }
.sutacc-v2 .table-striped tbody tr:nth-of-type(odd) { background:rgba(137,166,204,.035); }
.sutacc-v2 .table-hover tbody tr:hover { color:var(--sa-text); background:var(--sa-brand-soft); }
.sutacc-v2 .table tfoot { background:var(--sa-brand-soft); font-weight:700; }
.sutacc-v2 .table .btn.btn-icon { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; min-width:32px; padding:0; }
.sutacc-v2 .table .btn.btn-icon.btn-danger,.sutacc-v2 .table .entry-action-btn.btn-danger { color:#bc334b; background:#ffedf0; border-color:#f8d8df; }
.sutacc-v2 .table .btn.btn-icon.btn-info,.sutacc-v2 .table .entry-action-btn.btn-info { color:var(--sa-brand-deep); background:var(--sa-brand-soft); border-color:var(--sa-line); }
.sutacc-v2 .table .btn.btn-icon.btn-warning,.sutacc-v2 .table .entry-action-btn.btn-warning { color:#906000; background:#fff5de; border-color:#f6e7c4; }
.sutacc-v2 .dt-container { font-size:12px; }
.sutacc-v2 .dt-container select.dt-input,.sutacc-v2 .dt-container input.dt-input { min-height:35px; border:1px solid var(--sa-line-strong); border-radius:8px; padding:5px 9px; color:var(--sa-text); background:var(--sa-surface); }
.sutacc-v2 .dt-container .dt-length label { margin:0 7px; }
.sutacc-v2 .table-responsive { border-radius:10px; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#b6c9df transparent; }
.sutacc-v2 .table-responsive:focus-visible { outline-offset:-3px; }
.sutacc-v2 .dataTables_wrapper { font-size:12px; }
.sutacc-v2 .dataTables_wrapper .dataTables_filter input { min-height:35px; height:35px; width:180px; margin-inline-start:8px; }
.sutacc-v2 .dataTables_wrapper .dataTables_length select { height:35px; min-height:35px; padding:5px 22px 5px 9px; }
.sutacc-v2 .dataTables_wrapper .dataTables_info { color:var(--sa-muted); padding-top:18px; }
.sutacc-v2 .page-link { color:var(--sa-muted); background:var(--sa-surface); border-color:var(--sa-line); font-size:12px; padding:8px 12px; }
.sutacc-v2 .page-item.active .page-link { background:var(--sa-brand); border-color:var(--sa-brand); color:#fff; }
.sutacc-v2 .page-item.disabled .page-link { background:var(--sa-subtle); border-color:var(--sa-line); }
.sutacc-v2 .badge { padding:5px 8px; border-radius:6px; font-size:10px; font-weight:650; line-height:1.3; }
.sutacc-v2 .badge-success { color:#12624e; background:#ddf4eb; }
.sutacc-v2 .badge-danger { color:#ae3043; background:#ffeaed; }
.sutacc-v2 .badge-warning { color:#805600; background:#fff0cb; }
.sutacc-v2 .badge-primary,.sutacc-v2 .badge-info { color:#1265ad; background:#e4f2ff; }
.sutacc-v2 .badge-secondary,.sutacc-v2 .badge-light { color:var(--sa-muted); background:var(--sa-subtle); }
.sutacc-v2 .alert { border-radius:12px; padding:15px 18px; font-size:13px; border-width:1px; }
.sutacc-v2 .alert-info { color:#135e86; background:#eef8ff; border-color:#cde8f9; }
.sutacc-v2 .alert-warning { color:#805a16; background:#fff9e9; border-color:#f4e2b4; }
.sutacc-v2 .alert-success { color:#12634e; background:#ecf9f2; border-color:#c6e9d7; }
.sutacc-v2 .alert-danger { color:#a12d40; background:#fff0f2; border-color:#f1cad2; }
.sutacc-v2 .modal-content { background:var(--sa-surface); color:var(--sa-text); border:1px solid var(--sa-line); border-radius:20px; box-shadow:0 30px 90px rgba(8,31,64,.22); }
.sutacc-v2 .modal-header { padding:22px 24px; border-color:var(--sa-line); align-items:center; }
.sutacc-v2 .modal-body { padding:24px; }
.sutacc-v2 .modal-footer { padding:16px 24px; border-color:var(--sa-line); gap:8px; }
.sutacc-v2 .close { color:var(--sa-muted); text-shadow:none; opacity:.8; }
.sutacc-v2 .modal-backdrop { background:#0b2242; }
.sutacc-v2 .modal { z-index:4200; }
.sutacc-v2 .modal-backdrop { z-index:4150; }
.sutacc-v2 .nav-tabs { border-color:var(--sa-line); gap:4px; }
.sutacc-v2 .nav-tabs .nav-link { border-radius:9px 9px 0 0; color:var(--sa-muted); font-weight:600; font-size:12px; padding:11px 16px; }
.sutacc-v2 .nav-tabs .nav-link.active { background:var(--sa-surface); color:var(--sa-brand-deep); border-color:var(--sa-line) var(--sa-line) var(--sa-surface); }
.sutacc-v2 .list-group-item { background:var(--sa-surface); border-color:var(--sa-line); color:var(--sa-text); }
.sutacc-v2 pre { color:var(--sa-text); background:var(--sa-subtle); border:1px solid var(--sa-line); border-radius:10px; padding:14px; }
.sutacc-v2 hr { border-color:var(--sa-line); }
.sutacc-workspace-footer { display:flex; justify-content:space-between; gap:16px; max-width:1800px; margin:0 auto; padding:0 28px 24px; color:var(--sa-muted); font-size:11px; }
.sutacc-workspace-footer strong { letter-spacing:.09em; color:#7b8da7; }
.sutacc-shortcut-tile { display:flex; align-items:center; flex-direction:column; gap:16px; position:relative; padding:28px 18px; border:1px solid var(--sa-line); border-radius:16px; background:var(--sa-surface); box-shadow:var(--sa-shadow); width:100%; min-height:155px; margin-bottom:20px; color:var(--sa-text)!important; text-decoration:none!important; }
.sutacc-shortcut-tile:hover { border-color:var(--sa-brand); background:var(--sa-brand-soft); }
.sutacc-shortcut-symbol { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:14px; background:var(--sa-brand-soft); color:var(--sa-brand); font-size:22px; }
.sutacc-shortcut-tile strong { font-size:13px; }
.sutacc-shortcut-arrow { position:absolute; inset-inline-end:15px; top:15px; color:var(--sa-muted); font-size:12px; }
.sutacc-v2 .folder-item { background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:14px; padding:20px 12px; }
.sutacc-v2 .folder-item:hover { background:var(--sa-brand-soft); border-color:var(--sa-brand); transform:none; }
.sutacc-v2 .folder-icon { color:#e2ae46; }
.sutacc-v2 .drop-zone { background:var(--sa-brand-soft); color:var(--sa-brand-deep); border:1px dashed var(--sa-brand); border-radius:14px; padding:34px; }
.sutacc-v2 .context-menu { background:var(--sa-surface); border-color:var(--sa-line); border-radius:12px; box-shadow:var(--sa-shadow); }
.sutacc-v2 .context-menu li:hover { background:var(--sa-brand-soft); }
.sutacc-v2 .file-preview { border-color:var(--sa-line); background:var(--sa-surface); border-radius:12px; }
.sutacc-v2 .sutacc-account-picker-card { background:var(--sa-subtle); border:1px solid var(--sa-line); border-radius:13px; padding:17px; }
.sutacc-v2 .sutacc-account-picker-card .value { color:var(--sa-text); }
/* Navigator */
.sutacc-search-modal .modal-dialog { max-width:620px; }
.sutacc-search-field { position:relative; }
.sutacc-search-field > i { position:absolute; top:16px; inset-inline-start:15px; color:var(--sa-brand); }
.sutacc-v2 .sutacc-search-field input { height:48px; padding-inline-start:42px; font-size:14px; }
.sutacc-search-results { display:flex; flex-direction:column; gap:4px; max-height:340px; overflow:auto; }
.sutacc-search-results a { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:11px 12px; border-radius:10px; color:var(--sa-text); text-decoration:none; }
.sutacc-search-results a:hover,.sutacc-search-results a:focus { background:var(--sa-brand-soft); color:var(--sa-brand-deep); }
.sutacc-search-results small { display:block; font-size:10px; color:var(--sa-muted); margin-top:3px; }
.sutacc-search-empty { padding:30px 16px; text-align:center; color:var(--sa-muted); }
.sutacc-search-modal .modal-footer { justify-content:space-between; }
/* Finance overview */
.sutacc-dashboard-kicker { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:15px; }
.sutacc-dashboard-kicker h2 { margin:0; font-size:16px; }
.sutacc-dashboard-kicker p { margin:4px 0 0; font-size:12px; color:var(--sa-muted); }
.sutacc-overview-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-bottom:24px; }
.sutacc-metric { position:relative; padding:21px; min-width:0; border:1px solid var(--sa-line); border-radius:16px; background:var(--sa-surface); box-shadow:var(--sa-shadow); }
.sutacc-metric-heading { display:flex; justify-content:space-between; align-items:center; font-size:12px; font-weight:600; color:var(--sa-muted); margin-bottom:13px; gap:10px; }
.sutacc-metric-icon { display:flex; width:35px; height:35px; align-items:center; justify-content:center; border-radius:11px; color:#1688f8; background:#eaf4ff; font-size:16px; }
.sutacc-metric:nth-child(2) .sutacc-metric-icon { color:#8b51c7; background:#f3eaff; }
.sutacc-metric:nth-child(3) .sutacc-metric-icon { color:#0a9b9b; background:#e2f7f5; }
.sutacc-metric:nth-child(4) .sutacc-metric-icon { color:#ce911c; background:#fff5df; }
.sutacc-metric-value { display:block; font-size:clamp(22px,2vw,30px); font-weight:750!important; letter-spacing:-.045em; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; line-height:1.3; margin-bottom:12px; }
.sutacc-metric .dashboard-card-links { font-size:11px; line-height:1.8; }
.sutacc-v2 .dashboard-report-link { color:var(--sa-brand-deep); font-weight:550; font-size:11px; text-decoration:none; }
.sutacc-v2 .dashboard-report-link:hover { text-decoration:underline; }
.dashboard-card-links { display:flex; flex-wrap:wrap; gap:4px 13px; padding-top:11px; border-top:1px solid var(--sa-line); }
.dashboard-analytics-links { display:flex; flex-wrap:wrap; gap:5px 14px; }
.sutacc-turnover-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:24px; }
.sutacc-turnover-grid .card-body { display:grid; grid-template-columns:1fr 1.4fr; gap:22px; }
.sutacc-turnover-primary { display:flex; flex-direction:column; justify-content:center; border-inline-end:1px solid var(--sa-line); padding-inline-end:15px; }
.sutacc-turnover-primary small { color:var(--sa-muted); }
.sutacc-turnover-primary strong { font-size:25px; font-weight:750; letter-spacing:-.03em; margin-top:6px; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.sutacc-turnover-detail > div { display:flex; justify-content:space-between; gap:10px; padding:7px 0; color:var(--sa-muted); font-size:12px; }
.sutacc-turnover-detail strong { color:var(--sa-text); font-variant-numeric:tabular-nums; }
.sutacc-dashboard .row.my-4 { margin-top:0!important; margin-bottom:24px!important; }
.sutacc-dashboard .card.mb-4.h-100 { margin-bottom:0!important; }
.sutacc-dashboard .card-body.my-n3 { margin-top:0!important; margin-bottom:0!important; }
.sutacc-dashboard .h3 { font-size:25px; font-variant-numeric:tabular-nums; }
/* Replace crowded HR shortcut cards with compact, accessible disclosure navigation. */
.sutacc-hr-nav { display:flex; align-items:center; gap:6px; flex-wrap:wrap; background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:13px; padding:7px; margin-bottom:22px; }
.sutacc-hr-nav > span { padding:0 10px; font-size:10px; letter-spacing:.07em; font-weight:750; color:var(--sa-muted); }
.sutacc-hr-nav details { position:relative; }
.sutacc-hr-nav summary { list-style:none; cursor:pointer; padding:9px 12px; font-size:12px; font-weight:600; color:var(--sa-muted); border-radius:8px; }
.sutacc-hr-nav summary::-webkit-details-marker { display:none; }
.sutacc-hr-nav summary::after { content:"⌄"; margin-inline-start:10px; }
.sutacc-hr-nav details[open] summary,.sutacc-hr-nav details.is-active summary { color:var(--sa-brand-deep); background:var(--sa-brand-soft); }
.sutacc-hr-menu { position:absolute; z-index:50; min-width:230px; top:calc(100% + 8px); inset-inline-start:0; padding:7px; border-radius:12px; border:1px solid var(--sa-line); box-shadow:0 16px 35px rgba(20,40,70,.13); background:var(--sa-surface); }
.sutacc-hr-menu a { display:flex; gap:10px; padding:10px; color:var(--sa-text); font-size:12px; border-radius:7px; text-decoration:none; }
.sutacc-hr-menu a:hover,.sutacc-hr-menu a.active { background:var(--sa-brand-soft); color:var(--sa-brand-deep); }
/* Transaction grids: legible columns and reachable controls at every viewport. */
.sutacc-v2 .entries-list-page .entries-list-card .card-body { padding:20px; }
.sutacc-v2 .entries-list-page #table { table-layout:auto; contain:none; min-width:1160px; }
.sutacc-v2 .entries-list-page #table th,.sutacc-v2 .entries-list-page #table td { padding:11px 12px!important; word-break:normal; vertical-align:middle; }
.sutacc-v2 .entries-list-page #table th { font-size:10px; line-height:1.5; white-space:nowrap; overflow-wrap:normal; }
.sutacc-v2 .entries-list-page #table tbody tr:nth-child(odd) > td { background:var(--sa-surface)!important; }
.sutacc-v2 .entries-list-page #table tbody tr:nth-child(even) > td { background:var(--sa-subtle)!important; }
.sutacc-v2 .entries-list-page #table tbody tr:hover > td { background:var(--sa-brand-soft)!important; }
.sutacc-v2 .entries-list-page #table .entry-action-grid { grid-template-columns:repeat(5,30px); width:166px; gap:4px; }
.sutacc-v2 .entries-list-page #table .entry-action-btn { width:30px; height:30px; min-width:30px; min-height:30px; border-radius:7px; }
.sutacc-v2 .entries-list-page #table .entry-action-btn i { font-size:12px; }
.sutacc-v2 .entry-list-filters { gap:8px 0; }
.sutacc-v2 .entry-list-filters > [class*=col-] { padding-inline-end:10px!important; }
.sutacc-v2 .entry-form-page .entry-transaction-card { background:var(--sa-subtle); border-color:var(--sa-line); border-radius:13px; padding:18px; }
.sutacc-v2 .entry-form-page .entry-transaction-card .form-label { color:var(--sa-text); font-size:11px; letter-spacing:.02em; }
.sutacc-v2 .entry-form-page .card { background:var(--sa-surface); border-color:var(--sa-line); border-radius:16px; }
.sutacc-v2 .entry-form-page .form-control { color:var(--sa-text); border-color:var(--sa-line-strong); background:var(--sa-surface); font-size:13px; }
/* Authentication uses the same brand and controls. */
.sutacc-v2.sutacc-auth { background:linear-gradient(140deg,#edf7ff,#f7faff 55%,#f0eaff); }
.sutacc-auth .sutacc-login-story { background:radial-gradient(circle at 85% 20%,rgba(19,194,194,.18),transparent 50%),linear-gradient(145deg,#082f62,#095da4 75%,#088caa); }
.sutacc-auth .sutacc-login-story .sutacc-brand img { height:88px; }
.sutacc-auth .sutacc-login-story h1 { color:#fff; letter-spacing:-.045em; }
.sutacc-auth .sutacc-login-story::before { background:rgba(19,194,194,.13); }
.sutacc-auth .sutacc-login-panel { background:transparent; }
.sutacc-auth .sutacc-login-card { width:100%; max-width:480px; padding:34px; background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:24px; box-shadow:0 24px 70px rgba(18,56,96,.1); }
.sutacc-auth .sutacc-control .form-control { height:50px; min-height:50px; padding:0 46px; font-size:14px; border-radius:10px!important; }
.sutacc-auth .sutacc-control > i { left:auto; inset-inline-start:16px; }
.sutacc-auth .sutacc-control .show-password-btn { right:auto; inset-inline-end:5px; }
.sutacc-auth .sutacc-form-heading p { font-size:13px; }
.sutacc-auth .sutacc-login-btn { background:var(--sa-brand); border-radius:10px; }
.sutacc-auth .sutacc-login-btn:hover { background:var(--sa-brand-deep); }
.sutacc-auth .sutacc-control:focus-within { border-color:var(--sa-brand); box-shadow:0 0 0 3px rgba(24,144,255,.12); }
.sutacc-auth .sutacc-story-kicker::before,.sutacc-auth .status-dot { background:#53dfd4; }
.sutacc-auth-shell { min-height:calc(100vh - 70px); display:flex; align-items:center; justify-content:center; padding:40px 20px; }
.sutacc-auth-box { width:100%; max-width:480px; padding:38px; background:var(--sa-surface); border:1px solid var(--sa-line); border-radius:24px; box-shadow:0 24px 70px rgba(18,56,96,.1); }
.sutacc-auth-brand { display:block; width:auto; height:80px; margin-bottom:28px; }
.sutacc-auth-box h1 { font-size:27px; margin:0 0 12px; }
.sutacc-auth-box > p { color:var(--sa-muted); font-size:13px; margin-bottom:25px; }
.sutacc-auth-footer { text-align:center; color:var(--sa-muted); font-size:11px; padding:20px; }
/* Dark surfaces retain the same hierarchy and contrast. */
body.sutacc-v2[data-theme=dark] { --sa-bg:#111d2d; --sa-surface:#19283d; --sa-subtle:#1e3048; --sa-line:#2c405b; --sa-line-strong:#405575; --sa-text:#e2ecf8; --sa-muted:#a0b2ca; --sa-brand-deep:#79beff; --sa-brand-soft:#203f60; --sa-shadow:0 8px 26px rgba(0,0,0,.1); background:linear-gradient(140deg,#101c2c,#142338 65%,#1d2340); }
.sutacc-v2[data-theme=dark] .sutacc-topnav-header { background:linear-gradient(110deg,#152a43,#1b2a42 60%,#2a2946); }
.sutacc-context-detail,.sutacc-metric-value,.sutacc-turnover-primary strong,.sutacc-turnover-detail strong { direction:ltr; unicode-bidi:isolate; }
.sutacc-v2.rtl .sutacc-nav-link,.sutacc-v2.rtl .sutacc-dropdown-link,.sutacc-v2.rtl .sutacc-submenu-trigger { text-align:start; }
.sutacc-v2[data-theme=dark] .sutacc-topnav-meta .sutacc-company-switch { background:var(--sa-surface); border-color:var(--sa-line); }
.sutacc-v2[data-theme=dark] .sutacc-topnav-meta .sutacc-area-switch { background:#342c4e; color:#d0b8ff; border-color:#443a60; }
.sutacc-v2[data-theme=dark] .sutacc-nav-link,.sutacc-v2[data-theme=dark] .sutacc-topnav-meta .nav-link { color:var(--sa-muted); }
.sutacc-v2[data-theme=dark] .bg-white,.sutacc-v2[data-theme=dark] .bg-light { background:var(--sa-subtle)!important; }
.sutacc-v2[data-theme=dark] .table thead th { color:var(--sa-muted); }
.sutacc-v2[data-theme=dark] .text-dark { color:var(--sa-text)!important; }
@media (min-width:1200px) and (max-width:1430px) { .sutacc-v2 .sutacc-nav-link { font-size:11px; padding:9px 7px; } .sutacc-brand-caption { display:none; } }
@media (max-width:1199.98px) {
  .sutacc-v2 .sutacc-topnav-header { padding:15px 22px; min-height:78px; gap:16px; }
  .sutacc-brand-caption,.sutacc-profile-copy { display:none; }
  .sutacc-v2 .sutacc-nav-shell { padding:12px; max-height:calc(100dvh - 78px); }
  .sutacc-v2 .sutacc-nav-list { gap:3px; }
  .sutacc-v2 .sutacc-nav-link { min-height:42px; font-size:13px; padding:12px; }
  .sutacc-v2 .sutacc-dropdown,.sutacc-v2 .sutacc-submenu { box-shadow:none; }
  .sutacc-v2 .sutacc-mega-heading { padding:11px; }
  .sutacc-v2 .sutacc-topnav-meta .dropdown-menu { top:calc(100% + 12px)!important; }
  .sutacc-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sutacc-turnover-grid .card-body { grid-template-columns:1fr; gap:12px; }
  .sutacc-turnover-primary { border-inline-end:0; border-bottom:1px solid var(--sa-line); padding-bottom:14px; }
}
@media (max-width:767.98px) {
  .sutacc-v2 .main-content > .container-fluid { padding:18px 16px 30px; }
  .sutacc-v2 .sutacc-topnav-header { padding:14px 16px; gap:12px; min-height:74px; }
  .sutacc-v2 .sutacc-topnav .sutacc-brand img { height:46px; }
  .sutacc-v2 .sutacc-topnav-meta .nav { gap:4px; }
  .sutacc-v2 .sutacc-topnav-meta .btn .btn-text { display:none; }
  .sutacc-page-hero { padding:23px; gap:18px; border-radius:18px; flex-direction:column; align-items:flex-start; margin-bottom:20px; }
  .sutacc-hero-icon { width:45px; height:45px; font-size:20px; border-radius:13px; }
  .sutacc-hero-copy { gap:13px; }
  .sutacc-hero-context { max-width:100%; flex-direction:row; flex-wrap:wrap; align-items:center; gap:7px 14px; text-align:start; width:100%; border-top:1px solid rgba(255,255,255,.14); padding-top:13px; }
  .sutacc-hero-search { margin:0; margin-inline-start:auto; }
  .sutacc-context-detail { display:none; }
  .sutacc-page-hero p { font-size:11px; }
  .sutacc-overview-grid { gap:12px; }
  .sutacc-metric { padding:17px; }
  .sutacc-turnover-grid { grid-template-columns:1fr; }
  .sutacc-turnover-grid .card-body { grid-template-columns:1fr 1.3fr; }
  .sutacc-turnover-primary { border-bottom:0; border-inline-end:1px solid var(--sa-line); padding-bottom:0; }
  .sutacc-v2 .card-body { padding:18px; }
  .sutacc-v2 .card-header { padding:15px 18px; }
  .sutacc-v2 .card-header .float-right { float:none!important; }
  .sutacc-dashboard .row.my-4 > [class*=col-] + [class*=col-] { margin-top:20px; }
  .sutacc-dashboard-kicker { align-items:flex-start; flex-wrap:wrap; }
  .sutacc-hr-nav > span { width:100%; padding:7px 10px; }
  .sutacc-hr-nav details { flex:1 1 40%; }
  .sutacc-hr-menu { position:static; min-width:0; box-shadow:none; margin-top:5px; }
  .sutacc-hr-nav details[open] { flex-basis:100%; }
  .sutacc-v2 .dataTables_wrapper .dataTables_filter input { width:150px; }
  .sutacc-workspace-footer { padding:0 16px 20px; }
  .sutacc-v2 .modal-dialog { margin:12px; }
  .sutacc-v2 .modal-body,.sutacc-v2 .modal-header { padding:20px; }
}
@media (max-width:479.98px) {
  .sutacc-v2 .sutacc-topnav-meta .sutacc-utility-shortcuts,.sutacc-v2 .sutacc-topnav-meta .sutacc-utility-theme { display:none; }
  .sutacc-v2 .sutacc-topnav-meta .nav-link,.sutacc-v2 .sutacc-topnav-meta .btn { min-width:32px; height:34px; padding:6px!important; }
  .sutacc-v2 .sutacc-topnav .sutacc-brand img { height:42px; }
  .sutacc-v2 .sutacc-topnav-header { gap:8px; padding:12px; }
  .sutacc-v2 .sutacc-nav-toggle { width:34px; height:36px; }
  .sutacc-hero-icon { display:none; }
  .sutacc-page-hero { padding:21px; }
  .sutacc-page-hero p { line-height:1.7; }
  .sutacc-metric { padding:15px; }
  .sutacc-metric-value { font-size:23px; }
  .sutacc-metric-heading { align-items:flex-start; font-size:11px; }
  .sutacc-metric-icon { width:28px; height:28px; font-size:13px; border-radius:8px; }
  .sutacc-metric .dashboard-card-links { flex-direction:column; gap:3px; }
  .sutacc-turnover-grid .card-body { grid-template-columns:1fr; }
  .sutacc-turnover-primary { border-inline-end:0; border-bottom:1px solid var(--sa-line); padding-bottom:14px; }
  .sutacc-auth-box { padding:28px 23px; }
  .sutacc-auth .sutacc-login-panel { padding:24px 16px; }
  .sutacc-auth .sutacc-login-card { padding:27px 22px; }
  .sutacc-workspace-footer span:last-child { display:none; }
}
@media (prefers-reduced-motion:reduce) { .sutacc-v2 *, .sutacc-v2 *::before, .sutacc-v2 *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
@media print {
  .sutacc-v2 { color:#172033!important; background:#fff!important; font-size:10px; }
  .sutacc-v2 .sutacc-topnav,.sutacc-v2 .sutacc-page-hero,.sutacc-v2 .sutacc-workspace-footer,.sutacc-v2 .sutacc-hr-nav,.sutacc-v2 .no-print { display:none!important; }
  .sutacc-v2 .main-content > .container-fluid { max-width:none; padding:0; }
  .sutacc-v2 .card { box-shadow:none!important; border:0; border-radius:0; }
  .sutacc-v2 .table-responsive { overflow:visible!important; }
  .sutacc-v2 .table { color:#172033; font-size:9px; }
  .sutacc-v2 .table th,.sutacc-v2 .table td { padding:5px; }
}
