/* Shared interaction layer; follows the existing light/dark design tokens. */
:root{--button-bg:#3559e0;--button-hover:#2444bd;--button-text:#fff}
html[data-theme="dark"]{--button-bg:#8098f9;--button-hover:#a4bcfd;--button-text:#101828}
.btn{background:var(--button-bg);color:var(--button-text)}
.btn:hover,.btn:focus-visible{background:var(--button-hover);color:var(--button-text)}
.panel-head a.text-action{color:var(--muted);font-size:13px}.panel-head a.text-action:hover{color:var(--blue)}
.workflow-actions{margin-top:18px}.workflow-actions a.btn{background:var(--button-bg);color:var(--button-text);padding:10px 15px;text-decoration:none;border:0}
.workflow-actions a.btn:hover,.workflow-actions a.btn:focus-visible{background:var(--button-hover);color:var(--button-text)}
.panel-head:has(.text-action){flex-wrap:wrap;gap:12px}
.ghost,html[data-theme="dark"] .ghost{background:var(--panel);color:var(--ink)}
.ghost:hover,.ghost:focus-visible,html[data-theme="dark"] .ghost:hover,html[data-theme="dark"] .ghost:focus-visible{background:var(--pale);color:var(--blue);border-color:var(--blue)}
.text-action,.link-button,html[data-theme="dark"] button.text-action,html[data-theme="dark"] button.link-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:0;border-radius:4px;padding:8px 4px;color:var(--muted);font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.text-action:hover,.link-button:hover,.text-action:focus-visible,.link-button:focus-visible,html[data-theme="dark"] button.text-action:hover,html[data-theme="dark"] button.link-button:hover{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.text-action.danger,html[data-theme="dark"] button.text-action.danger{color:var(--red)}
.section-tabs a:hover,.row-actions a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.pricing-grid article{display:flex;flex-direction:column;min-width:0;height:510px}
.pricing-grid article.featured,html[data-theme="dark"] .pricing-grid article.featured{border-color:var(--blue);padding:21px}
.pricing-grid article>p{min-height:66px;flex-shrink:0}
.pricing-grid .plan-features{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;margin:14px 0 20px;padding-right:5px}
.pricing-grid .plan-features::-webkit-scrollbar{display:none}
.pricing-grid .plan-features ul{margin:0;min-height:0}
.pricing-grid article>.block{margin-top:auto;flex-shrink:0;min-height:44px;font-size:14px;letter-spacing:normal;font-weight:700}
.pricing-grid article>span.block{background:var(--pale);color:var(--ink);border:1px solid var(--line);cursor:default}
.pricing-grid .feature-hint{font-size:11px;color:var(--muted);margin:0 0 8px}
.workspace-leave{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.workspace-leave h3{margin:0}.workspace-leave p{color:var(--muted)}
[hidden]{display:none!important}
.setup-resume{display:block;margin:18px 8px 4px;padding:12px;border:1px solid #475467;border-radius:10px;background:#1d2939;color:#f2f4f7;text-decoration:none}.setup-resume:hover{border-color:#a4bcfd;color:#c7d7fe}.setup-resume span,.setup-resume small{display:block}.setup-resume small{margin-top:4px;color:#b9c2d0;font-size:11px}.setup-resume progress{width:100%;height:5px;margin-top:8px;accent-color:#a4bcfd}.mobile-app-nav .setup-mobile{color:var(--blue);font-weight:700}
.settings-section input[type="checkbox"]{width:18px;height:18px;vertical-align:middle;margin:0 8px}
.action-dialog{width:min(480px,calc(100vw - 32px));border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--ink);padding:28px;box-shadow:0 30px 100px #0006}
.action-dialog::backdrop{background:#060d21aa;backdrop-filter:blur(5px)}
.action-dialog h2{margin:0 0 12px;letter-spacing:-.5px}.action-dialog p{color:var(--muted);overflow-wrap:anywhere}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.action-status{position:fixed;bottom:24px;right:24px;z-index:100;max-width:min(440px,calc(100vw - 48px));padding:16px 22px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);box-shadow:0 10px 50px #0003}
.bulk-toolbar,.list-tools,.section-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0}
.bulk-toolbar{border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:var(--panel)}
.bulk-toolbar label{display:flex;align-items:center;gap:8px;margin:0}.bulk-toolbar input,.row-select{width:18px!important;height:18px;accent-color:var(--blue);cursor:pointer}.row-select{float:left;margin:4px 12px 4px 0}
.bulk-toolbar select{width:auto;max-width:200px;margin:0}.bulk-toolbar [data-selection-count]{color:var(--muted);margin-right:auto}
button:disabled{opacity:.5;cursor:wait}.list-tools input,.list-tools select{width:auto;min-width:150px;flex:1;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit}.list-tools label{flex:1;min-width:140px}.list-tools label input{width:100%}
.section-tabs{border-bottom:1px solid var(--line);gap:24px}.section-tabs a{text-decoration:none;padding:12px 2px;color:var(--muted);border-bottom:3px solid transparent}.section-tabs a[aria-current="page"]{color:var(--blue);border-color:var(--blue);font-weight:750}
.lookup{position:relative;min-width:140px}.lookup input{width:100%;min-width:0}.lookup-results{position:absolute;top:100%;left:0;z-index:15;width:max(100%,260px);max-width:80vw;max-height:300px;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 12px 40px #0003}.lookup-results button{display:block;width:100%;text-align:left;color:var(--ink);background:transparent;border:0;padding:10px;border-radius:6px;cursor:pointer;font:inherit;overflow-wrap:anywhere}.lookup-results button:hover,.lookup-results button:focus{background:var(--pale)}.lookup-results small{display:block;padding:8px;color:var(--muted)}
.settings-content{min-width:0}.settings-content .settings-card{max-width:none}.settings-content .history-row,.member-list .attention-row{overflow-wrap:anywhere}
.entity-card h3,.entity-card p,.table-row b{overflow-wrap:anywhere}.entity-card .form-actions{margin-top:18px}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.form-actions form{margin:0}
.pagination{flex-wrap:wrap;gap:12px}.pagination div{display:flex;gap:8px}
.calendar-overflow{overflow:auto}.calendar-more{display:block;margin:8px 0;font-size:11px;font-weight:700;color:var(--blue)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.mobile-app-nav{display:none}
@media(max-width:720px){.mobile-app-nav{display:flex;gap:8px;align-items:center;overflow-x:auto;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--panel)}.mobile-app-nav a,.mobile-app-nav button{white-space:nowrap;text-decoration:none;font-size:12px;padding:8px;border-radius:7px}.mobile-app-nav a:hover{background:var(--pale)}.mobile-app-nav form{margin:0}.topbar{padding-inline:14px}.topbar .top-actions{gap:5px}}
@media(max-width:650px){.bulk-toolbar{align-items:stretch}.bulk-toolbar label{flex-basis:100%}.list-tools>*{flex-basis:100%}.section-tabs{gap:16px}.action-status{bottom:12px;right:12px}.table-card{overflow-x:auto}.obligation-head{min-width:640px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Business workflow panels use existing theme colors. */
/* Compact controls retain clear focus and comfortable touch targets. */
.btn,.ghost,.workflow-actions a.btn{min-height:36px;padding:7px 12px;font-size:13px;line-height:1.35;font-weight:650;border-radius:8px}
.btn.big,.ghost.big{padding:9px 14px;font-size:14px;min-height:40px}
.btn.small,.ghost.small{min-height:30px;padding:5px 9px;font-size:12px}
.settings-actions,.workflow-actions,.top-actions{gap:8px}
.ask-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ask-head h1{font-size:30px;letter-spacing:-1px}.ask-head>form{flex-shrink:0}
.ask-scope{font-size:12px;max-width:620px}.chat-scroll{background:var(--panel);padding:22px;min-height:300px;height:clamp(300px,calc(100dvh - 350px),580px)}
.chat-empty{margin:50px auto;max-width:540px}.chat-empty h2{color:var(--ink);font-size:23px;letter-spacing:-.5px}
.ask-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px}
.ask-suggestion{font:inherit;font-size:12px;line-height:1.4;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);cursor:pointer}
.ask-suggestion:hover{color:var(--blue);border-color:var(--blue);background:var(--pale)}
.chat-bubble{white-space:pre-wrap;overflow-wrap:anywhere;max-width:88%;font-size:14px}.chat-bubble a,.chat-feedback a,.chat-notice a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;font-weight:650}
.chat-bubble a:hover{color:var(--ink)}.chat-compose{align-items:center;gap:10px;padding:12px}.chat-compose textarea{background:var(--panel);color:var(--ink);border-color:var(--line);padding:9px 11px;font-size:14px;min-width:0}
.chat-row.user .chat-bubble,html[data-theme="dark"] .chat-row.user .chat-bubble{background:var(--button-bg);color:var(--button-text)}
.chat-compose textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.chat-feedback{padding:12px 16px;background:var(--pale);color:var(--ink);border-top:1px solid var(--line);font-size:13px}.chat-feedback[hidden]{display:none}
.ask-footnote{padding:0 14px 12px;color:var(--muted);font-size:11px}.chat-notice,.ask-working{border-color:var(--line)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
button:disabled{cursor:not-allowed;opacity:.55}
@media(pointer:coarse){.btn,.ghost,.btn.small,.ghost.small,.text-action,.ask-suggestion{min-height:44px}}
@media(max-width:650px){.list-tools button,.list-tools a{flex:0 0 auto}.ask-head{gap:10px}.ask-head h1{font-size:26px}.chat-scroll{padding:14px;min-height:300px}.chat-bubble{max-width:95%}.ask-suggestions{flex-direction:column}.chat-empty{margin:25px auto}}
.workflow-entry{padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.workflow-entry>small{display:block;color:var(--muted);margin-top:5px}.workflow-entry form{margin-top:12px}.form-card select[multiple]{min-height:130px}.form-card .helptext{display:block;color:var(--muted);font-size:13px}.form-card .errorlist{color:#c4320a}.form-card textarea{width:100%;box-sizing:border-box}

.business-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);overflow-wrap:anywhere}.business-row:last-child{border-bottom:0}.business-row p{margin:6px 0}.business-row small{color:var(--muted)}.business-row>div{min-width:0}.business-row>b{font-size:20px;font-variant-numeric:tabular-nums}.business-row:hover{color:var(--blue)}@media(max-width:600px){.business-row{gap:12px;flex-wrap:wrap}.workflow-entry button{margin:4px 0}}

