/* Accounting workspace uses the active SMART SYSTEMS theme and typography. */
.aw-settings { color:var(--ink); }
.aw-status { min-height:1.5em; margin:0 0 16px; color:var(--ink-soft,var(--ink)); line-height:1.7; }
.aw-settings-layout { display:grid; grid-template-columns:minmax(220px,280px) minmax(0,1fr); gap:16px; align-items:stretch; }
.aw-scope-panel,.aw-mapping-panel { min-width:0; border:1px solid var(--line); border-radius:12px; background:var(--surface); padding:16px; }
.aw-scope-panel>.field { display:flex; flex-direction:column; gap:7px; }
.aw-scope-list { display:flex; flex-direction:column; gap:5px; max-height:52vh; overflow:auto; margin-top:12px; }
.aw-scope-item { flex:none; border:1px solid transparent; border-radius:8px; padding:11px 12px; background:transparent; color:var(--ink); text-align:start; font:inherit; cursor:pointer; overflow-wrap:anywhere; }
.aw-scope-item:hover { background:var(--paper); border-color:var(--line); }
.aw-scope-item.selected { background:var(--brand-tint,var(--paper)); border-color:var(--brand); font-weight:700; }
.aw-mapping-panel h2 { font-size:1.25em; margin:0 0 22px; }
.aw-mapping-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.aw-mapping-grid>.field { display:flex; flex-direction:column; gap:8px; min-width:0; }
.aw-settings select { width:100%; max-width:100%; color:var(--ink); background:var(--surface); }
.aw-settings option { color:var(--ink); background:var(--surface); }
.aw-hint { color:var(--ink-soft,var(--ink)); line-height:1.8; font-size:.92em; }
.aw-warning,.aw-error { color:var(--danger,#b42318); line-height:1.7; }
.aw-settings-footer { position:sticky; bottom:0; display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:16px; padding:14px 0; border-top:1px solid var(--line); background:var(--paper); z-index:2; }
.aw-settings-footer .aw-hint { flex:1 1 260px; }
.aw-empty { padding:24px 10px; color:var(--ink-soft,var(--ink)); text-align:center; }
.aw-account-tools { display:flex; gap:10px; align-items:end; margin-bottom:14px; flex-wrap:wrap; }
.aw-account-tools>.field { display:flex; flex:1; flex-direction:column; gap:6px; margin:0; }
.aw-account-actions { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.aw-account-actions button { min-height:38px; padding:7px 12px; white-space:nowrap; }
#awAccountCount { padding-bottom:10px; color:var(--ink-soft,var(--ink)); white-space:nowrap; }
.aw-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
#accountsTree .acc-node { position:relative;display:flex; gap:8px; align-items:center; flex-wrap:wrap; padding:4px 8px; min-height:36px; min-width:0;border-bottom:1px solid var(--line);font-size:12px; }
#accountsTree [data-aw-children]{margin-inline-start:14px;padding-inline-start:10px;border-inline-start:1px solid var(--line)}
#accountsTree [data-aw-children][hidden]{display:none!important}
#accountsTree [data-aw-children]>.aw-tree-branch>.acc-node:before{content:'';position:absolute;inset-inline-start:-11px;top:50%;width:10px;border-top:1px solid var(--line)}
#accountsTree .acc-node.is-group{background:var(--brand-tint,var(--paper));border-inline-start:4px solid var(--brand);font-weight:650}
#accountsTree .acc-node.is-group .acc-code,#accountsTree .acc-node.is-group .acc-name{color:var(--brand);font-weight:750}
#accountsTree .acc-node.is-leaf{background:var(--surface,var(--paper));border-inline-start:4px solid var(--line)}
#accountsTree .acc-node.is-leaf .acc-name{color:var(--ink);font-weight:550}
#accountsTree .acc-node.is-current-account{outline:2px solid var(--brand);outline-offset:-2px;background:var(--brand-tint,var(--paper))}
#accountsTree .acc-node.is-current-account .acc-name{font-weight:750}
#accountsTree .acc-name { flex:1 1 140px; overflow-wrap:anywhere; min-width:0; }
#accountsTree .acc-code { min-width:54px; direction:ltr; text-align:start; }
#accountsTree .acc-nature { white-space:normal; color:var(--ink-soft,var(--ink)); }
.aw-tree-toggle { width:28px; height:28px; padding:0; flex:none; border:1px solid var(--line); border-radius:5px; background:var(--surface); color:var(--ink); cursor:pointer; }
.aw-tree-spacer { width:28px; flex:none; }
#accountsTree .aw-tree-toggle,#accountsTree .aw-row-menu{height:28px!important;min-height:28px!important;padding:3px 8px!important;font-size:11px!important;box-shadow:none!important}
#accountsTree .aw-row-menu{width:28px;flex:none;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:20px!important;line-height:1}
#accountsTree .is-action-target{outline:2px solid var(--brand);outline-offset:-2px;background:var(--brand-tint,var(--paper))}
.aw-account-menu{position:fixed;z-index:12000;width:min(300px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:6px;box-shadow:0 8px 24px rgba(0,0,0,.18);direction:rtl;transition:none!important;animation:none!important;box-sizing:border-box}
.aw-account-menu[hidden]{display:none!important}
.aw-account-menu-title{font-weight:700;font-size:12px;padding:8px 9px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.aw-account-menu button{display:block;width:100%;border:0;border-radius:5px;background:transparent;color:var(--ink);font:inherit;font-size:13px;text-align:start;padding:10px;cursor:pointer;min-height:40px}
.aw-account-menu button:hover,.aw-account-menu button:focus-visible{background:var(--brand-tint,var(--paper));outline:2px solid var(--brand);outline-offset:-2px}
.aw-account-menu button:disabled{opacity:.45;cursor:not-allowed}
.aw-account-menu-hint{font-size:11px;line-height:1.6;color:var(--ink-soft);margin:5px 9px;border-top:1px solid var(--line);padding-top:7px}
#accountsTree .aw-row-menu:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.aw-edit-register { margin-inline-start:8px; padding:5px 10px; font-size:.9em; }
body .aw-editor-overlay { padding:12px; box-sizing:border-box; overflow:hidden; align-items:center; }
/* The shared modal manager assigns its own inline stack levels. Secondary
   onboarding cards must not cover the editor's fields or fixed save/cancel. */
body:has(.aw-editor-overlay.open) .oh-welcome-card,
body:has(.aw-editor-overlay.open) .oh-checklist-card { visibility:hidden; pointer-events:none; }
body .modal-overlay .modal-box.aw-editor { width:min(1100px,100%); max-width:1100px; max-height:calc(100dvh - 24px); display:flex; flex-direction:column; padding:0; overflow:hidden; color:var(--ink); background:var(--surface); box-sizing:border-box; }
body .aw-editor>h2 { flex:none; margin:0; padding:16px 20px; border-bottom:1px solid var(--line); font-size:1.3em; background:var(--surface); }
.aw-editor-body { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding:16px 20px; overscroll-behavior:contain; }
.aw-editor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 18px; }
body .aw-editor-grid>.field { min-width:0; margin:0; display:flex; flex-direction:column; gap:6px; }
body .aw-editor-grid input,body .aw-editor-grid select,body .aw-editor-grid textarea { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
body .aw-editor-grid input[type=checkbox] { width:18px; height:18px; margin:0; }
.aw-editor-grid .aw-checkbox-field { flex-direction:row!important; align-items:center; }
.aw-editor-grid .aw-field-wide { grid-column:1/-1; }
body .aw-editor>.modal-actions { flex:none; display:flex; flex-wrap:wrap; margin:0; padding:12px 20px; border-top:1px solid var(--line); background:var(--surface); gap:10px; }
.aw-editor .login-error { max-height:110px; overflow:auto; margin-top:10px; overflow-wrap:anywhere; }
.aw-account-links{margin-top:18px;border:1px solid var(--line);border-radius:10px;padding:14px;background:var(--paper)}
.aw-account-links[hidden]{display:none!important}
.aw-account-links-head h3{margin:0 0 5px;font-size:1.08em}
.aw-account-links-head p{margin:0;color:var(--ink-soft,var(--ink));font-size:.9em;line-height:1.6}
#awAccountLinksStatus{min-height:1.4em;margin:9px 0;color:var(--ink-soft,var(--ink))}
#awAccountLinksRows{display:grid;gap:8px}
.aw-account-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.aw-account-link-detail{display:grid;gap:3px;min-width:0}.aw-account-link-detail strong,.aw-account-link-detail span,.aw-account-link-detail small{overflow-wrap:anywhere}
.aw-account-link-detail small,.aw-account-link-hint{color:var(--ink-soft,var(--ink));line-height:1.5}
.aw-account-link-actions{display:flex;gap:6px;flex-wrap:wrap}.aw-account-link-actions button{min-height:36px;padding:6px 10px}
.aw-account-link-hint,.aw-account-link-picker{grid-column:1/-1}.aw-account-link-picker{display:flex;gap:8px;flex-wrap:wrap}
.aw-account-link-picker select{flex:1 1 250px;min-width:0}.aw-link-danger{color:var(--danger,#b42318)!important}
.aw-chart-template-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,440px); gap:18px 28px; align-items:end; margin-top:18px; padding:18px; border:1px solid var(--line); border-inline-start:4px solid var(--brand); border-radius:12px; background:var(--surface); }
.aw-chart-template-copy h2 { margin:0 0 6px; font-size:1.15em; }
.aw-chart-template-copy p { margin:0; max-width:68ch; color:var(--ink-soft,var(--ink)); line-height:1.75; }
.aw-chart-template-controls { display:grid; grid-template-columns:minmax(190px,1fr) auto; gap:10px; align-items:end; }
.aw-chart-template-controls>.field { display:flex; flex-direction:column; gap:6px; margin:0; }
.aw-chart-template-controls button { min-height:42px; white-space:nowrap; }
.aw-chart-template-controls .aw-review-links { grid-column:1/-1; }
.aw-chart-template-status { grid-column:1/-1; margin:0; padding-top:10px; border-top:1px solid var(--line); color:var(--ink-soft,var(--ink)); line-height:1.65; }
.aw-link-review { margin-top:14px; padding:18px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.aw-link-review[hidden] { display:none!important; }
.aw-link-review-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; margin-bottom:14px; }
.aw-link-review-head h2 { margin:0 0 5px; font-size:1.2em; }
.aw-link-review-head p { margin:0; color:var(--ink-soft,var(--ink)); }
.aw-link-review-actions { display:flex; gap:8px; flex-wrap:wrap; }
.aw-link-counts { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
.aw-link-counts span,.aw-link-badge { border:1px solid currentColor; border-radius:999px; padding:5px 10px; font-size:.88em; font-weight:700; }
.aw-link-counts .is-automatic,.aw-link-row.is-automatic .aw-link-badge { color:#08783f; background:#e9f9ef; }
.aw-link-counts .is-manual,.aw-link-row.is-manual .aw-link-badge { color:#175cd3; background:#eff8ff; }
.aw-link-counts .is-unlinked,.aw-link-row.is-unlinked .aw-link-badge { color:#9a5500; background:#fff5df; }
.aw-link-rows { display:grid; gap:8px; max-height:58vh; overflow:auto; padding:2px; }
.aw-link-row { display:grid; grid-template-columns:minmax(260px,1fr) minmax(360px,1.2fr); gap:14px; align-items:center; padding:12px; border:1px solid var(--line); border-inline-start-width:5px; border-radius:10px; background:var(--paper); }
.aw-link-row.is-automatic { border-inline-start-color:#12a35a; }
.aw-link-row.is-manual { border-inline-start-color:#2e7cf6; }
.aw-link-row.is-unlinked { border-inline-start-color:#f29b18; background:rgba(242,155,24,.08); }
.aw-link-title { display:flex; gap:8px; align-items:center; justify-content:space-between; }
.aw-link-info small { display:block; margin-top:5px; color:var(--ink-soft,var(--ink)); line-height:1.55; }
.aw-link-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.aw-link-control select { min-width:0; min-height:42px; }
.aw-link-save { white-space:nowrap; }
.aw-settings :focus-visible,.aw-editor :focus-visible,.aw-account-tools :focus-visible,.aw-tree-toggle:focus-visible { outline:2px solid var(--focus-color,var(--brand)); outline-offset:3px; }
.aw-settings button:disabled,.aw-editor button:disabled { opacity:.6; cursor:not-allowed; }
@media(max-width:900px) { .aw-editor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .aw-mapping-grid { grid-template-columns:1fr; } .aw-settings-layout { grid-template-columns:minmax(180px,230px) minmax(0,1fr); gap:10px; } .aw-chart-template-card { grid-template-columns:1fr; } .aw-link-row{grid-template-columns:1fr}.aw-link-review-head{flex-direction:column} }
@media(max-width:600px) { .aw-settings-layout { grid-template-columns:1fr; } .aw-settings-footer { position:static; } .aw-scope-list { max-height:180px; } .aw-editor-grid { grid-template-columns:1fr; } body .aw-editor>h2 { padding:12px; } .aw-editor-body { padding:12px; } body .aw-editor>.modal-actions { padding:10px 12px; } #accountsTree .acc-node { padding-inline-start:5px; } #accountsTree [data-aw-children]{margin-inline-start:6px;padding-inline-start:6px} #accountsTree .acc-badge,#accountsTree .acc-nature { font-size:.8em; } .aw-account-link-row{grid-template-columns:1fr}.aw-account-link-actions button{flex:1 1 auto}.aw-account-link-picker button{flex:1 1 auto}.aw-account-actions{width:100%} .aw-account-actions button{flex:1 1 auto} .aw-chart-template-controls{grid-template-columns:1fr}.aw-chart-template-card{padding:14px}.aw-link-review{padding:12px}.aw-link-control{grid-template-columns:1fr}.aw-link-control button{width:100%}.aw-link-title{align-items:flex-start}.aw-link-badge{flex:none} }
@media(max-height:650px) and (min-width:601px) { body .aw-editor>h2 { padding:10px 16px; } .aw-editor-body { padding:12px 16px; } .aw-editor-grid { gap:10px 14px; } body .aw-editor>.modal-actions { padding:10px 16px; } }
