@font-face {
    font-family: "Inter";
    src: url("../fonts/InterVariable.woff2") format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 100 900;
}

:root {
    --ink: #17191d;
    --ink-2: #24272d;
    --muted: #6f747d;
    --muted-2: #9ca1aa;
    --line: #e7e5df;
    --canvas: #f5f4f0;
    --surface: #fff;
    --gold: #b98a2e;
    --gold-2: #d6ae5b;
    --gold-soft: #f8f1e3;
    --teal: #2e8e86;
    --blue: #427db6;
    --red: #c75f56;
    --green: #27826b;
    --purple: #8064aa;
    --sidebar: 252px;
    --shadow: 0 10px 36px rgba(20, 21, 24, .06);
    --radius: 14px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--canvas); color: var(--ink); font-family: "Inter", "Segoe UI", Arial, sans-serif; font-size: 15px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; color: inherit; }
button, select { cursor: pointer; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; }
[hidden] { display: none !important; }

.app-shell { min-height: 100vh; }
.sidebar { background: #111214; color: #e9e7e1; display: flex; flex-direction: column; height: 100vh; left: 0; position: fixed; top: 0; width: var(--sidebar); z-index: 50; }
.brand { align-items: center; border-bottom: 1px solid rgba(255,255,255,.08); display: flex; gap: 11px; height: 74px; padding: 12px 20px; }
.brand-mark { background: #fff; border: 1px solid rgba(201,157,64,.45); border-radius: 9px; display: grid; height: 43px; overflow: hidden; place-items: center; width: 43px; }
.brand-mark img { height: 100%; object-fit: cover; width: 100%; }
.brand > span:last-child { display: flex; flex-direction: column; letter-spacing: .05em; line-height: 1.15; }
.brand strong { font-size: 14px; }
.brand small { color: var(--gold-2); font-size: 10px; font-weight: 800; letter-spacing: .22em; }
.sidebar-nav { flex: 1; overflow-y: auto; padding: 12px 10px 24px; scrollbar-width: thin; }
.nav-label { color: #73767d; display: block; font-size: 9px; font-weight: 800; letter-spacing: .17em; padding: 18px 12px 7px; text-transform: uppercase; }
.nav-item { align-items: center; border-radius: 8px; color: #aeb0b5; display: flex; font-size: 12.5px; font-weight: 600; gap: 10px; margin: 2px 0; min-height: 39px; padding: 6px 9px; transition: .18s ease; }
.nav-item:hover { background: rgba(255,255,255,.055); color: #fff; }
.nav-item.active { background: linear-gradient(90deg, rgba(199,155,64,.17), rgba(199,155,64,.06)); color: #fff; position: relative; }
.nav-item.active::before { background: var(--gold-2); border-radius: 3px; content: ""; height: 22px; left: -10px; position: absolute; width: 3px; }
.nav-icon { align-items: center; border: 1px solid rgba(255,255,255,.13); border-radius: 6px; color: #a7a9ae; display: flex; flex: 0 0 25px; font-size: 8px; font-style: normal; font-weight: 800; height: 25px; justify-content: center; letter-spacing: -.02em; }
.nav-item.active .nav-icon { border-color: rgba(210,171,88,.45); color: var(--gold-2); }
.nav-item kbd { background: rgba(255,255,255,.08); border: 0; border-radius: 4px; color: #777a80; font-size: 8px; margin-left: auto; padding: 2px 5px; }
.nav-badge { background:#b98a2e;border-radius:12px;color:#111;font-size:9px;font-style:normal;font-weight:850;margin-left:auto;min-width:20px;padding:2px 6px;text-align:center; }
.nav-pos { border: 1px solid rgba(196,151,59,.13); }
.sidebar-footer { border-top: 1px solid rgba(255,255,255,.08); display: flex; flex-direction: column; gap: 7px; padding: 14px 18px 17px; }
.sidebar-footer a { align-items: center; color: #c4c5c8; display: flex; font-size: 11px; font-weight: 600; gap: 7px; }
.sidebar-footer small { color: #62656b; font-size: 9px; }
.status-dot, .live-dot { animation: pulse 2s infinite; background: #45b987; border-radius: 50%; box-shadow: 0 0 0 3px rgba(69,185,135,.12); display: inline-block; height: 7px; width: 7px; }
@keyframes pulse { 50% { box-shadow: 0 0 0 6px rgba(69,185,135,0); } }
.sidebar-scrim { display: none; }

.app-main { margin-left: var(--sidebar); min-height: 100vh; }
.topbar { align-items: center; background: rgba(255,255,255,.95); border-bottom: 1px solid var(--line); display: flex; height: 74px; padding: 0 30px; position: sticky; top: 0; z-index: 35; backdrop-filter: blur(14px); }
.menu-toggle { display: none !important; margin-right: 12px; }
.topbar-context { align-items: center; display: flex; gap: 10px; }
.eyebrow { color: var(--muted-2); font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.branch-switcher { align-items: center; display: flex; gap: 6px; }
.branch-indicator { background: var(--green); border-radius: 2px; height: 12px; width: 3px; }
.branch-switcher select { appearance: none; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='m1 1 4 4 4-4' fill='none' stroke='%23777'/%3E%3C/svg%3E") no-repeat right center; border: 0; font-size: 13px; font-weight: 750; padding: 3px 16px 3px 0; }
.topbar-actions { align-items: center; display: flex; gap: 9px; margin-left: auto; }
.quick-action { align-items: center; background: var(--ink); border-radius: 8px; color: #fff; display: flex; font-size: 11px; font-weight: 700; gap: 7px; padding: 9px 13px; }
.quick-action span { color: var(--gold-2); font-size: 15px; }
.icon-button { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 8px; display: flex; height: 37px; justify-content: center; position: relative; width: 37px; }
.notification-button i { background: #c55; border: 2px solid #fff; border-radius: 50%; height: 8px; position: absolute; right: 7px; top: 7px; width: 8px; }
.notification-button b { align-items:center;background:#c6544d;border:2px solid #fff;border-radius:10px;color:#fff;display:flex;font-size:7px;height:17px;justify-content:center;position:absolute;right:-4px;top:-5px;width:17px; }
.user-menu { position: relative; }
.user-menu summary { align-items: center; cursor: pointer; display: flex; gap: 9px; list-style: none; padding-left: 4px; }
.user-menu summary::-webkit-details-marker { display: none; }
.avatar { align-items: center; background: var(--gold-soft); border: 1px solid #e6d4ad; border-radius: 50%; color: #8a651d; display: flex; font-size: 10px; font-weight: 800; height: 36px; justify-content: center; width: 36px; }
.user-copy { display: flex; flex-direction: column; line-height: 1.2; }
.user-copy strong { font-size: 11px; }
.user-copy small { color: var(--muted); font-size: 9px; margin-top: 3px; }
.chevron { color: var(--muted); font-size: 12px; }
.user-dropdown { background: #fff; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 18px 45px rgba(20,21,24,.14); display: flex; flex-direction: column; min-width: 230px; padding: 8px; position: absolute; right: 0; top: 47px; }
.user-dropdown > div { border-bottom: 1px solid var(--line); display: flex; flex-direction: column; margin-bottom: 5px; padding: 9px 8px 12px; }
.user-dropdown > div small { color: var(--muted); font-size: 10px; }
.user-dropdown a { border-radius: 6px; font-size: 11px; font-weight: 600; padding: 9px; }
.user-dropdown a:hover { background: var(--canvas); }
.user-dropdown .logout-link { color: var(--red); }

.page-content { margin: 0 auto; max-width: 1580px; min-height: calc(100vh - 123px); padding: 28px 30px 45px; }
.app-footer { align-items: center; border-top: 1px solid var(--line); color: var(--muted-2); display: flex; font-size: 9px; justify-content: space-between; min-height: 49px; padding: 12px 30px; }
.page-header { align-items: flex-end; display: flex; gap: 24px; justify-content: space-between; margin-bottom: 23px; }
.page-header h1 { font-size: clamp(25px, 2.3vw, 34px); letter-spacing: -.04em; line-height: 1.12; margin: 3px 0 5px; }
.page-header p { color: var(--muted); font-size: 12px; margin: 0; }
.page-kicker { color: var(--gold); display: block; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.page-header-actions { align-items: center; display: flex; gap: 8px; }
.date-chip { background: #eeece6; border-radius: 7px; color: var(--muted); font-size: 10px; font-weight: 650; padding: 9px 11px; }
.compact-header { align-items: flex-start; }
.back-link { color: var(--gold); display: inline-block; font-size: 11px; font-weight: 700; margin-bottom: 6px; }

.button-primary, .button-secondary, .button-block { align-items: center; border-radius: 8px; display: inline-flex; font-size: 11px; font-weight: 750; gap: 8px; justify-content: center; min-height: 38px; padding: 9px 15px; transition: .18s ease; }
.button-primary { background: var(--ink); border: 1px solid var(--ink); color: #fff; }
.button-primary:hover { background: #000; transform: translateY(-1px); }
.button-primary span { color: var(--gold-2); }
.button-secondary { background: #fff; border: 1px solid #dedbd4; color: #35373c; }
.button-secondary:hover { background: #f5f3ee; border-color: #cbc7be; }
.button-danger,.button-danger-soft { align-items:center;border-radius:8px;display:inline-flex;font-size:11px;font-weight:750;justify-content:center;min-height:38px;padding:9px 14px; }
.button-danger { background:#a94740;border:1px solid #a94740;color:#fff; }.button-danger-soft { background:#fbedeb;border:1px solid #edcbc7;color:#a94740; }
.is-hidden { display:none!important; }
.mobile-setting-switches { display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0; }.mobile-setting-switches .switch-line { border:1px solid var(--line);border-radius:10px;margin:0;padding:14px; }
.mobile-news-admin { border-top:1px solid var(--line);margin-top:18px;padding-top:8px; }.mobile-news-admin>article { align-items:center;border-bottom:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;padding:12px 2px; }.mobile-news-admin>article>div { display:flex;flex:1;flex-direction:column; }.mobile-news-admin b { font-size:13px; }.mobile-news-admin small,.mobile-news-admin p { color:var(--muted);font-size:11px;margin:2px 0; }
.button-block { width: 100%; }
button:disabled { cursor: not-allowed; opacity: .45; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.muted { color: var(--muted); }
.pad { padding: 18px; }

.alert { align-items: center; animation: slideDown .28s ease; border: 1px solid; border-radius: 9px; display: flex; font-size: 11px; font-weight: 600; gap: 10px; margin-bottom: 18px; padding: 10px 12px; }
@keyframes slideDown { from { opacity: 0; transform: translateY(-8px); } }
.alert-icon { align-items: center; border-radius: 50%; display: flex; font-size: 10px; font-weight: 900; height: 20px; justify-content: center; width: 20px; }
.alert button { background: transparent; border: 0; font-size: 17px; margin-left: auto; opacity: .55; }
.alert-success { background: #edf8f3; border-color: #c3e4d6; color: #226c58; }.alert-success .alert-icon { background: #d0ebdf; }
.alert-error { background: #fdf0ef; border-color: #efcbc7; color: #9c4039; }.alert-error .alert-icon { background: #f4d7d4; }
.alert-warning { background: #fff8e9; border-color: #eedbb3; color: #89631d; }.alert-warning .alert-icon { background: #f4e3bc; }
.alert-info { background:#edf4f6;border-color:#d1e1e5;color:#426976; }

.panel, .metric-card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 3px 16px rgba(20,21,24,.02); }
.metric-grid { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0,1fr)); margin-bottom: 14px; }
.metric-card { min-height: 132px; padding: 17px 18px 14px; }
.metric-card.metric-dark { background: linear-gradient(140deg,#17191c,#25282d); border-color: #22252a; color: #fff; }
.metric-top { align-items: center; display: flex; justify-content: space-between; }
.metric-top > span { color: var(--muted-2); font-size: 8px; font-weight: 800; letter-spacing: .11em; }
.metric-top i { align-items: center; background: #f3f1eb; border-radius: 6px; color: var(--muted); display: flex; font-size: 8px; font-style: normal; font-weight: 800; height: 27px; justify-content: center; min-width: 27px; padding: 0 5px; }
.metric-dark .metric-top i { background: rgba(204,164,79,.15); color: var(--gold-2); }
.metric-card > strong { display: block; font-size: clamp(21px,2vw,28px); letter-spacing: -.04em; margin: 6px 0 8px; }
.metric-foot { align-items: center; border-top: 1px solid #efede8; display: flex; gap: 6px; padding-top: 9px; }
.metric-dark .metric-foot { border-color: rgba(255,255,255,.1); }
.metric-foot span { font-size: 9px; font-weight: 800; }.metric-foot small { color: var(--muted-2); font-size: 9px; }.metric-foot a { color: var(--gold); font-size: 9px; font-weight: 700; margin-left: auto; }
.positive { color: var(--green) !important; }.negative { color: var(--red) !important; }.neutral { color: var(--blue) !important; }

.dashboard-grid { display: grid; gap: 14px; grid-template-columns: minmax(0,1.65fr) minmax(280px,.7fr); }
.panel-header { align-items: flex-start; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding: 17px 18px 13px; }
.panel-header h2 { font-size: 14px; letter-spacing: -.015em; margin: 0 0 2px; }.panel-header p { color: var(--muted); font-size: 9px; margin: 0; }.panel-header a { color: var(--gold); font-size: 9px; font-weight: 700; }
.legend { align-items: center; color: var(--muted); display: flex; font-size: 9px; gap: 6px; }.legend i { background: var(--gold); border-radius: 2px; height: 7px; width: 7px; }
.chart-wrap { height: 284px; padding: 14px 14px 6px; position: relative; width: 100%; }
.chart-wrap canvas { display: block; height: 100%; width: 100%; }
.recent-panel { min-width: 0; }.stock-alert-panel { min-width: 0; }
.table-responsive { overflow-x: auto; }
.data-table { border-collapse: collapse; min-width: 700px; width: 100%; }
.data-table th { background: #faf9f6; border-bottom: 1px solid var(--line); color: #8c9098; font-size: 8px; font-weight: 800; letter-spacing: .08em; padding: 10px 14px; text-align: left; text-transform: uppercase; white-space: nowrap; }
.data-table td { border-bottom: 1px solid #efede8; color: #555961; font-size: 10px; padding: 11px 14px; vertical-align: middle; }
.data-table tbody tr:last-child td { border-bottom: 0; }.data-table tbody tr:hover { background: #fcfbf8; }
.data-table td b { color: #292c31; font-weight: 700; }
.compact th, .compact td { padding-left: 16px; padding-right: 16px; }
.status { border-radius: 20px; display: inline-flex; font-size: 8px; font-weight: 800; padding: 4px 8px; white-space: nowrap; }
.status-success { background: #e8f5ef; color: #2a7e66; }.status-warning { background: #fff4dd; color: #98701d; }.status-muted { background: #eeeff1; color: #767a82; }.status-danger { background: #fae9e7; color: #a64740; }
.empty-cell { color: var(--muted) !important; padding: 42px 20px !important; text-align: center !important; }
.empty-cell > * { display: block; margin: 4px auto; }.empty-cell a { color: var(--gold); font-weight: 700; }.empty-cell small { margin-top: 5px; }
.empty-icon { align-items: center; background: var(--gold-soft); border-radius: 50%; color: var(--gold); display: flex !important; font-size: 10px; font-weight: 800; height: 40px; justify-content: center; width: 40px; }
.count-badge { background: #f9e9e6; border-radius: 16px; color: var(--red); font-size: 9px; font-weight: 800; padding: 4px 8px; }

.donut-wrap { align-items: center; display: flex; flex-direction: column; gap: 20px; padding: 25px 18px 23px; }
.donut { align-items: center; background: conic-gradient(var(--gold) 0 38%, #25282d 38% 69%, #58a59b 69% 88%, #9179b7 88% 100%); border-radius: 50%; display: flex; height: 145px; justify-content: center; position: relative; width: 145px; }
.donut::after { background: #fff; border-radius: 50%; content: ""; height: 92px; position: absolute; width: 92px; }
.donut > i { display: none; }.donut > span { display: flex; flex-direction: column; position: relative; text-align: center; z-index: 2; }.donut small { color: var(--muted-2); font-size: 7px; font-weight: 800; letter-spacing: .1em; }.donut b { font-size: 14px; margin-top: 2px; }
.donut-legend { display: grid; gap: 9px; grid-template-columns: 1fr 1fr; width: 100%; }
.donut-legend div { align-items: center; display: flex; font-size: 9px; gap: 6px; }.donut-legend i { border-radius: 2px; height: 7px; width: 7px; }.donut-legend span { color: var(--muted); }.donut-legend b { margin-left: auto; }
.stock-alert-list { display: flex; flex-direction: column; padding: 5px 18px; }
.stock-alert-list > a { align-items: center; border-bottom: 1px solid var(--line); display: flex; gap: 9px; padding: 11px 0; }.stock-alert-list > a:last-child { border: 0; }
.product-monogram { align-items: center; background: #f3f1eb; border-radius: 7px; color: var(--muted); display: flex; font-size: 8px; font-weight: 800; height: 31px; justify-content: center; width: 31px; }
.stock-alert-list a > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; }.stock-alert-list b { font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.stock-alert-list small { color: var(--muted-2); font-size: 8px; }
.stock-alert-list em { background: #fff4dd; border-radius: 15px; color: #98701d; font-size: 8px; font-style: normal; font-weight: 800; margin-left: auto; padding: 4px 7px; }.stock-alert-list em.danger { background: #fae9e7; color: var(--red); }
.panel-footer-link { border-top: 1px solid var(--line); color: var(--gold); display: flex; font-size: 9px; font-weight: 750; justify-content: space-between; padding: 11px 18px; }
.success-empty { align-items: center; display: flex; flex-direction: column; padding: 25px; text-align: center; }.success-empty span { align-items: center; background: #e8f5ef; border-radius: 50%; color: var(--green); display: flex; height: 37px; justify-content: center; width: 37px; }.success-empty b { font-size: 11px; margin-top: 8px; }.success-empty small { color: var(--muted); font-size: 9px; }
.quick-section { margin-top: 20px; }.quick-section > header h2 { font-size: 14px; margin: 0; }.quick-section > header p { color: var(--muted); font-size: 9px; margin: 1px 0 10px; }
.quick-grid { display: grid; gap: 10px; grid-template-columns: repeat(4,1fr); }
.quick-grid > a { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 10px; display: grid; gap: 2px 10px; grid-template-columns: 39px 1fr auto; grid-template-rows: 1fr 1fr; min-height: 68px; padding: 11px; transition: .18s; }.quick-grid > a:hover { border-color: #d5c39c; box-shadow: var(--shadow); transform: translateY(-2px); }
.quick-icon { align-items: center; border-radius: 8px; display: flex; font-size: 8px; font-weight: 850; grid-row: 1/3; height: 38px; justify-content: center; width: 38px; }.quick-icon.gold,.summary-icon.gold { background: var(--gold-soft); color: var(--gold); }.quick-icon.teal,.summary-icon.teal { background: #e7f4f2; color: var(--teal); }.quick-icon.blue,.summary-icon.blue { background: #e9f1f8; color: var(--blue); }.quick-icon.purple { background: #f0ebf7; color: var(--purple); }.summary-icon.red { background: #f9e9e7; color: var(--red); }
.quick-grid b { align-self: end; font-size: 10px; }.quick-grid small { align-self: start; color: var(--muted); font-size: 8px; }.quick-grid > a > i { color: var(--gold); font-style: normal; grid-column: 3; grid-row: 1/3; }

.summary-strip, .module-insights { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); display: grid; grid-template-columns: repeat(3,1fr); margin-bottom: 14px; }
.summary-strip > div, .module-insights > article { align-items: center; border-right: 1px solid var(--line); display: flex; gap: 12px; min-height: 78px; padding: 14px 18px; }.summary-strip > div:last-child,.module-insights > article:last-child { border: 0; }
.summary-icon { align-items: center; border-radius: 9px; display: flex; font-size: 9px; font-weight: 850; height: 39px; justify-content: center; width: 39px; }
.summary-strip span:last-child,.module-insights article > div { display: flex; flex-direction: column; }.summary-strip small,.module-insights small { color: var(--muted-2); font-size: 8px; font-weight: 800; letter-spacing: .08em; }.summary-strip b,.module-insights b { font-size: 17px; letter-spacing: -.03em; }
.toolbar { align-items: center; border-bottom: 1px solid var(--line); display: flex; gap: 16px; justify-content: space-between; min-height: 64px; padding: 11px 15px; }
.search-form { align-items: center; background: #f8f7f4; border: 1px solid #e5e2dc; border-radius: 8px; display: flex; max-width: 480px; min-height: 38px; overflow: hidden; width: 100%; }.search-form > span { color: var(--muted); font-size: 18px; padding-left: 12px; }.search-form input { background: transparent; border: 0; flex: 1; font-size: 10px; min-width: 80px; outline: 0; padding: 8px 10px; }.search-form button { align-self: stretch; background: var(--ink); border: 0; color: #fff; font-size: 9px; font-weight: 700; padding: 0 13px; }.search-form.static { max-width: 420px; }
.toolbar-right { align-items: center; display: flex; gap: 10px; }.result-count { color: var(--muted); font-size: 9px; white-space: nowrap; }.toolbar-title { display: flex; flex-direction: column; }.toolbar-title b { font-size: 11px; }.toolbar-title small { color: var(--muted); font-size: 9px; }
.table-product,.person-cell { align-items: center; display: flex; gap: 9px; min-width: 180px; }.table-product > img,.table-product > span,.person-cell > span { align-items: center; background: #f2f0eb; border-radius: 7px; display: flex; flex: 0 0 34px; font-size: 8px; font-weight: 800; height: 34px; justify-content: center; object-fit: cover; width: 34px; }.table-product > div,.person-cell > div { display: flex; flex-direction: column; }.table-product small,.person-cell small,.cell-sub { color: var(--muted-2); display: block; font-size: 8px; font-weight: 400; margin-top: 2px; }.person-cell > span { background: #e9f1f4; color: #426976; border-radius: 50%; }
.person-cell .gold-avatar { background: var(--gold-soft); color: var(--gold); }.crown { color: var(--gold); font-size: 8px; font-style: normal; margin-left: 5px; }
.category-tag { align-items: center; color: var(--muted); display: flex; font-size: 9px; gap: 6px; }.category-tag i { border-radius: 50%; height: 7px; width: 7px; }
.soft-tag,.role-tag { background: #f0f1f3; border-radius: 5px; color: #636871; display: inline-block; font-size: 8px; font-weight: 700; padding: 4px 7px; }.role-super_admin { background: var(--gold-soft); color: #88651e; }.role-admin { background: #ecebf5; color: #685a93; }.role-manager { background: #e9f2f7; color: #3d6e88; }.role-cashier { background: #e8f5ef; color: #2a7e66; }
.stock-pill { background: #e8f5ef; border: 0; border-radius: 15px; color: var(--green); font-size: 8px; font-weight: 800; padding: 5px 9px; }.stock-pill.low { background: #fff4dd; color: #98701d; }.stock-pill.out { background: #fae9e7; color: var(--red); }
.row-actions { text-align: right; }.row-actions a { color: var(--gold); font-size: 9px; font-weight: 750; }
.customers-toolbar { flex-wrap: wrap; }
.mini-tabs { align-items:center;background:#f3f1eb;border:1px solid #e4e0d8;border-radius:999px;display:flex;gap:3px;padding:3px; }
.mini-tabs a { border-radius:999px;color:#737780;font-size:8px;font-weight:850;padding:6px 9px;text-transform:uppercase;white-space:nowrap; }
.mini-tabs a.active { background:#17191d;color:#fff; }
.customer-actions { align-items:center;display:flex;gap:9px;justify-content:flex-end;min-width:115px; }
.customer-actions form { margin:0; }
.row-danger-link { background:transparent;border:0;color:#a94740;cursor:pointer;font-family:inherit;font-size:9px;font-weight:800;padding:0;text-decoration:underline dotted; }
.row-danger-link:hover { color:#7d2f29; }

.entity-form { margin: auto; max-width: 1350px; }.narrow-form { max-width: 1020px; }
.form-layout { align-items: start; display: grid; gap: 15px; grid-template-columns: minmax(0,1fr) 280px; }.form-main { display: flex; flex-direction: column; gap: 14px; }.form-aside { display: flex; flex-direction: column; gap: 14px; position: sticky; top: 92px; }
.form-section { padding: 19px; }.form-section > header { align-items: flex-start; border-bottom: 1px solid var(--line); display: flex; gap: 11px; margin: -1px 0 18px; padding-bottom: 14px; }.form-section > header h2 { font-size: 13px; margin: 0; }.form-section > header p { color: var(--muted); font-size: 9px; margin: 2px 0 0; }.form-section > h3 { font-size: 11px; margin: 0 0 12px; }
.section-number { align-items: center; background: var(--gold-soft); border-radius: 6px; color: var(--gold); display: flex; flex: 0 0 29px; font-size: 8px; font-weight: 850; height: 29px; justify-content: center; }
.form-grid { display: grid; gap: 14px; }.form-grid.one { grid-template-columns: 1fr; }.form-grid.two { grid-template-columns: repeat(2,minmax(0,1fr)); }.form-grid.three { grid-template-columns: repeat(3,minmax(0,1fr)); }.form-grid.four { grid-template-columns: repeat(4,minmax(0,1fr)); }
.span-2 { grid-column: span 2; }.span-3 { grid-column: span 3; }.span-4 { grid-column: span 4; }
.field { display: flex; flex-direction: column; gap: 5px; }.field > span,.checkbox-group > span { color: #50535a; font-size: 9px; font-weight: 700; }.field input,.field select,.field textarea { background: #fff; border: 1px solid #dbd9d3; border-radius: 7px; font-size: 10px; min-height: 38px; outline: 0; padding: 9px 10px; transition: .15s; width: 100%; }.field textarea { resize: vertical; }.field input:focus,.field select:focus,.field textarea:focus { border-color: #bb9854; box-shadow: 0 0 0 3px rgba(185,138,46,.1); }.field small { color: var(--muted-2); font-size: 8px; }
.money-input,.input-with-icon { align-items: center; display: flex; position: relative; }.money-input i,.input-with-icon > i { color: var(--muted); font-size: 9px; font-style: normal; font-weight: 700; left: 10px; position: absolute; }.money-input input { padding-left: 31px; }.money-input.large input { font-size: 17px; font-weight: 750; min-height: 48px; padding-left: 38px; }.readonly-value { align-items: center; background: #f4f3ef; border: 1px solid var(--line); border-radius: 7px; display: flex; font-size: 12px; font-weight: 750; min-height: 38px; padding: 8px 10px; }
.image-upload { align-items: center; background: #faf9f6; border: 1px dashed #d7d2c7; border-radius: 9px; cursor: pointer; display: flex; flex-direction: column; justify-content: center; min-height: 170px; overflow: hidden; padding: 16px; text-align: center; }.image-upload:hover { border-color: var(--gold); }.image-upload input { display: none; }.image-upload img { height: 150px; object-fit: contain; width: 100%; }.image-upload > span { color: var(--gold); font-size: 25px; }.image-upload b { font-size: 10px; }.image-upload small { color: var(--muted); font-size: 8px; margin-top: 3px; }
.switch-line { align-items: center; display: flex; gap: 12px; justify-content: space-between; position: relative; }.switch-line > span { display: flex; flex-direction: column; }.switch-line b { font-size: 10px; }.switch-line small { color: var(--muted); font-size: 8px; }.switch-line input { height: 0; opacity: 0; position: absolute; width: 0; }.switch-line > i { background: #c9cbd0; border-radius: 20px; height: 22px; position: relative; transition: .2s; width: 40px; }.switch-line > i::after { background: #fff; border-radius: 50%; box-shadow: 0 1px 4px rgba(0,0,0,.2); content: ""; height: 16px; left: 3px; position: absolute; top: 3px; transition: .2s; width: 16px; }.switch-line input:checked + i { background: var(--green); }.switch-line input:checked + i::after { transform: translateX(18px); }.field-switch { align-self: end; border: 1px solid var(--line); border-radius: 7px; min-height: 38px; padding: 8px 10px; }
.form-actions { display: flex; flex-direction: column; gap: 7px; }.sticky-form-actions { align-items: center; background: rgba(245,244,240,.94); bottom: 0; display: flex; gap: 8px; justify-content: flex-end; padding: 14px 0 4px; position: sticky; z-index: 5; backdrop-filter: blur(8px); }
.form-subtitle { border-top: 1px solid var(--line); font-size: 10px; margin: 20px 0 13px; padding-top: 16px; }
.top-gap { margin-top: 16px; }
.choice-grid { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }.choice-grid.compact { gap: 8px; }
.choice-card { cursor: pointer; position: relative; }.choice-card input { opacity: 0; position: absolute; }.choice-card > span { border: 1px solid var(--line); border-radius: 9px; display: grid; gap: 2px 10px; grid-template-columns: 35px 1fr; min-height: 100px; padding: 14px; }.choice-card input:checked + span { background: #fdf9f0; border-color: #c9a252; box-shadow: 0 0 0 2px rgba(185,138,46,.08); }.choice-card i { align-items: center; background: var(--gold-soft); border-radius: 7px; color: var(--gold); display: flex; font-size: 8px; font-style: normal; font-weight: 800; grid-row: 1/3; height: 35px; justify-content: center; }.choice-card b { font-size: 10px; }.choice-card small { color: var(--muted); font-size: 8px; line-height: 1.4; }
.checkbox-group { border-top: 1px solid var(--line); margin-top: 17px; padding-top: 15px; }.checkbox-group > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }.checkbox-group label { position: relative; }.checkbox-group input { opacity: 0; position: absolute; }.checkbox-group label > span { background: #f4f3ef; border: 1px solid var(--line); border-radius: 6px; cursor: pointer; display: inline-flex; font-size: 9px; font-weight: 650; padding: 7px 10px; }.checkbox-group input:checked ~ span { background: var(--gold-soft); border-color: #d9bf87; color: #7e5d1b; }
.permission-grid { display: grid; gap: 7px; grid-template-columns: repeat(3,1fr); }.permission-grid label { position: relative; }.permission-grid input { opacity: 0; position: absolute; }.permission-grid label span { align-items: center; border: 1px solid var(--line); border-radius: 7px; color: var(--muted); cursor: pointer; display: flex; font-size: 9px; font-weight: 650; gap: 7px; padding: 9px; }.permission-grid label i { align-items: center; border: 1px solid #ccc; border-radius: 4px; color: transparent; display: flex; font-size: 8px; font-style: normal; height: 15px; justify-content: center; width: 15px; }.permission-grid input:checked + span { background: #fdf9f0; border-color: #d8bd80; color: #624a1b; }.permission-grid input:checked + span i { background: var(--gold); border-color: var(--gold); color: #fff; }

.branch-grid { display: grid; gap: 14px; grid-template-columns: repeat(3,minmax(260px,1fr)); }.branch-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; min-height: 370px; padding: 18px; position: relative; }.branch-card.current { border-color: #d8bb7a; box-shadow: 0 0 0 2px rgba(185,138,46,.08); }.branch-card > header { align-items: center; display: flex; justify-content: space-between; }.branch-card > header > div { align-items: flex-end; display: flex; flex-direction: column; gap: 5px; }.branch-avatar { align-items: center; background: var(--ink); border-radius: 9px; color: var(--gold-2); display: flex; font-size: 9px; font-weight: 850; height: 42px; justify-content: center; width: 42px; }.current-tag { color: var(--gold); font-size: 7px; font-weight: 850; letter-spacing: .1em; }.branch-card h2 { font-size: 17px; margin: 14px 0 1px; }.branch-card > p { color: var(--muted); font-size: 9px; margin: 0 0 16px; }.branch-address { align-items: flex-start; background: #f8f7f4; border-radius: 8px; display: flex; font-size: 9px; gap: 8px; padding: 10px; }.branch-address span:last-child { display: flex; flex-direction: column; }.branch-address small { color: var(--muted); }
.branch-stats { border-bottom: 1px solid var(--line); display: grid; grid-template-columns: repeat(3,1fr); margin-top: 15px; padding-bottom: 13px; }.branch-stats div { border-right: 1px solid var(--line); display: flex; flex-direction: column; padding: 0 8px; }.branch-stats div:first-child { padding-left: 0; }.branch-stats div:last-child { border: 0; }.branch-stats small { color: var(--muted-2); font-size: 7px; font-weight: 800; }.branch-stats b { font-size: 13px; }
.price-policy { display: flex; font-size: 9px; justify-content: space-between; padding: 13px 0; }.price-policy span { color: var(--muted); }.branch-card > footer { margin-top: auto; }.add-branch-card { align-items: center; border-style: dashed; color: var(--muted); justify-content: center; text-align: center; }.add-branch-card > span { align-items: center; background: var(--gold-soft); border-radius: 50%; color: var(--gold); display: flex; font-size: 22px; height: 50px; justify-content: center; width: 50px; }.add-branch-card b { color: var(--ink); font-size: 12px; margin-top: 12px; }.add-branch-card small { font-size: 9px; max-width: 220px; }

.super-summary { background:linear-gradient(135deg,#17191c,#292c32);border-radius:var(--radius);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px;padding:8px; }.super-summary article { align-items:center;border-right:1px solid rgba(255,255,255,.1);display:flex;gap:10px;padding:12px 15px; }.super-summary article:last-child { border:0; }.super-summary article>span { align-items:center;background:rgba(204,164,79,.14);border-radius:8px;color:var(--gold-2);display:flex;font-size:8px;font-weight:850;height:36px;justify-content:center;width:36px; }.super-summary article>div { display:flex;flex-direction:column; }.super-summary small { color:#898d94;font-size:7px;font-weight:800;letter-spacing:.08em; }.super-summary b { font-size:17px; }
.organization-grid { display:grid;gap:13px;grid-template-columns:repeat(3,minmax(270px,1fr)); }.organization-card { background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;min-height:365px;padding:17px; }.organization-card.current { border-color:#d7ba78;box-shadow:0 0 0 2px rgba(185,138,46,.08); }.organization-card>header { align-items:center;display:flex;justify-content:space-between; }.organization-card>header>div { align-items:flex-end;display:flex;flex-direction:column;gap:4px; }.organization-card>header small { color:var(--muted);font-size:7px; }.org-logo { align-items:center;background:var(--ink);border-radius:9px;color:var(--gold-2);display:flex;font-size:10px;font-weight:850;height:43px;justify-content:center;width:43px; }.organization-card h2 { font-size:16px;margin:14px 0 1px; }.organization-card>p { color:var(--muted);font-size:8px;margin:0 0 15px; }.organization-card dl { border-bottom:1px solid var(--line);border-top:1px solid var(--line);margin:0;padding:7px 0; }.organization-card dl>div { display:grid;grid-template-columns:85px 1fr;padding:6px 0; }.organization-card dt { color:var(--muted-2);font-size:7px;font-weight:800; }.organization-card dd { display:flex;flex-direction:column;font-size:9px;font-weight:650;margin:0; }.organization-card dd small { color:var(--muted);font-size:7px;font-weight:400; }.org-numbers { display:grid;grid-template-columns:1fr 1fr 1.5fr;padding:14px 0; }.org-numbers span { border-right:1px solid var(--line);display:flex;flex-direction:column;padding:0 8px; }.org-numbers span:first-child { padding-left:0; }.org-numbers span:last-child { border:0; }.org-numbers b { font-size:11px; }.org-numbers small { color:var(--muted);font-size:7px; }.organization-card>footer { align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:auto; }.organization-card footer form { width:100%; }.managing-now { color:var(--green);font-size:8px;font-weight:750; }.slug-input { align-items:center;display:flex; }.slug-input i { background:#f0eee9;border:1px solid #dbd9d3;border-radius:7px 0 0 7px;color:var(--muted);font-size:7px;font-style:normal;height:38px;max-width:52%;overflow:hidden;padding:12px 7px;text-overflow:ellipsis;white-space:nowrap; }.slug-input input { border-left:0!important;border-radius:0 7px 7px 0!important; }
.saas-warning { align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:14px;padding:14px 17px; }.saas-warning strong { font-size:12px; }.saas-warning span { color:var(--muted);font-size:10px; }.saas-summary { grid-template-columns:repeat(6,1fr); }.saas-organization-grid { align-items:start; }.saas-card { min-height:0; }.saas-card dl>div { grid-template-columns:105px 1fr; }.saas-card dd a { color:var(--gold);font-weight:750; }.saas-card-actions { align-items:center;display:flex;gap:8px;margin-top:auto; }.saas-card-actions form { flex:1; }.payment-details { background:#faf8f3;border:1px solid #e7e0d2;border-radius:10px;margin-top:12px;padding:0; }.payment-details summary { color:#936d26;cursor:pointer;font-size:9px;font-weight:850;letter-spacing:.04em;list-style:none;padding:11px 12px;text-transform:uppercase; }.payment-details summary::-webkit-details-marker { display:none; }.payment-details form { border-top:1px solid #e7e0d2;padding:12px; }.payment-grid { display:grid;gap:9px;grid-template-columns:1fr 1fr; }.payment-grid label { display:flex;flex-direction:column;gap:5px; }.payment-grid label>span { color:var(--muted-2);font-size:7px;font-weight:850;letter-spacing:.06em;text-transform:uppercase; }.payment-grid input,.payment-grid select { background:#fff;border:1px solid #dcd8cf;border-radius:7px;font-size:11px;min-height:35px;padding:8px; }.payment-grid .span-2 { grid-column:span 2; }.compact-nested { gap:8px; }.field-hint { color:var(--muted);display:block;font-size:9px;margin-top:6px; }.field-hint a { color:var(--gold);font-weight:750; }
.plans-admin-grid { display:grid;gap:14px;grid-template-columns:repeat(3,minmax(280px,1fr)); }.plan-admin-card { background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;min-height:510px;padding:19px;position:relative; }.plan-admin-card.featured { border-color:#d5b56d;box-shadow:0 0 0 3px rgba(197,151,62,.08); }.plan-admin-card header { align-items:center;display:flex;justify-content:space-between; }.plan-admin-icon { align-items:center;background:#17191c;border-radius:10px;color:var(--gold-2);display:flex;font-size:11px;font-weight:900;height:46px;justify-content:center;text-transform:uppercase;width:46px; }.plan-admin-card header>div { display:flex;gap:5px; }.plan-admin-card h2 { font-size:21px;letter-spacing:-.04em;margin:16px 0 5px; }.plan-admin-card p { color:var(--muted);font-size:11px;line-height:1.55;min-height:52px; }.plan-admin-price { border-bottom:1px solid var(--line);border-top:1px solid var(--line);margin:12px 0;padding:13px 0; }.plan-admin-price strong { display:block;font-size:24px;letter-spacing:-.04em; }.plan-admin-price small,.plan-admin-price em { color:var(--muted);font-size:9px;font-style:normal; }.plan-discount-pill { background:#e8f5ef;border-radius:999px;color:#2d8068;font-size:9px;font-weight:800;margin-bottom:12px;padding:7px 9px;width:max-content; }.plan-limits { display:grid;gap:7px;grid-template-columns:repeat(3,1fr);margin-bottom:13px; }.plan-limits span { background:#f6f3ec;border:1px solid #ebe4d6;border-radius:9px;display:flex;flex-direction:column;padding:9px; }.plan-limits b { font-size:14px; }.plan-limits small { color:var(--muted);font-size:7px; }.plan-admin-card ul { list-style:none;margin:0 0 14px;padding:0; }.plan-admin-card li { color:#5d626a;font-size:10px;margin:8px 0;padding-left:16px;position:relative; }.plan-admin-card li::before { color:var(--gold);content:"✓";font-weight:900;left:0;position:absolute; }.plan-admin-card footer { align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:space-between;margin-top:auto;padding-top:13px; }.plan-admin-card footer span { color:var(--muted);font-size:9px; }
.platform-asaas-panel{margin-bottom:14px}.platform-asaas-panel form footer{display:flex;justify-content:flex-end}.subscription-hero{align-items:center;background:linear-gradient(135deg,#17191c,#272a30);color:#fff;display:grid;gap:18px;grid-template-columns:1fr auto auto;margin-bottom:14px;padding:24px}.subscription-hero h2{font-size:28px;letter-spacing:-.05em;margin:9px 0 4px}.subscription-hero p{color:#aaaeb6;font-size:12px;margin:0}.subscription-price{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:14px;min-width:180px;padding:16px}.subscription-price small{color:#9da1aa;display:block;font-size:8px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.subscription-price strong{display:block;font-size:22px;margin:4px 0}.subscription-price span{color:#c5c9d0;font-size:10px}.subscription-price.due{background:rgba(197,151,62,.16);border-color:rgba(197,151,62,.3)}.subscription-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:14px}.plan-payment-actions{display:flex;gap:10px}.plan-payment-actions button{flex:1}.subscription-dl{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:0}.subscription-dl div{background:#f7f5ef;border:1px solid #ebe5d8;border-radius:10px;padding:11px}.subscription-dl dt{color:var(--muted-2);font-size:7px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.subscription-dl dd{font-size:12px;font-weight:750;margin:3px 0 0}.subscription-charge-list{display:flex;flex-direction:column;gap:10px}.subscription-charge-list article{align-items:flex-start;border:1px solid var(--line);border-radius:12px;display:flex;gap:14px;justify-content:space-between;padding:14px}.subscription-charge-list b{font-size:13px}.subscription-charge-list small{color:var(--muted);display:block;font-size:10px;margin-top:3px}.subscription-charge-list textarea{background:#f6f4ee;border:1px solid #e3ded3;border-radius:8px;color:#25282d;font-size:10px;height:64px;margin-top:8px;padding:8px;resize:none;width:100%}.charge-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;max-width:280px}.charge-actions img{background:#fff;border:1px solid var(--line);border-radius:10px;height:96px;object-fit:contain;padding:6px;width:96px}

.module-insights { margin-bottom: 14px; }
.report-filters { align-items: flex-end; display: grid; gap: 12px; grid-template-columns: 1.2fr 1fr 1fr auto; margin-bottom: 14px; padding: 14px; }.report-filters .field { min-width: 0; }.report-metrics { margin-top: 0; }
.report-grid { display: grid; gap: 14px; grid-template-columns: repeat(3,minmax(0,1fr)); }.report-grid .span-2 { grid-column: span 2; }.ranking-list { display: flex; flex-direction: column; padding: 8px 17px; }.ranking-list > div { border-bottom: 1px solid var(--line); display: grid; gap: 6px; grid-template-columns: 1fr auto; padding: 12px 0; }.ranking-list > div:last-child { border: 0; }.ranking-list span { align-items: center; display: grid; gap: 0 8px; grid-template-columns: 26px 1fr; }.ranking-list span > i,.rank-number { align-items: center; background: var(--gold-soft); border-radius: 6px; color: var(--gold); display: inline-flex; font-size: 8px; font-style: normal; font-weight: 800; grid-row: 1/3; height: 25px; justify-content: center; width: 25px; }.ranking-list b { font-size: 9px; }.ranking-list small { color: var(--muted); font-size: 8px; }.ranking-list strong { align-self: center; font-size: 10px; }.ranking-list em { background: #eee; border-radius: 4px; grid-column: 1/3; height: 4px; overflow: hidden; }.ranking-list em i { background: linear-gradient(90deg,var(--gold),var(--gold-2)); display: block; height: 100%; }
.progress { background: #eee; border-radius: 5px; display: block; height: 5px; min-width: 80px; overflow: hidden; }.progress i { background: var(--gold); display: block; height: 100%; }.report-note,.security-callout,.info-callout { align-items: flex-start; background: #eef4f6; border: 1px solid #d9e5e8; border-radius: 9px; color: #55717a; display: flex; font-size: 9px; gap: 9px; margin-top: 14px; padding: 10px 12px; }.report-note span,.security-callout span,.info-callout span { align-items: center; background: #dae9ed; border-radius: 50%; display: flex; flex: 0 0 21px; height: 21px; justify-content: center; }.report-note p,.security-callout p,.info-callout p { margin: 2px 0; }

.settings-layout { align-items: start; display: grid; gap: 15px; grid-template-columns: 235px minmax(0,1fr); }.settings-nav { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; padding: 7px; position: sticky; top: 92px; }.settings-nav a { align-items: center; border-radius: 8px; display: grid; gap: 0 9px; grid-template-columns: 31px 1fr; padding: 9px; }.settings-nav a:hover,.settings-nav a.active { background: #f7f4ed; }.settings-nav a > span { align-items: center; background: #efeee9; border-radius: 6px; display: flex; font-size: 8px; font-weight: 800; grid-row: 1/3; height: 31px; justify-content: center; }.settings-nav a.active > span { background: var(--gold-soft); color: var(--gold); }.settings-nav b { font-size: 9px; }.settings-nav small { color: var(--muted); font-size: 7px; }
.settings-content { display: flex; flex-direction: column; gap: 15px; }.settings-panel { padding: 19px; scroll-margin-top: 90px; }.settings-panel > header { align-items: flex-start; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; margin-bottom: 18px; padding-bottom: 14px; }.settings-panel > header h2 { font-size: 14px; margin: 0; }.settings-panel > header p { color: var(--muted); font-size: 9px; margin: 2px 0; }.settings-panel > header a { color: var(--gold); font-size: 9px; font-weight: 700; }.settings-badge { background: #f2f0eb; border-radius: 5px; color: var(--muted); font-size: 7px; font-weight: 800; letter-spacing: .08em; padding: 5px 7px; }.settings-panel > footer { border-top: 1px solid var(--line); display: flex; justify-content: flex-end; margin-top: 19px; padding-top: 15px; }
.company-logo-row { align-items: center; display: flex; gap: 12px; margin-bottom: 18px; }.company-logo { background: #fff; border: 1px solid var(--line); border-radius: 9px; cursor: pointer; display: block; height: 68px; overflow: hidden; width: 68px; }.company-logo img { height: 100%; object-fit: cover; width: 100%; }.company-logo input { display: none; }.company-logo-row > div { display: flex; flex-direction: column; }.company-logo-row b { font-size: 10px; }.company-logo-row small { color: var(--muted); font-size: 8px; }
.featured-switch { background: #f7f7f4; border: 1px solid var(--line); border-radius: 9px; margin-bottom: 16px; padding: 13px; }.integration-card { align-items: center; border: 1px solid var(--line); border-radius: 9px; display: flex; gap: 11px; margin-bottom: 14px; padding: 11px; }.integration-logo { align-items: center; border-radius: 8px; display: flex; flex: 0 0 39px; font-size: 10px; font-weight: 850; height: 39px; justify-content: center; }.integration-logo.asaas { background: #e8eefb; color: #315fa6; }.integration-logo.fiscal { background: var(--gold-soft); color: var(--gold); }.integration-card > div:nth-child(2) { flex: 1; }.integration-card h3 { font-size: 11px; margin: 0; }.integration-card p { color: var(--muted); font-size: 8px; margin: 2px 0; }
.webhook-url { align-items: center; background: #f3f3f0; border: 1px solid var(--line); border-radius: 8px; display: grid; gap: 2px 10px; grid-template-columns: 1fr auto; padding: 8px 10px; }.webhook-url span { color: var(--muted); font-size: 7px; font-weight: 800; grid-column: 1/3; }.webhook-url code { color: #545961; font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.webhook-url button { background: #fff; border: 1px solid var(--line); border-radius: 5px; font-size: 8px; padding: 4px 7px; }

.modal { background: #fff; border: 0; border-radius: 13px; box-shadow: 0 30px 90px rgba(0,0,0,.24); max-height: calc(100vh - 30px); max-width: 560px; padding: 0; width: calc(100% - 28px); }.modal::backdrop { background: rgba(12,13,15,.62); backdrop-filter: blur(3px); }.modal > form > header { align-items: center; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding: 15px 17px; }.modal > form > header > div { align-items: center; display: flex; gap: 10px; }.modal h3 { font-size: 13px; margin: 0; }.modal header p { color: var(--muted); font-size: 9px; margin: 1px 0; }.modal header button { background: #f1f0ec; border: 0; border-radius: 50%; color: var(--muted); font-size: 16px; height: 28px; width: 28px; }.modal-icon { align-items: center; background: var(--gold-soft); border-radius: 8px; color: var(--gold); display: flex; font-size: 9px; font-weight: 850; height: 37px; justify-content: center; width: 37px; }.modal-body { display: flex; flex-direction: column; gap: 14px; overflow-y: auto; padding: 18px; }.modal > form > footer { align-items: center; border-top: 1px solid var(--line); display: flex; gap: 8px; justify-content: flex-end; padding: 12px 17px; }.current-stock { align-items: center; background: #f5f4f0; border-radius: 8px; color: var(--muted); display: flex; font-size: 9px; justify-content: space-between; padding: 10px; }.current-stock b { color: var(--ink); font-size: 12px; }

.auth-page { background: #fff; min-height: 100vh; }.auth-shell { display: grid; grid-template-columns: minmax(420px,1.05fr) minmax(450px,.95fr); min-height: 100vh; }.auth-panel { background: #111316; color: #fff; display: flex; flex-direction: column; overflow: hidden; padding: 36px clamp(36px,5vw,78px); position: relative; }.auth-panel::before { background: radial-gradient(circle,rgba(190,144,52,.17),transparent 64%); content: ""; height: 600px; left: -220px; position: absolute; top: 10%; width: 600px; }.auth-brand { align-items: center; display: flex; gap: 10px; position: relative; z-index: 2; }.auth-brand img { border-radius: 8px; height: 43px; object-fit: cover; width: 43px; }.auth-brand span { display: flex; flex-direction: column; line-height: 1.1; }.auth-brand b { font-size: 14px; }.auth-brand small { color: var(--gold-2); font-size: 9px; font-weight: 800; letter-spacing: .2em; }
.auth-message { margin: auto 0 25px; max-width: 560px; position: relative; z-index: 2; }.kicker-light { color: var(--gold-2); font-size: 9px; font-weight: 800; letter-spacing: .15em; }.auth-message h1 { font-size: clamp(36px,4.2vw,62px); letter-spacing: -.055em; line-height: 1.03; margin: 15px 0 18px; }.auth-message h1 em { color: var(--gold-2); font-family: Georgia,serif; font-weight: 400; }.auth-message p { color: #a9abb0; font-size: 13px; max-width: 430px; }
.auth-art { border: 1px solid rgba(255,255,255,.1); border-radius: 12px; min-height: 175px; overflow: hidden; padding: 18px; position: relative; z-index: 2; }.auth-art::before { background: linear-gradient(180deg,rgba(198,155,68,.16),transparent); content: ""; inset: 0; position: absolute; }.auth-stat { display: flex; flex-direction: column; position: relative; z-index: 2; }.auth-stat small { color: #85888e; font-size: 8px; font-weight: 800; letter-spacing: .1em; }.auth-stat strong { font-size: 26px; letter-spacing: -.03em; }.auth-stat span { color: #64ba99; font-size: 9px; font-weight: 700; }.auth-bars { align-items: end; bottom: 0; display: flex; gap: 4%; height: 108px; justify-content: flex-end; left: 45%; position: absolute; right: 4%; }.auth-bars i { background: linear-gradient(var(--gold-2),#655025); border-radius: 3px 3px 0 0; flex: 1; opacity: .75; }.auth-copyright { color: #66696e; font-size: 8px; margin-top: 25px; position: relative; }
.login-panel { align-items: center; display: flex; justify-content: center; padding: 35px; }.login-card { max-width: 410px; width: 100%; }.login-heading > span { color: var(--gold); font-size: 8px; font-weight: 850; letter-spacing: .15em; }.login-heading h2 { font-size: 31px; letter-spacing: -.04em; margin: 5px 0 3px; }.login-heading p { color: var(--muted); font-size: 11px; margin: 0 0 28px; }.stack-form { display: flex; flex-direction: column; gap: 15px; }.input-with-icon input { padding-left: 33px; }.input-with-icon > i { align-items: center; background: #f1f0ec; border-radius: 5px; display: flex; height: 21px; justify-content: center; width: 21px; }.show-password { background: transparent; border: 0; color: var(--muted); font-size: 12px; position: absolute; right: 7px; }.form-between { align-items: center; display: flex; font-size: 9px; justify-content: space-between; }.form-between a,.login-help a { color: var(--gold); font-weight: 700; }.check-line { align-items: center; display: flex; gap: 6px; }.check-line input { accent-color: var(--gold); }
.button-block.button-primary,.button-primary.button-block { width: 100%; }.stack-form .button-primary { font-size: 11px; justify-content: space-between; min-height: 46px; padding: 11px 16px; }
.demo-credentials { background: #f8f5ed; border: 1px solid #e9dfc9; border-radius: 8px; display: flex; flex-direction: column; font-size: 9px; margin-top: 20px; padding: 10px 12px; }.demo-credentials b { color: #806022; }.demo-credentials span { color: var(--muted); }.login-help { color: var(--muted); font-size: 9px; margin-top: 24px; text-align: center; }.mobile-auth-logo { display: none; }
.auth-invalid-link{background:#f8f5ed;border:1px solid #e9dfc9;border-radius:10px;padding:18px}.auth-invalid-link b{font-size:15px}.auth-invalid-link p{color:var(--muted);font-size:11px;margin:5px 0 16px}

/* Readability */
.nav-item { font-size:13px; }
.page-header p { font-size:13px; }
.panel-header h2,.quick-section > header h2 { font-size:16px; }
.panel-header p,.quick-section > header p { font-size:11px; }
.metric-top > span { font-size:10px; }
.metric-foot span,.metric-foot small,.metric-foot a { font-size:10px; }
.data-table th { font-size:10px; padding-bottom:12px; padding-top:12px; }
.data-table td { font-size:12px; padding-bottom:13px; padding-top:13px; }
.table-product small,.person-cell small,.cell-sub { font-size:10px; }
.field > span,.checkbox-group > span { font-size:11px; }
.field input,.field select,.field textarea { font-size:13px; min-height:42px; }
.field small { font-size:10px; }
.form-section > header h2 { font-size:15px; }
.form-section > header p { font-size:11px; }
.quick-grid b { font-size:12px; }.quick-grid small { font-size:10px; }
.status { font-size:9px; }
.button-primary,.button-secondary,.button-block { font-size:12px; min-height:41px; }

/* Operator dashboard */
.operator-header { align-items:center; }
.operator-status { align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;display:flex;gap:10px;min-width:220px;padding:11px 14px; }
.operator-status>i { background:#c75f56;border-radius:50%;box-shadow:0 0 0 5px rgba(199,95,86,.1);height:9px;width:9px; }
.operator-status.open>i { background:#31a078;box-shadow:0 0 0 5px rgba(49,160,120,.1); }
.operator-status span { display:flex;flex-direction:column; }.operator-status small { color:var(--muted);font-size:8px;font-weight:800; }.operator-status b { font-size:11px; }
.operator-quick-grid { display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-bottom:14px; }
.operator-quick-grid>a { align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;display:grid;gap:2px 10px;grid-template-columns:40px 1fr auto;min-height:72px;padding:11px;transition:.18s; }
.operator-quick-grid>a:hover { border-color:#d3b678;box-shadow:var(--shadow);transform:translateY(-2px); }
.operator-quick-grid>a>span { align-items:center;background:#f1f0ec;border-radius:8px;color:#696d74;display:flex;font-size:9px;font-weight:850;grid-row:1/3;height:40px;justify-content:center;width:40px; }
.operator-quick-grid>a.operator-primary-action { background:linear-gradient(135deg,#191b1f,#2a2d32);border-color:#222;color:#fff; }.operator-quick-grid>a.operator-primary-action>span { background:rgba(201,160,73,.15);color:var(--gold-2); }
.operator-quick-grid>a>div { display:flex;flex-direction:column; }.operator-quick-grid b { font-size:12px; }.operator-quick-grid small { color:var(--muted);font-size:9px; }.operator-primary-action small { color:#9b9ea4; }.operator-quick-grid>a>i { color:var(--gold);font-style:normal; }
.operator-dashboard-grid { display:grid;gap:14px;grid-template-columns:minmax(0,1.6fr) minmax(280px,.65fr); }
.operator-payment-list { display:flex;flex-direction:column;padding:8px 17px; }.operator-payment-list>div { align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:12px 0; }.operator-payment-list>div:last-child { border:0; }.operator-payment-list>div>span { align-items:center;display:flex;gap:9px; }.operator-payment-list i { align-items:center;background:var(--gold-soft);border-radius:7px;color:var(--gold);display:flex;font-size:8px;font-style:normal;font-weight:850;height:32px;justify-content:center;width:32px; }.operator-payment-list b { display:flex;flex-direction:column;font-size:11px; }.operator-payment-list b small { color:var(--muted);font-size:9px;font-weight:400; }.operator-payment-list strong { font-size:12px; }.operator-cash-footer { background:#f8f7f3;border-top:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:11px 16px; }.operator-cash-footer span { color:var(--muted);display:flex;flex-direction:column;font-size:9px; }.operator-cash-footer b { color:var(--ink);font-size:11px; }

/* Fiscal */
.branch-filter { align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;gap:8px;padding:6px 9px; }.branch-filter label { color:var(--muted);font-size:9px;font-weight:700; }.branch-filter select { border:0;font-size:11px;font-weight:750;outline:0; }
.fiscal-status-panel { align-items:center;background:linear-gradient(135deg,#25282d,#17191c);border-radius:var(--radius);color:#fff;display:grid;gap:15px;grid-template-columns:50px 1fr auto;margin-bottom:14px;padding:19px; }
.fiscal-status-icon { align-items:center;background:rgba(201,160,73,.14);border:1px solid rgba(201,160,73,.25);border-radius:10px;color:var(--gold-2);display:flex;font-size:11px;font-weight:900;height:50px;justify-content:center;width:50px; }
.fiscal-status-panel>div:nth-child(2)>span { color:var(--gold-2);font-size:8px;font-weight:850;letter-spacing:.1em; }.fiscal-status-panel h2 { font-size:18px;margin:2px 0; }.fiscal-status-panel p { color:#a6a9af;font-size:10px;margin:0; }
.fiscal-checks { display:flex;gap:6px; }.fiscal-checks span { background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:15px;color:#82868d;font-size:8px;font-weight:750;padding:5px 8px; }.fiscal-checks span.done { background:rgba(55,154,119,.14);border-color:rgba(55,154,119,.3);color:#77c9aa; }
.fiscal-layout { align-items:start;display:grid;gap:14px;grid-template-columns:205px minmax(0,1fr); }.fiscal-nav { background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;padding:7px;position:sticky;top:92px; }.fiscal-nav a { border-radius:7px;color:var(--gold);display:flex;font-size:8px;font-weight:850;gap:9px;padding:10px; }.fiscal-nav a span { color:#54585f;font-size:10px; }.fiscal-nav a:hover,.fiscal-nav a.active { background:#f8f4eb; }
.fiscal-content,.fiscal-form { display:flex;flex-direction:column;gap:14px; }.fiscal-section { padding:19px;scroll-margin-top:90px; }.fiscal-section>header { align-items:flex-start;border-bottom:1px solid var(--line);display:flex;gap:10px;margin-bottom:17px;padding-bottom:14px; }.fiscal-section>header>span { align-items:center;background:var(--gold-soft);border-radius:7px;color:var(--gold);display:flex;flex:0 0 31px;font-size:8px;font-weight:850;height:31px;justify-content:center; }.fiscal-section>header h2 { font-size:15px;margin:0; }.fiscal-section>header p { color:var(--muted);font-size:10px;margin:2px 0; }
.fiscal-info,.fiscal-error { background:#edf4f6;border:1px solid #d7e5e8;border-radius:8px;color:#55717a;font-size:10px;margin-top:14px;padding:10px 12px; }.fiscal-error { background:#fdf0ef;border-color:#efcbc7;color:#9c4039; }
.fiscal-runtime { display:flex;flex-wrap:wrap;gap:6px;margin-top:12px; }.fiscal-runtime span { border-radius:15px;font-size:8px;font-weight:800;padding:5px 8px; }.fiscal-runtime .ready { background:#e5f3ed;color:#27795c; }.fiscal-runtime .missing { background:#fbedeb;color:#a94740; }
.nfe-form { display:flex;flex-direction:column;gap:14px; }.nfe-issuer-card .status { margin-left:auto; }.nfe-summary-grid { display:grid;gap:10px;grid-template-columns:2fr 1fr 1fr; }.nfe-summary-grid>div { background:#f8f7f4;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;padding:11px 13px; }.nfe-summary-grid small { color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.06em; }.nfe-summary-grid b { font-size:12px;margin-top:3px; }.nfe-summary-grid span { color:var(--muted);font-size:9px;margin-top:2px; }.nfe-lookup-row { align-items:end;display:grid;gap:12px;grid-template-columns:minmax(280px,1fr) auto; }.nfe-lookup-actions { display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end; }.nfe-customer-preview { align-items:center;background:#f8f7f4;border:1px solid var(--line);border-radius:10px;display:flex;gap:11px;margin-top:13px;padding:12px; }.nfe-customer-preview>span { align-items:center;background:var(--gold-soft);border-radius:8px;color:var(--gold);display:flex;flex:0 0 40px;font-size:10px;font-weight:850;height:40px;justify-content:center; }.nfe-customer-preview>div { display:flex;flex-direction:column; }.nfe-customer-preview b { font-size:11px; }.nfe-customer-preview p { color:var(--muted);font-size:9px;line-height:1.5;margin:2px 0; }.nfe-customer-preview small { font-size:8px;font-weight:750; }.nfe-data-ok { color:var(--green); }.nfe-data-warning { color:#a94740; }.nfe-items-table { margin-top:14px; }.nfe-items-table table { min-width:980px; }.nfe-items-table th:nth-child(1) { min-width:190px; }.nfe-items-table th:nth-child(2) { min-width:105px; }.nfe-items-table input { border:1px solid var(--line);border-radius:6px;font-size:9px;max-width:95px;min-height:32px;padding:6px 7px;width:100%; }.nfe-product-cell,.nfe-fiscal-cell { display:flex;flex-direction:column;gap:2px; }.nfe-product-cell b { font-size:10px; }.nfe-product-cell small,.nfe-fiscal-cell small { color:var(--muted);font-size:8px;line-height:1.4; }.nfe-product-cell a { color:var(--gold);font-size:8px;font-weight:700;margin-top:2px; }.nfe-fiscal-cell>span { align-self:flex-start;border-radius:12px;font-size:7px;font-weight:850;padding:3px 6px; }.nfe-fiscal-cell .ready { background:#e5f3ed;color:#27795c; }.nfe-fiscal-cell .pending { background:#fff2db;color:#936a1d; }.nfe-remove-item { align-items:center;background:#fbedeb;border:1px solid #efcbc7;border-radius:6px;color:#a94740;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;width:28px; }.nfe-empty-items { align-items:center;color:var(--muted);display:flex;flex-direction:column;padding:30px;text-align:center; }.nfe-empty-items>span { align-items:center;background:var(--gold-soft);border-radius:50%;color:var(--gold);display:flex;font-size:9px;font-weight:850;height:43px;justify-content:center;width:43px; }.nfe-empty-items b { color:var(--ink);font-size:11px;margin-top:8px; }.nfe-empty-items small { font-size:9px;margin-top:2px; }.nfe-totals { display:flex;gap:9px;justify-content:flex-end;margin-top:13px; }.nfe-totals>div { background:#f8f7f4;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;min-width:130px;padding:9px 11px; }.nfe-totals small { color:var(--muted);font-size:7px;font-weight:800; }.nfe-totals b { font-size:12px;margin-top:2px; }.nfe-totals .grand { background:#25282d;border-color:#25282d;color:#fff; }.nfe-totals .grand small { color:#c9cbd0; }.nfe-form-actions { justify-content:flex-end; }.nfe-form-actions .button-secondary:first-child { margin-right:auto; }
.lookup-control { align-items:stretch;display:flex;gap:6px; }.lookup-control input { min-width:0; }.lookup-control button { background:#f4efe4;border:1px solid #decda8;border-radius:7px;color:#7c5b17;cursor:pointer;font-size:9px;font-weight:850;padding:0 11px;white-space:nowrap; }.lookup-control button:hover { background:#eadcbd; }.lookup-control button:disabled { cursor:wait;opacity:.65; }.field small.lookup-success { color:var(--green);font-weight:750; }.field small.lookup-error { color:#a6423a;font-weight:750; }.field small.lookup-loading { color:#936a1d;font-weight:750; }
.credential-status { display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:15px; }.credential-status>div { align-items:center;background:#f8f7f4;border:1px solid var(--line);border-radius:9px;display:grid;gap:1px 9px;grid-template-columns:37px 1fr;padding:10px; }.credential-status span { align-items:center;background:#e9e8e3;border-radius:7px;color:#858990;display:flex;font-size:8px;font-weight:850;grid-row:1/3;height:37px;justify-content:center; }.credential-status span.ok { background:#e5f3ed;color:var(--green); }.credential-status b { font-size:10px; }.credential-status small { color:var(--muted);font-size:8px; }
.fiscal-save-bar { align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;bottom:10px;box-shadow:0 10px 35px rgba(20,21,24,.09);display:flex;justify-content:space-between;padding:11px 14px;position:sticky;z-index:8; }.fiscal-save-bar span { color:var(--muted);font-size:10px; }
.fiscal-test form { align-items:center;display:flex;gap:10px; }.fiscal-test form small { color:var(--muted);font-size:9px; }
.print-paper-options { display:grid;gap:9px;grid-template-columns:repeat(3,1fr); }.print-paper-options label { position:relative; }.print-paper-options input { opacity:0;position:absolute; }.print-paper-options label>span { align-items:center;border:1px solid var(--line);border-radius:9px;cursor:pointer;display:flex;gap:10px;padding:11px; }.print-paper-options input:checked+span { background:#fdf8ed;border-color:#cba654; }.print-paper-options i { align-items:center;background:#f0eee9;border-radius:5px;display:flex;font-size:7px;font-style:normal;font-weight:850;height:34px;justify-content:center;width:34px; }.print-paper-options b { font-size:10px; }
.percent-input { align-items:center;display:flex;position:relative; }.percent-input input { padding-right:28px!important; }.percent-input i { color:var(--muted);font-size:10px;font-style:normal;position:absolute;right:11px; }
.ncm-sync-card { align-items:center;background:#f8f7f4;border:1px solid var(--line);border-radius:9px;display:flex;gap:11px;padding:12px; }.ncm-sync-card>span { align-items:center;background:var(--ink);border-radius:7px;color:var(--gold-2);display:flex;font-size:9px;font-weight:850;height:38px;justify-content:center;width:38px; }.ncm-sync-card>div { display:flex;flex:1;flex-direction:column; }.ncm-sync-card b { font-size:11px; }.ncm-sync-card small { color:var(--muted);font-size:9px; }
.fiscal-product-status { background:#fff2db;border-radius:14px;color:#936a1d;font-size:8px!important;font-weight:800;margin-left:auto;padding:4px 8px; }.fiscal-product-status.reviewed { background:#e4f3ed;color:var(--green); }
.ncm-search-box { background:#f7f6f2;border:1px solid var(--line);border-radius:9px;padding:12px; }.ncm-search-box>small { color:var(--muted);display:block;font-size:9px;margin-top:6px; }.ncm-search-input { display:flex; }.ncm-search-input input { border-radius:7px 0 0 7px!important; }.ncm-search-input button { background:var(--ink);border:0;border-radius:0 7px 7px 0;color:#fff;font-size:10px;font-weight:750;padding:0 14px; }
.ncm-results { background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:flex;flex-direction:column;margin-top:5px;max-height:260px;overflow-y:auto;padding:5px; }.ncm-results button { background:transparent;border:0;border-bottom:1px solid var(--line);display:flex;gap:10px;padding:9px;text-align:left; }.ncm-results button:hover { background:#f8f5ee; }.ncm-results b { color:var(--gold);font-size:10px;min-width:72px; }.ncm-results span { font-size:10px; }.ncm-results p { color:var(--muted);font-size:10px;padding:8px; }
.fiscal-confirm { align-items:center;background:#edf6f2;border:1px solid #cce3d9;border-radius:9px;display:flex;gap:10px;margin-top:16px;padding:11px;position:relative; }.fiscal-confirm input { opacity:0;position:absolute; }.fiscal-confirm>i { align-items:center;border:1px solid #9abfae;border-radius:5px;color:transparent;display:flex;font-size:9px;font-style:normal;height:20px;justify-content:center;width:20px; }.fiscal-confirm input:checked+i { background:var(--green);border-color:var(--green);color:#fff; }.fiscal-confirm>span { display:flex;flex-direction:column; }.fiscal-confirm b { font-size:10px; }.fiscal-confirm small { color:#59786b;font-size:9px; }
.table-action { background:#f8f4eb;border:1px solid #eadcbf;border-radius:6px;color:#8b671d;display:inline-flex;font-size:9px;font-weight:750;padding:5px 7px; }.direct-emission-field { align-self:stretch; }.direct-emission-field>.field-switch { align-self:stretch;flex:1;margin:0;min-height:38px; }.fiscal-row-actions { align-items:center;display:flex;flex-wrap:wrap;gap:6px;min-width:275px;position:relative; }.fiscal-row-actions form { margin:0; }.fiscal-row-actions button.table-action { cursor:pointer;font-family:inherit; }.fiscal-row-error { background:transparent;border:0;color:#a94740;cursor:pointer;font-family:inherit;font-size:9px;font-weight:750;padding:0;text-decoration:underline dotted; }.table-action-danger { align-items:center;background:#fff2f0;border-color:#eecac5;color:#a94740;gap:4px; }.table-action-danger:hover { background:#fce4e1;border-color:#dfaaa4; }.table-action-danger>span { font-size:12px;line-height:8px; }.fiscal-cancel-modal { max-width:490px; }.fiscal-danger-icon { background:#fbedeb;color:#a94740; }.fiscal-cancel-warning { background:#fff4f2;border:1px solid #efcbc7;border-radius:9px;color:#8d3c36;display:flex;flex-direction:column;gap:2px;padding:11px 12px; }.fiscal-cancel-warning b { font-size:11px; }.fiscal-cancel-warning span { color:#a9635e;font-size:9px; }.fiscal-cancel-modal textarea { min-height:96px;resize:vertical; }

/* Chat */
.chat-index-layout { display:grid;gap:14px;grid-template-columns:minmax(0,1.5fr) minmax(280px,.6fr); }.conversation-list { display:flex;flex-direction:column; }.conversation-list>a { align-items:center;border-bottom:1px solid var(--line);display:flex;gap:10px;padding:13px 17px; }.conversation-list>a:hover { background:#faf8f3; }.person-avatar { align-items:center;background:#e9f1f4;border-radius:50%;color:#426976;display:flex;flex:0 0 40px;font-size:10px;font-weight:850;height:40px;justify-content:center;width:40px; }.conversation-list>a>div { display:flex;flex:1;flex-direction:column;min-width:0; }.conversation-list b { font-size:11px; }.conversation-list p { color:var(--muted);font-size:10px;margin:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.conversation-list aside { align-items:flex-end;display:flex;flex-direction:column;gap:5px; }.conversation-list aside small { color:var(--muted);font-size:8px; }.conversation-list aside i { align-items:center;background:var(--gold);border-radius:50%;color:#111;display:flex;font-size:8px;font-style:normal;font-weight:850;height:19px;justify-content:center;width:19px; }.chat-company-label{color:#9b711b!important;display:block;font-size:9px!important;font-weight:850;letter-spacing:.02em;margin-top:2px;text-transform:uppercase}
.chat-welcome { align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:390px;padding:30px;text-align:center; }.chat-welcome-icon { align-items:center;background:var(--gold-soft);border-radius:50%;color:var(--gold);display:flex;font-size:22px;height:58px;justify-content:center;width:58px; }.chat-welcome h2 { font-size:17px;max-width:280px; }.chat-welcome p { color:var(--muted);font-size:11px;line-height:1.6; }.chat-welcome>small { color:var(--muted-2);font-size:8px;margin-top:14px; }
.chat-page-header { align-items:center;display:flex;gap:12px;margin-bottom:14px; }.chat-page-header>a { color:var(--gold);font-size:13px;font-weight:750;margin-right:5px; }.chat-page-header h1 { font-size:21px;margin:0; }.chat-page-header p { color:var(--muted);font-size:12px;margin:1px 0; }
.chat-room { display:flex;flex-direction:column;height:calc(100vh - 175px);min-height:520px;overflow:hidden; }.message-thread { background:linear-gradient(135deg,#f5f4f0,#eeece6);display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:20px;scroll-behavior:smooth; }.message-thread #messageList { display:flex;flex:1;flex-direction:column;gap:10px;min-height:100%; }.message-day { align-self:center;background:rgba(255,255,255,.85);border-radius:13px;color:var(--muted);font-size:11px;padding:5px 11px; }.message-bubble { display:flex;max-width:72%;scroll-margin:20px; }.message-bubble.mine { align-self:flex-end; }.message-bubble.theirs { align-self:flex-start; }.message-bubble>div { background:#fff;border:1px solid #e1ded6;border-radius:5px 13px 13px 13px;box-shadow:0 3px 12px rgba(20,21,24,.04);padding:11px 13px; }.message-bubble.mine>div { background:#25282d;border-color:#25282d;border-radius:13px 5px 13px 13px;color:#fff; }.message-bubble strong { display:block;font-size:13px;margin-bottom:4px; }.message-bubble p { font-size:14px;line-height:1.55;margin:0;white-space:normal; }.message-bubble>div>small { color:#9a9da3;display:block;font-size:10px;margin-top:7px;text-align:right; }.message-product { align-items:center;background:#f4f2ed;border-radius:8px;color:var(--ink);display:flex;gap:8px;margin-top:9px;padding:8px; }.message-product>span { align-items:center;background:var(--gold-soft);border-radius:6px;color:var(--gold);display:flex;font-size:9px;font-weight:800;height:31px;justify-content:center;width:31px; }.message-product>b { display:flex;flex:1;flex-direction:column;font-size:12px; }.message-product small { color:var(--muted);font-size:10px; }.message-product em { color:var(--muted);font-size:9px;font-style:normal; }
.chat-empty-message { align-items:center;align-self:center;color:var(--muted);display:flex;flex-direction:column;margin:auto;text-align:center; }.chat-empty-message>span { align-items:center;background:#fff;border-radius:50%;display:flex;font-size:9px;height:45px;justify-content:center;width:45px; }.chat-empty-message b { color:var(--ink);font-size:11px;margin-top:8px; }.chat-empty-message small { font-size:9px; }
.message-composer { background:#fff;border-top:1px solid var(--line);padding:10px 13px; }.composer-product { align-items:center;display:flex;gap:7px;margin-bottom:7px; }.composer-product label { color:var(--muted);font-size:8px;font-weight:700; }.composer-product select { border:1px solid var(--line);border-radius:5px;font-size:9px;padding:4px 7px; }.composer-row { align-items:end;display:flex;gap:8px; }.composer-row textarea { border:1px solid #d8d5cd;border-radius:8px;flex:1;font:inherit;font-size:11px;outline:0;padding:9px;resize:none; }.composer-row textarea:focus { border-color:#c1a15c; }
.chat-attachment-button { background:#f5f3ed;border:1px solid var(--line);border-radius:6px;color:var(--ink)!important;cursor:pointer;padding:6px 9px; }.chat-attachment-button input { display:none; }.message-image { background:none;border:0;cursor:zoom-in;display:block;margin-top:9px;padding:0; }.message-image img { border-radius:10px;display:block;max-height:320px;max-width:min(100%,420px);object-fit:cover; }.message-audio { display:block;margin-top:9px;max-width:100%;width:320px; }.chat-image-viewer{background:rgba(12,13,15,.96);border:0;border-radius:18px;height:min(88vh,900px);padding:46px 18px 18px;width:min(92vw,1100px)}.chat-image-viewer::backdrop{background:rgba(0,0,0,.72)}.chat-image-viewer img{height:100%;object-fit:contain;width:100%}.chat-image-viewer button{background:#fff;border:0;border-radius:50%;color:#111;cursor:pointer;font-size:24px;height:36px;position:absolute;right:12px;top:10px;width:36px}
.permission-preset { margin-left:auto; }.permission-warning { align-items:flex-start;background:#eef4f6;border:1px solid #d8e5e8;border-radius:8px;color:#55717a;display:flex;font-size:9px;gap:8px;margin-top:13px;padding:9px 11px; }.permission-warning span { align-items:center;background:#dce9ec;border-radius:50%;display:flex;flex:0 0 20px;height:20px;justify-content:center; }.permission-warning p { margin:2px 0; }
.quick-section-top { margin-bottom:14px;margin-top:0; }

@media (max-width: 1180px) {
    :root { --sidebar: 225px; }
    .page-content { padding-left: 22px; padding-right: 22px; }
    .user-copy { display: none; }
    .dashboard-grid { grid-template-columns: minmax(0,1.45fr) minmax(250px,.75fr); }
    .quick-grid { grid-template-columns: repeat(2,1fr); }
    .branch-grid { grid-template-columns: repeat(2,1fr); }
    .organization-grid { grid-template-columns:repeat(2,1fr); }
    .plans-admin-grid { grid-template-columns:repeat(2,1fr); }
    .saas-summary { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 900px) {
    .sidebar { transform: translateX(-102%); transition: transform .25s ease; width: 260px; }
    body.sidebar-open .sidebar { transform: translateX(0); }
    .sidebar-scrim { background: rgba(0,0,0,.45); border: 0; display: block; inset: 0; opacity: 0; pointer-events: none; position: fixed; transition: .2s; z-index: 45; }
    body.sidebar-open .sidebar-scrim { opacity: 1; pointer-events: auto; }
    .app-main { margin-left: 0; }.menu-toggle { display: flex !important; }
    .metric-grid { grid-template-columns: repeat(2,1fr); }
    .dashboard-grid { grid-template-columns: 1fr 1fr; }.chart-panel,.recent-panel { grid-column: 1/3; }
    .form-layout { grid-template-columns: 1fr; }.form-aside { display: grid; grid-template-columns: 1fr 1fr; position: static; }.form-aside .form-actions { grid-column: 1/3; }
    .settings-layout { grid-template-columns: 1fr; }.settings-nav { flex-direction: row; overflow-x: auto; position: static; }.settings-nav a { flex: 0 0 165px; }
    .report-grid { grid-template-columns: 1fr 1fr; }.report-grid > .panel:not(.span-2) { grid-column: span 1; }
    .auth-shell { grid-template-columns: minmax(330px,.85fr) minmax(400px,1fr); }.auth-panel { padding: 35px; }.auth-message h1 { font-size: 38px; }
    .operator-quick-grid { grid-template-columns:1fr 1fr; }.operator-dashboard-grid { grid-template-columns:1fr; }
    .fiscal-layout { grid-template-columns:1fr; }.fiscal-nav { flex-direction:row;overflow-x:auto;position:static; }.fiscal-nav a { flex:0 0 auto; }
    .chat-index-layout { grid-template-columns:1fr; }.chat-welcome { display:none; }.mobile-setting-switches { grid-template-columns:1fr; }
}
@media (max-width: 680px) {
    body { font-size: 13px; }
    .topbar { height: 62px; padding: 0 13px; }.topbar-context .eyebrow,.quick-action,.notification-button { display: none; }.branch-switcher select { max-width: 145px; }
    .page-content { min-height: calc(100vh - 104px); padding: 19px 12px 32px; }.app-footer { align-items: flex-start; flex-direction: column; gap: 4px; padding: 11px 14px; }
    .page-header { align-items: flex-start; flex-direction: column; gap: 13px; margin-bottom: 17px; }.page-header h1 { font-size: 27px; }.page-header-actions { flex-wrap: wrap; width: 100%; }.page-header-actions > * { flex: 1; text-align: center; }
    .metric-grid { gap: 8px; grid-template-columns: 1fr 1fr; }.metric-card { min-height: 117px; padding: 13px; }.metric-card > strong { font-size: 19px; }.metric-foot small { display: none; }
    .dashboard-grid { display: flex; flex-direction: column; gap: 10px; }.chart-wrap { height: 245px; }.donut-wrap { flex-direction: row; }.donut { flex: 0 0 125px; height: 125px; width: 125px; }.donut::after { height: 80px; width: 80px; }
    .quick-grid { grid-template-columns: 1fr; }
    .summary-strip,.module-insights { grid-template-columns: 1fr; }.summary-strip > div,.module-insights > article { border-bottom: 1px solid var(--line); border-right: 0; min-height: 66px; }
    .toolbar { align-items: stretch; flex-direction: column; }.toolbar-right { justify-content: space-between; }
    .form-grid.two,.form-grid.three,.form-grid.four { grid-template-columns: 1fr 1fr; }.span-3,.span-4 { grid-column: span 2; }.form-aside { display: flex; }.form-aside .form-actions { grid-column: auto; }.permission-grid { grid-template-columns: 1fr 1fr; }
    .branch-grid { grid-template-columns: 1fr; }.branch-card { min-height: 340px; }
    .super-summary { grid-template-columns:1fr 1fr; }.super-summary article:nth-child(2) { border-right:0; }.organization-grid,.plans-admin-grid { grid-template-columns:1fr; }.saas-card-actions { align-items:stretch;flex-direction:column; }.saas-card-actions>* { width:100%; }.payment-grid { grid-template-columns:1fr; }.payment-grid .span-2 { grid-column:auto; }.subscription-hero,.subscription-grid{grid-template-columns:1fr}.subscription-price{min-width:0}.subscription-charge-list article{flex-direction:column}.charge-actions{justify-content:flex-start;max-width:none}.plan-payment-actions{flex-direction:column}
    .report-filters { grid-template-columns: 1fr 1fr; }.report-filters .field:first-child { grid-column: 1/3; }.report-filters button { grid-column: 1/3; }.report-grid { display: flex; flex-direction: column; }
    .settings-panel { padding: 14px; }.settings-nav { margin: 0 -12px; padding-left: 12px; border-radius: 0; border-left: 0; border-right: 0; }.settings-panel > header { flex-direction: column; gap: 8px; }
    .choice-grid { grid-template-columns: 1fr; }.modal .choice-grid { grid-template-columns: 1fr 1fr; }
    .auth-shell { display: block; }.auth-panel { display: none; }.login-panel { min-height: 100vh; padding: 24px; }.mobile-auth-logo { display: block; margin-bottom: 28px; }.mobile-auth-logo img { border-radius: 10px; height: 54px; object-fit: cover; width: 54px; }.login-heading h2 { font-size: 28px; }
    .operator-header { align-items:flex-start; }.operator-status { min-width:0;width:100%; }.operator-quick-grid { grid-template-columns:1fr; }.operator-metrics { grid-template-columns:1fr 1fr; }
    .fiscal-status-panel { align-items:flex-start;grid-template-columns:42px 1fr; }.fiscal-status-icon { height:42px;width:42px; }.fiscal-checks { grid-column:1/3;flex-wrap:wrap; }.fiscal-nav { margin:0 -12px;padding-left:12px; }.fiscal-section { padding:14px; }.credential-status,.print-paper-options { grid-template-columns:1fr; }.fiscal-save-bar { align-items:stretch;flex-direction:column; }.ncm-sync-card { align-items:flex-start;flex-wrap:wrap; }.ncm-sync-card form { width:100%; }.ncm-sync-card button { width:100%; }
    .nfe-summary-grid { grid-template-columns:1fr; }.nfe-lookup-row { align-items:stretch;grid-template-columns:1fr; }.nfe-lookup-actions { justify-content:flex-start; }.nfe-totals { display:grid;grid-template-columns:1fr 1fr; }.nfe-totals .grand { grid-column:1/3; }.nfe-form-actions { align-items:stretch;flex-direction:column; }.nfe-form-actions .button-secondary:first-child { margin-right:0;order:3; }
    .chat-room { height:calc(100vh - 145px);margin:0 -12px;border-left:0;border-radius:0;border-right:0; }.chat-page-header { align-items:flex-start;flex-wrap:wrap; }.chat-page-header>a { flex:0 0 100%; }.message-bubble { max-width:88%; }.composer-row button { min-width:75px; }.permission-preset { margin-left:0;margin-top:8px; }
}
@media (max-width: 430px) {
    .metric-grid { grid-template-columns: 1fr; }.metric-card { min-height: 108px; }
    .form-grid.two,.form-grid.three,.form-grid.four { grid-template-columns: 1fr; }.span-2,.span-3,.span-4 { grid-column: span 1; }
    .permission-grid { grid-template-columns: 1fr; }.donut-wrap { align-items: center; flex-direction: column; }
    .nfe-totals { grid-template-columns:1fr; }.nfe-totals .grand { grid-column:auto; }.nfe-lookup-actions>* { flex:1; }
}

@media print {
    .sidebar,.topbar,.app-footer,.page-header-actions,.toolbar { display: none !important; }
    .app-main { margin: 0; }.page-content { max-width: none; padding: 0; }.panel,.metric-card { break-inside: avoid; box-shadow: none; }
}

.public-links-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}
.public-links-grid article{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;display:grid;gap:16px;grid-template-columns:1fr 180px;padding:18px}
.public-links-grid article>div{min-width:0}.public-links-grid span{color:var(--gold);display:block;font-size:10px;font-weight:900;letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}
.public-links-grid b{display:block;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.public-links-grid small{color:var(--muted);display:block;font-size:11px;line-height:1.55;margin-top:8px}
.public-links-grid code{background:#fff1d0;border-radius:6px;color:#8a671f;font-size:11px;padding:2px 5px}.public-links-grid img{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;width:180px}
.public-links-grid footer{align-items:center;display:flex;gap:8px;grid-column:1/3}.platform-only-panel{border-color:#d7ad58;box-shadow:0 18px 45px rgba(196,151,62,.12)}
.brand .brand-mark img{object-fit:contain}
.payment-help-card{background:#fbfaf7;border:1px solid var(--line);border-radius:14px;margin-top:16px;padding:14px 16px}.payment-help-card b{display:block;font-size:12px;margin-bottom:4px}.payment-help-card p{color:var(--muted);font-size:12px;line-height:1.55;margin:0}
.subscription-charge-list.modern{display:flex;flex-direction:column;gap:12px}.subscription-charge-card{align-items:stretch;border:1px solid var(--line);border-radius:16px;display:grid;gap:18px;grid-template-columns:1fr auto;padding:16px}.subscription-charge-card.charge-open{background:#fff}.subscription-charge-card.charge-paid{background:#eefaf3;border-color:#c9ecd8}.subscription-charge-card.charge-overdue,.subscription-charge-card.charge-cancelled{background:#fff1f2;border-color:#f2c8ce}.charge-main{min-width:0}.charge-title-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.charge-title-row b{font-size:15px}.charge-title-row span{background:rgba(17,19,22,.08);border-radius:999px;font-size:10px;font-weight:850;padding:6px 9px;text-transform:uppercase}.charge-main small{color:var(--muted);display:block;font-size:11px;margin-top:5px}.copy-payment-code{display:block;margin-top:13px}.copy-payment-code span{color:var(--muted);display:block;font-size:10px;font-weight:850;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.copy-payment-code textarea{background:#fff;border:1px solid var(--line);border-radius:12px;font:600 12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;min-height:76px;padding:10px;resize:vertical;width:100%}.copy-code-button{margin-top:8px}.charge-side{align-items:flex-end;display:flex;flex-direction:column;gap:8px;justify-content:center;min-width:150px}.charge-side img{background:#fff;border:1px solid var(--line);border-radius:12px;height:118px;object-fit:contain;padding:7px;width:118px}.charge-note{color:#9e4450;font-size:12px;font-weight:750;margin:12px 0 0}.subscription-tabs-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-top:14px}.subscription-mini-list{display:flex;flex-direction:column;gap:8px}.subscription-charge-card.compact{display:block;padding:13px}.subscription-charge-card.compact .copy-payment-code,.subscription-charge-card.compact .copy-code-button{display:none}.empty-inline{background:#fbfaf7;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:12px;padding:14px;text-align:center}.paid-cards{display:flex;flex-direction:column;gap:10px}.paid-card{align-items:center;border:1px solid #c9ecd8;border-radius:14px;display:flex;gap:14px;justify-content:space-between;padding:13px 15px}.paid-card b{display:block;font-size:13px}.paid-card small{color:#5a7566;display:block;font-size:11px;margin-top:4px}.invoice-modal{border:0;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.35);height:min(760px,90vh);max-width:980px;padding:0;width:min(980px,92vw)}.invoice-modal::backdrop{background:rgba(12,14,18,.62)}.invoice-modal-box{display:flex;flex-direction:column;height:100%}.invoice-modal-box header{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:14px 18px}.invoice-modal-box header button{background:#111316;border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;height:34px;width:34px}.invoice-modal-toolbar{background:#fbfaf7;border-bottom:1px solid var(--line);font-size:11px;padding:8px 18px;text-align:right}.invoice-modal-toolbar a{color:var(--gold);font-weight:800;text-decoration:none}.invoice-modal-box iframe{border:0;flex:1;width:100%}
@media(max-width:900px){.public-links-grid{grid-template-columns:1fr}.public-links-grid article{grid-template-columns:1fr}.public-links-grid footer{grid-column:auto}.public-links-grid img{width:160px}.subscription-tabs-grid{grid-template-columns:1fr}.subscription-charge-card{grid-template-columns:1fr}.charge-side{align-items:flex-start;min-width:0}.paid-card{align-items:flex-start;flex-direction:column}.invoice-modal{height:92vh;width:94vw}}

#aplicativo > .form-grid.two:not(.top-gap) > .field:nth-child(n+3){display:none}
input.is-loading{background-image:linear-gradient(90deg,transparent,rgba(196,151,62,.18),transparent);background-size:220% 100%;animation:lrFieldLoading 1.1s linear infinite}
@keyframes lrFieldLoading{from{background-position:220% 0}to{background-position:-220% 0}}
.invoice-modal{height:auto;max-height:90vh}
.invoice-modal-body{display:grid;gap:18px;overflow:auto;padding:22px}
.invoice-modal-summary{background:linear-gradient(135deg,#17191c,#262a31);border-radius:16px;color:#fff;padding:22px}
.invoice-modal-summary span{color:#d5b468;display:block;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.invoice-modal-summary strong{display:block;font-size:34px;letter-spacing:-.05em;margin:6px 0}
.invoice-modal-summary small{color:#c7cbd2;font-size:12px}
.invoice-modal-code{background:#fbfaf7;border:1px solid var(--line);border-radius:14px;padding:16px}
.invoice-modal-code label{display:block}
.invoice-modal-code span{color:var(--muted);display:block;font-size:10px;font-weight:850;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}
.invoice-modal-code textarea{background:#fff;border:1px solid var(--line);border-radius:12px;font:700 13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;min-height:96px;padding:12px;resize:vertical;width:100%}
.invoice-modal-code button{margin-top:10px}
.invoice-modal-qr{background:#fff;border:1px solid var(--line);border-radius:16px;height:180px;object-fit:contain;padding:10px;width:180px}
.invoice-modal-empty{background:#fff8e8;border:1px solid #eed8a8;border-radius:12px;color:#6b541f;font-size:13px;margin:0;padding:14px}
.invoice-modal-toolbar{align-items:center;display:flex;gap:14px;justify-content:flex-end}
.auth-center-logo{align-items:center;display:flex;justify-content:center;margin:auto 0 34px;position:relative;z-index:2}
.auth-center-logo img{background:#fff;border-radius:28px;box-shadow:0 28px 70px rgba(0,0,0,.28);height:220px;object-fit:contain;padding:18px;width:300px}
.auth-center-logo + .auth-message{margin:0 0 25px}
@media(max-width:1100px){.auth-center-logo img{height:170px;width:230px}.auth-center-logo{margin:auto 0 24px}}
.trial-onboarding-modal{background:transparent;border:0;max-width:760px;padding:0;width:min(760px,92vw)}.trial-onboarding-modal::backdrop{background:rgba(9,10,12,.68);backdrop-filter:blur(3px)}.trial-onboarding-card{background:#fff;border:1px solid #eadfcb;border-radius:24px;box-shadow:0 34px 90px rgba(0,0,0,.34);overflow:hidden;padding:28px;position:relative}.trial-onboarding-card:before{background:linear-gradient(135deg,#17191d,#2a2d33 56%,#c79b3c);content:"";height:9px;left:0;position:absolute;right:0;top:0}.trial-onboarding-close{align-items:center;background:#17191d;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;position:absolute;right:18px;top:18px;width:36px}.trial-badge{background:#fff4d9;border:1px solid #efd59b;border-radius:999px;color:#9a701c;display:inline-flex;font-size:10px;font-weight:900;letter-spacing:.12em;margin-bottom:12px;padding:8px 11px;text-transform:uppercase}.trial-onboarding-card h2{font-size:30px;letter-spacing:-.05em;margin:0 42px 8px 0}.trial-intro{color:#565d69;font-size:15px;line-height:1.6;margin:0 0 16px}.trial-warning{background:#17191d;border-radius:16px;color:#fff;display:grid;gap:6px;margin:14px 0 18px;padding:16px 18px}.trial-warning b{color:#f2c86b;font-size:13px}.trial-warning span{color:#d6d9df;font-size:13px;line-height:1.5}.trial-onboarding-steps{display:grid;gap:12px;grid-template-columns:1fr 1fr}.trial-onboarding-steps article{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;display:grid;gap:3px 10px;grid-template-columns:34px 1fr;padding:14px}.trial-onboarding-steps span{align-items:center;background:#17191d;border-radius:10px;color:#f2c86b;display:flex;font-size:12px;font-weight:900;grid-row:1/3;height:34px;justify-content:center;width:34px}.trial-onboarding-steps b{font-size:13px}.trial-onboarding-steps small{color:#6d7480;font-size:11px;line-height:1.45}.trial-onboarding-card footer{align-items:center;border-top:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;margin-top:18px;padding-top:16px}.trial-onboarding-card footer label{align-items:center;color:#555c66;display:flex;font-size:12px;gap:8px}.trial-onboarding-card footer div{display:flex;gap:10px}@media(max-width:720px){.trial-onboarding-card{padding:22px}.trial-onboarding-steps{grid-template-columns:1fr}.trial-onboarding-card footer{align-items:stretch;flex-direction:column}.trial-onboarding-card footer div{flex-direction:column}.trial-onboarding-card footer a{text-align:center}}
.auth-panel > .auth-brand{display:none}
.auth-center-logo{margin:clamp(72px,13vh,132px) 0 30px}
@media(max-width:1100px){.auth-center-logo{margin:clamp(52px,11vh,104px) 0 24px}}
.subscription-charge-card{grid-template-columns:minmax(0,1fr) auto}
.subscription-charge-card .charge-main{width:100%}
.subscription-charge-card .copy-payment-code{max-width:min(820px,100%);width:100%}
.subscription-charge-card .copy-payment-code textarea{min-height:92px;width:100%}

/* Ajustes de marca solicitados em 2026-07-08 */
.brand{height:82px;padding:12px 16px}
.brand-mark{border-radius:12px;height:54px;width:54px}
.brand .brand-mark img{height:100%;object-fit:cover!important;object-position:center;transform:scale(1.05);width:100%}
.brand > span:last-child{align-items:baseline;display:flex;flex-direction:row;gap:4px;min-width:0;white-space:nowrap}
.brand strong{font-size:12px;letter-spacing:.01em;white-space:nowrap}
.brand small{font-size:9px;letter-spacing:.08em;white-space:nowrap}
.auth-center-logo{margin:clamp(58px,10vh,108px) 0 30px}
.auth-center-logo img{height:250px;object-fit:cover;object-position:center;padding:10px;width:350px}
.login-help a{align-items:center;color:#148f54;display:inline-flex;font-weight:850;gap:5px}
.login-help a::before{content:"";background:#25d366;border-radius:50%;height:7px;width:7px}
@media(max-width:1100px){.auth-center-logo img{height:205px;width:290px}.auth-center-logo{margin:clamp(44px,9vh,88px) 0 24px}}
@media(max-width:680px){.brand > span:last-child{align-items:flex-start;flex-direction:column;gap:0}.brand small{letter-spacing:.18em}}

/* Painel SaaS do Super Admin */
.super-admin-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.saas-dashboard-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);margin-bottom:14px}
.saas-dashboard-grid-bottom{align-items:start}
.saas-insight-card{min-width:0}
.saas-money-list{display:grid;gap:10px;padding:16px 18px}
.saas-money-list>div{background:#fbfaf7;border:1px solid var(--line);border-radius:12px;display:grid;gap:2px;grid-template-columns:1fr auto;padding:13px 14px}
.saas-money-list span{color:#676d76;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.saas-money-list b{font-size:18px;letter-spacing:-.04em;text-align:right}
.saas-money-list small{color:var(--muted);font-size:10px;grid-column:1/3;line-height:1.45}
.saas-plan-list,.saas-payment-list,.saas-company-list{display:flex;flex-direction:column;gap:9px;padding:16px 18px}
.saas-plan-row{align-items:center;border:1px solid var(--line);border-radius:13px;display:grid;gap:12px;grid-template-columns:42px 1fr auto;padding:12px;transition:.18s}
.saas-plan-row:hover{border-color:#d2bd8c;box-shadow:0 12px 30px rgba(25,25,25,.06);transform:translateY(-1px)}
.saas-plan-icon{align-items:center;background:#17191c;border-radius:10px;color:var(--gold-2);display:flex;flex:0 0 42px;font-size:10px;font-weight:900;height:42px;justify-content:center;letter-spacing:.04em}
.saas-plan-row span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}
.saas-plan-row b,.saas-payment-list b,.saas-company-list b{color:#25282d;font-size:12px}
.saas-plan-row small,.saas-payment-list small,.saas-company-list small{color:var(--muted);font-size:10px;line-height:1.45}
.saas-plan-row i{background:#efede7;border-radius:999px;display:block;height:5px;margin-top:4px;overflow:hidden}
.saas-plan-row i em{background:linear-gradient(90deg,var(--gold),#e2bf72);display:block;height:100%}
.saas-plan-row strong,.saas-payment-list strong{font-size:13px;text-align:right;white-space:nowrap}
.super-admin-table-panel{margin-bottom:14px}
.saas-company-list>a,.saas-payment-list>div{align-items:center;border:1px solid var(--line);border-radius:13px;display:grid;gap:12px;grid-template-columns:auto 1fr auto;padding:12px}
.saas-company-list>a:hover{background:#fcfbf8;border-color:#d2bd8c}
.saas-status-dot{background:#79b9a6;border-radius:50%;height:10px;width:10px}
.saas-status-dot.danger{background:#c85f53;box-shadow:0 0 0 4px rgba(200,95,83,.12)}
.saas-company-list em{border-radius:20px;font-size:8px;font-style:normal;font-weight:850;padding:5px 8px;white-space:nowrap}
.saas-company-list em.status-danger{background:#fae9e7;color:#a64740}
.saas-company-list em.status-warning{background:#fff4dd;color:#98701d}
.saas-company-list em.status-success{background:#e8f5ef;color:#2a7e66}
.saas-company-list em.status-muted{background:#eeeff1;color:#767a82}
@media(max-width:1100px){.saas-dashboard-grid{grid-template-columns:1fr}.super-admin-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.super-admin-summary{grid-template-columns:1fr 1fr}.saas-money-list>div{grid-template-columns:1fr}.saas-money-list b{text-align:left}.saas-money-list small{grid-column:auto}.saas-plan-row,.saas-company-list>a,.saas-payment-list>div{grid-template-columns:42px 1fr}.saas-plan-row strong,.saas-payment-list strong{grid-column:2;text-align:left}.saas-company-list em{grid-column:2;width:max-content}}

/* Adicionais SaaS */
.addon-marketplace-panel{margin-bottom:14px}.addon-marketplace-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(240px,1fr))}
.addon-card{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;display:grid;gap:12px;grid-template-columns:42px 1fr;padding:15px}
.addon-card-icon{align-items:center;background:#17191c;border-radius:11px;color:var(--gold-2);display:flex;font-size:10px;font-weight:900;height:42px;justify-content:center;width:42px}
.addon-card h3{font-size:14px;margin:0 0 4px}.addon-card p{color:var(--muted);font-size:11px;line-height:1.45;margin:0 0 8px}.addon-card b{font-size:13px}
.addon-card form{align-items:end;display:grid;gap:8px;grid-column:1/3;grid-template-columns:95px 1fr}.addon-card label{display:grid;gap:4px}.addon-card label span{color:var(--muted-2);font-size:8px;font-weight:850;text-transform:uppercase}.addon-card input{background:#fff;border:1px solid var(--line);border-radius:9px;min-height:38px;padding:8px}.addon-card label small{color:var(--muted);font-size:9px}.addon-card button{min-height:38px}
.addon-tabs-grid{margin-bottom:14px}.addon-mini-list{gap:10px}.addon-mini-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;gap:10px;grid-template-columns:1fr auto;padding:13px}.addon-mini-card b{display:block;font-size:12px}.addon-mini-card small{color:var(--muted);display:block;font-size:10px;margin-top:3px}.addon-mini-card-stack{align-items:stretch;grid-template-columns:1fr auto}.addon-mini-card-stack .subscription-charge-card,.addon-mini-card-stack .addon-charge-actions{grid-column:1/3}.addon-charge-actions{display:flex;gap:8px}.addon-charge-actions button{flex:1}.addon-admin-section{margin-top:14px}.addon-admin-layout{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 340px}.addon-admin-list{display:flex;flex-direction:column;gap:10px}.addon-admin-list article{align-items:center;background:#fbfaf7;border:1px solid var(--line);border-radius:14px;display:grid;gap:12px;grid-template-columns:1fr auto auto;padding:13px}.addon-admin-list b{display:block;font-size:12px}.addon-admin-list small,.addon-admin-list em{color:var(--muted);display:block;font-size:10px;font-style:normal;margin-top:3px}.addon-admin-form{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;padding:15px}.addon-admin-form h3{font-size:14px;margin:0 0 12px}
@media(max-width:1000px){.addon-marketplace-grid{grid-template-columns:1fr 1fr}.addon-admin-layout{grid-template-columns:1fr}.addon-admin-list article{grid-template-columns:1fr auto}}
@media(max-width:680px){.addon-marketplace-grid{grid-template-columns:1fr}.addon-card form,.addon-mini-card,.addon-mini-card-stack,.addon-admin-list article{grid-template-columns:1fr}.addon-mini-card-stack .subscription-charge-card,.addon-mini-card-stack .addon-charge-actions{grid-column:auto}.addon-charge-actions{flex-direction:column}}

/* Adicionais no Meu Plano: resumo compacto + modal */
.addon-summary-panel{margin-bottom:14px}
.addon-summary-content{align-items:center;background:linear-gradient(135deg,#fff,#fbfaf7);border:1px solid var(--line);border-radius:16px;display:grid;gap:14px;grid-template-columns:54px minmax(0,1fr) auto;padding:14px}
.addon-summary-icon{align-items:center;background:#17191c;border-radius:15px;color:var(--gold-2);display:flex;font-size:12px;font-weight:900;height:54px;justify-content:center;width:54px}
.addon-summary-content b{display:block;font-size:15px;letter-spacing:-.02em;margin-bottom:4px}
.addon-summary-content small{color:var(--muted);display:block;font-size:12px;line-height:1.5}
.addon-summary-content em{color:#767a82;display:block;font-size:11px;font-style:normal;margin-top:6px}
.addon-summary-content em strong{color:#17191c}
.addon-summary-content .button-primary{min-width:150px}
.addon-modal{border:0;border-radius:22px;box-shadow:0 32px 100px rgba(0,0,0,.35);height:min(780px,90vh);margin:auto;max-width:980px;padding:0;width:min(980px,94vw)}
.addon-modal::backdrop{background:rgba(11,13,16,.68);backdrop-filter:blur(2px)}
.addon-modal-box{background:#f6f4ef;display:flex;flex-direction:column;height:100%;overflow:hidden}
.addon-modal-box>header{align-items:flex-start;background:#fff;border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding:20px 22px}
.addon-modal-box>header h2{font-size:24px;letter-spacing:-.05em;margin:4px 0 4px}
.addon-modal-box>header p{color:var(--muted);font-size:12px;line-height:1.5;margin:0}
.addon-modal-box>header button{background:#17191c;border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:23px;height:38px;line-height:1;width:38px}
.addon-modal-body{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);overflow:auto;padding:18px}
.addon-modal-section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
.addon-modal-title{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}
.addon-modal-title h3{font-size:15px;letter-spacing:-.02em;margin:0}
.addon-modal-title span{background:#f0ede6;border-radius:999px;color:#6d6658;font-size:10px;font-weight:850;padding:6px 9px;text-transform:uppercase}
.addon-modal-list,.addon-current-list{display:flex;flex-direction:column;gap:10px}
.addon-choice{background:#fbfaf7;border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:.18s}
.addon-choice[open]{background:#fff;border-color:#d4be8a;box-shadow:0 14px 34px rgba(20,20,20,.06)}
.addon-choice summary{align-items:center;cursor:pointer;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr) auto;list-style:none;padding:13px}
.addon-choice summary::-webkit-details-marker{display:none}
.addon-choice summary b{display:block;font-size:13px;letter-spacing:-.02em}
.addon-choice summary small{color:var(--muted);display:block;font-size:11px;margin-top:3px}
.addon-choice summary i{color:var(--gold);font-size:10px;font-style:normal;font-weight:850;text-transform:uppercase;white-space:nowrap}
.addon-choice[open] summary i{color:#17191c}
.addon-choice-body{border-top:1px solid var(--line);padding:13px}
.addon-choice-body p{color:var(--muted);font-size:12px;line-height:1.55;margin:0 0 12px}
.addon-choice-body form{align-items:end;display:grid;gap:10px;grid-template-columns:120px 1fr}
.addon-choice-body label{display:grid;gap:5px}
.addon-choice-body label span{color:var(--muted-2);font-size:8px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.addon-choice-body input{background:#fff;border:1px solid var(--line);border-radius:10px;min-height:40px;padding:8px 10px}
.addon-choice-body label small{color:var(--muted);font-size:10px}
.addon-current-list .addon-mini-card{background:#fbfaf7;grid-template-columns:minmax(0,1fr) auto auto}
.addon-remove-form{margin:0}
.addon-remove-form button{background:#fff1f2;border:1px solid #f1c8ce;border-radius:10px;color:#a64740;cursor:pointer;font-size:10px;font-weight:850;min-height:32px;padding:8px 10px;transition:.16s}
.addon-remove-form button:hover{background:#ffe7ea;border-color:#e9aeb8}
.add-branch-card.is-locked{background:#fbfaf7;border-style:dashed;color:#6f7280;cursor:default}
.add-branch-card.is-locked span{background:#f1ede4;color:#8a6a22}
.add-branch-card.is-locked a{margin-top:10px}
.addon-current-list .subscription-charge-card{background:#fff;margin-top:2px}
.addon-checkout-card{background:#17191c;border-radius:16px;color:#fff;display:grid;gap:12px;padding:14px}
.addon-checkout-card b{display:block;font-size:14px;letter-spacing:-.02em;margin-bottom:4px}
.addon-checkout-card small{color:#c8cbd0;display:block;font-size:11px;line-height:1.45}
.addon-checkout-card strong{color:#f1cf7a;display:block;font-size:20px;letter-spacing:-.04em;margin-top:8px}
.addon-checkout-card .subscription-charge-card{color:#17191c}
.addon-checkout-card .addon-charge-actions{display:grid;grid-template-columns:1fr 1fr}
.paid-panel .paid-card{padding:10px 12px}.paid-panel .paid-card b{font-size:12px}.paid-panel .paid-card small{font-size:10px}.paid-panel .paid-card .button-secondary{min-height:34px;padding:9px 12px}
.branch-switcher-static { cursor:default; }
.branch-switcher-static strong { color:#17191c;font-size:12px;font-weight:850; }
.superadmin-guard-panel { align-items:center;display:grid;gap:18px;grid-template-columns:auto 1fr auto;margin-top:18px;padding:26px; }
.superadmin-guard-panel .guard-icon { align-items:center;background:#17191c;border-radius:16px;color:#f2c66a;display:flex;font-size:13px;font-weight:900;height:58px;justify-content:center;width:58px; }
.superadmin-guard-panel h2 { font-size:22px;margin:0 0 6px; }
.superadmin-guard-panel p { color:var(--muted);font-size:12px;line-height:1.6;margin:0;max-width:760px; }
.superadmin-guard-panel footer { display:flex;gap:9px; }
@media(max-width:760px){.superadmin-guard-panel{grid-template-columns:1fr}.superadmin-guard-panel footer{flex-direction:column}}
@media(max-width:900px){.addon-modal-body{grid-template-columns:1fr}.addon-modal{height:92vh;width:95vw}.addon-summary-content{grid-template-columns:54px 1fr}.addon-summary-content .button-primary{grid-column:1/3;width:100%}}
@media(max-width:680px){.addon-summary-content{grid-template-columns:1fr}.addon-summary-icon{height:48px;width:48px}.addon-summary-content .button-primary{grid-column:auto}.addon-modal-box>header{padding:16px}.addon-modal-box>header h2{font-size:20px}.addon-modal-body{padding:12px}.addon-choice summary{grid-template-columns:42px 1fr}.addon-choice summary i{grid-column:2}.addon-choice-body form,.addon-checkout-card .addon-charge-actions,.addon-current-list .addon-mini-card{grid-template-columns:1fr}.addon-remove-form button{width:100%}}

/* Contrato SaaS e telas do Super Admin */
.contract-summary-actions{align-items:center;background:#fbfaf7;border:1px solid var(--line);border-radius:14px;display:flex;gap:14px;justify-content:space-between;margin-top:14px;padding:14px}
.contract-summary-actions b{display:block;font-size:13px;margin-bottom:4px}.contract-summary-actions small{color:var(--muted);display:block;font-size:11px;line-height:1.45}
.contract-page-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 340px;align-items:start}
.contract-document{padding:0;overflow:hidden}.contract-doc-header{background:#17191c;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:1px}
.contract-doc-header>div{background:rgba(255,255,255,.045);padding:18px 20px}.contract-doc-header span{color:#d6b35c;display:block;font-size:10px;font-weight:900;letter-spacing:.12em;margin-bottom:5px;text-transform:uppercase}.contract-doc-header strong{font-size:17px}
.contract-document h2{font-size:25px;letter-spacing:-.04em;margin:24px 26px 12px}.contract-document>p{color:#4d5561;font-size:13px;line-height:1.7;margin:0 26px 18px}
.contract-info-grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin:0 26px 20px}.contract-info-grid>div{background:#fbfaf7;border:1px solid var(--line);border-radius:13px;padding:12px}.contract-info-grid small{color:var(--muted-2);display:block;font-size:9px;font-weight:850;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.contract-info-grid b{font-size:13px}
.contract-clauses{counter-reset:contract;margin:0 26px 24px;padding:0}.contract-clauses li{border-top:1px solid var(--line);color:#3c424b;font-size:13px;line-height:1.7;list-style:none;padding:14px 0 14px 38px;position:relative}.contract-clauses li:before{align-items:center;background:#fff3d4;border-radius:10px;color:#9b711b;content:counter(contract,decimal-leading-zero);counter-increment:contract;display:flex;font-size:10px;font-weight:900;height:26px;justify-content:center;left:0;position:absolute;top:16px;width:28px}.contract-clauses b{color:#17191c}
.contract-signatures{border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:1fr 1fr;margin:0 26px 26px;padding-top:20px}.contract-signatures>div{background:#fbfaf7;border:1px solid var(--line);border-radius:14px;min-height:150px;padding:16px}.contract-signatures span{color:var(--muted-2);display:block;font-size:9px;font-weight:900;letter-spacing:.1em;margin-bottom:12px;text-transform:uppercase}.contract-signatures img{display:block;height:64px;max-width:240px;object-fit:contain;object-position:left center}.contract-signatures em{align-items:center;background:#fff;border:1px dashed #d7c8aa;border-radius:12px;color:#7b735f;display:flex;font-style:normal;font-weight:850;min-height:64px;padding:10px}.contract-signatures small{color:var(--muted);display:block;font-size:10px;line-height:1.45;margin-top:8px}.contract-signatures strong{display:block;font-size:13px;margin-top:14px}
.contract-side-card{position:sticky;top:92px}.contract-side-card h2{font-size:22px;letter-spacing:-.04em;margin:12px 0 8px}.contract-side-card p{color:var(--muted);font-size:12px;line-height:1.6}.contract-side-card dl{display:grid;gap:10px;margin:16px 0 0}.contract-side-card dl>div{background:#fbfaf7;border:1px solid var(--line);border-radius:12px;padding:11px}.contract-side-card dt{color:var(--muted-2);font-size:9px;font-weight:900;text-transform:uppercase}.contract-side-card dd{font-size:12px;margin:5px 0 0;overflow-wrap:anywhere}.contract-side-card .hash-text{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.contract-accept-form{display:grid;gap:12px;margin-top:16px}.contract-accept-form label:not(.check-line){display:grid;gap:6px}.contract-accept-form label span{color:var(--muted-2);font-size:9px;font-weight:900;text-transform:uppercase}.contract-accept-form input[type=text],.contract-accept-form input:not([type]){border:1px solid var(--line);border-radius:10px;min-height:42px;padding:10px 12px}.contract-accept-form .check-line{background:#fbfaf7;border:1px solid var(--line);border-radius:12px;color:#4c535d;font-size:12px;line-height:1.45;padding:12px}
.contract-template-card{display:grid;gap:14px}.contract-template-actions{align-items:center;background:#fbfaf7;border:1px solid var(--line);border-radius:16px;display:flex;gap:14px;justify-content:space-between;padding:16px}.contract-template-actions b{display:block;font-size:14px;margin-bottom:4px}.contract-template-actions small{color:var(--muted);display:block;font-size:11px;line-height:1.45}.security-callout.compact{margin:0}.contract-template-editor-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 360px;align-items:start}.contract-template-editor textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.65;min-height:520px;resize:vertical}.contract-template-editor footer{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;margin-top:14px;padding-top:14px}.contract-template-help{position:sticky;top:92px}.contract-template-help h2{font-size:22px;letter-spacing:-.04em;margin:13px 0 8px}.contract-template-help p{color:var(--muted);font-size:12px;line-height:1.6}.contract-template-help dl{display:grid;gap:8px;margin:16px 0}.contract-template-help dl>div{background:#fbfaf7;border:1px solid var(--line);border-radius:12px;padding:10px}.contract-template-help dt{color:#9b711b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:900}.contract-template-help dd{color:#4f5660;font-size:11px;line-height:1.45;margin:5px 0 0}.contract-free-text{color:#3c424b!important;font-size:13px!important;line-height:1.7!important;margin:0 26px 14px!important}
.cell-sub{color:var(--muted);display:block;font-size:10px;line-height:1.4;margin-top:3px}.text-right{text-align:right}
.saas-card .org-numbers{grid-template-columns:repeat(4,1fr) minmax(90px,1.5fr)}
@media(max-width:1100px){.contract-page-grid{grid-template-columns:1fr}.contract-side-card{position:static}.contract-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:980px){.contract-template-editor-grid{grid-template-columns:1fr}.contract-template-help{position:static}.contract-template-actions{align-items:stretch;flex-direction:column}}
@media(max-width:680px){.contract-summary-actions{align-items:stretch;flex-direction:column}.contract-doc-header,.contract-info-grid,.contract-signatures{grid-template-columns:1fr}.contract-document h2,.contract-document>p,.contract-info-grid,.contract-clauses,.contract-signatures,.contract-free-text{margin-left:16px!important;margin-right:16px!important}.contract-document h2{font-size:21px}.contract-clauses li{padding-left:34px}.saas-card .org-numbers{grid-template-columns:1fr 1fr}}

/* Assinatura e impressão do contrato */
.signature-pad{background:#fbfaf7;border:1px solid var(--line);border-radius:14px;display:grid;gap:9px;padding:12px}
.signature-pad>span{color:var(--muted-2);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.signature-pad canvas{background:#fff;border:1px dashed #cdbd9b;border-radius:12px;cursor:crosshair;height:150px;touch-action:none;width:100%}
.signature-pad footer{align-items:center;display:flex;gap:10px;justify-content:space-between}
.signature-pad footer small{color:var(--muted);font-size:10px;line-height:1.4}
.signature-pad footer button{min-height:34px;padding:8px 11px}
.contract-drawn-signature{background:#fff;border:1px solid #eadfc8;border-radius:12px;height:82px!important;max-width:280px!important;padding:8px;width:100%}
.plan-cancel-status{align-items:center;background:#fff8e7;border:1px solid #efd9a7;border-radius:14px;display:flex;gap:14px;justify-content:space-between;margin-top:12px;padding:14px}
.plan-cancel-status b{display:block;font-size:13px;margin:8px 0 5px}.plan-cancel-status small{color:#6f6757;display:block;font-size:11px;line-height:1.5}.plan-cancel-status p{color:#5b5040;font-size:12px;line-height:1.55;margin:10px 0 0}.plan-cancel-status .button-primary{white-space:nowrap}
.cancelled-plan-panel{display:grid;gap:18px;grid-template-columns:minmax(0,360px) 1fr;align-items:start}.cancelled-plan-panel h2{font-size:30px;letter-spacing:-.045em;margin:12px 0 8px}.cancelled-plan-panel p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}
.reactivation-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.reactivation-card{background:#fbfaf7;border:1px solid var(--line);border-radius:16px;cursor:pointer;display:grid;gap:7px;padding:15px;position:relative}.reactivation-card input{position:absolute;right:14px;top:14px}.reactivation-card:has(input:checked){border-color:#d2a63b;box-shadow:0 0 0 3px rgba(210,166,59,.14)}.reactivation-card span{font-size:14px;font-weight:900}.reactivation-card b{font-size:18px}.reactivation-card small{color:var(--muted);font-size:11px;line-height:1.45}.reactivation-grid .button-primary{grid-column:1/-1}
.cancellation-actions{display:flex;flex-direction:column;gap:8px}.cancellation-actions form{display:block}.cancellation-actions button{min-height:34px;padding:8px 11px;width:100%}.cell-wrap{max-width:300px;white-space:normal}.cell-wrap b{display:block;font-size:11px;margin:0 0 4px}.cell-wrap span{display:block}.cell-note-title{color:var(--gold);margin-top:10px!important}.cancel-approval-form{background:#fbfaf7;border:1px solid var(--line);border-radius:12px;padding:10px}.cancel-approval-form label{display:block;margin-bottom:8px}.cancel-approval-form label span{color:var(--muted);display:block;font-size:10px;font-weight:850;letter-spacing:.07em;margin-bottom:6px;text-transform:uppercase}.cancel-approval-form textarea{border:1px solid var(--line);border-radius:10px;font:inherit;font-size:12px;min-height:68px;padding:8px;resize:vertical;width:100%}.cancel-payment-modal{border:0;border-radius:22px;box-shadow:0 32px 100px rgba(0,0,0,.34);max-width:760px;padding:0;width:min(760px,94vw)}.cancel-payment-modal::backdrop{background:rgba(11,13,16,.66);backdrop-filter:blur(2px)}.cancel-payment-box{background:#f6f4ef;display:flex;flex-direction:column;gap:14px;padding:18px}.cancel-payment-box>header{align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;display:flex;gap:16px;justify-content:space-between;padding:16px}.cancel-payment-box>header h2{font-size:22px;letter-spacing:-.04em;margin:4px 0 0}.cancel-payment-box>header button{background:#17191c;border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:22px;height:36px;line-height:1;width:36px}.cancel-payment-message{background:#fff8e7;border:1px solid #efd9a7;border-radius:16px;padding:14px}.cancel-payment-message b{display:block;font-size:13px;margin-bottom:6px}.cancel-payment-message p{color:#4d4438;font-size:13px;line-height:1.55;margin:0}.cancel-payment-message small{color:#6f6757;display:block;font-size:11px;line-height:1.5;margin-top:8px}.cancel-payment-box .subscription-charge-card{background:#fff}
@media(max-width:760px){.plan-cancel-status{align-items:flex-start;flex-direction:column}.plan-cancel-status .button-primary{width:100%}.cancel-payment-box{padding:12px}.cancel-payment-box>header{padding:14px}.cancel-payment-box>header h2{font-size:18px}}
@media(max-width:980px){.cancelled-plan-panel{grid-template-columns:1fr}.reactivation-grid{grid-template-columns:1fr}}
.plan-cancel-request{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}
.plan-cancel-request summary{color:#7b735f;cursor:pointer;font-size:11px;font-weight:850;list-style:none}
.plan-cancel-request summary::-webkit-details-marker{display:none}
.plan-cancel-request[open] summary{color:#a94740}
.plan-cancel-request>div{background:#fbfaf7;border:1px solid var(--line);border-radius:14px;margin-top:10px;padding:12px}
.plan-cancel-request p{color:var(--muted);font-size:11px;line-height:1.55;margin:0 0 8px}
.plan-cancel-request small{color:#6f6657;display:block;font-size:10px;line-height:1.45;margin-bottom:10px}
.plan-cancel-request form{display:grid;gap:9px}
.plan-cancel-request label{display:grid;gap:5px}
.plan-cancel-request label span{color:var(--muted-2);font-size:8px;font-weight:900;text-transform:uppercase}
.plan-cancel-request textarea{border:1px solid var(--line);border-radius:10px;font-family:inherit;min-height:74px;padding:9px;resize:vertical}
.button-disabled{cursor:not-allowed!important;opacity:.55;pointer-events:none}
.contract-required-modal{border:0;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.38);max-width:520px;padding:0;width:min(520px,92vw)}
.contract-required-modal::backdrop{background:rgba(12,14,18,.68);backdrop-filter:blur(2px)}
.contract-required-box{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}
.contract-required-box h2{font-size:28px;letter-spacing:-.05em;line-height:1.05;margin:12px 0}
.contract-required-box p{color:var(--muted);font-size:13px;line-height:1.65;margin:0 0 18px}
.contract-required-box .button-primary{display:block;text-align:center;width:100%}
.addon-locked-panel .addon-summary-content{background:#fbfaf7}
@media(max-width:680px){.signature-pad footer{align-items:stretch;flex-direction:column}.signature-pad footer button{width:100%}}
@media print{
  body{background:#fff!important;color:#111!important}
  .sidebar,.topbar,.app-footer,.page-header,.contract-side-card,.flash-message,.page-header-actions{display:none!important}
  .app-shell,.app-main,.page-content{display:block!important;margin:0!important;padding:0!important;width:100%!important}
  .contract-page-grid{display:block!important}
  .contract-document{border:0!important;box-shadow:none!important;margin:0!important;overflow:visible!important;padding:0!important}
  .contract-doc-header{background:#111316!important;color:#fff!important;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .contract-document h2{font-size:22px!important;margin:20px 0 10px!important}
  .contract-document>p,.contract-free-text{font-size:11.5px!important;line-height:1.55!important;margin-left:0!important;margin-right:0!important}
  .contract-info-grid{grid-template-columns:repeat(4,1fr)!important;margin:0 0 14px!important}
  .contract-info-grid>div,.contract-signatures>div{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .contract-clauses{margin:0 0 16px!important}
  .contract-clauses li{break-inside:avoid;font-size:11px!important;line-height:1.5!important;padding-bottom:8px!important;padding-top:8px!important}
  .contract-clauses li:before{top:10px!important}
  .contract-signatures{break-inside:avoid;margin:16px 0 0!important}
  .contract-signatures img{max-height:72px!important}
}
/* Ordens de serviço */
.service-page-header .page-header-actions,.service-form-header .page-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.service-insights{grid-template-columns:repeat(4,minmax(0,1fr))}.service-filter{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(280px,1fr) 220px auto auto}.service-filter select{background:#fff;border:1px solid var(--border,#dedbd3);border-radius:8px;min-height:43px;padding:0 12px}.table-subline{color:#858992;display:block;font-size:10px;margin-top:3px}.service-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.service-print-action{background:#17191c!important;border-color:#17191c!important;color:#fff!important}.status-danger{background:#fde8e6!important;color:#a4312e!important}
.service-form-section{margin-bottom:16px}.service-form-section>header{align-items:center}.service-form-section>header>button{margin-left:auto}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.span-3{grid-column:1/-1}.service-client-control{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.service-client-control .button-secondary{white-space:nowrap}.service-lines{display:grid;gap:10px}.service-line-card{background:#faf9f6;border:1px solid #e1ddd4;border-radius:12px;padding:13px;position:relative}.service-line-grid{align-items:end;display:grid;gap:10px;padding-right:34px}.service-line-grid label{display:grid;gap:6px}.service-line-grid label>span,.service-line-total>span{color:#60656d;font-size:10px;font-weight:800;text-transform:uppercase}.service-line-grid input,.service-line-grid select{background:#fff;border:1px solid #d9d5cc;border-radius:8px;height:42px;min-width:0;padding:0 10px;width:100%}.service-grid-service{grid-template-columns:1.2fr 1.6fr 75px 120px 110px 110px}.equipment-grid{grid-template-columns:1.2fr 75px 1fr 1fr 1fr 1.4fr}.product-grid{grid-template-columns:minmax(260px,2fr) 85px 125px 110px 115px}.product-select-field small{color:#777;font-size:10px;min-height:12px}.service-line-total{display:grid;gap:7px;padding-bottom:8px}.service-line-total b{font-size:14px}.service-line-remove{align-items:center;background:#f5e9e7;border:0;border-radius:50%;color:#a4312e;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;position:absolute;right:10px;top:10px;width:28px}.service-section-notes{margin-top:14px}.service-total-layout{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) 330px}.service-money-control{align-items:center;border:1px solid #d9d5cc;border-radius:8px;display:flex;overflow:hidden}.service-money-control>span{background:#f1eee7;color:#6e7279;font-size:11px;font-weight:800;padding:13px}.service-money-control input{border:0!important;border-radius:0!important}.service-money-control.is-readonly{background:#f6f4ef}.service-total-card{background:#17191c;border-radius:14px;color:#fff;padding:18px}.service-total-card>div{align-items:center;border-bottom:1px solid #34373d;display:flex;justify-content:space-between;padding:10px 0}.service-total-card span{color:#bfc3c9;font-size:12px}.service-total-card .discount b{color:#7edab6}.service-total-card .total{border-bottom:0;border-top:2px solid #c89b3c;margin-top:6px;padding-top:16px}.service-total-card .total b{font-size:25px}.service-total-card .button-secondary{margin-top:14px;width:100%}.service-quick-customer-modal{max-width:720px;width:calc(100% - 30px)}
.service-catalog-layout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(320px,.72fr) minmax(500px,1.28fr)}.service-catalog-form-panel,.service-catalog-list-panel{padding:18px}.panel-heading{border-bottom:1px solid #e4e0d8;margin-bottom:16px;padding-bottom:14px}.panel-heading>div{align-items:center;display:flex;gap:10px}.panel-heading h2,.panel-heading p{margin:0}.panel-heading p{color:#7a7f87;font-size:11px;margin-top:3px}.service-active-field .toggle-line{align-items:center;border:1px solid #dedbd4;border-radius:8px;display:flex;gap:8px;min-height:42px;padding:0 12px}.toggle-line input{height:auto;width:auto}.service-catalog-cards{display:grid;gap:10px}.service-catalog-card{border:1px solid #dedbd4;border-radius:12px;padding:14px}.service-catalog-card.is-inactive{filter:grayscale(.7);opacity:.68}.service-catalog-card>div:first-child{align-items:flex-start;display:flex;gap:10px}.service-catalog-icon{align-items:center;background:#17191c;border-radius:9px;color:#d3a642;display:flex;font-size:10px;font-weight:900;height:38px;justify-content:center;width:38px}.service-catalog-card b{display:block}.service-catalog-card small{color:#777;display:block;font-size:10px;margin-top:3px}.service-catalog-card dl{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:13px 0}.service-catalog-card dl div{background:#f5f3ee;border-radius:8px;padding:9px}.service-catalog-card dt{color:#81858c;font-size:8px;font-weight:800}.service-catalog-card dd{font-size:11px;font-weight:800;margin:4px 0 0}.service-catalog-card footer{align-items:center;border-top:1px solid #ece9e2;display:flex;gap:8px;padding-top:11px}.service-catalog-card footer form{margin:0}
@media(max-width:1100px){.service-grid-service{grid-template-columns:1fr 1fr 70px 110px}.service-grid-service .service-line-total{grid-column:auto}.equipment-grid{grid-template-columns:repeat(3,1fr)}.product-grid{grid-template-columns:minmax(220px,2fr) 80px 110px 100px}.service-catalog-layout{grid-template-columns:1fr}.service-insights{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.service-filter{grid-template-columns:1fr}.form-grid.three{grid-template-columns:1fr}.form-grid.three .span-2,.span-3{grid-column:auto}.service-client-control{grid-template-columns:1fr}.service-line-grid,.service-grid-service,.equipment-grid,.product-grid{grid-template-columns:1fr}.service-total-layout{grid-template-columns:1fr}.service-catalog-layout{grid-template-columns:1fr}.service-insights{grid-template-columns:1fr}.service-form-section>header{align-items:flex-start;flex-wrap:wrap}.service-form-section>header>button{margin-left:0}.service-catalog-card dl{grid-template-columns:1fr 1fr 1fr}}
