@import "https://fonts.googleapis.com/css2?family=Manrope:wght@700;800&family=Nunito+Sans:wght@400;600;700;800&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-ui:"Nunito Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Manrope", "Nunito Sans", system-ui, sans-serif;font-variant-numeric:tabular-nums;--primary:#0f5c56;--primary-dark:#0a3f3b;--primary-light:#e3efec;--accent:#c9971f;--bg:#f4f6f5;--surface:#fff;--surface-alt:#eef1f0;--border:#dde3e1;--text:#16211f;--text-muted:#56645f;--text-faint:#8a9793;--success:#1f7a4d;--success-bg:#e6f3ea;--warning:#9a6b00;--warning-bg:#fdf1d6;--danger:#b3261e;--danger-bg:#fbe6e4;--info:#1c5fa8;--info-bg:#e5eefb;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #1018160f;--shadow:0 4px 16px #10181614;--shadow-lg:0 12px 32px #10181624;--motion-ease:cubic-bezier(.23, 1, .32, 1);--motion-base:.18s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-resolved-theme=dark]{--bg:#0b1615;--surface:#10201e;--surface-alt:#142826;--border:#23433f;--text:#eef4f2;--text-muted:#a9bab5;--text-faint:#718b85;--primary:#3fb2a4;--primary-dark:#1c443f;--primary-light:#163330;--success-bg:#10301f;--warning-bg:#352a08;--danger-bg:#3a1512;--info-bg:#0f2740}*{box-sizing:border-box}html,body{height:100%}body{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, transparent), transparent 168px), radial-gradient(circle at 12% 96%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 32%), radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--danger) 7%, transparent), transparent 30%), var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;line-height:1.4}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text);margin:0 0 .5em;font-weight:800}h1{font-size:1.45rem}h2{font-size:1.18rem}h3{font-size:1rem}p{margin:0 0 .75em}a{color:var(--primary)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}ul{margin:0;padding:0;list-style:none}img{max-width:100%}#app{min-height:100%}.kp-shell{gap:12px;min-height:100vh;padding:12px;display:flex}.kp-sidebar{background:linear-gradient(180deg, color-mix(in srgb, var(--primary) 14%, var(--surface)), color-mix(in srgb, var(--primary) 24%, var(--surface))), var(--surface);border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border));border-radius:18px;flex-direction:column;flex-shrink:0;gap:4px;width:232px;height:calc(100vh - 24px);padding:14px;display:flex;position:sticky;top:12px;overflow:hidden;box-shadow:0 14px 34px #102a1d1a}.kp-sidebar:before{content:"";pointer-events:none;opacity:.28;background-color:#0000;background-image:linear-gradient(90deg,#0000 96%,#ffffff57 96%),linear-gradient(#0000 96%,#ffffff47 96%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:56px 56px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}:root[data-resolved-theme=dark] .kp-sidebar:before{opacity:.07}.kp-sidebar>*{z-index:1;position:relative}.kp-sidebar-brand{align-items:center;gap:12px;min-height:64px;padding:4px 8px 18px;display:flex}.kp-sidebar-brand img{object-fit:cover;filter:drop-shadow(0 10px 18px #102a1d24);border-radius:14px;width:54px;height:54px}.kp-sidebar-brand span{font-family:var(--font-display);letter-spacing:-.03em;color:var(--primary-dark);font-size:.98rem;font-weight:800}.kp-nav-section{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--text-muted) 82%, transparent);margin-top:10px;padding:0 8px 6px;font-size:.72rem;font-weight:800}.kp-nav-item{min-height:34px;color:color-mix(in srgb, var(--text) 70%, var(--text-muted));cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;width:100%;padding:6px 8px;font-size:.92rem;font-weight:800;transition:background .16s,color .16s,border-color .16s,transform .12s;display:flex}.kp-nav-item:hover{background:color-mix(in srgb, var(--surface) 55%, transparent);border-color:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--text)}.kp-nav-item.active{background:color-mix(in srgb, var(--primary-light) 72%, var(--surface));color:var(--primary-dark);border-color:color-mix(in srgb, var(--primary) 12%, transparent)}.kp-nav-item:active{transform:translateY(1px)}.kp-sidebar-footer{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);margin-top:auto;padding-top:14px}.kp-nav-logout{color:color-mix(in srgb, var(--danger) 74%, var(--text))}.kp-svg-icon{color:currentColor;flex:0 0 17px;justify-content:center;align-items:center;width:17px;height:17px;display:inline-flex}.kp-svg-icon svg{width:100%;height:100%;display:block}.kp-main{flex-direction:column;flex:1;min-width:0;display:flex}.kp-topbar{border:1px solid var(--border);background:var(--surface);z-index:20;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:12px 18px;display:flex;position:sticky;top:12px}.kp-content{flex:1;width:100%;max-width:1414px;margin:0 auto;padding:10px 0 24px}.kp-content>h1,.kp-content>.kp-flex-between:first-child{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white), var(--surface)), var(--surface);min-height:64px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:14px 18px;display:flex}.kp-content>h1{margin-top:0}.kp-content>.kp-flex-between:first-child h1{margin:0}.kp-mobile-topbar,.kp-mobile-project-nav,.kp-dock{display:none}@media (width<=860px){.kp-shell{padding:0;display:block}.kp-sidebar{display:none}.kp-mobile-topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.kp-mobile-project-nav{scrollbar-width:none;background:color-mix(in srgb, var(--surface) 94%, transparent);border-bottom:1px solid var(--border);z-index:19;gap:6px;padding:8px 12px;display:flex;position:sticky;top:57px;overflow-x:auto}.kp-mobile-project-nav::-webkit-scrollbar{display:none}.kp-mobile-project-nav button{min-height:36px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:9px;flex:none;align-items:center;gap:6px;padding:7px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.kp-mobile-project-nav button.active{color:var(--primary-dark);background:var(--primary-light);border-color:color-mix(in srgb, var(--primary) 18%, var(--border))}.kp-mobile-project-nav .kp-svg-icon{width:16px;height:16px}.kp-content{padding:16px 16px 84px}.kp-dock{z-index:30;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0}.kp-dock-item{color:var(--text-faint);border-radius:var(--radius-sm);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 2px;font-size:.66rem;font-weight:700;display:flex}.kp-dock-item .kp-svg-icon{width:20px;height:20px}.kp-dock-item.active{color:var(--primary)}}.kp-card{background:linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 92%, var(--danger-bg))), var(--surface);border:1px solid color-mix(in srgb, var(--border) 88%, var(--primary));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px}.kp-card+.kp-card{margin-top:12px}.kp-card-title{font-family:var(--font-display);letter-spacing:-.015em;margin-bottom:10px;font-size:1rem;font-weight:800}.kp-muted.compact{margin:4px 0 0;font-size:.82rem;line-height:1.35}.kp-section-line{align-items:flex-start;gap:14px;margin-bottom:12px}.kp-grid{align-items:stretch;gap:12px;display:grid}.kp-grid>.kp-card{flex-direction:column;height:100%;display:flex}.kp-grid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.kp-grid-3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.kp-grid-4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.kp-section-head{align-items:center;gap:12px;margin-bottom:18px;display:flex}.kp-section-head>.kp-svg-icon{width:38px;height:38px;color:var(--primary);background:var(--primary-light);border-radius:12px;padding:8px}.kp-section-head h1,.kp-section-head p{margin:0}.kp-stat{background:color-mix(in srgb, var(--surface) 92%, var(--surface-alt));border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;box-shadow:inset 0 1px #ffffff6b}.kp-stat-label{color:var(--text-muted);margin-bottom:4px;font-size:.76rem;font-weight:600}.kp-stat-value{font-family:var(--font-display);font-size:1.22rem;font-weight:800}.kp-stat-value.danger{color:var(--danger)}.kp-stat-value.success{color:var(--success)}button.kp-btn{border-radius:var(--radius-sm);cursor:pointer;transition:transform .12s var(--motion-ease), filter var(--motion-base) var(--motion-ease), background var(--motion-base) var(--motion-ease), border-color var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease);background:var(--primary);color:#fff;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-weight:800;display:inline-flex;box-shadow:0 1px 2px #10181614}button.kp-btn:hover{filter:brightness(1.08)}button.kp-btn:active{transform:scale(.98)}button.kp-btn:disabled{opacity:.55;cursor:not-allowed}button.kp-btn.secondary{background:var(--surface-alt);color:var(--text);border-color:var(--border)}button.kp-btn.ghost{color:var(--primary);border-color:var(--border);background:0 0;padding:6px 8px}button.kp-btn.ghost:hover{background:var(--primary-light)}button.kp-btn.ghost.danger-text:hover{background:var(--danger-bg)}button.kp-btn.danger{background:var(--danger)}button.kp-btn.sm{padding:5px 10px;font-size:.82rem}button.kp-btn.block{width:100%}.kp-source-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.kp-source-card{border:1px solid color-mix(in srgb, var(--border) 88%, var(--primary));border-radius:var(--radius);background:color-mix(in srgb, var(--surface-alt) 72%, var(--surface));min-height:78px;color:var(--text);text-align:left;cursor:pointer;transition:transform .12s var(--motion-ease), border-color var(--motion-base) var(--motion-ease), background var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease);grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:2px 10px;padding:12px;display:grid;box-shadow:0 1px 2px #1018160f}.kp-source-card:hover{border-color:color-mix(in srgb, var(--primary) 52%, var(--border));background:color-mix(in srgb, var(--primary-light) 58%, var(--surface));box-shadow:0 8px 18px #10181612}.kp-source-card:active{transform:scale(.98)}.kp-source-card .kp-svg-icon{width:24px;height:24px;color:var(--primary);grid-row:1/span 2}.kp-source-card strong{font-size:.9rem;line-height:1.2}.kp-source-card span:not(.kp-svg-icon){color:var(--text-muted);font-size:.76rem;line-height:1.35}.kp-document-context{border:1px solid color-mix(in srgb, var(--info) 38%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--info-bg) 64%, var(--surface));gap:5px;margin-bottom:12px;padding:11px 12px;display:grid}.kp-document-context strong{font-size:.92rem;line-height:1.3}.kp-document-context small{color:var(--text-muted);line-height:1.35}.kp-evidence-row{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:13px 0;display:flex}.kp-evidence-row:first-of-type{border-top:0}.kp-evidence-main{gap:4px;min-width:0;display:grid}.kp-evidence-main>span,.kp-evidence-main>small{color:var(--text-muted);line-height:1.35}.kp-evidence-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}button.kp-btn.danger-text{color:var(--danger)}.kp-file-list{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:inline-flex}.kp-file-list.vertical{flex-direction:column;align-items:stretch;display:flex}.kp-file-chip{border:1px solid var(--border);background:var(--surface);max-width:100%;color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:5px 8px;font-size:.82rem;line-height:1.2;display:inline-flex}.kp-file-chip a,.kp-file-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.kp-file-remove{border:0;border-left:1px solid var(--border);color:var(--danger);cursor:pointer;background:0 0;padding:2px 0 2px 8px;font-size:.75rem;font-weight:800}.kp-file-remove:active{transform:scale(.97)}.kp-native-details>summary{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);color:var(--primary);cursor:pointer;align-items:center;gap:6px;padding:7px 11px;font-weight:800;display:inline-flex}.kp-native-details>summary:active{transform:scale(.98)}.kp-field{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.kp-field label{color:var(--text-muted);font-size:.82rem;font-weight:700}.kp-field input,.kp-field select,.kp-field textarea{border:1.5px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);width:100%;transition:border-color var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease), background var(--motion-base) var(--motion-ease);border-radius:9px;padding:8px 11px;box-shadow:inset 0 1px 1px #10181605,0 1px 2px #10181608}.kp-field input:focus,.kp-field select:focus,.kp-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 13%, transparent), 0 8px 18px #1018160f;outline:none}.kp-execucao-toolbar{flex-wrap:wrap;align-items:center;gap:8px}.kp-execucao-search{border:1.5px solid var(--border);background:var(--surface);min-width:220px;min-height:36px;color:var(--text);border-radius:9px;flex:1;padding:7px 11px}.kp-execucao-search:focus{border-color:var(--primary);outline:none}.kp-field .hint{color:var(--text-faint);font-size:.76rem}.kp-field-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.kp-checkbox{align-items:center;gap:8px;font-weight:600;display:flex}.kp-drive-status{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:8px 10px;font-size:.84rem;display:flex}.kp-drive-status.is-connected{border-color:color-mix(in srgb, var(--success) 42%, var(--border));background:var(--success-bg);color:var(--success)}.kp-payment-balance{border:1px solid var(--border);border-radius:var(--radius);background:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:14px;display:grid;overflow:hidden}.kp-payment-balance span{background:var(--surface-alt);color:var(--text-muted);gap:3px;padding:10px 12px;font-size:.78rem;display:grid}.kp-payment-balance strong{color:var(--text);font-family:var(--font-display);font-size:.96rem}.kp-project-logo-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:12px;display:grid}.kp-project-logo-mark{width:58px;height:58px;color:var(--primary);background:var(--primary-light);border:1px solid color-mix(in srgb, var(--primary) 20%, var(--border));border-radius:16px;place-items:center;display:grid}.kp-project-logo-mark .kp-svg-icon{width:28px;height:28px}.kp-project-logo-copy .kp-card-title{margin-bottom:2px}.kp-project-logo-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.kp-report-intro{border-color:color-mix(in srgb, var(--primary) 35%, var(--border));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:12px;display:grid}.kp-eyebrow{color:var(--primary);letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:800;display:block}.kp-report-progress{grid-template-columns:auto 1fr;align-items:baseline;gap:1px 7px;min-width:142px;display:grid}.kp-report-progress strong{font-family:var(--font-display);color:var(--primary);font-size:1.35rem}.kp-report-progress span{color:var(--text-muted);font-size:.75rem}.kp-report-progress>div{background:var(--surface-alt);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.kp-report-progress i{border-radius:inherit;background:var(--primary);height:100%;transition:width .24s var(--motion-ease);display:block}.kp-report-profile{gap:9px;display:grid}.kp-native-details.kp-report-section{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.kp-native-details.kp-report-section>summary{background:color-mix(in srgb, var(--surface-alt) 64%, var(--surface));width:100%;color:var(--text);border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:13px 15px;list-style:none;display:grid}.kp-native-details.kp-report-section>summary::-webkit-details-marker{display:none}.kp-native-details.kp-report-section>summary:after{content:"+";color:var(--primary);grid-area:1/2/span 2;align-self:center;font-size:1.25rem;font-weight:700}.kp-native-details.kp-report-section[open]>summary:after{content:"−"}.kp-report-section>summary span{font-family:var(--font-display);font-weight:800}.kp-report-section>summary small{color:var(--text-muted);font-weight:600}.kp-report-section-body{border-top:1px solid var(--border);padding:15px 15px 4px}.kp-check{cursor:pointer;align-items:center;gap:8px;margin:0 0 12px;font-weight:700;display:inline-flex}.kp-check input{width:17px;height:17px;accent-color:var(--primary)}.kp-report-savebar{z-index:4;border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 92%, var(--primary-light));box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:18px;margin:4px 0 22px;padding:12px 14px;display:flex;position:sticky;bottom:10px}.kp-report-savebar>div{display:grid}.kp-report-savebar span{color:var(--text-muted);font-size:.78rem}.kp-report-history-title{margin-top:4px}.kp-report-version-head{gap:16px}.kp-report-actions{justify-content:flex-end}@media (width<=720px){.kp-payment-balance{grid-template-columns:1fr}.kp-project-logo-card{grid-template-columns:auto minmax(0,1fr)}.kp-project-logo-actions{grid-column:1/-1;justify-content:flex-start}.kp-report-intro{grid-template-columns:1fr;gap:12px}.kp-report-progress{width:100%}.kp-report-savebar{flex-direction:column;align-items:stretch;position:static}.kp-report-version-head{flex-direction:column;align-items:flex-start}.kp-report-actions{justify-content:flex-start}.kp-evidence-row{flex-direction:column}.kp-evidence-actions{justify-content:flex-start}}table.kp-table{border-collapse:separate;border-spacing:0;background:var(--surface);width:100%;font-size:.88rem}table.kp-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;background:color-mix(in srgb, var(--surface-alt) 62%, var(--surface));padding:9px 10px;font-size:.72rem}table.kp-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:9px 10px}table.kp-table tbody tr:nth-child(2n){background:color-mix(in srgb, var(--surface-alt) 32%, transparent)}table.kp-table tbody tr:hover{background:color-mix(in srgb, var(--primary-light) 58%, var(--surface))}table.kp-table tbody tr.kp-row-verde{border-left:3px solid var(--success);background:color-mix(in srgb, var(--success-bg) 55%, var(--surface))}table.kp-table tbody tr.kp-row-laranja{border-left:3px solid var(--warning);background:color-mix(in srgb, var(--warning-bg) 55%, var(--surface))}table.kp-table tbody tr.kp-row-vermelho{border-left:3px solid var(--danger);background:color-mix(in srgb, var(--danger-bg) 45%, var(--surface))}table.kp-table td.num,table.kp-table th.num{text-align:right;font-variant-numeric:tabular-nums}.kp-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.kp-table-wrap table.kp-table{border:none}.kp-table-wrap table.kp-table th:first-child,.kp-table-wrap table.kp-table td:first-child{padding-left:14px}.kp-badge{border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.74rem;font-weight:700;display:inline-flex}.kp-badge.neutral{background:var(--surface-alt);color:var(--text-muted)}.kp-badge.success{background:var(--success-bg);color:var(--success)}.kp-badge.warning{background:var(--warning-bg);color:var(--warning)}.kp-badge.danger{background:var(--danger-bg);color:var(--danger)}.kp-badge.info{background:var(--info-bg);color:var(--info)}.kp-alert{border-radius:var(--radius);border:1px solid;gap:10px;margin-bottom:10px;padding:12px 14px;font-size:.88rem;line-height:1.45;display:flex}.kp-alert.info{background:var(--info-bg);border-color:var(--info);color:var(--info)}.kp-alert.warning{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.kp-alert.danger{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.kp-alert.success{background:var(--success-bg);border-color:var(--success);color:var(--success)}.kp-alert strong{margin-bottom:2px;display:block}.kp-empty{text-align:center;color:var(--text-muted);border:1px dashed color-mix(in srgb, var(--border) 84%, var(--primary));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 80%, transparent);padding:48px 20px}table.kp-table td.kp-empty{border-bottom:none;padding:48px 20px}.kp-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:18px;display:flex;overflow-x:auto}.kp-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 14px;font-weight:700}.kp-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.kp-modal-backdrop{z-index:100;background:#0a141280;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.kp-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:700px;max-height:88vh;box-shadow:var(--shadow-lg);padding:24px 26px;overflow-y:auto}.kp-modal-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.kp-modal-close{background:var(--surface-alt);border:1px solid var(--border);cursor:pointer;width:38px;height:38px;color:var(--text-muted);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.kp-modal-close:hover{color:var(--text);border-color:var(--primary)}.kp-modal-close .kp-svg-icon{width:20px;height:20px}.kp-modal-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.kp-dialog{max-width:480px;padding:22px}.kp-dialog .kp-modal-header{margin-bottom:8px}.kp-dialog-message{color:var(--text-muted);line-height:1.5}.kp-dialog-mark{width:42px;height:42px;color:var(--primary);background:var(--primary-light);border-radius:14px;justify-content:center;align-items:center;margin-bottom:12px;display:inline-flex}.kp-dialog-mark.danger{color:var(--danger);background:var(--danger-bg)}.kp-dialog-mark .kp-svg-icon{width:22px;height:22px}.kp-progress{background:var(--surface-alt);border-radius:999px;height:6px;overflow:hidden}.kp-progress-bar{background:var(--primary);height:100%;transition:width .2s}.kp-list-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;display:flex}.kp-list-item:last-child{border-bottom:none}.kp-chip{background:var(--surface-alt);color:var(--text-muted);border-radius:999px;align-items:center;padding:3px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.kp-badge .kp-svg-icon{flex-basis:14px;width:14px;height:14px}.kp-toast-wrap{z-index:200;flex-direction:column;gap:8px;max-width:360px;display:flex;position:fixed;bottom:16px;right:16px}.kp-toast{background:var(--text);color:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:10px 14px;font-size:.86rem}.kp-toast.danger{background:var(--danger)}.kp-toast.success{background:var(--success)}.kp-auth-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.kp-auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow);padding:32px 28px}.kp-auth-logo{align-items:center;gap:10px;margin-bottom:22px;display:flex}.kp-auth-logo img{border-radius:9px;width:36px;height:36px}.kp-auth-logo span{font-family:var(--font-display);font-size:1.15rem;font-weight:800}.kp-auth-switch{text-align:center;color:var(--text-muted);margin-top:16px;font-size:.86rem}.kp-auth-switch button{color:var(--primary);cursor:pointer;background:0 0;border:none;font-weight:700}.kp-auth-divider{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:10px;margin:14px 0;font-size:.8rem;display:flex}.kp-auth-divider:before,.kp-auth-divider:after{content:"";background:var(--border);flex:1;height:1px}button.kp-btn.secondary.block{justify-content:center;align-items:center;gap:8px;display:inline-flex}.kp-flex{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kp-flex-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.kp-segmented-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.kp-muted{color:var(--text-muted)}.kp-mono{font-variant-numeric:tabular-nums}.kp-mt{margin-top:16px}.kp-mb{margin-bottom:16px}.kp-spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite kp-spin}@keyframes kp-spin{to{transform:rotate(360deg)}}.kp-project-card{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border));border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white), var(--surface)), var(--surface);cursor:pointer;transition:transform .14s var(--motion-ease), box-shadow var(--motion-base) var(--motion-ease), border-color var(--motion-base) var(--motion-ease);flex-direction:column;gap:8px;padding:18px;display:flex}.kp-project-card:hover{box-shadow:var(--shadow);border-color:var(--primary);transform:translateY(-1px)}.kp-project-card:active{transform:translateY(0)scale(.995)}.kp-project-card h3{margin:0;font-size:1.05rem}.kp-project-card-logo{border-radius:var(--radius-sm);object-fit:contain;background:var(--surface-alt);border:1px solid var(--border);width:40px;height:40px;padding:3px}.kp-project-actions{border-top:1px solid color-mix(in srgb, var(--border) 76%, transparent);cursor:default;flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:10px;display:flex}.kp-fiscal-actions{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;display:grid}.kp-fiscal-actions button.kp-btn{border-radius:var(--radius);flex-direction:column;gap:6px;min-height:64px}.kp-fiscal-actions .kp-svg-icon{width:22px;height:22px}button.kp-btn .kp-svg-icon{width:18px;height:18px}@media (width<=640px){.kp-modal{max-height:calc(100dvh - 24px);padding:22px 18px}.kp-fiscal-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.kp-qr-panel{z-index:300;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.fs-hidden{display:none!important}.fiscal-scanner-panel{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08080aad;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:hidden}.fiscal-scanner-panel[hidden]{display:none}.fiscal-scanner-panel.fs-keyboard-active{overscroll-behavior:contain;overflow-y:auto}.fiscal-scanner-card{background:#0a0a0ac7;border:1px solid #ffffff24;border-radius:8px;flex-direction:column;width:min(1320px,100%);height:min(820px,100dvh - 48px);max-height:calc(100dvh - 48px);padding:18px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 80px #00000073}.fiscal-scanner-panel.fs-keyboard-active .fiscal-scanner-card{max-height:calc(var(--vvp-height,100dvh) - 24px);overflow:auto}.fiscal-scanner-head{margin-bottom:14px;padding-right:44px;display:block}.fiscal-scanner-close{color:#fff;opacity:.88;background:0 0;border:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;display:inline-flex;position:absolute;top:12px;right:12px}.fiscal-scanner-close:hover{opacity:1}.fiscal-scanner-close svg{width:30px;height:30px;display:block}.fiscal-scanner-eyebrow,.fiscal-scanner-status{margin:0}.fiscal-scanner-eyebrow{color:#d0b169;font-size:.86rem;font-weight:700}.fiscal-scanner-status{color:#f6f7f3d1;margin-top:6px}.fiscal-scanner-actions{--fs-action-count:4;grid-template-columns:repeat(var(--fs-action-count), minmax(68px, 1fr));place-items:center;gap:10px;width:min(100%,440px);margin:0;display:grid}.fiscal-scanner-control-dock{flex-direction:column;align-items:center;width:min(100%,560px);margin:10px auto 0;display:flex}.fiscal-scanner-button{color:#fff;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:46px;min-height:46px;padding:0 16px;font-weight:700;display:inline-flex}.fiscal-scanner-button:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff47}.fiscal-scanner-button:active:not(:disabled){transform:translateY(1px)}.fiscal-scanner-button:focus-visible{outline-offset:2px;outline:2px solid #d0b169e6}.fiscal-scanner-button:disabled,.fiscal-scanner-button[aria-disabled=true]{cursor:not-allowed;opacity:.45}.fiscal-scanner-action-button{border-radius:8px;flex-direction:column;flex:none;gap:4px;width:100%;min-width:68px;max-width:100%;min-height:58px;margin:0 auto;padding:6px 8px}.fiscal-scanner-button-icon,.fiscal-scanner-button-icon svg{flex:none;width:20px;height:20px;display:inline-flex}.fiscal-scanner-button span:not(.fiscal-scanner-button-icon){text-overflow:ellipsis;overflow:hidden}.fiscal-scanner-action-button .fiscal-scanner-button-icon,.fiscal-scanner-action-button .fiscal-scanner-button-icon svg{width:22px;height:22px}.fiscal-scanner-sr-label{clip:auto;white-space:normal;color:#f6f7f3d1;text-align:center;border:0;width:auto;max-width:72px;height:auto;margin:0;padding:0;font-size:.62rem;font-weight:700;line-height:1.12;position:static;overflow:visible}.fiscal-scanner-spinner{border:2px solid #ffffff47;border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite fiscal-scanner-spin}@keyframes fiscal-scanner-spin{to{transform:rotate(360deg)}}.fiscal-scanner-stage{aspect-ratio:1;background:#ffffff0f;border-radius:8px;flex:auto;width:min(100%,560px);min-height:220px;max-height:min(66vh,640px);margin:0 auto;position:relative;overflow:hidden}.fiscal-scanner-media{object-fit:cover;width:100%;height:100%;display:block}.fiscal-scanner-frame{aspect-ratio:1;pointer-events:none;border:2px solid #ffffffd1;border-radius:8px;width:min(78%,420px);position:absolute;inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 0 999px #00000042}.fiscal-scanner-idle-hint{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:absolute;inset:0}.fiscal-scanner-idle-icon{opacity:.55;justify-content:center;align-items:center;display:flex}.fiscal-scanner-idle-icon svg{width:72px;height:72px}.fiscal-scanner-idle-text{color:#f6f7f380;margin:0;font-size:.9rem;line-height:1.4}.fiscal-scanner-manual{flex-direction:column;gap:10px;width:min(100%,560px);margin:12px auto 0;display:flex}.fiscal-scanner-manual-label{color:#f6f7f3b8;margin:0;font-size:.9rem}.fiscal-scanner-manual-input{color:#f6f7f3;resize:vertical;box-sizing:border-box;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;width:100%;min-height:100px;padding:10px 12px;font-family:monospace;font-size:.9rem;line-height:1.5}.fiscal-scanner-manual-input::placeholder{color:#f6f7f34d}.fiscal-scanner-manual-input:focus{background:#ffffff17;border-color:#d0b16999;outline:none}.fiscal-scanner-btn-confirm,.fiscal-scanner-btn-primary{color:#d0b169;background:#d0b1692e;border-color:#d0b16973}.fiscal-scanner-btn-confirm:hover,.fiscal-scanner-btn-primary:hover{background:#d0b16947}.fiscal-scanner-button--active{color:#d0b169;background:#d0b16926;border-color:#d0b16980}.fiscal-scanner-button--active svg path,.fiscal-scanner-button--active svg circle,.fiscal-scanner-button--active svg rect{stroke:#d0b169}.fiscal-scanner-torch-btn svg path{fill:currentColor;stroke:none}.fiscal-scanner-torch-btn.fiscal-scanner-button--active{color:#1e1608;opacity:1;background:#d0b169eb;border-color:#d0b169}.fiscal-scanner-torch-btn.fiscal-scanner-button--active svg path{fill:#1e1608;stroke:none}@keyframes fs-scan-line{0%{opacity:1;transform:translateY(0)}44%{opacity:1;transform:translateY(calc(100% - 2px))}50%{opacity:0;transform:translateY(calc(100% - 2px))}51%{opacity:0;transform:translateY(0)}56%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}.fiscal-scanner-scan-line{pointer-events:none;will-change:transform, opacity;display:none;position:absolute;inset:0}.fiscal-scanner-scan-line:after{content:"";background:linear-gradient(90deg,#0000,#d0b169f2,#0000);border-radius:2px;height:2px;position:absolute;top:0;left:8px;right:8px}.fiscal-scanner-frame--scanning{border-color:#d0b169d9}.fiscal-scanner-frame--scanning .fiscal-scanner-scan-line{animation:2s ease-in-out infinite fs-scan-line;display:block}.fiscal-scanner-frame--starting{border-color:#ffffff4d}.fiscal-scanner-frame--tap{border-color:#ffdc3cf2;box-shadow:0 0 0 999px #00000042,0 0 14px #ffdc3c73}.fiscal-scanner-frame--tap .fiscal-scanner-scan-line{animation:.7s ease-in-out fs-scan-line;display:block}.fiscal-scanner-frame--tap .fiscal-scanner-scan-line:after{background:linear-gradient(90deg,#0000,#ffdc3ce6,#0000)}.fiscal-scanner-frame--found{border-color:#22c55ef2;box-shadow:0 0 0 999px #00000042,0 0 18px #22c55e8c}.fiscal-scanner-progress{pointer-events:none;background:#ffffff1a;height:3px;position:absolute;bottom:0;left:0;right:0}.fiscal-scanner-progress-fill{background:linear-gradient(90deg,#d0b16999,#d0b169);border-radius:0 2px 2px 0;width:0;height:100%}.fiscal-scanner-tap-hint{text-align:center;color:#f6f7f380;pointer-events:none;letter-spacing:.01em;font-size:.72rem;position:absolute;bottom:14px;left:0;right:0}.fiscal-scanner-rotate-hint{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#f6f7f3d9;text-align:left;pointer-events:none;background:#00000080;border-radius:999px;align-items:center;gap:7px;max-width:calc(100% - 24px);padding:6px 12px;font-size:.72rem;line-height:1.3;animation:.32s both fs-rotate-hint-in;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.fiscal-scanner-rotate-icon{color:#d0b169f2;flex:none;animation:2.4s ease-in-out infinite fs-rotate-nudge;display:inline-flex}.fiscal-scanner-rotate-icon svg{width:17px;height:17px}@keyframes fs-rotate-hint-in{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}@keyframes fs-rotate-nudge{0%,70%,to{transform:rotate(0)}80%{transform:rotate(-18deg)}90%{transform:rotate(6deg)}}@media (orientation:landscape) and (height<=560px){.fiscal-scanner-panel{padding:max(8px, env(safe-area-inset-top,0px)) max(8px, env(safe-area-inset-right,0px)) max(8px, env(safe-area-inset-bottom,0px)) max(8px, env(safe-area-inset-left,0px))}.fiscal-scanner-card{flex-direction:column;gap:8px;width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:none;padding:10px;display:flex;overflow:hidden}.fiscal-scanner-head{flex:none;margin-bottom:0;padding-right:38px}.fiscal-scanner-eyebrow{font-size:.74rem}.fiscal-scanner-status{max-height:none;margin-top:2px;font-size:.76rem;line-height:1.25;overflow:visible}.fiscal-scanner-stage{aspect-ratio:auto;flex:auto;width:100%;min-height:0;max-height:none}.fiscal-scanner-frame{aspect-ratio:7/2;width:min(94%,900px)}.fiscal-scanner-control-dock{flex:none;align-items:center;width:100%;max-width:none;margin-top:0}.fiscal-scanner-control-dock>.fiscal-scanner-actions{width:min(100%,340px)}.fiscal-scanner-control-dock .fiscal-scanner-action-button{min-width:58px;min-height:50px;padding:4px 6px}.fiscal-scanner-control-dock .fiscal-scanner-button-icon,.fiscal-scanner-control-dock .fiscal-scanner-button-icon svg{width:20px;height:20px}}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-card{flex-direction:column;gap:8px;width:100vh;height:100vw;max-height:none;padding:10px;display:flex;overflow:hidden;transform:rotate(-90deg)}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-head{flex:none;margin-bottom:0;padding-right:38px}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-status{max-height:none;overflow:visible}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-stage{aspect-ratio:auto;flex:auto;width:100%;min-height:0;max-height:none}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-frame{aspect-ratio:7/2;width:min(94%,900px)}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-control-dock{flex:none;align-items:center;width:100%;max-width:none;margin-top:0}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-control-dock>.fiscal-scanner-actions{width:min(100%,340px)}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-control-dock .fiscal-scanner-action-button{min-width:58px;min-height:50px;padding:4px 6px}.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-control-dock .fiscal-scanner-button-icon,.fiscal-scanner-panel.fs-forced-rotate .fiscal-scanner-control-dock .fiscal-scanner-button-icon svg{width:20px;height:20px}@media (prefers-reduced-motion:reduce){.fiscal-scanner-rotate-hint,.fiscal-scanner-rotate-icon,.fiscal-scanner-frame--scanning .fiscal-scanner-scan-line{animation:none}}.fiscal-scanner-action-button.fiscal-scanner-torch-btn{gap:0;min-width:48px;padding:0}@media (width<=640px){.fiscal-scanner-panel.fs-keyboard-active{padding-top:calc(var(--vvp-offset-top,0px) + max(12px, env(safe-area-inset-top,0px)));padding-bottom:max(12px, env(safe-area-inset-bottom,0px));align-items:flex-start}.fiscal-scanner-panel.fs-keyboard-active .fiscal-scanner-card{max-height:calc(var(--vvp-height,100dvh) - 24px)}}@media (width<=420px){.fiscal-scanner-panel{padding:12px}.fiscal-scanner-card{height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:14px}.fiscal-scanner-close{top:10px;right:10px}.fiscal-scanner-actions{gap:8px}.fiscal-scanner-action-button{min-width:58px}.fiscal-scanner-sr-label{max-width:60px;font-size:.58rem}}
