:root{--app-page-gap: 14px;--app-panel-gap: 12px;--app-panel-pad: 16px;--app-panel-radius: 14px;--app-control-radius: 10px;--app-border: rgba(203, 213, 225, .82);--app-border-soft: rgba(226, 232, 240, .92);--app-surface: rgba(255, 255, 255, .94);--app-surface-soft: rgba(248, 251, 255, .92);--app-shadow-panel: 0 10px 24px rgba(15, 23, 42, .055);--app-shadow-panel-hover: 0 14px 30px rgba(15, 23, 42, .075)}body[data-page]{letter-spacing:0}body[data-page] .topbar{min-height:52px;padding-top:6px;padding-bottom:6px}body[data-page] .content{gap:var(--app-page-gap);padding-top:12px;padding-bottom:22px}body[data-page] .content-inner{max-width:var(--content-max-w)}body[data-page] .card,body[data-page] .data-panel,body[data-page] .terms-panel,body[data-page] .editor-panel,body[data-page] .policies-panel,body[data-page] .company-panel,body[data-page] .workforce-panel,body[data-page] .settings-card,body[data-page] .module-prefs-shell,body[data-page] .budget-panel,body[data-page] .optimizer-card{border-color:var(--app-border);border-radius:var(--app-panel-radius);background:var(--app-surface);box-shadow:var(--app-shadow-panel)}body[data-page] .card:hover,body[data-page] .company-panel:hover,body[data-page] .workforce-panel:hover,body[data-page] .settings-card:hover,body[data-page] .budget-panel:hover{box-shadow:var(--app-shadow-panel-hover)}body[data-page] .card-header,body[data-page] .panel-head,body[data-page] .company-panel-head,body[data-page] .workforce-panel-head,body[data-page] .budget-panel-head{gap:var(--space-3)}body[data-page] .page-title,body[data-page] .projects-command-title h1,body[data-page] .module-prefs-title,body[data-page] .budget-title{font-size:22px;line-height:1.14;letter-spacing:0}body[data-page] .card-title,body[data-page] .panel-title,body[data-page] .company-panel-title,body[data-page] .workforce-panel-title,body[data-page] .budget-panel-title{font-size:17px;line-height:1.22;letter-spacing:0}body[data-page] .page-description,body[data-page] .card-subtitle,body[data-page] .panel-subtitle,body[data-page] .company-panel-subtitle,body[data-page] .workforce-panel-subtitle,body[data-page] .module-prefs-subtitle,body[data-page] .budget-panel-subtitle{font-size:13px;line-height:1.45}body[data-page] .section-title,body[data-page] .company-section-title,body[data-page] .workforce-section-title,body[data-page] .budget-kicker,body[data-page] .section-kicker{font-size:11px;line-height:1.25;letter-spacing:.08em}body[data-page] .btn,body[data-page] .mini-btn,body[data-page] .tab-chip,body[data-page] .workforce-tab{min-height:38px;border-radius:var(--app-control-radius);font-size:12px;line-height:1.15}body[data-page] .btn{height:auto;padding-inline:14px}body[data-page] .btn-outline{background:#fff;border-color:var(--app-border);color:var(--brand-900)}body[data-page] .btn-outline:hover{background:#1a3c5e0b;border-color:#1a3c5e38;color:var(--brand-900)}body[data-page] .btn-danger-soft{border-color:#dc262652;color:#991b1b;background:#fff}body[data-page] .btn-danger-soft:hover:not(:disabled){border-color:#dc26267a;background:var(--state-danger-bg);color:#991b1b}body[data-page] .btn-sm{min-height:32px;padding-inline:10px;font-size:11px}body[data-page] .floating-action-trigger{width:36px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;color:var(--brand-900);cursor:pointer;font:inherit;font-size:15px;font-weight:800;line-height:1;padding:0}body[data-page] .floating-action-trigger:hover{background:var(--surface-muted)}body[data-page] .floating-action-popover{position:fixed;z-index:1600;width:156px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow)}body[data-page] .floating-action-item{width:100%;min-height:34px;display:flex;align-items:center;border:0;border-radius:9px;background:transparent;color:var(--brand-900);cursor:pointer;font:inherit;font-size:12px;font-weight:700;padding:0 10px;text-align:left}body[data-page] .floating-action-item:hover{background:var(--surface-muted)}body[data-page] .floating-action-item.danger{color:#991b1b}body[data-page] .floating-action-item.danger:hover{background:var(--state-danger-bg)}body[data-page] .floating-action-item:disabled{color:var(--gray-500);cursor:not-allowed;opacity:.58}body[data-page] input,body[data-page] select,body[data-page] textarea,body[data-page] .input,body[data-page] .select{border-radius:var(--app-control-radius)}body[data-page] :where(.card-title,.panel-title,.company-panel-title,.workforce-panel-title,.budget-panel-title,.project-card-title,.project-card-client,.env-name,.module-id-sub,.service-info-value,.summary-value,.workforce-row-title,.workforce-row-subtitle,.company-preview-line,.proposal-company-detail){min-width:0;overflow-wrap:anywhere}body[data-page] :where(.workforce-table,.modules-table,.services-table,.price-table,.proposal-table) td{white-space:normal;overflow-wrap:anywhere}body[data-page] :where(.workforce-table,.modules-table,.services-table,.price-table,.proposal-table) th,body[data-page] :where(.badge,.company-badge,.policy-badge,.term-badge,.workforce-badge,.status-pill,.project-status,.floating-action-trigger,.row-actions,.workforce-row-actions,.budget-toolbar-chip,.proposal-group-value){white-space:nowrap}body[data-page] :where(.workforce-table-scroll,.table-wrap,.proposal-table-card){max-width:100%}body[data-page] :where(.empty-box,.empty-state,.projects-empty,.workforce-empty,.ponto-empty,.proposal-empty,.snapshot-history-empty,.shell-empty-state){border:1px dashed var(--app-border);border-radius:var(--app-panel-radius);background:var(--app-surface-soft);color:var(--gray-500);padding:28px 18px;text-align:center;box-shadow:none}body[data-page] :where(.table-empty){color:var(--gray-500);padding:28px 18px;text-align:center;background:var(--app-surface-soft)}body[data-page] :where(.empty-state-title,.projects-empty-title){color:var(--gray-900);font-size:15px;font-weight:700;line-height:1.25}body[data-page] :where(.empty-state-subtitle,.projects-empty-subtitle){max-width:420px;color:var(--gray-500);font-size:13px;line-height:1.45}body[data-page] :where(.empty-state-actions,.projects-empty-actions){justify-content:center;gap:10px;margin-top:4px}body[data-page] .shell-empty-card{border-radius:var(--app-panel-radius)}body[data-page] :where(.workforce-status,.ponto-status){min-height:40px;border-color:var(--app-border);border-radius:12px;background:var(--app-surface-soft);color:var(--gray-600);font-size:13px;line-height:1.45}body[data-page] :where(.workforce-status.is-info,.ponto-status.is-info){border-color:#0ea5e93d;background:var(--state-info-bg);color:var(--state-info-text)}body[data-page] :where(.workforce-status.is-success,.ponto-status.is-success){border-color:#16a34a38;background:var(--state-success-bg);color:var(--state-success-text)}body[data-page] :where(.workforce-status.is-error,.ponto-status.is-error){border-color:#dc26263d;background:var(--state-danger-bg);color:var(--state-danger-text)}body[data-page=index] .app-header,body[data-page=project] .project-hero,body[data-page=service-manager] .service-review-shell>.card,body[data-page=commercial-policies] .page-grid,body[data-page=payment-terms] .page-grid,body[data-page=company-profile] .company-grid,body[data-page=workforce] .workforce-tabs,body[data-page=module-preferences] .module-prefs-ops,body[data-page=project-commercial-budget] .budget-toolbar{gap:var(--app-panel-gap)}body[data-page=editor-precos] main{padding:12px var(--page-pad-x) 22px}body[data-page=editor-precos] .settings-card,body[data-page=module-preferences] .module-prefs-shell{padding:var(--app-panel-pad)}body[data-page=editor-precos] .list-panel,body[data-page=editor-precos] .detail-panel{border-radius:var(--app-panel-radius)}body[data-page=project-commercial-budget] .proposal-page{border-radius:18px}body[data-page=project-commercial-budget] .proposal-page:after{border-radius:14px}body[data-page=ponto] .ponto-shell{width:min(100% - 24px,520px);gap:12px}body[data-page=ponto] .ponto-card,body[data-page=ponto] .ponto-punch-card,body[data-page=ponto] .ponto-verify-card{border-radius:18px;box-shadow:0 18px 44px #0716252e}body[data-page=ponto] .ponto-title,body[data-page=ponto] .ponto-hero-title{letter-spacing:0}body[data-page=ponto] .ponto-title{font-size:24px;line-height:1.12}body[data-page=ponto] .ponto-time{letter-spacing:0}body[data-page=ponto] .ponto-btn,body[data-page=ponto] .ponto-main-btn,body[data-page=ponto] .ponto-shortcut,body[data-page=ponto] .ponto-install{border-radius:14px}body[data-page=login] .auth-hero,body[data-page=login] .auth-card{border-radius:20px}body[data-page=login] .auth-card{box-shadow:0 18px 44px #0f172a1f}body[data-page=login] .auth-card-head h2{letter-spacing:0}@media(max-width:960px){body[data-page] .content,body[data-page=editor-precos] main{padding:14px 14px max(18px,env(safe-area-inset-bottom))}body[data-page] .topbar{min-height:60px}body[data-page] .topbar-actions .btn,body[data-page] .topbar-actions .mini-btn{min-height:40px}}@media(max-width:640px){body[data-page] .topbar-left{box-sizing:border-box;padding-right:54px}body[data-page] .topbar-title{max-width:calc(100vw - 132px);font-size:15px;letter-spacing:0}body[data-page] .topbar-actions{flex-wrap:wrap;overflow-x:visible;row-gap:6px}body[data-page] .topbar-actions>*{flex:0 0 auto}body[data-page] .page-title,body[data-page] .projects-command-title h1,body[data-page] .module-prefs-title,body[data-page] .budget-title{font-size:21px}body[data-page] .card,body[data-page] .data-panel,body[data-page] .terms-panel,body[data-page] .editor-panel,body[data-page] .policies-panel,body[data-page] .company-panel,body[data-page] .workforce-panel,body[data-page] .settings-card,body[data-page] .module-prefs-shell,body[data-page] .budget-panel{border-radius:12px}body[data-page] .btn,body[data-page] .mini-btn{min-height:40px}body[data-page] :where(.workforce-tabs,.settings-tabs){-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),transparent 100%);scrollbar-width:none;scroll-snap-type:x proximity}body[data-page] :where(.workforce-tabs,.settings-tabs)::-webkit-scrollbar{display:none}body[data-page] :where(.workforce-tab,.tab-chip){scroll-snap-align:start}body[data-page=ponto] .ponto-shell{width:min(100% - 20px,520px)}body[data-page=ponto] .ponto-title{font-size:22px}}
