:root { --ink:#17221d; --muted:#66736c; --paper:#f4f6f2; --card:#fff; --brand:#286447; --accent:#d9f36a; --line:#dce2dd; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter,Segoe UI,sans-serif; background:var(--paper); color:var(--ink); }
.topbar { height:68px; display:flex; align-items:center; justify-content:space-between; padding:0 5vw; background:#13281f; color:#fff; }
.brand { color:#fff; text-decoration:none; font-size:1.2rem; font-weight:600; display:flex; align-items:center; gap:10px; letter-spacing:.01em; }
.brand strong { color:var(--accent); }
.brand-mark { width:34px; height:34px; display:grid; place-items:center; border-radius:10px 10px 10px 3px; background:var(--accent); color:#173225; font-size:1.25rem; font-weight:900; }
.public-nav { display:flex; align-items:center; gap:16px; }
.public-nav a { color:#fff; text-decoration:none; font-weight:800; }
.public-nav-link { color:#c7d3cc!important; font-size:.92rem; }
.public-nav-link:hover { color:#fff!important; }
.public-nav .public-cta { color:#173225; background:var(--accent); padding:9px 14px; }
.user-menu { display:flex; gap:18px; align-items:center; }
.account-link { color:#fff; text-decoration:none; font-weight:700; }
.company-pill { background:#ffffff16; border:1px solid #ffffff24; border-radius:999px; padding:7px 12px; }
.dev-badge { background:#ffe7a3; color:#684a00; border-radius:999px; padding:7px 12px; font-weight:800; }
.main-nav { min-height:50px; padding:0 5vw; display:flex; align-items:center; gap:24px; background:#fff; border-bottom:1px solid var(--line); overflow-x:auto; }
.main-nav a { color:var(--ink); text-decoration:none; font-weight:700; white-space:nowrap; }
.section-nav { min-height:46px; padding:0 5vw; display:flex; align-items:center; gap:8px; background:#eef2ee; border-bottom:1px solid var(--line); overflow-x:auto; }
.section-nav a,.section-nav span { padding:8px 12px; border-radius:8px; color:var(--muted); text-decoration:none; font-weight:700; white-space:nowrap; }
.section-nav a:hover,.section-nav a.active { background:#fff; color:var(--brand); box-shadow:0 1px 4px #17221d12; }
.nav-disabled { color:#9ca69f; white-space:nowrap; }
.messages { width:min(1080px,90vw); margin:18px auto -24px; }
.message { padding:12px 15px; border-radius:9px; background:#e7f5ea; color:#235a3b; }
.user-menu form { margin:0; }
button { border:0; border-radius:9px; padding:10px 16px; cursor:pointer; }
.button { display:inline-flex; align-items:center; justify-content:center; border-radius:9px; padding:11px 16px; text-decoration:none; font-weight:800; }
.secondary { background:#edf1ee; color:var(--ink); font-weight:800; }
.ghost { color:var(--ink); border:1px solid var(--line); }
.page { width:min(1280px,94vw); margin:54px auto; }
.eyebrow { color:var(--brand); font-size:.85rem; line-height:1.2; font-weight:800; letter-spacing:.13em; margin:0 0 .6rem; }
h1 { font-size:clamp(2rem,5vw,3.5rem); margin:.25rem 0 .5rem; }
h2 { margin:.2rem 0; }
.muted { color:var(--muted); }
.login-card { width:min(440px,100%); margin:8vh auto; padding:38px; background:var(--card); border:1px solid var(--line); border-radius:20px; box-shadow:0 18px 50px #17221d12; }
.setup-card { width:min(820px,100%); margin:4vh auto; padding:38px; background:var(--card); border:1px solid var(--line); border-radius:20px; }
.signup-card { width:min(760px,100%); }
.choice-panel { border:1px solid var(--line); border-radius:14px; padding:20px; }
.choice-panel legend { padding:0 8px; font-size:1.1rem; font-weight:800; }
.choice-panel ul { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:8px 0 12px; padding:0; }
.choice-panel label { display:flex; grid-template-columns:auto 1fr; align-items:center; gap:9px; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--paper); }
.choice-panel input { width:auto; }
.support-direct { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.landing-hero { min-height:560px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr); align-items:center; gap:48px; }
.landing-hero h1 { max-width:820px; font-size:clamp(2.7rem,6vw,5.4rem); line-height:.98; letter-spacing:-.04em; }
.landing-lead,.section-lead { max-width:760px; color:var(--muted); font-size:1.16rem; line-height:1.65; }
.landing-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.beta-note { color:var(--muted); font-size:.9rem; }
.product-preview { display:grid; width:100%; gap:12px; padding:25px; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 24px 70px #17221d14; transform:none; }
.product-preview > span { color:var(--brand); font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.product-preview article { display:grid; gap:3px; padding:18px; border-radius:13px; background:var(--paper); }
.product-preview strong { font-size:1.65rem; }
.product-preview small { color:var(--muted); }
.landing-section { padding:76px 0; border-top:1px solid var(--line); }
.landing-section > h2 { max-width:760px; font-size:clamp(2rem,4vw,3.5rem); }
.audience-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:34px; }
.audience-grid article { padding:26px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.audience-grid p { color:var(--muted); line-height:1.6; }
.institutional-intro { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr); gap:64px; align-items:start; }
.institutional-intro h2 { max-width:650px; font-size:clamp(2rem,4vw,3.5rem); }
.institutional-intro > p,.institutional-intro > div:last-child { max-width:720px; color:var(--muted); font-size:1.12rem; line-height:1.7; }
.institutional-intro > div:last-child p { margin:0 0 16px; }
.institutional-grid,.values-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:38px; }
.institutional-grid article,.values-grid article { padding:26px; border:1px solid var(--line); border-radius:17px; background:var(--card); }
.institutional-grid span { display:grid; place-items:center; width:38px; height:38px; margin-bottom:22px; border-radius:50%; background:var(--accent); color:#173225; font-size:.8rem; font-weight:900; }
.institutional-grid h3,.values-grid strong { font-size:1.15rem; }
.institutional-grid p,.values-grid p { margin-bottom:0; color:var(--muted); line-height:1.6; }
.who-we-are { margin-top:30px; padding-inline:clamp(24px,5vw,64px); border:1px solid var(--line); border-radius:24px; background:var(--card); }
.landing-section.soft { padding:54px; border:0; border-radius:24px; background:#eaf1eb; }
.flow-row { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:30px 0; }
.flow-row span { padding:13px 18px; border-radius:999px; background:#fff; font-weight:800; }
.flow-row b { color:var(--brand); }
.beta-section { text-align:center; }
.beta-section > h2 { margin-left:auto; margin-right:auto; }
.beta-section p { max-width:720px; margin:18px auto 28px; color:var(--muted); font-size:1.1rem; line-height:1.65; }
.screen-carousel { display:grid; grid-auto-flow:column; grid-auto-columns:min(82vw,820px); gap:18px; margin-top:30px; padding:0 0 18px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:inline mandatory; }
.screen-carousel figure { scroll-snap-align:start; margin:0; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 15px 40px #17221d12; }
.screen-carousel img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; object-position:top left; }
.screen-carousel figcaption { padding:14px 18px; font-weight:800; }
.public-footer { display:grid; grid-template-columns:1.1fr .9fr; gap:30px; padding:48px 5vw 28px; background:#0b1b14; color:#fff; border-top:1px solid #ffffff16; }
.public-footer > div { max-width:480px; }
.public-footer p { color:#aebcb4; line-height:1.55; }
.public-footer nav { display:flex; flex-wrap:wrap; justify-content:flex-end; align-content:start; gap:12px 22px; }
.public-footer nav a { color:#d7e1db; text-decoration:none; font-weight:750; }
.public-footer nav a:hover { color:var(--accent); }
.public-footer small { grid-column:1/-1; padding-top:24px; border-top:1px solid #ffffff1c; color:#819088; }
.setup-link { margin-top:22px; text-align:center; color:var(--muted); }
.stack { display:grid; gap:18px; margin-top:28px; }
.stack label { display:grid; gap:7px; font-weight:700; }
.stack input { width:100%; padding:13px; border:1px solid var(--line); border-radius:9px; font-size:1rem; }
.primary { background:var(--brand); color:#fff; font-weight:800; padding:14px; }
.alert { padding:12px; background:#ffe6e3; color:#8b2118; border-radius:8px; }
.module-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; margin-top:40px; }
.module-card { min-height:190px; padding:26px; background:var(--card); border:1px solid var(--line); border-radius:18px; display:flex; flex-direction:column; justify-content:space-between; }
.module-card.active { border-top:6px solid var(--accent); }
.module-card.disabled { opacity:.55; }
.module-icon { font-size:2rem; color:var(--brand); }
.status { width:max-content; padding:6px 10px; background:#eef4e5; border-radius:999px; color:var(--brand); font-size:.8rem; font-weight:800; }
.company-list { margin-top:34px; padding:24px; border-top:1px solid var(--line); }
.dev-notice { display:grid; gap:4px; margin:14px 0; padding:14px; border:1px solid #e1bd55; border-radius:10px; background:#fff8dc; color:#684a00; }
.company-row { display:flex; justify-content:space-between; align-items:center; padding:14px 0; border-bottom:1px solid var(--line); }
.company-row span { display:grid; gap:3px; }
.company-row small { color:var(--muted); }
.page-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:30px; }
.page-heading h1 { margin-bottom:0; }
.metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.metric-grid article { padding:24px; border-radius:16px; background:#fff; border:1px solid var(--line); display:grid; gap:6px; }
.metric-grid strong { font-size:2.2rem; }
.metric-grid span { color:var(--muted); }
.overview-metrics { grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.metric-alert { border-color:#efc366!important; background:#fff9e8!important; }
.module-overview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.module-overview { display:flex; flex-direction:column; gap:22px; }
.module-overview-heading { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.module-overview-heading a { color:var(--brand); font-weight:800; }
.compact-metrics { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.compact-metrics > div { display:grid; gap:3px; padding:14px; border-right:1px solid var(--line); }
.compact-metrics > div:last-child { border:0; }
.compact-metrics strong { font-size:1.45rem; }
.compact-metrics span { color:var(--muted); font-size:.78rem; }
.compact-alert { background:#fff4dc; }
.recent-block { margin-top:auto; padding-top:18px; border-top:1px solid var(--line); }
.recent-block p { display:flex; justify-content:space-between; gap:12px; padding:9px 0; margin:0; border-bottom:1px solid var(--line); }
.recent-block a { color:var(--ink); font-weight:700; }
.recent-block small { color:var(--muted); text-align:right; }
.split-section { display:grid; grid-template-columns:1.3fr 1fr; gap:20px; margin-top:24px; }
.panel { background:#fff; border:1px solid var(--line); border-radius:16px; padding:24px; }
.quick-links { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.quick-links a { padding:14px; background:var(--paper); border-radius:10px; color:var(--ink); text-decoration:none; font-weight:700; }
.search-bar { display:flex; gap:10px; margin-bottom:18px; }
.search-bar input { flex:1; padding:12px; border:1px solid var(--line); border-radius:9px; }
.table-wrap { overflow:auto; background:#fff; border:1px solid var(--line); border-radius:14px; }
table { width:100%; border-collapse:collapse; }
th,td { padding:14px; border-bottom:1px solid var(--line); text-align:left; white-space:nowrap; }
th { font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); }
td small { display:block; color:var(--muted); margin-top:3px; }
.badge { padding:5px 9px; border-radius:999px; background:#edf0ee; font-size:.78rem; font-weight:800; }
.badge.success { background:#e3f4df; color:#27613e; }
.badge.warning { background:#fff0c7; color:#795500; }
.badge.danger { background:#ffe4e0; color:#8b2118; }
.empty { text-align:center; color:var(--muted); padding:42px; }
.narrow-page { width:min(800px,100%); margin:auto; }
.form-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:28px; }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.form-grid label { display:grid; gap:7px; font-weight:700; }
.form-control { width:100%; padding:11px; border:1px solid var(--line); border-radius:9px; background:#fff; font-size:1rem; }
.checkbox-row { display:flex!important; align-items:center; }
.checkbox-row input { width:auto; }
.field-error { color:#9f2d25; }
.form-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:26px; }
.subnav { display:flex; gap:9px; flex-wrap:wrap; }
.subnav a { padding:8px 11px; background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:8px; text-decoration:none; }
.simple-list > div { display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--line); }
.movement-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:28px; }
.section-heading { margin-top:28px; padding-top:24px; border-top:1px solid var(--line); }
.section-heading h2 { margin-bottom:0; }
.item-list { display:grid; gap:10px; }
.add-movement-item { margin-top:12px; }
.item-row { display:grid; grid-template-columns:minmax(190px,1.3fr) minmax(95px,.5fr) minmax(160px,.8fr) minmax(210px,1.3fr) auto; gap:12px; align-items:end; padding:14px; background:var(--paper); border-radius:10px; }
.item-row label { display:grid; gap:6px; font-weight:700; }
.delete-field { display:flex!important; align-items:center; padding-bottom:10px; }
.serial-select { min-height:70px; }
.operations-bar,.heading-actions { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:18px; }
.operations-bar a { padding:9px 12px; background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:8px; text-decoration:none; font-weight:700; }
.reversal-form { display:grid; gap:5px; min-width:150px; }
.reversal-form input { padding:7px; border:1px solid var(--line); border-radius:7px; }
.reversal-form button { padding:7px; color:#8b2118; }
.fiscal-items { display:grid; gap:16px; }
.fiscal-item { display:grid; grid-template-columns:1.35fr 1fr .45fr .7fr 1fr; gap:16px; padding:20px; background:#fff; border:1px solid var(--line); border-radius:14px; align-items:start; }
.fiscal-item label { display:grid; gap:7px; font-weight:700; }
.fiscal-item h2 { font-size:1.05rem; margin:5px 0; }
.fiscal-item p,.fiscal-item small { color:var(--muted); }
.line-number { color:var(--brand); font-size:.75rem; font-weight:800; }
.stack p { display:grid; gap:6px; margin:0; }
.stack p input,.stack p select { padding:11px; border:1px solid var(--line); border-radius:9px; }
.scan-panel { margin-top:22px; }
.scan-panel > label { display:block; font-weight:800; margin-bottom:8px; }
.filter-bar { display:grid; grid-template-columns:1fr auto auto; gap:16px; align-items:end; margin:24px 0 18px; }
.filter-bar label { display:grid; gap:7px; font-weight:700; }
.export-panel { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:24px; }
.settings-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; }
.settings-grid article { display:flex; flex-direction:column; gap:14px; }
.permission-panel { margin-top:24px; }
.print-notice { margin-bottom:20px; padding:14px; border-radius:10px; background:#f5f8e9; border:1px solid #dce7ab; color:#425323; }
.quote-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:28px; }
.quote-items { display:grid; gap:12px; }
.add-quote-item { margin-top:12px; }
.payment-options { display:flex; flex-wrap:wrap; gap:10px; padding:0; margin:0; list-style:none; }
.payment-options li label { display:flex; align-items:center; gap:7px; padding:9px 12px; border:1px solid var(--line); border-radius:9px; background:var(--paper); font-weight:700; cursor:pointer; }
.payment-options input { width:auto; }
.quote-item-row { display:grid; grid-template-columns:.7fr 1fr 1.35fr .42fr .52fr .65fr .65fr auto auto; gap:10px; align-items:end; padding:14px; background:var(--paper); border-radius:11px; }
.service-order-item-row { grid-template-columns:.7fr 1.1fr 1.35fr .42fr .52fr .65fr .8fr auto; }
.service-order-table { overflow:hidden; }
.service-order-table table { table-layout:fixed; }
.service-order-table th,.service-order-table td { white-space:normal; overflow-wrap:anywhere; padding:12px 9px; }
.service-order-table th:nth-child(1) { width:8%; }.service-order-table th:nth-child(2) { width:19%; }.service-order-table th:nth-child(3) { width:27%; }.service-order-table th:nth-child(4) { width:13%; }.service-order-table th:nth-child(5) { width:10%; }.service-order-table th:nth-child(6) { width:10%; }.service-order-table th:nth-child(7) { width:10%; }.service-order-table th:nth-child(8) { width:7%; }
.stock-checkbox { align-self:center; padding-bottom:8px; }
.service-primary-action { display:flex; justify-content:flex-end; margin:0 0 18px; }
.service-primary-action .button { min-width:240px; }
.service-finished-notice { display:flex; justify-content:space-between; gap:16px; margin:0 0 20px; padding:16px 20px; border-radius:12px; background:#e3f4df; color:#27613e; }
.service-status-form { display:grid; grid-template-columns:1.2fr .8fr 1.2fr auto; gap:16px; align-items:end; margin-bottom:20px; }
.service-status-form label { display:grid; gap:7px; font-weight:700; }
.technician-workflow{margin:20px 0}.technician-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.technician-steps>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.technician-steps .step-number{grid-row:1/3}.technician-steps small{color:var(--muted)}.technician-steps .done{border-color:#bfd7b8;background:#f2f8ef}.technician-steps .done .step-number{background:var(--brand)}
.execution-card{display:grid;gap:0}.execution-field{display:grid;gap:7px}.execution-field textarea{min-height:125px}.execution-field small{color:var(--muted)}
.review-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:20px}.review-checklist article{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}.review-checklist h2{margin:2px 0 8px}.review-checklist p{margin:0;color:var(--muted)}.review-checklist .complete{border-top:4px solid var(--brand)}.review-checklist .missing{border-top:4px solid #c95d4c}.review-warning{display:grid;grid-template-columns:1fr auto;gap:5px 20px;align-items:center;margin-bottom:20px}.review-warning strong,.review-warning span{grid-column:1}.review-warning .button{grid-column:2;grid-row:1/3}.review-support{align-items:start}.review-materials{margin-top:20px}.review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.review-actions form{margin:0}.review-actions button:disabled{opacity:.45;cursor:not-allowed}
.detail-stack { display:grid; gap:13px; margin-top:18px; }
.detail-stack p { display:grid; gap:4px; margin:0; }
.detail-stack span { color:var(--muted); }
.service-text-section,.service-items-table,.service-history { margin-top:20px; }
.internal-note { background:#fff9e8; }
.service-history > div { display:flex; justify-content:space-between; gap:18px; padding:13px 0; border-bottom:1px solid var(--line); }
.service-history > div > span { display:grid; gap:4px; }
.service-history small { color:var(--muted); }
.service-order-open,.service-order-scheduled { background:#e6efff; color:#24508d; }
.service-order-in_progress { background:#fff1c7; color:#785600; }
.service-order-waiting,.service-order-incomplete { background:#ffead7; color:#8a4512; }
.service-order-service_done,.service-order-completed { background:#e3f4df; color:#27613e; }
.service-order-canceled { background:#ffe6e3; color:#8b2118; }
.priority-high,.priority-urgent { background:#ffe6e3; color:#8b2118; }
.quote-item-row label { display:grid; gap:6px; font-weight:700; }
.quote-item-row label span small { color:var(--muted); font-weight:500; }
.line-total { grid-column:6 / 8; text-align:right; color:var(--brand); }
.row-error { grid-column:1 / -1; }
.quote-live-total { display:flex; justify-content:flex-end; align-items:center; gap:18px; margin-top:18px; padding:18px; border-top:2px solid var(--line); }
.quote-live-total strong { font-size:1.7rem; }
.quote-summary { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; margin-bottom:18px; }
.quote-summary div { display:grid; gap:5px; }
.quote-summary span { color:var(--muted); }
.quote-actions { display:flex; gap:9px; flex-wrap:wrap; margin-bottom:18px; }
.quote-actions form { margin:0; }
.quote-totals { width:min(430px,100%); margin:18px 0 18px auto; }
.quote-totals p { display:flex; justify-content:space-between; gap:20px; }
.quote-totals .grand-total { padding-top:12px; border-top:2px solid var(--brand); font-size:1.3rem; }
.quote-sent { background:#e6efff; color:#24508d; }
.quote-approved { background:#e3f4df; color:#27613e; }
.quote-rejected,.quote-expired { background:#ffe6e3; color:#8b2118; }
.quote-in_progress { background:#fff1c7; color:#785600; }
.quote-completed { background:#dff3e7; color:#1d613b; }
.quote-incomplete { background:#ffead7; color:#8a4512; }
.customer-profile { display:grid; grid-template-columns:1fr 1fr 2fr auto; gap:22px; margin-bottom:20px; }
.customer-profile > div { display:grid; align-content:start; gap:6px; }
.customer-profile span { color:var(--muted); }
.customer-profile a { color:var(--brand); }
.customer-metrics { grid-template-columns:repeat(3,1fr); }
.commercial-metrics { grid-template-columns:repeat(4,1fr); }
.commercial-metrics article:last-child strong { font-size:1.65rem; }
.commercial-home-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:22px 0; }
.commercial-step-card { display:grid; grid-template-columns:auto 1fr; gap:16px; align-items:start; }
.commercial-step-card > a { grid-column:1/-1; color:var(--brand); font-weight:800; }
.commercial-step { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:var(--accent); color:#173225; font-weight:900; }
.commercial-links { margin-top:20px; }
.commercial-recent { border:0; padding:0; }
.commercial-tabs { display:flex; gap:8px; margin-bottom:18px; }
.commercial-tabs a { padding:10px 16px; border:1px solid var(--line); border-radius:999px; color:var(--ink); text-decoration:none; font-weight:800; background:#fff; }
.commercial-tabs a.active { color:#fff; border-color:var(--brand); background:var(--brand); }
.commercial-table table { table-layout:fixed; }
.commercial-table th,.commercial-table td { white-space:normal; overflow-wrap:anywhere; }
.commercial-item-row { grid-template-columns:.72fr 1.1fr 1.35fr .4fr .58fr .68fr .62fr auto auto; }
.sales-form-card{display:grid;gap:0}.sales-form-section{padding:22px 0;border-bottom:1px solid var(--line)}.sales-form-section:first-of-type{padding-top:0}.sales-form-section .section-heading{margin:0 0 18px;padding:0;border:0}.sales-main-fields{grid-template-columns:repeat(4,minmax(150px,260px))}.sales-conditions{align-items:start}.sales-conditions .full{grid-column:1/-1}.sales-item-row{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.sales-item-row .sales-type{grid-column:span 2}.sales-item-row .sales-product{grid-column:span 5}.sales-item-row .sales-description{grid-column:span 5}.sales-item-row .sales-unit{grid-column:span 2}.sales-item-row .sales-quantity{grid-column:span 2}.sales-item-row .sales-price{grid-column:span 3}.sales-item-row .sales-discount{grid-column:span 3}.sales-item-row .stock-checkbox{grid-column:span 3;padding-bottom:0}.sales-item-row .line-total{grid-column:span 1;align-self:center;white-space:nowrap}.sales-item-row .delete-field{grid-column:span 1}.sales-item-row .row-error{grid-column:1/-1}.sales-more{margin-top:22px}.sales-form-card .quote-live-total{margin-top:18px}.customer-form-card{max-width:900px}.customer-form-card .full,.service-main-fields .full{grid-column:1/-1}
.commercial-explanation { display:grid; gap:4px; padding:16px; margin-top:20px; border:1px solid #dce7ab; border-radius:11px; background:#f5f8e9; }
.commercial-explanation span { color:var(--muted); }
.commercial-progress { display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin:0 0 22px; }
.commercial-progress div { position:relative; display:grid; justify-items:center; gap:6px; color:var(--muted); font-size:.82rem; text-align:center; }
.commercial-progress div::before { content:""; position:absolute; z-index:0; top:16px; left:-50%; width:100%; height:3px; background:var(--line); }
.commercial-progress div:first-child::before { display:none; }
.commercial-progress span { z-index:1; width:34px; height:34px; display:grid; place-items:center; border:3px solid var(--line); border-radius:50%; background:var(--paper); font-weight:900; }
.commercial-progress .done { color:var(--brand); }
.commercial-progress .done::before,.commercial-progress .done span { border-color:var(--brand); background:var(--brand); color:#fff; }
.commercial-main-action { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.commercial-main-action form { margin:0; }
.commercial-origin,.quote-conversion { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:0 0 18px; }
.commercial-origin { padding:13px 16px; background:#edf4ff; border-radius:10px; }
.commercial-origin a { color:var(--brand); font-weight:800; }
.commercial-detail-grid { align-items:start; }
.payment-list > div { display:grid; grid-template-columns:1fr auto auto; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); }
.payment-list span { display:grid; gap:3px; }
.payment-list small { color:var(--muted); }
.payment-list .button { padding:7px 10px; }
.payment-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:20px; margin-top:20px; border-top:1px solid var(--line); }
.payment-form h3 { grid-column:1/-1; }
.payment-form label { display:grid; gap:6px; font-weight:700; }
.payment-form button { align-self:end; }
.commercial-history { margin-top:20px; }
.commercial-history > div { display:flex; justify-content:space-between; gap:18px; padding:12px 0; border-bottom:1px solid var(--line); }
.commercial-history span { display:grid; gap:3px; }
.commercial-history small,.commercial-history time { color:var(--muted); }
.danger-zone { margin-top:20px; padding:16px; border:1px solid #efc3bd; border-radius:12px; background:#fff7f6; }
.danger-zone summary { color:#8b2118; cursor:pointer; font-weight:800; }
.danger-zone form { display:flex; align-items:end; gap:10px; margin-top:14px; }
.danger-zone form input { flex:1; }
.danger-zone button { background:#8b2118; color:#fff; font-weight:800; }
.commercial-confirmed,.commercial-preparing { background:#fff1c7; color:#785600; }
.commercial-ready { background:#e6efff; color:#24508d; }
.commercial-completed,.payment-pago { background:#e3f4df; color:#27613e; }
.commercial-canceled { background:#ffe6e3; color:#8b2118; }
.payment-parcial { background:#fff1c7; color:#785600; }
.owner-heading { margin-bottom:18px; }
.owner-period { display:flex; align-items:end; gap:12px; padding:16px 20px; margin-bottom:18px; }
.owner-period label { display:grid; gap:6px; font-weight:700; }
.owner-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:18px; }
.owner-metrics article { display:grid; gap:6px; min-height:126px; padding:20px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.owner-metrics span,.owner-metrics small { color:var(--muted); }
.owner-metrics strong { font-size:clamp(1.45rem,2.5vw,2rem); }
.owner-warning { background:#fff9e8!important; border-color:#efc366!important; }
.owner-grid { display:grid; gap:18px; margin-bottom:18px; }
.owner-main-grid { grid-template-columns:1.4fr 1fr; }
.owner-data-grid { grid-template-columns:repeat(3,1fr); }
.owner-bottom-grid { grid-template-columns:1.15fr 1fr; }
.owner-chart-panel { min-height:370px; }
.owner-chart { display:flex; align-items:end; gap:10px; height:265px; padding-top:28px; overflow-x:auto; }
.owner-bar-column { flex:1 0 54px; display:grid; grid-template-rows:auto 1fr auto; align-items:end; gap:7px; height:100%; text-align:center; }
.owner-bar-value { color:var(--muted); font-size:.72rem; }
.owner-bar-track { position:relative; width:70%; height:100%; min-height:130px; margin:auto; border-radius:8px 8px 3px 3px; background:#edf1ee; overflow:hidden; }
.owner-bar-track span { position:absolute; inset:auto 0 0; min-height:4px; border-radius:8px 8px 3px 3px; background:linear-gradient(180deg,var(--accent),var(--brand)); }
.owner-bar-column small { color:var(--muted); font-size:.68rem; white-space:nowrap; }
.owner-goals { display:flex; flex-direction:column; gap:14px; }
.owner-goal-row { display:grid; grid-template-columns:1fr auto; gap:8px; padding:14px 0; border-bottom:1px solid var(--line); }
.owner-goal-row > div { display:grid; gap:3px; }
.owner-goal-row a { color:var(--ink); }
.owner-goal-row small { color:var(--muted); }
.owner-goal-row em { grid-column:1/-1; color:#6d5600; font-size:.8rem; font-style:normal; }
.goal-track { grid-column:1/-1; height:9px; border-radius:999px; background:#edf1ee; overflow:hidden; }
.goal-track i { display:block; height:100%; border-radius:999px; background:var(--brand); }
.owner-empty { display:grid; gap:8px; justify-items:start; margin:auto 0; padding:28px 0; }
.owner-empty p { color:var(--muted); margin:0; }
.owner-table { display:grid; margin-top:16px; }
.owner-table > div { display:grid; grid-template-columns:minmax(0,1.3fr) .55fr .85fr; gap:10px; align-items:center; padding:11px 0; border-bottom:1px solid var(--line); }
.owner-table-head { color:var(--muted); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.owner-table > div > :nth-child(2),.owner-table > div > :nth-child(3) { text-align:right; }
.owner-table a { color:var(--ink); }
.owner-stock-table > div { grid-template-columns:minmax(0,1.3fr) .75fr .5fr; }
.owner-table > .muted { padding:20px 0; }
.owner-management { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:18px; }
.owner-management > div { display:grid; align-content:start; gap:7px; }
.owner-management h3 { margin:0 0 5px; }
.owner-management a { display:grid; gap:3px; padding:10px; border-radius:9px; background:var(--paper); color:var(--ink); text-decoration:none; }
.owner-management small { color:var(--muted); }
.owner-note { padding:15px 18px; border:1px solid #d5dfd8; border-radius:12px; background:#eef2ee; color:var(--muted); }
.owner-note strong { color:var(--ink); }
.attachment-form { display:grid; grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto; gap:12px; align-items:end; margin:18px 0; }
.attachment-form label { display:grid; gap:6px; font-weight:700; }
.attachment-form small { grid-column:1/-1; color:var(--muted); }
.attachment-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.attachment-card { display:grid; gap:6px; padding:14px; border:1px solid var(--line); border-radius:12px; color:var(--ink); text-decoration:none; background:var(--paper); }
.attachment-card .badge { justify-self:start; }
.attachment-card small { color:var(--muted); overflow-wrap:anywhere; }
.owner-team-overview { margin:18px 0; }
.employee-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(310px,1fr)); gap:14px; margin-top:18px; }
.employee-card { display:grid; gap:14px; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--paper); }
.employee-card header { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.employee-card header div { display:grid; gap:3px; }
.employee-card header small,.employee-activity small { color:var(--muted); }
.employee-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }
.employee-metrics span { display:grid; gap:2px; padding:9px; border-radius:9px; background:#eef2ee; }
.employee-metrics strong { font-size:1.1rem; }
.employee-metrics small { color:var(--muted); font-size:.68rem; }
.employee-activity { display:grid; gap:8px; }
.employee-activity p { display:flex; justify-content:space-between; gap:10px; margin:0; padding-top:8px; border-top:1px solid var(--line); }
@media (max-width:900px) { .fiscal-item { grid-template-columns:1fr 1fr; } }
@media (max-width:760px) {
  .topbar { min-height:68px; height:auto; padding:10px 4vw; gap:10px; }
  .brand { font-size:1rem; gap:7px; }
  .brand-mark { width:31px; height:31px; }
  .user-menu { gap:7px; }
  .user-menu > .account-link,.user-menu > span:not(.company-pill):not(.dev-badge) { display:none; }
  .company-pill,.dev-badge { max-width:130px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:6px 9px; }
  .main-nav { padding:0 4vw; gap:19px; }
  .section-nav { padding:7px 4vw; }
  .page { width:92vw; margin:32px auto; }
  .metric-grid,.split-section,.form-grid,.item-row,.fiscal-item,.filter-bar,.overview-metrics,.module-overview-grid,.service-status-form,.commercial-home-grid,.owner-metrics,.owner-main-grid,.owner-data-grid,.owner-bottom-grid,.attachment-form { grid-template-columns:1fr; }
  .employee-metrics { grid-template-columns:1fr 1fr; }
  .compact-metrics { grid-template-columns:1fr 1fr; }
  .compact-metrics > div:nth-child(2) { border-right:0; }
  .quote-item-row,.quote-summary,.customer-profile,.customer-metrics { grid-template-columns:1fr; }
  .commercial-progress strong { display:none; }
  .commercial-table { border:0; background:transparent; overflow:visible; }
  .commercial-table table,.commercial-table tbody,.commercial-table tr,.commercial-table td { display:block; width:100%; }
  .commercial-table thead { display:none; }
  .commercial-table tr { margin-bottom:14px; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:#fff; }
  .commercial-table td { display:grid; grid-template-columns:105px minmax(0,1fr); gap:12px; padding:8px 0; border-bottom:1px solid var(--line); }
  .commercial-table td::before { content:attr(data-label); color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; }
  .commercial-table td.empty { display:block; }
  .commercial-origin,.quote-conversion,.danger-zone form { align-items:flex-start; flex-direction:column; }
  .payment-form { grid-template-columns:1fr; }
  .payment-form h3 { grid-column:1; }
  .owner-period { align-items:stretch; flex-direction:column; }
  .owner-period button { min-height:46px; }
  .owner-management { grid-template-columns:1fr; }
  .service-order-table { border:0; background:transparent; overflow:visible; }
  .service-order-table table,.service-order-table tbody,.service-order-table tr,.service-order-table td { display:block; width:100%; }
  .service-order-table thead { display:none; }
  .service-order-table tr { margin-bottom:14px; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:#fff; }
  .service-order-table td { display:grid; grid-template-columns:105px minmax(0,1fr); gap:12px; padding:8px 0; border-bottom:1px solid var(--line); }
  .service-order-table td:last-child { border-bottom:0; }
  .service-order-table td::before { content:attr(data-label); color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
  .service-order-table td.empty { display:block; }
  .service-primary-action,.service-primary-action .button { width:100%; }
  .service-finished-notice { flex-direction:column; }
  .technician-steps,.review-checklist{grid-template-columns:1fr}.review-warning{grid-template-columns:1fr}.review-warning .button{grid-column:1;grid-row:auto}.review-actions{align-items:stretch;flex-direction:column}.review-actions .button,.review-actions button{width:100%}
  .line-total,.row-error { grid-column:1; text-align:left; }
  .page-heading,.export-panel { align-items:flex-start; flex-direction:column; }
  .page-heading .heading-actions,.page-heading .button { width:100%; }
  .heading-actions .button { flex:1 1 145px; }
  .login-card,.setup-card,.form-card,.movement-card,.panel { padding:20px; }
  .search-bar { flex-direction:column; }
  .search-bar button,.form-actions .button,.form-actions button { min-height:46px; }
  .form-actions { flex-wrap:wrap; }
  .form-actions > * { flex:1 1 140px; }
  input,select,textarea,button { font-size:16px; }
}
@media print {
  .topbar,.main-nav,.section-nav,.messages,.heading-actions,.operations-bar,.form-actions,.filter-bar,.button,button { display:none!important; }
  body,.page,.panel,.table-wrap { background:#fff; width:100%; margin:0; border:0; box-shadow:none; }
  .page { padding:0; }
  table { font-size:10pt; }
  th,td { padding:7px; white-space:normal; }
}
.attendance-clock{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);gap:24px;align-items:center;border-top:5px solid var(--accent)}
.live-clock{display:block;font-size:clamp(2.5rem,7vw,5rem);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.05em;margin:10px 0 18px}
.attendance-state{display:inline-flex;align-items:center;width:max-content;padding:7px 11px;border-radius:999px;background:#eef2ef;color:#395246;font-size:.8rem;font-weight:800}
.state-working{background:#dff3e6;color:#176238}.state-break{background:#fff2cb;color:#805b00}.state-incomplete{background:#fde1dc;color:#972c20}.state-off{background:#edf0ef;color:#56635e}
.attendance-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.attendance-actions form{margin:0}
.today-punches{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}.today-punches>span{display:flex;flex-direction:column;min-width:130px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.today-punches small{color:var(--muted);font-variant-numeric:tabular-nums}.today-punches.mini{grid-column:auto}.today-punches.mini>span{min-width:auto;padding:7px 9px}
.attendance-total{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--line)}.attendance-total strong{font-size:1.45rem}
.operational-notice{grid-column:1/-1;margin:0;padding:11px 14px;border-radius:10px;background:#f5f1e6;color:#6f5b21;font-size:.82rem}
.compact-heading{margin-top:28px}.inline-filter{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.inline-filter label{min-width:180px}.inline-filter input{margin-top:5px}
.punch-list{display:flex;gap:6px;flex-wrap:wrap}.punch-list span{white-space:nowrap;padding:5px 8px;border-radius:8px;background:#f1f4f1;font-size:.78rem}
.attendance-team-grid{margin-bottom:24px}.attendance-team-grid .employee-card{display:flex;flex-direction:column;gap:16px}.attendance-team-grid .button{margin-top:auto;width:max-content}
.correction-row{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.7fr) auto;gap:15px;align-items:end;padding:16px 0;border-bottom:1px solid var(--line)}.correction-row:last-child{border-bottom:0}.correction-row>div:first-child{display:flex;flex-direction:column}.correction-row>div:last-child{display:flex;gap:8px}.correction-row label{margin:0}
@media(max-width:760px){.attendance-clock{grid-template-columns:1fr}.attendance-actions{justify-content:flex-start}.correction-row{grid-template-columns:1fr}.table-panel{overflow-x:auto}.table-panel table{min-width:650px}}
@media(max-width:760px){
  .public-nav{gap:9px}.public-nav-link{display:none}.public-nav .public-cta{padding:8px 11px}
  .landing-hero{min-height:auto;grid-template-columns:1fr;gap:34px;padding:28px 0 58px}.landing-hero h1{font-size:clamp(2.6rem,13vw,4.2rem)}
  .product-preview{transform:none}.audience-grid,.institutional-grid,.values-grid,.institutional-intro{grid-template-columns:1fr}.institutional-intro{gap:18px}.landing-section{padding:52px 0}.landing-section.soft{padding:28px 20px}.who-we-are{padding:34px 22px}.public-footer{grid-template-columns:1fr}.public-footer nav{justify-content:flex-start}.public-footer small{grid-column:1}
  .choice-panel ul{grid-template-columns:1fr}.choice-panel label{display:flex}.flow-row{gap:8px}.flow-row b{display:none}
}
.cash-empty{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:28px;align-items:start;border-top:5px solid var(--accent)}
.cash-open-form{display:grid;grid-template-columns:1fr;gap:13px}.cash-open-form label,.stack-form label{display:grid;gap:6px;font-weight:700}.cash-open-form button,.stack-form button{justify-self:start}
.cash-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.cash-layout,.cash-actions{align-items:start}.cash-layout .module-overview-heading strong{font-size:1.45rem;white-space:nowrap}
.cash-history,.cash-recent{margin-top:24px}.cash-in{color:#176238}.cash-out{color:#a5362a}.canceled-row{opacity:.62}.canceled-row td{text-decoration-color:#9aa39e}
.cash-table td small{display:block;color:var(--muted);margin-top:4px}.cash-cancel{display:flex;gap:7px;align-items:center}.cash-cancel input{min-width:160px;padding:7px 9px}.cash-cancel button{padding:7px 10px}
.cash-close-card{border-top:4px solid #d6ad43}.cash-closing-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.cash-closing-summary>div{display:grid;gap:4px}.cash-closing-summary span{color:var(--muted)}.cash-closing-summary strong{font-size:1.35rem}.cash-closing-summary p{grid-column:1/-1;margin:0;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:900px){.cash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .cash-empty,.cash-closing-summary{grid-template-columns:1fr}.cash-metrics{grid-template-columns:1fr 1fr}.cash-open-form button,.stack-form button{width:100%}
  .cash-table{border:0;background:transparent;overflow:visible}.cash-table table,.cash-table tbody,.cash-table tr,.cash-table td{display:block;width:100%}.cash-table thead{display:none}
  .cash-table tr{margin-bottom:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.cash-table td{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
  .cash-table td::before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.cash-table td:last-child{border-bottom:0}.cash-table td.empty{display:block}.cash-cancel{align-items:stretch;flex-direction:column}.cash-cancel input{min-width:0;width:100%}
}
.cash-period{margin:0 0 22px;padding:14px 18px;width:max-content;max-width:100%}.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-source-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:18px;margin:22px 0}.finance-note{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line)}
.cash-book-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}.cash-book{margin-top:0}.cash-book .table-wrap{margin-top:16px}.cash-book table{table-layout:fixed}.cash-book th:nth-child(1){width:17%}.cash-book th:nth-child(2){width:29%}.cash-book th:nth-child(3){width:24%}.cash-book th:nth-child(4){width:16%}.cash-book th:nth-child(5){width:14%}.cash-pending{margin-top:22px}.cash-pending .finance-entry-panel{margin-top:18px}.cash-entry-card{max-width:850px}
.cash-awareness{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;align-items:center;gap:22px;margin:0 0 22px;padding:18px 20px;border:1px solid var(--line);border-left:5px solid #7f8a84;border-radius:14px;background:#fff}.cash-awareness-open{border-left-color:#2e7a4e;background:#f7fbf7}.cash-awareness-closed{background:#fafbf9}.cash-awareness-summary{display:flex;align-items:center;gap:14px;min-width:0}.cash-awareness-summary h2{margin:0 0 4px;font-size:1.1rem}.cash-awareness-summary p{margin:0;color:var(--muted);font-size:.88rem}.cash-status-badge{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#e8ece9;color:#52605a;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.cash-awareness-open .cash-status-badge{background:#dff3e6;color:#176238}.cash-awareness-facts{display:grid;grid-template-columns:repeat(2,minmax(115px,1fr));gap:9px}.cash-awareness-facts>div{display:grid;gap:2px;padding:8px 11px;border-left:1px solid var(--line)}.cash-awareness-facts span{color:var(--muted);font-size:.72rem}.cash-awareness-facts strong{white-space:nowrap;font-size:.95rem}.cash-awareness>.button{white-space:nowrap}.cash-warning{color:#9b6500}
.cash-status-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;border-top:4px solid var(--accent)}.cash-status-card>div{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px}.cash-status-card>strong{font-size:2rem}.cash-status-card .button{margin-top:auto}
.finance-entry-panel,.finance-realized{margin-top:22px}.finance-overdue{border-top:4px solid #c95d4c}.finance-settle summary{cursor:pointer;color:var(--accent);font-weight:800}.finance-settle form{display:grid;gap:7px;min-width:210px;margin-top:8px}.finance-settle select,.finance-settle input{padding:8px}.finance-row-actions{display:flex;gap:8px;align-items:center;margin-top:8px}.finance-row-actions form{display:flex;gap:6px}.finance-row-actions input{max-width:145px;padding:7px}.finance-row-actions button{padding:7px 9px}.stack-form{display:grid;gap:13px}.form-grid label.full{grid-column:1/-1}
@media(max-width:1050px){.sales-main-fields{grid-template-columns:repeat(2,minmax(0,340px))}.sales-item-row .sales-type{grid-column:span 3}.sales-item-row .sales-product{grid-column:span 9}.sales-item-row .sales-description{grid-column:span 12}.sales-item-row .sales-unit,.sales-item-row .sales-quantity{grid-column:span 3}.sales-item-row .sales-price,.sales-item-row .sales-discount{grid-column:span 3}}
@media(max-width:900px){.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-source-grid{grid-template-columns:1fr}.cash-awareness{grid-template-columns:1fr auto}.cash-awareness-facts{grid-column:1/-1;grid-row:2}.cash-awareness>.button{grid-column:2;grid-row:1}}
@media(max-width:760px){.finance-metrics{grid-template-columns:1fr 1fr}.finance-row-actions,.finance-row-actions form{align-items:stretch;flex-direction:column}.finance-row-actions input{max-width:none;width:100%}.finance-settle form{min-width:0}}
@media(max-width:760px){.sales-main-fields,.sales-item-row,.cash-book-metrics{grid-template-columns:1fr}.sales-item-row>*{grid-column:1!important}.sales-item-row .delete-field{padding:0}.cash-period{width:100%}.cash-book th:nth-child(n){width:auto}.cash-awareness{grid-template-columns:1fr;gap:15px;padding:16px}.cash-awareness-summary{align-items:flex-start}.cash-awareness-facts{grid-column:1;grid-row:auto}.cash-awareness>.button{grid-column:1;grid-row:auto;width:100%}}
.product-create-card{display:grid;gap:0}.product-form-section{padding:22px 0;border-bottom:1px solid var(--line)}.product-form-section:first-of-type{padding-top:0}.product-form-section .section-heading,.movement-product-heading{margin:0 0 18px}.section-heading>div{display:flex;align-items:center;gap:10px}.step-number{display:inline-grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900;font-size:.8rem}.product-control-extra{margin-top:16px}.product-control-extra[hidden]{display:none}.product-control-extra>label{display:grid;gap:6px;font-weight:700}.product-control-extra>label small{font-weight:400;color:var(--muted)}
.item-row [hidden]{display:none!important}
.advanced-fields{margin:20px 0;padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:#fafbf9}.advanced-fields summary{cursor:pointer;font-weight:850;color:var(--ink)}.advanced-fields>p{margin:9px 0 14px}.advanced-fields .form-grid{margin-top:14px}.movement-destination{display:grid;grid-template-columns:minmax(200px,.6fr);gap:10px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.movement-destination .section-heading{margin:0}.movement-destination>label{display:grid;gap:6px;font-weight:700}.movement-more{margin-top:22px}.stock-now{background:#f7faf6;margin-inline:-24px;padding-inline:24px}
@media(max-width:760px){.stock-now{margin-inline:-20px;padding-inline:20px}.movement-destination{grid-template-columns:1fr}.product-form-section .section-heading{align-items:flex-start;flex-direction:column}.section-heading>div{align-items:center}}

/* Estoque produtivo */
.stock-metrics{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:22px}.stock-metrics>a{display:grid;gap:6px;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);text-decoration:none}.stock-metrics strong{font-size:2rem}.stock-metrics span{color:var(--muted)}
.stock-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.stock-dashboard-grid .full-span{grid-column:1/-1}.activity-list{display:grid;margin-top:16px}.activity-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.activity-row>span{display:grid;gap:3px;min-width:0}.activity-row>span:last-child{text-align:right}.activity-row small{color:var(--muted)}.activity-danger{color:#8b2118}.empty-state{padding:24px 0;color:var(--muted);text-align:center}.small-button{padding:7px 10px;background:#edf1ee;font-weight:800}
.product-filters{display:grid;grid-template-columns:minmax(250px,1.5fr) repeat(4,minmax(130px,.65fr)) auto;gap:12px;align-items:end;margin-bottom:18px;padding:16px}.product-filters label{display:grid;gap:6px;font-weight:750}.product-filters input,.product-filters select,.inline-filter select,.label-category-filter select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f8faf7}.clickable-row a{color:var(--ink)}
.responsive-table{overflow:hidden}.responsive-table table{width:100%;table-layout:fixed}.responsive-table th,.responsive-table td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}.responsive-table td a{font-weight:750}.table-item{display:block;margin-bottom:4px}.detail-list{display:grid;gap:0;margin:16px 0 0}.detail-list>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;text-align:right;font-weight:750}
.compact-fields{grid-template-columns:repeat(2,minmax(0,340px))}.compact-fields .field-name{grid-column:span 1}.form-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.form-section .section-heading,.movement-context .section-heading,.movement-products .section-heading{margin-top:0;padding-top:0;border:0}.movement-products{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.compact-scan{margin:0 0 16px;padding:14px;border:1px dashed #b9c6bd;border-radius:12px;background:#fafbf9}.inline-search{display:flex;gap:8px}.inline-search input{flex:1;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px}.compact-item-row{grid-template-columns:minmax(220px,1fr) minmax(110px,180px) auto;max-width:780px}.compact-item-row .row-error{grid-column:1/-1}.product-autocomplete{max-width:100%}.operation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:30px}.operation-grid a{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none}.operation-grid a>span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#edf4ed;color:var(--brand);font-size:1.35rem}.operation-grid small{color:var(--muted)}.history-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.inline-details summary{cursor:pointer;color:#8b2118}.inline-details form{display:grid;gap:6px;margin-top:7px}.inline-details input{width:100%;padding:7px;border:1px solid var(--line);border-radius:7px}
.reminders-panel,.purchase-detail-panel,.report-main,.report-support{margin-top:22px}.receive-list{display:grid;gap:10px;max-width:760px}.receive-list label{display:grid;grid-template-columns:1fr 160px;align-items:center;gap:20px;padding:14px;border-radius:11px;background:var(--paper)}.receive-list label>span{display:grid;gap:3px}.receive-list small{color:var(--muted)}
.label-export-card{display:grid;gap:0}.label-category-filter{display:grid;gap:5px;min-width:220px}.label-product-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:430px;overflow-y:auto}.label-product-list>label{display:grid;grid-template-columns:1fr 90px;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px}.label-product-list>label>span{display:grid;gap:3px}.label-product-list small{color:var(--muted)}.label-options{display:flex;flex-wrap:wrap;gap:14px}.label-options label{display:flex;align-items:center;gap:7px;padding:10px 12px;background:var(--paper);border-radius:9px}.label-options label:first-child{display:grid;min-width:190px;background:transparent;padding-left:0}.label-options input{width:auto}.report-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}

/* Calendário e mural */
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding:14px 20px}.calendar-toolbar a{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:var(--paper);color:var(--ink);text-decoration:none;font-weight:900}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr);gap:20px}.company-calendar{padding:14px}.calendar-weekdays,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{padding:9px;text-align:center;color:var(--muted);font-size:.75rem;font-weight:850}.calendar-day{min-height:115px;padding:9px;border-top:1px solid var(--line);border-right:1px solid var(--line);overflow:hidden}.calendar-day:nth-child(7){border-right:0}.calendar-day>strong{display:block;margin-bottom:6px}.calendar-day.outside-month{opacity:.35}.calendar-day.today>strong{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff}.calendar-event{display:block;margin:4px 0;padding:5px 6px;border-radius:6px;background:#edf2ee;color:var(--ink);font-size:.72rem;line-height:1.25;text-decoration:none;overflow-wrap:anywhere}.calendar-event small{margin-right:3px}.calendar-event.important{border-left:3px solid #c95d4c}.event-alert,.event-delivery{background:#fff0d2}.event-notice{background:#e7f1ff}.event-reminder{background:#ecf4df}.event-holiday{background:#f2e9f7}.calendar-upcoming{align-self:start;position:sticky;top:18px}.event-dot{width:10px;height:10px!important;min-width:10px;border-radius:50%;background:#bdc8c0}.event-dot.event-alert,.event-dot.event-delivery{background:#e6a52e}.event-dot.event-notice{background:#4c8bc7}.event-dot.event-reminder{background:#76a54b}.event-dot.event-holiday{background:#8f65a5}

@media(max-width:1050px){.stock-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.product-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 2}.calendar-layout{grid-template-columns:1fr}.calendar-upcoming{position:static}.operation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.stock-metrics,.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-dashboard-grid,.operation-grid,.label-product-list{grid-template-columns:1fr}.stock-dashboard-grid .full-span{grid-column:auto}.product-filters{grid-template-columns:1fr}.filter-search{grid-column:auto}.compact-fields,.compact-item-row{grid-template-columns:1fr;max-width:none}.delete-field{padding:0}.receive-list label{grid-template-columns:1fr}.history-heading{align-items:flex-start;flex-direction:column}.company-calendar{overflow:hidden}.calendar-weekdays{display:none}.calendar-week{grid-template-columns:1fr}.calendar-day{min-height:0;border-right:0}.calendar-day.outside-month{display:none}.calendar-day>div:empty{display:none}.calendar-day:has(>div:empty){display:none}.calendar-day>strong{float:left;margin-right:10px}.activity-row{align-items:flex-start}.activity-row>span:last-child{text-align:left}.label-product-list>label{grid-template-columns:1fr 80px}}

/* Painéis em blocos vivos */
.manager-heading{margin-bottom:18px}.dashboard-quick-actions{margin:0 0 22px;padding:0;overflow:hidden}.dashboard-quick-actions summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;cursor:pointer;list-style:none}.dashboard-quick-actions summary::-webkit-details-marker{display:none}.dashboard-quick-actions summary>span{display:grid;gap:2px}.dashboard-quick-actions summary small{color:var(--muted);font-weight:400}.dashboard-quick-actions summary>b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--paper);font-size:1.2rem;transition:transform .18s ease}.dashboard-quick-actions[open] summary>b{transform:rotate(45deg)}.dashboard-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 16px 16px}.dashboard-action-grid a{display:grid;gap:3px;padding:13px 14px;border-radius:9px;background:var(--paper);color:var(--ink);text-decoration:none}.dashboard-action-grid a:hover{background:#e8eeea}.dashboard-action-grid small{color:var(--muted)}
.live-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:9px;margin:22px 0}.live-tile{position:relative;display:flex;min-width:0;min-height:220px;flex-direction:column;align-items:flex-start;padding:22px;color:#fff;text-decoration:none;background:#28694e;box-shadow:0 1px 2px rgba(11,29,21,.12);transition:transform .14s ease,box-shadow .14s ease}.live-tile:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(11,29,21,.18)}.live-tile-wide{grid-column:span 2}.live-tile-kicker{font-size:.72rem;font-weight:900;letter-spacing:.08em;opacity:.86}.live-tile-value{display:block;max-width:100%;margin:20px 0 2px;font-size:clamp(2.5rem,4.5vw,4.2rem);font-weight:900;line-height:.95;overflow-wrap:anywhere}.live-tile-money{font-size:clamp(1.85rem,3.2vw,3.15rem)}.live-tile h2{max-width:100%;margin:5px 0 8px;font-size:clamp(1.05rem,1.7vw,1.38rem);line-height:1.15;overflow-wrap:anywhere}.live-tile p{max-width:100%;margin:0 0 22px;line-height:1.4;opacity:.88;overflow-wrap:anywhere}.live-tile-action{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;margin-top:auto;padding-top:10px;border-top:1px solid rgba(255,255,255,.28);font-size:.82rem;font-weight:850}.live-tile-action b{font-size:1.15rem}.live-tile-stock{background:#24704e}.live-tile-sales{background:#246792}.live-tile-services{background:#76518b}.live-tile-team{background:#a45f25}.live-tile-technicians{background:#426975}.live-tile-requests{background:#735936}.live-tile-finance{background:#28785d}.live-tile-receivable{background:#984f40}.live-tile-quotes{background:#5d7139}.live-tile-expand{display:block;padding:0}.live-tile-expand>summary{display:flex;min-height:220px;flex-direction:column;align-items:flex-start;padding:22px;cursor:pointer;list-style:none}.live-tile-expand>summary::-webkit-details-marker{display:none}.live-tile-expand[open] .live-tile-action b{transform:rotate(45deg)}.live-tile-expanded-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:1px;background:rgba(255,255,255,.22)}.live-tile-expanded-links a{display:grid;gap:3px;min-width:0;padding:14px;background:rgba(34,26,16,.32);color:#fff;text-decoration:none}.live-tile-expanded-links a:hover{background:rgba(34,26,16,.5)}.live-tile-expanded-links strong{font-size:1.3rem}.live-tile-expanded-links span{font-size:.78rem;overflow-wrap:anywhere}.owner-live-tiles{margin-bottom:22px}
@media(max-width:1050px){.live-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.live-tile-grid,.dashboard-action-grid{grid-template-columns:1fr}.live-tile-wide{grid-column:span 1}.live-tile{min-height:205px}.live-tile-expanded-links{grid-template-columns:1fr}.dashboard-quick-actions summary{padding:15px 16px}.dashboard-action-grid{padding:0 12px 12px}}
.live-tile-expand .live-tile-expanded-links{grid-template-columns:1fr}

/* Resumos compactos */
.summary-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.summary-card{display:flex;min-width:0;min-height:205px;flex-direction:column;gap:17px;padding:21px;border-top:4px solid #8a9790}.summary-card-stock{border-top-color:#39785b}.summary-card-sales,.summary-card-quotes{border-top-color:#46789a}.summary-card-services,.summary-card-technicians{border-top-color:#745987}.summary-card-team{border-top-color:#a66b32}.summary-card-finance{border-top-color:#3b8068}.summary-card-requests{border-top-color:#b08231}.summary-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}.summary-card-heading>div{min-width:0}.summary-card-heading .eyebrow{margin:0 0 5px}.summary-card-heading h2{margin:0;font-size:1.25rem;line-height:1.18;overflow-wrap:anywhere}.summary-card-heading>a{flex:0 0 auto;color:var(--brand);font-size:.82rem;font-weight:850;text-decoration:none}.summary-card-heading>a:hover{text-decoration:underline}.summary-card-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.summary-card-metrics>span{display:grid;align-content:start;gap:4px;min-width:0;padding:11px;border-radius:10px;background:var(--paper)}.summary-card-metrics strong{font-size:1.25rem;line-height:1.1;overflow-wrap:anywhere}.summary-card-metrics small{color:var(--muted);line-height:1.25;overflow-wrap:anywhere}.summary-card-primary{font-size:clamp(1.7rem,2.8vw,2.25rem);line-height:1;overflow-wrap:anywhere}.summary-card-note{margin:auto 0 0;color:var(--muted);font-size:.86rem;line-height:1.4}.metric-warning{background:#fff3d6!important;color:#805600}.summary-card-requests{display:block}.summary-card-requests>summary{display:flex;min-height:159px;flex-direction:column;gap:17px;cursor:pointer;list-style:none}.summary-card-requests>summary::-webkit-details-marker{display:none}.summary-card-count{display:grid;place-items:center;flex:0 0 38px;min-width:38px;height:38px;border-radius:50%;background:#fff0c7;color:#795500;font-size:1.05rem}.summary-card-open{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:11px;border-top:1px solid var(--line);color:var(--brand);font-size:.82rem;font-weight:850}.summary-card-open b{font-size:1.1rem;transition:transform .18s ease}.summary-card-requests[open] .summary-card-open b{transform:rotate(45deg)}.summary-request-options{display:grid;gap:7px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.summary-request-options a{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:9px;padding:9px 10px;border-radius:9px;background:var(--paper);color:var(--ink);text-decoration:none}.summary-request-options a:hover{background:#e8eeea}.summary-request-options strong{font-size:1.05rem}.summary-request-options span{font-size:.82rem}.owner-summary-cards{margin-bottom:22px}
@media(max-width:1050px){.summary-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.summary-card-grid{grid-template-columns:1fr}.summary-card{min-height:0}.summary-card-metrics{grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}}
.summary-card-metrics small{overflow-wrap:normal;word-break:normal}

/* Aparência da conta */
.appearance-card{max-width:820px}.theme-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.theme-choice{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;padding:16px;border:2px solid var(--line);border-radius:14px;cursor:pointer}.theme-choice>input{grid-row:1/4;align-self:start;margin-top:4px;accent-color:var(--brand)}.theme-choice:has(input:checked){border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.theme-choice strong,.theme-choice small{grid-column:2}.theme-choice small{color:var(--muted);line-height:1.4}.theme-preview{grid-column:2;display:grid;grid-template-columns:34% 1fr;grid-template-rows:16px 1fr;gap:5px;height:90px;padding:8px;border-radius:9px;overflow:hidden}.theme-preview i{grid-row:1/3;border-radius:5px}.theme-preview b,.theme-preview em{display:block;border-radius:4px}.theme-choice-dark .theme-preview{background:#101612}.theme-choice-dark .theme-preview i{background:#1b2721}.theme-choice-dark .theme-preview b{background:#d9f36a}.theme-choice-dark .theme-preview em{background:#25312b}.theme-choice-light .theme-preview{background:#f4f6f2}.theme-choice-light .theme-preview i{background:#fff;border:1px solid #dce2dd}.theme-choice-light .theme-preview b{background:#286447}.theme-choice-light .theme-preview em{background:#fff;border:1px solid #dce2dd}

/* Modo escuro global */
html[data-theme="dark"]{color-scheme:dark;--ink:#edf4ef;--muted:#a7b3ac;--paper:#0e1411;--card:#18211d;--brand:#8fd3ad;--accent:#d9f36a;--line:#34413a}
html[data-theme="dark"] body{background:#0e1411;color:var(--ink)}
html[data-theme="dark"] .topbar{background:#0b1b14}
html[data-theme="dark"] .main-nav{background:#141c18}
html[data-theme="dark"] .section-nav{background:#101713}
html[data-theme="dark"] .section-nav a:hover,html[data-theme="dark"] .section-nav a.active{background:#243029;color:#b0e2c6;box-shadow:none}
html[data-theme="dark"] :is(.login-card,.setup-card,.product-preview,.audience-grid article,.screen-carousel figure,.module-card,.metric-grid article,.panel,.table-wrap,.form-card,.movement-card,.fiscal-item,.quote-card,.owner-metrics article,.stock-metrics>a,.operation-grid a,.commercial-tabs a,.subnav a,.operations-bar a){background-color:var(--card);border-color:var(--line);color:var(--ink);box-shadow:none}
html[data-theme="dark"] :is(.quick-links a,.item-row,.technician-steps>div,.dashboard-action-grid a,.summary-card-metrics>span,.summary-request-options a,.employee-metrics span,.today-punches>span,.punch-list span,.owner-note,.secondary,.small-button,.calendar-toolbar a,.attendance-state,.advanced-fields,.compact-scan){background-color:#222c27;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea,.form-control){background:#101713;color:var(--ink);border-color:#435148;caret-color:var(--accent)}
html[data-theme="dark"] :is(input,select,textarea)::placeholder{color:#7f8d85}
html[data-theme="dark"] option{background:#101713;color:var(--ink)}
html[data-theme="dark"] :is(input[type="checkbox"],input[type="radio"]){accent-color:#79c69f}
html[data-theme="dark"] .ghost{background:transparent;color:var(--ink);border-color:#4a5a51}
html[data-theme="dark"] .primary{background:#397e5d;color:#fff}
html[data-theme="dark"] .secondary:hover,html[data-theme="dark"] .quick-links a:hover,html[data-theme="dark"] .dashboard-action-grid a:hover,html[data-theme="dark"] .summary-request-options a:hover{background:#2c3932}
html[data-theme="dark"] th,html[data-theme="dark"] td{border-color:var(--line)}
html[data-theme="dark"] tbody tr:hover{background:#1d2822}
html[data-theme="dark"] .clickable-row:hover{background:#202b25}
html[data-theme="dark"] .cash-awareness{background:#18211d;border-color:var(--line)}
html[data-theme="dark"] .cash-awareness-open{background:#14271d;border-left-color:#58a477}
html[data-theme="dark"] .cash-awareness-closed{background:#171f1b}
html[data-theme="dark"] .cash-status-badge{background:#2b3731;color:#c0cbc4}
html[data-theme="dark"] .cash-awareness-open .cash-status-badge{background:#1f4932;color:#a7e3be}
html[data-theme="dark"] :is(.badge,.state-off){background:#2b3530;color:#c3cdc7}
html[data-theme="dark"] :is(.badge.success,.state-working,.service-order-service_done,.service-order-completed,.quote-approved,.commercial-completed,.payment-pago,.service-finished-notice){background:#1d452e;color:#a9e4be}
html[data-theme="dark"] :is(.badge.warning,.state-break,.service-order-in_progress,.quote-in_progress,.commercial-confirmed,.commercial-preparing,.payment-parcial,.summary-card-count){background:#493a18;color:#f2d27d}
html[data-theme="dark"] :is(.badge.danger,.state-incomplete,.service-order-canceled,.priority-high,.priority-urgent,.quote-rejected,.quote-expired,.commercial-canceled,.alert){background:#4a2523;color:#ffb4ad}
html[data-theme="dark"] :is(.service-order-open,.service-order-scheduled,.quote-sent,.commercial-ready){background:#20364d;color:#b5d6ff}
html[data-theme="dark"] :is(.service-order-waiting,.service-order-incomplete,.quote-incomplete){background:#4a3020;color:#ffc89c}
html[data-theme="dark"] :is(.metric-alert,.owner-warning,.metric-warning,.compact-alert,.internal-note,.operational-notice,.dev-notice){background:#3b311b!important;color:#f0d386;border-color:#745f2b!important}
html[data-theme="dark"] :is(.print-notice,.commercial-explanation){background:#27301f;color:#c9d99e;border-color:#4c5b35}
html[data-theme="dark"] :is(.commercial-origin,.event-notice){background:#1d3043;color:#bedbfa}
html[data-theme="dark"] .danger-zone{background:#301c1b;border-color:#673c38}
html[data-theme="dark"] :is(.owner-bar-track,.goal-track){background:#2a352f}
html[data-theme="dark"] .stock-now{background:#151f1a}
html[data-theme="dark"] .landing-section.soft{background:#17221c}
html[data-theme="dark"] .flow-row span{background:#202a25}
html[data-theme="dark"] .status{background:#24382c;color:#a8dfbd}
html[data-theme="dark"] .message{background:#1d432d;color:#b4e8c6}
html[data-theme="dark"] .event-alert,html[data-theme="dark"] .event-delivery{background:#493817;color:#f3d17c}
html[data-theme="dark"] .event-reminder{background:#26381f;color:#c7e3a9}
html[data-theme="dark"] .event-holiday{background:#382741;color:#e0bae9}
html[data-theme="dark"] .calendar-day{border-color:var(--line)}
html[data-theme="dark"] .field-error{color:#ffaaa2}
html[data-theme="dark"] .cash-in{color:#87dca7}
html[data-theme="dark"] .cash-out,html[data-theme="dark"] .activity-danger{color:#ff9e95}
html[data-theme="dark"] .cash-warning{color:#f2c86b}

@media(max-width:650px){.theme-choice-grid{grid-template-columns:1fr}}
@media print{
  html[data-theme="dark"]{color-scheme:light;--ink:#17221d;--muted:#66736c;--paper:#fff;--card:#fff;--brand:#286447;--line:#dce2dd}
  html[data-theme="dark"] :is(body,.page,.panel,.table-wrap,.form-card,.quote-card,.movement-card,.fiscal-item,table,th,td){background:#fff!important;color:#17221d!important;border-color:#dce2dd!important}
}

/* Experiência solo, imóveis e serviços reutilizáveis */
.price-margin-preview{display:flex;justify-content:space-between;gap:18px;margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.customer-locations{margin:20px 0}.location-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:16px}.location-card-grid article{display:flex;justify-content:space-between;gap:14px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.location-card-grid article>div:first-child{display:grid;gap:5px}.location-card-grid span,.location-card-grid small{color:var(--muted)}.location-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.location-actions a{color:var(--brand);font-weight:800;text-decoration:none}
.service-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.service-template-card{display:flex;min-height:250px;flex-direction:column;gap:18px;border-top:4px solid var(--accent)}.service-template-card h2{margin:12px 0 5px}.service-template-card p{margin:0;color:var(--muted)}.template-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.template-metrics span{display:grid;gap:3px;padding:10px;border-radius:9px;background:var(--paper)}.template-metrics small{color:var(--muted)}.card-actions{display:flex;gap:8px;margin-top:auto}
.service-template-form{display:grid;gap:0}.template-form-rows,.template-checklist-rows{display:grid;gap:10px;margin-bottom:14px}.template-item-row{display:grid;grid-template-columns:.75fr 1.1fr 1.6fr .5fr .6fr .8fr .8fr .65fr;gap:9px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.template-item-row label,.template-check-row label{display:grid;gap:5px;font-weight:700}.template-item-row label span,.template-check-row label span{font-size:.75rem}.template-check-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}
.execution-checklist{display:grid;gap:10px}.execution-check-row{display:grid;grid-template-columns:minmax(230px,1fr) minmax(220px,1fr);gap:14px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.execution-check-row>label{display:grid;gap:5px}.execution-check-row .check-main{display:flex;align-items:center;gap:12px;cursor:pointer}.execution-check-row .check-main input{width:22px;height:22px}.execution-check-row .check-main span{display:grid;gap:3px}.execution-check-row small{color:var(--muted)}
.checklist-review-list{display:grid;gap:8px;margin-top:14px}.checklist-review-list>div{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.checklist-review-list>div>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#2b3530;color:var(--muted);font-weight:900}.checklist-review-list .done>span{background:#1d6a40;color:#fff}.checklist-review-list .missing>span{background:#8a4a21;color:#fff}.checklist-review-list p{display:grid;gap:2px;margin:0}.checklist-review-list small{color:var(--muted)}
.service-finalization{margin:18px 0;border-top:4px solid var(--accent)}.service-finalization form{display:grid;gap:16px}.service-finalization .final-accept{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.service-finalization .final-accept input{width:22px;height:22px;margin-top:2px}.service-finalization .final-accept span{display:grid;gap:3px}.service-finalization button{justify-self:start}
.solo-heading{margin-bottom:18px}.solo-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:20px}.solo-quick-actions a{display:grid;grid-template-columns:40px 1fr;gap:2px 12px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);text-decoration:none}.solo-quick-actions a:hover{border-color:var(--brand);transform:translateY(-1px)}.solo-quick-actions>a>span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#28352e;color:var(--accent);font-weight:900}.solo-quick-actions small{color:var(--muted)}.solo-summary-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.solo-dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin:18px 0}.solo-agenda-list,.solo-quote-list{display:grid;margin-top:14px}.solo-agenda-list a,.solo-quote-list a{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.solo-agenda-list time{color:var(--brand);font-weight:850}.solo-agenda-list span,.solo-quote-list span{display:grid;gap:3px}.solo-agenda-list small,.solo-quote-list small{color:var(--muted)}.solo-quote-list a{grid-template-columns:1fr auto}.solo-quote-list>b{white-space:nowrap}
.camera-dialog{width:min(92vw,520px);padding:0;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink)}.camera-dialog::backdrop{background:rgba(0,0,0,.75)}.camera-dialog>div{display:grid;gap:12px;padding:16px}.camera-dialog video{width:100%;max-height:65vh;border-radius:10px;background:#000}.camera-dialog p{margin:0;color:var(--muted)}
@media(max-width:1050px){.template-item-row{grid-template-columns:repeat(4,minmax(0,1fr))}.solo-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.solo-summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.location-card-grid,.service-template-grid,.solo-quick-actions,.solo-summary-cards,.solo-dashboard-grid{grid-template-columns:1fr}.location-card-grid article{flex-direction:column}.location-actions{align-items:flex-start;flex-direction:row}.template-item-row,.template-check-row,.execution-check-row{grid-template-columns:1fr}.price-margin-preview{align-items:flex-start;flex-direction:column}.camera-scan-button{width:100%}}

/* Mobile inventory: readable cards instead of compressed desktop tables. */
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .page>*{min-width:0}
  .owner-grid,.owner-grid>*,.owner-chart-panel,.owner-chart,.owner-goals{min-width:0;max-width:100%}
  .owner-chart{width:100%}
  .main-nav,.section-nav{scrollbar-width:none;overscroll-behavior-x:contain}
  .main-nav::-webkit-scrollbar,.section-nav::-webkit-scrollbar{display:none}
  .product-table,.product-history-table,.movement-table{overflow:visible;border:0;background:transparent}
  .product-table table,.product-table tbody,.product-table tr,.product-table td,
  .product-history-table table,.product-history-table tbody,.product-history-table tr,.product-history-table td,
  .movement-table table,.movement-table tbody,.movement-table tr,.movement-table td{display:block;width:100%}
  .product-table thead,.product-history-table thead,.movement-table thead{display:none}
  .product-table tr,.product-history-table tr,.movement-table tr{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
  .product-table td,.product-history-table td,.movement-table td{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:start;padding:9px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
  .product-table td::before,.product-history-table td::before,.movement-table td::before{content:attr(data-label);color:var(--muted);font-size:.7rem;font-weight:850;line-height:1.35;text-transform:uppercase;letter-spacing:.04em}
  .product-table td:last-child,.product-history-table td:last-child,.movement-table td:last-child{border-bottom:0}
  .product-table td[data-label="Produto"] a{color:var(--ink);line-height:1.3}
  .product-cell-main{display:grid;gap:4px;min-width:0}
  .product-table td[data-label="Produto"] small{display:block;color:var(--muted);font-size:.72rem;word-break:break-all}
  .product-table .badge{justify-self:start}
  .product-table .product-row-action{display:block;padding-top:13px}
  .product-table .product-row-action::before{display:none}
  .product-table .product-row-action .button{width:100%;min-height:44px}
  .product-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .product-detail-metrics article{min-width:0;padding:17px 15px}
  .product-detail-metrics strong{font-size:clamp(1.35rem,7vw,1.75rem);overflow-wrap:anywhere}
  .movement-table .movement-row-actions{display:grid;grid-template-columns:1fr;gap:10px;padding-top:13px}
  .movement-table .movement-row-actions::before{display:none}
  .movement-table .movement-row-actions .button{width:100%}
  .movement-table .inline-details{width:100%;padding:10px 0}
  .movement-table .inline-details form{min-width:0}
  .product-table td.empty,.product-history-table td.empty,.movement-table td.empty{display:block;padding:18px;border:0;text-align:center}
  .product-table td.empty::before,.product-history-table td.empty::before,.movement-table td.empty::before{display:none}
}

@media(max-width:760px){
  .product-history-table td,.movement-table td{grid-template-columns:105px minmax(0,1fr)}
  .purchase-table,.report-stock-table{overflow:visible;border:0;background:transparent}
  :is(.purchase-table,.report-stock-table) :is(table,tbody,tr,td){display:block;width:100%}
  :is(.purchase-table,.report-stock-table) thead{display:none}
  :is(.purchase-table,.report-stock-table) tr{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
  :is(.purchase-table,.report-stock-table) td{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;align-items:start;padding:9px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
  :is(.purchase-table,.report-stock-table) td::before{content:attr(data-label);color:var(--muted);font-size:.7rem;font-weight:850;line-height:1.35;text-transform:uppercase;letter-spacing:.04em}
  :is(.purchase-table,.report-stock-table) td:last-child{border-bottom:0}
  :is(.purchase-table,.report-stock-table) td>span{display:grid;gap:4px;min-width:0}
  .report-stock-table td[data-label="Saldo"]>span{display:block}
  .product-filters .checkbox-row{display:flex!important;align-items:center;justify-content:flex-start;gap:10px;min-height:44px}
  .product-filters .checkbox-row input{flex:0 0 auto;width:auto!important;margin:0}
  :is(.purchase-table,.report-stock-table) .badge{justify-self:start}
  :is(.purchase-table,.report-stock-table) .inventory-row-action{display:block;padding-top:13px}
  :is(.purchase-table,.report-stock-table) .inventory-row-action::before{display:none}
  :is(.purchase-table,.report-stock-table) .inventory-row-action .button{width:100%;min-height:44px}
  :is(.purchase-table,.report-stock-table) td.empty{display:block;padding:18px;border:0;text-align:center}
  :is(.purchase-table,.report-stock-table) td.empty::before{display:none}
}
