html,body,#root{height:100vh!important;width:100vw!important;margin:0;padding:0;overflow:hidden!important}.app-root{height:100vh!important;width:100vw!important;overflow:hidden!important;position:fixed;top:0;left:0;display:flex;flex-direction:column}.app-root>*{height:100%;width:100%}.topbar{position:sticky;top:0;z-index:1200;height:64px;min-height:64px;max-height:64px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e6f4ec;box-sizing:border-box}.topbar-left{display:flex;align-items:center;gap:10px}.menu-toggle{display:none;background:none;border:none;padding:0;font-size:22px;line-height:1;cursor:pointer;color:#064e3b}.topbar-brand{display:flex;align-items:center;gap:8px;text-decoration:none;white-space:nowrap}.brand-logo{width:36px;height:36px;border-radius:50%;background:#16a34a;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.brand-text{display:flex;align-items:center;line-height:1;color:#064e3b;font-weight:600}.brand-full{font-size:18px;display:inline}.brand-short{display:none;font-size:16px}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-nav{display:flex;align-items:center;gap:8px}.topbar-link{padding:8px 14px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:500;line-height:1;color:#064e3b;transition:background .2s ease,color .2s ease}.topbar-link:hover{background:#ecfdf5}.topbar-link.active{background:#16a34a;color:#fff}.btn-dashboard{padding:8px 14px;border-radius:999px;border:1px solid #16a34a;background:#fff;color:#16a34a;font-size:14px;font-weight:600;line-height:1;cursor:pointer;transition:all .2s ease}.btn-dashboard:hover{background:#ecfdf5}.btn-dashboard.active{background:#16a34a;color:#fff}.btn-logout{padding:8px 12px;border-radius:999px;border:1px solid #fca5a5;background:#fff;color:#dc2626;font-size:14px;font-weight:500;line-height:1;cursor:pointer;transition:all .2s ease}.btn-logout:hover{background:#fee2e2}@media(max-width:768px){.menu-toggle{display:block}.topbar-nav,.brand-logo{display:none}}@media(max-width:400px){.brand-full{display:none}.brand-short{display:inline}}.sidebar{width:260px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;box-sizing:border-box;z-index:1000;transform:translate(-100%);transition:transform .3s ease-in-out;will-change:transform}.sidebar.open{transform:translate(0)}.sidebar-public{padding:8px 0;border-bottom:1px solid #e5e7eb;flex-shrink:0}.sidebar-role{padding:16px 20px;border-bottom:1px solid #e5e7eb;flex-shrink:0;background-color:#f9fafb}.role-name{font-size:13px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.sidebar-menu{flex:1;padding:12px 0;overflow-y:auto;overflow-x:hidden}.sidebar-link{display:flex;align-items:center;padding:10px 16px;margin:2px 12px;font-size:14px;font-weight:500;color:#374151;text-decoration:none;border-radius:6px;cursor:pointer;transition:background .2s ease,color .2s ease}.sidebar-link:hover{background-color:#f3f4f6;color:#111827}.sidebar-link.active{background-color:#e5e7eb;color:#000;font-weight:600}.sidebar-icon{margin-right:12px;flex-shrink:0;color:#9ca3af;transition:color .2s}.sidebar-link:hover .sidebar-icon,.sidebar-link.active .sidebar-icon{color:#4b5563}.sidebar-icon.child{margin-left:4px}.sidebar-group{margin-bottom:4px}.sidebar-group-header{width:calc(100% - 24px);margin:0 12px;padding:10px 16px;background:none;border:none;border-radius:6px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:#374151;font-size:14px;font-weight:600;transition:background .2s ease}.sidebar-group-header:hover{background-color:#f3f4f6}.sidebar-group-header.open{background-color:#f9fafb}.sidebar-group-title{display:flex;align-items:center}.sidebar-caret{font-size:12px;color:#9ca3af}.sidebar-group-items{margin-top:2px;background-color:#fafafa;padding-bottom:4px}.sidebar-group-items .sidebar-link{padding-left:20px;font-size:13.5px}.sidebar-menu::-webkit-scrollbar{width:5px}.sidebar-menu::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.sidebar-menu::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media(max-width:767px){.sidebar{position:fixed;top:64px;left:0;bottom:0;height:calc(100vh - 64px)}.sidebar-public{display:block}}@media(min-width:768px)and (max-width:1023px){.sidebar{position:fixed;top:64px;left:0;bottom:0;height:calc(100vh - 64px)}.sidebar-public{display:none}}@media(min-width:1024px){.sidebar{position:fixed;top:64px;left:0;bottom:0;height:calc(100vh - 64px);transform:translate(0)}.sidebar-public{display:none}}:root{--sidebar-width: 260px;--bottom-nav-height: 64px;--bottom-safe-gap: 100px}.app-root{min-height:100vh;position:relative;background-color:#f8f9fa;overscroll-behavior-y:contain}.app-content{min-height:100vh;width:100%;overflow-y:auto;overflow-x:hidden;transition:margin-left .3s ease-in-out}.app-content-inner{min-height:100vh;padding:16px 32px calc(var(--bottom-nav-height) + var(--bottom-safe-gap) + env(safe-area-inset-bottom));box-sizing:border-box}.sidebar{padding-bottom:calc(var(--bottom-nav-height) + var(--bottom-safe-gap) + env(safe-area-inset-bottom))}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999}@media(min-width:1024px){.app-content{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width))}.app-content-inner{padding-bottom:92px}.sidebar{padding-bottom:0}.sidebar-overlay{display:none}}@media(max-width:1023px){:root{--bottom-safe-gap: 102px}.app-content{margin-left:0!important;width:100%!important}}@media(max-width:767px){:root{--bottom-safe-gap: 102px}.app-content-inner{padding:12px 20px calc(var(--bottom-nav-height) + var(--bottom-safe-gap) + env(safe-area-inset-bottom))}}.app-content::-webkit-scrollbar{width:6px}.app-content::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:4px}.home-page{height:100vh;overflow-y:auto;overflow-x:hidden;background:#f0fdf4;display:flex;flex-direction:column;margin:0;padding:0}.home-hero{flex:1;display:flex;justify-content:center;padding:3rem 1.5rem;min-height:min-content}.hero-content{margin:auto 0;max-width:800px;width:100%;text-align:center;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.logo-section{margin-bottom:1.5rem}.logo-icon{width:80px;height:80px;background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;box-shadow:0 10px 30px #10b9814d}.home-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;color:#111827;margin:0;letter-spacing:-.02em}.home-subtitle{font-size:clamp(1.1rem,2vw,1.3rem);color:#6b7280;margin:1rem 0 3rem;font-weight:400;line-height:1.6}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#fef3c7;border:2px solid #fbbf24;border-radius:50px;color:#92400e;font-weight:600;font-size:.9rem;margin-bottom:2rem;animation:fadeInUp .8s ease-out .2s both}.coming-soon-section{animation:fadeInUp .8s ease-out .3s both}.info-card{background:#fff;border:2px solid #d1fae5;border-radius:24px;padding:3rem 2.5rem;box-shadow:0 4px 6px #0000000d}.info-icon{width:70px;height:70px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#059669}.info-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:#111827;margin:0 0 1rem;line-height:1.3}.info-description{font-size:1.05rem;color:#4b5563;line-height:1.7;margin:0 0 1.2rem}.info-description:last-of-type{margin-bottom:2.5rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2.5rem}.feature-item{display:flex;gap:1rem;padding:1.5rem;background:#f0fdf4;border:2px solid #d1fae5;border-radius:16px;text-align:left;transition:all .3s ease}.feature-item:hover{border-color:#10b981;box-shadow:0 8px 20px #10b98126;transform:translateY(-4px)}.feature-icon{width:44px;height:44px;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#059669;flex-shrink:0}.feature-text h3{font-size:1rem;font-weight:700;color:#111827;margin:0 0 .3rem}.feature-text p{font-size:.875rem;color:#6b7280;margin:0;line-height:1.4}.notify-section{background:#f0fdf4;padding:2rem;border-radius:16px;border:2px solid #d1fae5}.notify-text{font-size:1.05rem;color:#374151;font-weight:600;margin:0 0 1rem}.notify-button{width:100%;max-width:350px;padding:1rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #10b9814d}.notify-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.notify-button:active{transform:translateY(0)}.user-welcome-section{animation:fadeInUp .8s ease-out .3s both}.welcome-card{background:#fff;border:2px solid #d1fae5;border-radius:24px;padding:2.5rem;box-shadow:0 4px 6px #0000000d}.user-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;text-align:left}.user-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669)!important;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;flex-shrink:0}.user-details{flex:1}.welcome-label{font-size:.875rem;color:#6b7280;margin:0 0 .3rem;font-weight:500}.user-name{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 .5rem}.branch-info{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:#f0fdf4;border:1px solid #d1fae5;border-radius:8px;color:#059669;font-size:.875rem;font-weight:600}.dashboard-button{width:100%;padding:1rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #10b9814d}.dashboard-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.dashboard-button:active{transform:translateY(0)}.home-footer{padding:2rem 1.5rem;text-align:center;border-top:1px solid #d1fae5;flex-shrink:0}.footer-text{color:#6b7280;font-size:.9rem;margin:0}@media(max-width:768px){.home-hero{padding:2rem 1rem}.info-card{padding:2rem 1.5rem}.features-grid{grid-template-columns:1fr}.user-header{flex-direction:column;text-align:center}.user-details{display:flex;flex-direction:column;align-items:center}}@media(max-width:480px){.logo-icon{width:60px;height:60px}.info-card{padding:1.5rem 1rem}.feature-item{flex-direction:column;text-align:center}.feature-icon{margin:0 auto}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseSoft{0%{box-shadow:0 0 #10b98159}70%{box-shadow:0 0 0 12px #10b98100}to{box-shadow:0 0 #10b98100}}.fade-in{animation:fadeSlideUp .45s ease-out both}.auth-page{min-height:100vh;padding:32px 16px;display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(circle at top,#ecfdf3 0,#f1f5f9 45%,#e5e7eb);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.auth-back-page{position:absolute;top:18px;left:18px;background:transparent;border:none;padding:6px 8px;font-size:14px;font-weight:600;color:#047857;cursor:pointer;border-radius:8px;transition:background .2s ease,color .2s ease}.auth-back-page:hover{background:#ecfdf5;color:#065f46}.auth-card{width:100%;max-width:420px;background:#fff;border-radius:20px;padding:28px 26px 26px;box-shadow:0 18px 45px #0f172a24,0 0 0 1px #94a3b833;display:flex;flex-direction:column;gap:22px}.auth-brand{text-align:center}.auth-logo{width:60px;height:60px;border-radius:999px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:24px;margin:0 auto 10px;animation:pulseSoft 2.5s ease-out infinite}.auth-title{margin:0;font-size:1.35rem;font-weight:700;color:#020617;letter-spacing:-.02em}.auth-subtitle{margin-top:4px;font-size:.88rem;color:#047857}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-form label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;color:#111827}.auth-form input{font-family:inherit;font-size:.92rem;padding:10px 12px;border-radius:10px;border:1px solid #d1d5db;background:#f9fafb;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth-form input:focus{border-color:#22c55e;background:#fff;box-shadow:0 0 0 1px #22c55e40}.auth-form input:disabled{opacity:.7;cursor:not-allowed}.auth-btn{border-radius:999px;border:none;font-size:.95rem;font-weight:700;padding:10px 16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.auth-btn.primary{background:linear-gradient(135deg,#22c55e,#16a34a);color:#f9fafb;box-shadow:0 10px 22px #16a34a47}.auth-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #16a34a59}.auth-btn:disabled{opacity:.75;cursor:default;transform:none;box-shadow:none}.auth-status{font-size:.82rem;padding:9px 12px;border-radius:10px;text-align:center;font-weight:600}.auth-status.ok{background:#ecfdf3;border:1px solid #bbf7d0;color:#166534}.auth-status.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.auth-footer{text-align:center;font-size:.82rem;color:#6b7280;display:flex;flex-direction:column;gap:6px}.auth-link{cursor:pointer;color:#6b7280;transition:color .2s ease}.auth-link:hover{text-decoration:underline;color:#111827}@media(max-width:480px){.auth-card{padding:22px 18px 20px;border-radius:16px}.auth-logo{width:52px;height:52px;font-size:20px}.auth-title{font-size:1.2rem}}.dashboard-page{padding:24px;margin:0 auto;font-family:system-ui,-apple-system,BlinkMacSystemFont;color:#064e3b}.dashboard-header h1{font-size:26px;font-weight:700;color:#065f46}.subtitle{font-size:14px;color:#047857}.dashboard-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:24px 0}.meta-card{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:10px;padding:16px}.meta-card .label{font-size:12px;color:#047857}.meta-card .value{font-size:16px;font-weight:600;color:#065f46}.dashboard-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.card{background:#fff;border:1px solid #bbf7d0;border-radius:12px;padding:20px}.card h3{color:#065f46;font-size:16px}.audit-card{grid-column:1 / -1}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.link-btn{background:none;border:none;color:#047857;font-weight:600;cursor:pointer}.link-btn:hover{text-decoration:underline}.audit-feed{display:flex;flex-direction:column;gap:12px}.audit-row{display:flex;justify-content:space-between;align-items:flex-start;padding:14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px}.audit-left{display:flex;flex-direction:column;gap:6px}.audit-user{font-weight:600;font-size:14px;color:#064e3b}.audit-desc{font-size:12px;color:#047857}.audit-change{margin-top:4px;font-size:12px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.old-value{background:#ecfdf5;border:1px dashed #86efac;padding:2px 6px;border-radius:6px;color:#065f46}.new-value{background:#dcfce7;border:1px solid #86efac;padding:2px 6px;border-radius:6px;font-weight:600;color:#14532d}.arrow{font-weight:700;color:#047857}.audit-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.badge{padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase}.badge-create{background:#dcfce7;color:#166534}.badge-update{background:#bbf7d0;color:#14532d}.badge-delete,.badge-soft_delete{background:#a7f3d0;color:#14532d}.badge-restore{background:#86efac;color:#14532d}.audit-time{font-size:11px;color:#065f46}.muted{text-align:center;color:#047857;font-size:14px}@media(max-width:640px){.audit-row{flex-direction:column;gap:10px}.audit-right{align-items:flex-start}}*{box-sizing:border-box}.audit-fullscreen{min-height:100vh;background:#fff;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1e293b}@media(max-width:768px){.audit-fullscreen{padding:1rem}}.audit-title-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.audit-title{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 .25rem;line-height:1.2}.audit-stats{display:flex;gap:1rem;color:#64748b;font-size:1rem;font-weight:500}.audit-stats .stat-item strong{color:#1e293b}.btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:1px solid #e2e8f0;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;font-size:.9rem}.btn.btn-secondary{background:linear-gradient(135deg,#3bb873,#24ac54);color:#fff;border-color:#22c55e;box-shadow:0 4px 12px -2px #3bb8734d}.btn.btn-secondary:hover{background:linear-gradient(135deg,#32a569,#20a04b);border-color:#22c55e;transform:translateY(-1px);box-shadow:0 8px 20px -4px #3bb87366}.btn.btn-secondary:active{transform:translateY(0)}.btn.btn-outline{background:#fff;color:#24ac54;border-color:#24ac54}.btn.btn-outline:hover{background:#f0fdf4;border-color:#22c55e;color:#166534}.btn-back{margin-left:auto}.audit-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:2rem;padding:1.5rem;border-radius:1rem;background:#f8fafc;border:1px solid #e2e8f0}.audit-filters select,.audit-filters input[type=text]{min-width:180px;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #d1d5db;background:#fff;color:#1e293b;font-size:.9rem;outline:none;transition:all .2s ease}.audit-filters select:focus,.audit-filters input[type=text]:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.audit-filters select::placeholder,.audit-filters input::placeholder{color:#9ca3af}.audit-table-wrapper{flex:1;display:flex;flex-direction:column}.audit-table-wrapper>*:first-child{background:#fff;border-radius:1rem;box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;border:1px solid #e2e8f0;overflow:hidden}.cp-empty.fullscreen-empty{padding:4rem 2rem;text-align:center;color:#64748b;font-size:1.1rem;background:#f8fafc}.table-container.fullscreen-table{overflow-x:auto;position:relative}.audit-table{width:100%;border-collapse:collapse;background:#fff;min-width:900px}.audit-table th{background:#f8fafc;font-weight:600;color:#374151;padding:1.25rem 1rem;text-align:left;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0;position:sticky;top:0;z-index:10}.audit-table td{padding:1.25rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:top}.audit-table tbody tr:hover{background:#f8fafc}.audit-table tbody td:first-child{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-weight:600;color:#64748b;text-align:center;font-size:.875rem;width:60px}.nowrap{white-space:nowrap}.u-small{font-size:.875rem!important}.u-muted{color:#9ca3af!important}.u-mono{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:.875rem!important;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.u-strong{font-weight:600!important;color:#1e293b!important}.change-stack{display:flex;flex-direction:column;gap:.25rem}.old-value{background:#f3f4f6;padding:.125rem .375rem;border-radius:.375rem;font-family:SF Mono,monospace;color:#6b7280}.new-value{background:linear-gradient(135deg,#3bb873,#24ac54);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:SF Mono,monospace;font-weight:600}.badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;line-height:1;border:1px solid transparent}.badge-create{background:#dcfce7;color:#166534;border-color:#22c55e}.badge-update{background:#bbf7d0;color:#14532d;border-color:#16a34a}.badge-delete,.badge-soft_delete{background:#86efac;color:#065f46;border-color:#10b981}.badge-restore{background:#4ade80;color:#065f46;border-color:#22c55e}.badge-login,.badge-logout{background:#ecfdf5;color:#047857;border-color:#059669}.pagination-container.fullscreen-pagination{margin-top:2rem;display:flex;justify-content:center;padding:1.5rem;background:#f8fafc;border-radius:1rem;border:1px solid #e2e8f0}.btn-pagination{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#3bb873,#24ac54);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9rem}.btn-pagination:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px -4px #3bb87366}.btn-pagination:disabled{opacity:.5;cursor:not-allowed;transform:none}.pagination-container span{color:#64748b;font-weight:500}.pagination-container span strong{color:#1e293b}@media(max-width:1024px){.audit-title-bar{flex-direction:column;align-items:stretch}.btn-back{justify-content:center}}@media(max-width:768px){.audit-title{font-size:1.5rem}.audit-table th,.audit-table td{padding:1rem .75rem}.audit-filters{flex-direction:column;align-items:stretch}.audit-filters select,.audit-filters input[type=text]{width:100%}.pagination-container.fullscreen-pagination{flex-wrap:wrap;gap:.75rem;padding:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.role-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;white-space:nowrap;line-height:1.2;border:1px solid transparent}.rb-superadmin{background:#fee2e2;color:#991b1b;border-color:#fecaca}.rb-admin{background:#e0f2fe;color:#075985;border-color:#bae6fd}.rb-manager{background:#ede9fe;color:#5b21b6;border-color:#ddd6fe}.rb-accountant{background:#ecfeff;color:#155e75;border-color:#cffafe}.rb-editor{background:#fef3c7;color:#92400e;border-color:#fde68a}.rb-camera{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.rb-drone{background:#fdf2f8;color:#9d174d;border-color:#fbcfe8}.rb-social{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.rb-sales{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.rb-staff{background:#f1f5f9;color:#334155;border-color:#e2e8f0}.rb-client{background:#fafafa;color:#404040;border-color:#e5e5e5}.rb-default{background:#f8fafc;color:#475569;border-color:#e2e8f0}.user-actions{display:flex;gap:6px;align-items:center;justify-content:flex-start;white-space:nowrap}.user-actions .btn{padding:4px 10px;font-size:11px;font-weight:600;border-radius:6px;line-height:1.2}.users-table-wrapper{width:100%;overflow-x:auto}.up-empty{padding:40px;text-align:center;color:#6b7280;font-size:14px}.role-stack{display:flex;flex-wrap:wrap;gap:6px}.created-stack{display:flex;flex-direction:column;line-height:1.2}.status{font-weight:600;font-size:12px}.status.active{color:#059669}.status.inactive{color:#ca8a04}.status.deleted{color:#dc2626}.users-table{width:100%;border-collapse:collapse;background:#fff}.users-table th,.users-table td{padding:12px 14px;text-align:left;vertical-align:middle;border:none!important}.users-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb}.users-table tr:hover{background:#f9fafb}.users-table tr.row-deleted{opacity:.6;background:#fafafa}.users-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:8px 2px}.user-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;transition:box-shadow .2s ease,transform .2s ease}.user-card:hover{box-shadow:0 6px 18px #0000000f;transform:translateY(-2px)}.user-card.card-deleted{opacity:.6;background:#fafafa}.user-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.user-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;flex-shrink:0}.user-card-title{min-width:0}.user-name{font-weight:600;font-size:15px;line-height:1.2}.user-email{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card-body{display:flex;flex-direction:column;gap:10px}.user-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:13px}.user-row .label{color:#6b7280;font-weight:500;flex-shrink:0}.user-card-footer{margin-top:12px;padding-top:10px;border-top:1px dashed #e5e7eb;display:flex;justify-content:flex-end}.user-actions{display:flex;gap:8px}.user-actions .btn-small{padding:4px 8px;font-size:12px}.user-filters{width:100%;background:transparent}.uf-row{display:flex;align-items:center;gap:28px;border-radius:10px}.uf-inline{display:flex;align-items:center;gap:10px}.uf-text{font-size:14px;font-weight:500;color:#111827}.uf-select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.uf-select:focus{border-color:#22c55e}.uf-view{display:flex;gap:6px}.uf-view-btn{height:32px;padding:0 14px;font-size:13px;border-radius:8px;background:#fff;border:1px solid #d1d5db;cursor:pointer;transition:all .15s ease}.uf-view-btn:hover{border-color:#22c55e;color:#16a34a}.uf-view-btn.active{background:#22c55e;color:#fff;border-color:#22c55e}.uf-actions{margin-left:auto;display:flex;gap:8px}.uf-meta{font-size:13px;color:#6b7280;white-space:nowrap}.user-search{display:flex;align-items:center}.us-form{display:flex;align-items:center;gap:8px}.us-form input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none;transition:all .2s ease}.us-form input::placeholder{color:#9ca3af}.us-form input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.us-actions{display:flex;align-items:center;gap:6px}.us-actions .btn-primary{height:40px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;border:1px solid #16a34a;color:#fff;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.us-actions .btn-primary:hover{background:#15803d}.us-actions .btn-ghost{height:40px;padding:0 14px;border-radius:999px;font-size:13px;background:transparent;border:1px solid transparent;color:#6b7280;cursor:pointer}.us-actions .btn-ghost:hover{background:#f3f4f6;color:#111827}.us-search-btn{height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:1px solid #16a34a;cursor:pointer;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease,transform .05s ease}.us-search-btn:hover{background:#15803d;box-shadow:0 4px 10px #16a34a40}.us-search-btn:active{transform:translateY(1px)}.us-search-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #16a34a59}.us-input-wrap{position:relative;display:flex;align-items:center}.us-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;line-height:1;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease,transform .05s ease}.us-clear:hover{background:#16a34a1f;color:#16a34a}.us-clear:active{transform:translateY(-50%) scale(.95)}.us-clear:focus-visible{outline:none;box-shadow:0 0 0 2px #16a34a59}@media(max-width:1024px){.us-form input{width:260px}}@media(max-width:768px){.us-form input,.user-search{width:100%}}.udc-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.udc-modal{background:#fff;border-radius:10px;width:420px;max-width:90%;padding:20px}.udc-title{margin:0 0 10px}.udc-text{font-size:14px}.udc-user-box{background:#f8fafc;border:1px solid #e5e7eb;padding:10px;border-radius:6px;margin:10px 0;font-size:13px}.udc-warning{font-size:13px;color:#7c2d12;background:#fff7ed;border:1px solid #fed7aa;padding:8px;border-radius:6px}.udc-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.cam-backdrop{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.cam-modal{width:100%;max-width:420px;background:#fff;border-radius:14px;box-shadow:0 20px 40px #00000026,0 6px 16px #0000001a;overflow:hidden;animation:camFadeIn .18s ease-out}.cam-header{padding:16px 20px;border-bottom:1px solid #e5e7eb}.cam-header h3{margin:0;font-size:18px;font-weight:600;color:#0f172a}.cam-body{padding:16px 20px;font-size:14px;color:#475569}.cam-message p{margin:0;line-height:1.55}.cam-message strong{color:#991b1b;font-weight:600}.cam-error{margin-top:14px;padding:10px 12px;background:#fee2e2;color:#991b1b;border-radius:8px;font-size:13px}.cam-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e5e7eb}.cam-btn{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:none;transition:all .15s ease}.cam-btn-cancel{background:#f1f5f9;color:#334155}.cam-btn-cancel:hover{background:#e5e7eb}.cam-btn-confirm{background:#16a34a;color:#fff}.cam-btn-confirm:hover{background:#15803d}.cam-btn-danger{background:#dc2626;color:#fff}.cam-btn-danger:hover{background:#b91c1c}.cam-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes camFadeIn{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.users-page{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;min-height:100%}.users-toolbar{display:flex;align-items:stretch;gap:1rem;border-radius:10px;padding:.75rem 1rem}.users-toolbar .user-search{flex:2}.users-toolbar .user-filters{flex:3}.users-content{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000a}.up-empty{padding:2rem;text-align:center;color:#6b7280;font-size:.95rem}.up-empty.error{color:#b91c1c;background:#fef2f2;border-radius:8px}.user-filters{width:100%}.uf-card{display:flex;align-items:flex-end;gap:1rem}.uf-title{display:none}.uf-group{display:flex;flex-direction:column;gap:.25rem;min-width:160px}.uf-label{font-size:.75rem;color:#6b7280}.uf-group select{height:36px;padding:0 .5rem;border-radius:6px;border:1px solid #d1d5db;font-size:.85rem}.uf-view-switch{display:flex;gap:.25rem}.uf-actions{display:flex;gap:.5rem;margin-left:auto}.uf-actions .btn{height:36px;padding:0 .75rem;font-size:.85rem}.uf-actions .btn.btn-ghost{border:1px solid #16a34a;color:#16a34a}.uf-actions .btn.btn-ghost:hover{background:#ecfdf5}.uf-footer{margin-left:auto;padding-left:.5rem;font-size:.75rem;color:#6b7280}@media(max-width:900px){.users-toolbar{flex-direction:column}.uf-card{flex-wrap:wrap}.uf-actions{width:100%;justify-content:flex-start}}.ud-section{padding:16px 20px}.ud-subtitle{margin:16px 0 8px;font-size:15px;font-weight:600;color:#111827}.ud-audit-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:12px;padding:12px 14px}.ud-audit-summary{display:flex;justify-content:space-between;gap:12px}.ud-audit-left{flex:1}.ud-audit-preview{margin-top:6px;font-size:13px;display:flex;gap:6px;flex-wrap:wrap}.ud-audit-preview .old{color:#92400e;background:#fef3c7;padding:2px 6px;border-radius:6px}.ud-audit-preview .new{color:#065f46;background:#d1fae5;padding:2px 6px;border-radius:6px}.ud-modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:999}.ud-modal{background:#fff;width:100%;max-width:720px;border-radius:14px;box-shadow:0 25px 60px #00000040;overflow:hidden}.ud-modal-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.ud-modal-header h3{font-size:16px;font-weight:600;margin:0}.btn-close{background:none;border:none;font-size:18px;cursor:pointer;color:#6b7280}.btn-close:hover{color:#111827}.ud-modal-meta{padding:12px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:13px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.ud-modal-meta strong{color:#374151}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.ud-modal-body{padding:16px 20px}.ud-audit-field-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;padding:12px 0;border-bottom:1px dashed #e5e7eb}.ud-audit-field-row:last-child{border-bottom:none}.field-name{font-weight:600;color:#111827}.field-old,.field-new{display:flex;flex-direction:column;gap:4px}.badge{font-size:11px;font-weight:600;width:fit-content;padding:2px 8px;border-radius:999px}.badge-old{background:#fef3c7;color:#92400e}.badge-new{background:#d1fae5;color:#065f46}.value{font-size:13px;word-break:break-word}.muted{color:#6b7280;font-size:13px}.btn{border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer}.btn-outline{background:transparent;border:1px solid #d1d5db;color:#111827}.btn-small{padding:4px 10px;font-size:12px}.user-detail-page{padding:24px 28px 40px;background:#f8fafc;min-height:100vh;color:#0f172a;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Ubuntu,Arial,sans-serif}.ud-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.ud-header h2{font-size:22px;font-weight:600;margin:0}.ud-meta{margin-top:4px;font-size:13px;color:#64748b;display:flex;gap:10px;flex-wrap:wrap}.status{padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500}.status.active{background:#dcfce7;color:#166534}.status.inactive{background:#fee2e2;color:#991b1b}.status.deleted{background:#e5e7eb;color:#374151}.ud-tabs{display:flex;gap:4px;border-bottom:1px solid #e5e7eb;margin-bottom:16px}.ud-tabs button{padding:10px 14px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:13px;font-weight:500;cursor:pointer;color:#475569}.ud-tabs button:hover{color:#0f172a}.ud-tabs button.active{color:#0f172a;border-bottom-color:#0f172a}.ud-content{background:#fff;border-radius:10px;padding:18px 20px;box-shadow:0 1px 2px #0000000a}.ud-section{display:flex;flex-direction:column;gap:14px}.ud-subtitle{margin-top:18px;margin-bottom:6px;font-size:14px;font-weight:600}.ud-row{display:grid;grid-template-columns:160px 1fr;gap:14px;font-size:14px}.ud-row label{color:#64748b;font-weight:500}.muted{color:#64748b;font-size:12px}.ud-audit-card{border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;background:#fafafa}.ud-audit-summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.ud-audit-preview{margin-top:6px;font-size:12px}.ud-audit-preview .old{color:#991b1b}.ud-audit-preview .new{color:#166534}.ud-device{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa}.ud-device-info{display:flex;flex-direction:column;gap:4px;font-size:13px}.ud-device-info strong{font-size:14px}.ud-device-meta{font-family:monospace;font-size:12px;color:#475569}.btn{padding:6px 12px;font-size:12px;font-weight:500;border-radius:6px;cursor:pointer;border:1px solid transparent}.btn-small{padding:5px 10px}.btn-logout{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.btn-logout:hover{background:#fecaca}.btn-logout-all{background:#dcfce7;color:#166534;border:1px solid #86efac}.btn-logout-all:hover{background:#bbf7d0}.ud-footer{margin-top:20px}.ud-modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000}.ud-modal{width:560px;max-width:calc(100vw - 40px);background:#fff;border-radius:10px;padding:16px 18px;box-shadow:0 20px 40px #0003}.ud-modal-header{display:flex;justify-content:space-between;align-items:center}.btn-close{background:transparent;border:none;font-size:18px;cursor:pointer}.ud-modal-body{display:flex;flex-direction:column;gap:10px}.ud-audit-field-row{border:1px solid #e5e7eb;border-radius:6px;padding:10px;background:#f9fafb}.ud-audit-field-row .field-name{font-weight:600;font-size:13px}.ud-audit-field-row .field-old{color:#991b1b;font-size:12px}.ud-audit-field-row .field-new{color:#166534;font-size:12px}.up-empty{padding:40px;text-align:center;color:#64748b;font-size:14px}.up-empty.error{color:#991b1b}.page-wrapper{max-width:860px;margin:0 auto;padding:24px 16px 48px}.page-header{margin-bottom:20px}.page-header h1{margin:0;font-size:22px;font-weight:600;color:#0f172a}.page-header .muted{margin-top:4px;font-size:13px;color:#64748b}.form-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:24px}.alert{padding:12px 14px;border-radius:6px;font-size:14px;margin-bottom:16px}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.form-group{display:flex;flex-direction:column;margin-bottom:16px}.form-group label{font-size:13px;font-weight:500;margin-bottom:6px;color:#334155}.form-group input{height:40px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;outline:none;transition:border .2s,box-shadow .2s}.form-group input:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.form-group.inline{flex-direction:row;align-items:center;gap:8px}.form-group.inline label{margin:0;font-weight:500}.meta-box{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px;margin:20px 0;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.meta-box strong{font-size:13px;color:#0f172a}.meta-box div>div{font-size:14px;margin-top:4px;color:#1f2937}.meta-box .muted{font-size:12px;color:#64748b}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:24px}.form-actions.space-between{justify-content:space-between}.btn{height:40px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:background .2s,opacity .2s}.btn-danger{background:#dc2626;color:#fff}.btn-ghost{background:transparent;color:#334155}.btn-ghost:hover{background:#f1f5f9}.btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.meta-box{grid-template-columns:1fr}.form-actions.space-between{flex-direction:column;align-items:stretch}.form-actions.space-between>div{display:flex;gap:10px;justify-content:flex-end}}.clients-table-wrapper{width:100%;overflow-x:auto;position:relative}.clients-table{width:100%;border-collapse:collapse;background:#fff}.clients-table thead tr{border-bottom:1px solid #e5e7eb}.clients-table th{padding:12px 14px;text-align:left;vertical-align:middle;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb;font-weight:600;border:none}.clients-table tbody tr{border-bottom:1px solid #e5e7eb}.clients-table tbody tr:last-child{border-bottom:none}.clients-table td{padding:12px 14px;text-align:left;vertical-align:middle;border:none}.clients-table tbody tr:hover{background:#f9fafb}.clients-table tr.row-deleted{opacity:.6;background:#fafafa}.ct-avatar{width:42px;height:42px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ct-avatar-img{object-fit:cover}.ct-avatar-initials{background-color:#16a34a;color:#fff;font-weight:600;font-size:14px}.contact-stack{display:flex;flex-direction:column;align-items:flex-start;line-height:1.3}.contact-stack small{font-size:12px;color:#6b7280}.created-stack{display:flex;flex-direction:column;align-items:flex-start}.created-stack small{font-size:12px;color:#6b7280}.u-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.u-strong{font-weight:600}@media(max-width:768px){.clients-table th,.clients-table td{padding:10px}.ct-avatar{width:36px;height:36px}}.client-actions{display:flex;gap:6px;align-items:center;justify-content:flex-start;white-space:nowrap}.client-actions .btn{padding:4px 10px;font-size:11px;font-weight:600;border-radius:6px;line-height:1.2}.btn-danger{background:#dc2626;color:#fff;border:none}.btn-danger:hover{background:#b91c1c}.btn-success{background:#16a34a;color:#fff;border:none}.btn-success:hover{background:#15803d}.btn-ghost{background:transparent;border:1px solid #d1d5db;color:#374151}.btn-ghost:hover{background:#f3f4f6}.btn-outline{background:transparent;border:1px solid #6b7280;color:#374151}.btn-small{min-height:26px}.client-filters{width:100%;background:transparent}.cf-row{display:flex;align-items:center;gap:28px;border-radius:10px}.cf-inline{display:flex;align-items:center;gap:10px}.cf-text{font-size:14px;font-weight:500;color:#111827}.cf-select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.cf-select:focus{border-color:#22c55e}.cf-view{display:flex;gap:6px}.cf-view-btn{height:32px;padding:0 14px;font-size:13px;border-radius:8px;background:#fff;border:1px solid #d1d5db;cursor:pointer;transition:all .15s ease}.cf-view-btn:hover{border-color:#22c55e;color:#16a34a}.cf-view-btn.active{background:#22c55e;color:#fff;border-color:#22c55e}.cf-actions{margin-left:auto;display:flex;gap:8px}.btn-green{height:36px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:none;cursor:pointer;transition:background .2s ease,transform .1s ease}.btn-green:hover{background:#15803d}.btn-green:active{transform:translateY(1px)}.btn-red{height:36px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#dc2626;color:#fff;border:none;cursor:pointer;transition:background .2s ease,transform .1s ease}.btn-red:hover{background:#b91c1c}.btn-red:active{transform:translateY(1px)}.cf-meta{font-size:13px;color:#6b7280;white-space:nowrap}.client-search{display:flex;align-items:center}.cs-form{display:flex;align-items:center;gap:8px}.cs-form input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none;transition:all .2s ease}.cs-form input::placeholder{color:#9ca3af}.cs-form input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.cs-input-wrap{position:relative;display:flex;align-items:center}.cs-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;line-height:1;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease,transform .05s ease}.cs-clear:hover{background:#16a34a1f;color:#16a34a}.cs-clear:active{transform:translateY(-50%) scale(.95)}.cs-clear:focus-visible{outline:none;box-shadow:0 0 0 2px #16a34a59}.cs-search-btn{height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:1px solid #16a34a;cursor:pointer;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease,transform .05s ease}.cs-search-btn:hover{background:#15803d;box-shadow:0 4px 10px #16a34a40}.cs-search-btn:active{transform:translateY(1px)}.cs-search-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #16a34a59}@media(max-width:1024px){.cs-form input{width:260px}}@media(max-width:768px){.cs-form input,.client-search{width:100%}}.client-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;border-radius:16px;background:#fff}.ces-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.6}.ces-title{font-size:1rem;font-weight:600;color:#111827;margin-bottom:.25rem}.ces-description{font-size:.85rem;color:#6b7280;max-width:360px;margin-bottom:1.25rem}.clients-page{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;min-height:100%}.clients-header{display:flex;align-items:center;justify-content:space-between}.clients-header h1{font-size:22px;font-weight:600}.clients-header .btn-green{height:38px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:none;cursor:pointer}.clients-header .btn-green:hover{background:#15803d}.clients-toolbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:10px}.clients-toolbar .client-search{flex:2}.clients-toolbar .client-filters{flex:3;display:flex;align-items:center;gap:12px}.clients-content{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000a}.cp-empty{padding:2rem;text-align:center;color:#6b7280;font-size:14px}.cp-empty.error{color:#b91c1c}.client-search{position:relative;display:flex;align-items:center}.client-search input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none}.client-search input::placeholder{color:#9ca3af}.client-search input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.client-filters select{height:36px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.client-filters select:focus{border-color:#22c55e}.clients-table-wrapper{width:100%;overflow-x:auto}.clients-table{width:100%;border-collapse:collapse}.clients-table th,.clients-table td{padding:12px 14px;border-bottom:none;text-align:left;vertical-align:middle}.clients-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:transparent}.clients-table tr:hover{background:#00000005}.status-pill.archived{background:#fef2f2;color:#991b1b}.actions .btn-danger{border-color:#fecaca;color:#b91c1c}.actions .btn-danger:hover{background:#fee2e2}@media(max-width:1024px){.client-search input{width:260px}}@media(max-width:900px){.clients-toolbar{flex-direction:column;align-items:stretch}.client-filters{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:768px){.client-search,.client-search input{width:100%}.clients-header{flex-direction:column;align-items:flex-start;gap:10px}}.client-hero{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:48px 32px;min-height:160px;border-radius:14px;margin-top:16px;display:flex;align-items:center;position:relative;overflow:hidden}.client-hero-content{width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.client-hero-left{display:flex;align-items:flex-start;gap:18px}.client-avatar{width:120px;height:120px;border-radius:50%;overflow:hidden;background:#ffffff2e;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:700;color:#fff;cursor:zoom-in;transition:transform .2s ease,box-shadow .2s ease}.client-avatar:hover{transform:translateY(-1px);box-shadow:0 12px 28px #00000047}.client-avatar img{width:100%;height:100%;object-fit:cover;display:block}.client-identity{display:flex;flex-direction:column;margin-top:6px}.client-name{margin:0;font-size:24px;font-weight:700;line-height:1.2}.client-contact{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.contact-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;padding:6px 10px;border-radius:6px;color:#fff;text-decoration:none;background:#ffffff29;transition:background .2s ease}.contact-item:hover{background:#ffffff47}.contact-item.whatsapp{background:#25d36640}.contact-item.whatsapp:hover{background:#25d36666}.client-hero-actions{display:flex;align-items:center;gap:10px;margin-top:6px}.client-hero-actions button{height:36px;padding:0 14px;border-radius:6px;font-size:13px;font-weight:600;border:none;cursor:pointer;white-space:nowrap;transition:all .2s ease}.client-hero-actions .btn-secondary{background:#fff3;color:#fff}.client-hero-actions .btn-secondary:hover{background:#ffffff52}.client-hero-actions .btn-primary{background:#fff;color:#047857;box-shadow:0 4px 12px #00000026}.client-hero-actions .btn-primary:hover{background:#ecfdf5;transform:translateY(-1px)}@media(max-width:768px){.client-hero{padding:40px 24px}.client-hero-content{flex-direction:column;align-items:flex-start}.client-hero-actions{width:100%;margin-top:18px;justify-content:flex-end;flex-wrap:wrap;gap:8px}.client-hero-actions button{flex:1;min-width:120px}}.image-preview-backdrop{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999}.image-preview-img{max-width:90vw;max-height:90vh;border-radius:12px;background:#000;box-shadow:0 30px 70px #0000008c;animation:zoomFadeIn .28s ease-out}@keyframes zoomFadeIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.client-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:1400px;margin:-40px auto 32px;padding:0 24px;position:relative;z-index:2}.stat-card{background:#fff;padding:22px 20px;border-radius:14px;display:flex;align-items:center;gap:16px;border-left:4px solid transparent;box-shadow:0 10px 28px #00000014,0 2px 6px #0000000a;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px #0000001a,0 4px 10px #0000000f}.stat-icon{font-size:28px}.stat-label{font-size:13px;color:#6b7280;margin-bottom:4px;font-weight:500}.stat-value{font-size:24px;font-weight:700;color:#111827;line-height:1.2}.stat-card.primary{border-left-color:#047857}.stat-card.primary .stat-icon{color:#047857}.stat-card.success{border-left-color:#16a34a}.stat-card.success .stat-icon{color:#16a34a}.stat-card.danger{border-left-color:#dc2626}.stat-card.danger .stat-icon{color:#dc2626}.stat-card.info{border-left-color:#0ea5e9}.stat-card.info .stat-icon{color:#0ea5e9}@media(max-width:1024px){.client-stats-grid{max-width:100%;padding:0 20px}}@media(max-width:768px){.client-stats-grid{margin-top:-24px;padding:0 16px}.stat-value{font-size:20px}}@media(max-width:480px){.client-stats-grid{gap:16px}}.two-column-layout{width:100%;padding-bottom:40px}.two-column-container{max-width:92vw;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1.7fr 1.1fr;gap:24px}.two-column-left,.two-column-right{display:flex;flex-direction:column;gap:24px}.section-card{background:#fff;border-radius:14px;padding:24px;box-shadow:0 8px 24px #0000000f,0 2px 6px #0000000a}.section-title{margin:0 0 16px;font-size:16px;font-weight:700;color:#111827;border-bottom:1px solid #f1f5f9;padding-bottom:10px}.section-muted{font-size:13px;color:#6b7280;line-height:1.4}.section-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:14px}.section-row+.section-row{margin-top:12px}.branch-badge{display:inline-block;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:600;color:#065f46;background:#d1fae5;border-radius:999px}.services-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.service-chip{font-size:11px;padding:3px 8px;background:#f1f5f9;color:#374151;border-radius:999px;font-weight:500}.status-text{font-weight:600;color:#111827}.amount-positive{color:#16a34a;font-weight:600}.amount-negative{color:#dc2626;font-weight:600}@media(max-width:1024px){.two-column-container{max-width:100%;grid-template-columns:1fr;padding:0 20px}}@media(max-width:768px){.two-column-container{padding:0 16px}.section-card{padding:20px}.section-row{flex-direction:column;gap:6px}}.client-stepbar{display:flex;gap:.75rem;padding:1rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem}.cs-step{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;cursor:pointer;white-space:nowrap;transition:all .15s ease}.cs-step:hover{background:#d1fae5}.cs-step.active{background:#16a34a;color:#fff;border-color:#16a34a}.cs-step.active .cs-index{background:#ffffff40;color:#fff}.cs-index{width:1.4rem;height:1.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;background:#a7f3d0;color:#065f46}@media(max-width:640px){.client-stepbar{overflow-x:auto;padding-bottom:.75rem}.cs-step{flex-shrink:0}}.client-form-actions{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;margin-top:2rem;border-top:1px solid #e5e7eb}.cfa-right{display:flex;gap:.75rem}.client-form-actions .btn{padding:.55rem 1.1rem;font-size:.875rem;border-radius:6px;cursor:pointer;line-height:1.2;white-space:nowrap}.client-form-actions .btn-primary{background-color:#2563eb;color:#fff;border:none}.client-form-actions .btn-primary:hover{background-color:#1d4ed8}.client-form-actions .btn-outline{background:#fff;border:1px solid #d1d5db;color:#111827}.client-form-actions .btn-outline:hover{background:#f9fafb}.client-form-actions .btn-ghost{background:transparent;border:none;color:#374151}.client-form-actions .btn-ghost:hover{text-decoration:underline}.client-form-actions .btn-primary{background-color:#16a34a;color:#fff;border:none}.client-form-actions .btn-primary:hover{background-color:#15803d}.client-form-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.client-form-actions{flex-direction:column;align-items:stretch;gap:.75rem}.cfa-right{justify-content:flex-end}}.client-create-page{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem}.client-create-header{border-bottom:1px solid #e5e7eb;padding-bottom:1rem}.client-create-header h1{margin:0;font-size:1.4rem;font-weight:600;color:#111827}.client-create-header .muted{margin-top:.25rem;font-size:.85rem;color:#6b7280}.client-create-content{padding-top:.5rem}.client-create-page .error{color:#b91c1c;background:#fee2e2;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.client-create-page .muted{color:#6b7280;font-size:.9rem}@media(max-width:768px){.client-create-page{padding:1rem}}.crop-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999}.crop-modal{background:#fff;width:660px;max-width:90vw;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.crop-header{padding:14px 16px;border-bottom:1px solid #eee}.crop-container{position:relative;height:720px;background:#000}.crop-controls{padding:12px 16px}.crop-actions{padding:14px 16px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #eee}.btn-secondary{background:#f3f4f6;border:none;padding:8px 14px;border-radius:6px;cursor:pointer}.btn-primary{background:#16a34a;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer}.client-step-form{max-width:560px}.form-group label{font-size:.85rem;font-weight:500;color:#065f46}.req{color:#dc2626;margin-left:2px}.form-group input,.form-group select,.form-group textarea{padding:.45rem .6rem;font-size:.9rem;border-radius:6px;border:1px solid #d1fae5;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#065f46}.image-preview{margin-top:.5rem;display:flex;flex-direction:column;gap:.4rem}.image-preview img{max-width:140px;border-radius:8px;border:1px solid #e5e7eb;background:#fff}.image-actions{display:flex;gap:.75rem}.btn-link{background:none;border:none;padding:0;font-size:.8rem;color:#16a34a;cursor:pointer;font-weight:500}.image-preview .muted{font-size:.75rem;color:#6b7280}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-error{font-size:.75rem;color:#dc2626;margin-top:.25rem}.form-error.global{margin-top:1rem;font-weight:500}@media(max-width:640px){.form-grid{grid-template-columns:1fr}}.form-help,.muted.small{font-size:.75rem;color:#6b7280}.form-group input:disabled,.form-group select:disabled{background:#f9fafb;cursor:not-allowed}.form-group{margin-bottom:1.25rem;position:relative}.form-group label{display:block;font-weight:500;margin-bottom:.35rem;color:#111827}.branch-search{position:relative}.branch-search input{width:100%;padding:.55rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;outline:none;transition:border-color .15s,box-shadow .15s}.branch-search input:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.branch-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:220px;overflow-y:auto;box-shadow:0 10px 25px #00000014}.branch-empty{padding:.75rem;font-size:.85rem;color:#6b7280;text-align:center}.branch-option{display:flex;justify-content:space-between;align-items:center;padding:.6rem .75rem;cursor:pointer;font-size:.9rem}.branch-option:hover{background:#f0fdf4}.branch-name{font-weight:500;color:#111827}.branch-code{font-size:.75rem;font-family:monospace;color:#047857;background:#ecfdf5;padding:2px 6px;border-radius:999px}.branch-selected{margin-top:.5rem;padding:.55rem .65rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:.85rem;color:#374151}.branch-selected .mono{font-family:monospace;font-size:.8rem}.branch-code-pill{display:inline-block;margin-left:4px;padding:2px 8px;font-family:monospace;font-size:.75rem;color:#065f46;background:#d1fae5;border-radius:999px}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;font-weight:500}.form-group.checkbox input[type=checkbox]{accent-color:#16a34a}.form-group textarea{width:100%;padding:.55rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;resize:vertical}.form-group textarea:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26;outline:none}.client-review{display:flex;flex-direction:column;gap:24px;padding-bottom:32px}.review-error-box{border:1px solid #f5c2c7;background:#fff5f6;color:#842029;padding:14px 16px;border-radius:8px}.review-error-box strong{display:block;margin-bottom:8px;font-size:14px}.review-error-box ul{margin:0;padding-left:18px}.review-error-box li{font-size:13px;line-height:1.5}.review-section{border:1px solid #e5e7eb;border-radius:10px;padding:16px 18px;background:#fff}.review-section h3{margin:0 0 12px;font-size:15px;font-weight:600;color:#111827}.review-row{display:grid;grid-template-columns:160px 1fr;gap:12px;padding:6px 0}.review-label{font-size:13px;color:#6b7280}.review-value{font-size:14px;color:#111827;display:flex;flex-direction:column;gap:4px}.review-field-error{font-size:12px;color:#dc2626;font-weight:500}.review-photo{margin-top:14px}.review-photo img{width:120px;height:120px;object-fit:cover;border-radius:10px;border:1px solid #e5e7eb}.review-notes{font-size:14px;color:#374151;line-height:1.6;white-space:pre-wrap}@media(max-width:640px){.review-row{grid-template-columns:1fr;gap:2px}.review-label{font-size:12px}}.unauthorized-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ecfdf5,#d1fae5);padding:1.5rem}.unauthorized-card{background:#fff;border-radius:1rem;box-shadow:0 8px 25px #0080401a;border:1px solid #a7f3d0;text-align:center;padding:2rem;max-width:420px;width:100%;transition:transform .2s ease,box-shadow .3s ease}.unauthorized-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #05966926}.icon-circle{background-color:#10b981;width:70px;height:70px;border-radius:50%;margin:0 auto 1.2rem;display:flex;align-items:center;justify-content:center}.icon{width:36px;height:36px;color:#fff}.title{font-size:1.5rem;font-weight:700;color:#064e3b;margin-bottom:.5rem}.message{font-size:1rem;color:#065f46}.subtext{font-size:.9rem;color:#6b7280;margin-top:.5rem;margin-bottom:1.5rem}.highlight{font-weight:600;color:#059669}.dashboard-btn{background-color:#059669;color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:500;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.dashboard-btn:hover{background-color:#047857;transform:translateY(-1px)}.dashboard-btn:active{transform:translateY(0)}.service-list-page{padding:1.5rem}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-header h1{margin:0;font-size:1.4rem;font-weight:700}.btn{border-radius:6px;padding:.55rem 1rem;font-size:.85rem;font-weight:600;border:none;cursor:pointer;transition:all .15s ease}.btn-primary{background:#16a34a;color:#fff}.btn-link{background:none;border:none;color:#047857;font-size:.8rem;font-weight:600;cursor:pointer;padding:0;margin-left:.5rem;text-decoration:none}.btn-link:hover{text-decoration:underline}.btn-link.warning{color:#b45309}.btn-link.danger{color:#dc2626}.service-table{width:100%;border-collapse:collapse;margin-top:1rem}.service-table th,.service-table td{padding:.75rem;border-bottom:1px solid #e5e7eb;text-align:left;font-size:.85rem}.status-pill{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600}.status-pill.active{background:#dcfce7;color:#166534}.status-pill.inactive{background:#fef3c7;color:#92400e}.status-pill.archived{background:#fee2e2;color:#991b1b}.empty-state,.page-loading,.page-error{padding:2rem;text-align:center;color:#6b7280}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.btn-primary{width:100%}.service-table{font-size:.8rem}.service-table th,.service-table td{padding:.5rem .75rem}}.service-detail-page{padding:1.5rem;max-width:900px}.service-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.75rem}.service-detail-header h1{margin:0;font-size:1.6rem;font-weight:700;color:#064e3b}.service-detail-header .muted{margin-top:.25rem;font-size:.85rem;color:#6b7280}.service-detail-header .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.service-detail-header .actions{display:flex;gap:.6rem;align-items:center}.btn-secondary,.btn-ghost{border-radius:6px;padding:.45rem .9rem;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:all .15s ease;white-space:nowrap}.btn-secondary{background:#16a34a;color:#fff}.btn-secondary:hover{background:#15803d}.btn-ghost{background:transparent;color:#047857}.btn-ghost:hover{background:#ecfdf5}.section-card{background:#fff;border-radius:10px;padding:1.1rem 1.25rem;margin-bottom:1rem;border:1px solid #e5e7eb}.section-title{margin:0 0 .75rem;font-size:.95rem;font-weight:700;color:#065f46}.section-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.45rem 0;font-size:.85rem}.section-row:not(:last-child){border-bottom:1px dashed #e5e7eb}.section-muted{color:#6b7280;font-weight:500;min-width:160px}.section-row strong{font-weight:600;color:#111827}.section-row span{color:#111827}.section-row-notes{align-items:flex-start}.section-row-notes span:last-child{white-space:pre-wrap;line-height:1.5}.page-loading,.page-error{padding:2rem;text-align:center;color:#6b7280;font-size:.9rem}@media(max-width:768px){.service-detail-page{padding:1rem}.service-detail-header{flex-direction:column;align-items:stretch}.service-detail-header .actions{justify-content:flex-end}.section-row{flex-direction:column;gap:.25rem}.section-muted{min-width:auto}}.service-stepbar{display:flex;gap:.75rem;padding:1rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem}.service-stepbar a,.service-stepbar a:visited,.service-stepbar a:hover,.service-stepbar a:active{text-decoration:none;color:inherit}.ss-step{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;cursor:pointer;white-space:nowrap;transition:all .15s ease}.ss-step:hover{background:#d1fae5}.ss-step.active{background:#16a34a;color:#fff;border-color:#16a34a}.ss-step.active .ss-index{background:#ffffff40;color:#fff}.ss-index{width:1.4rem;height:1.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;background:#a7f3d0;color:#065f46}@media(max-width:640px){.service-stepbar{overflow-x:auto;padding-bottom:.75rem}.ss-step{flex-shrink:0}}.service-form-actions{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;margin-top:24px;border-top:1px solid #e5e7eb;background:#fff;position:sticky;bottom:0;z-index:10}.sfa-right{display:flex;gap:10px;align-items:center}.service-form-actions .btn{padding:9px 18px;font-size:13px;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.service-form-actions .btn-primary{background:#10b981;color:#fff}.service-form-actions .btn-primary:hover{background:#059669}.service-form-actions .btn-primary:disabled{background:#a7f3d0;cursor:not-allowed}.service-form-actions .btn-outline{background:transparent;color:#047857;border:1px solid #10b981}.service-form-actions .btn-outline:hover{background:#ecfdf5}.service-form-actions .btn-ghost{background:transparent;color:#6b7280}.service-form-actions .btn-ghost:hover{background:#f3f4f6;color:#111827}@media(max-width:640px){.service-form-actions{flex-direction:column;align-items:stretch;gap:12px}.sfa-right{width:100%}.sfa-right .btn{flex:1}}.service-review{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.review-title{margin:0 0 1.25rem;font-size:1.1rem;font-weight:600;color:#064e3b}.review-section{margin-bottom:1.25rem}.review-section h4{margin:0 0 .6rem;font-size:.9rem;font-weight:600;color:#065f46}.review-row{display:flex;justify-content:space-between;align-items:flex-start;padding:.45rem 0;border-bottom:1px dashed #d1fae5;gap:1rem}.review-row:last-child{border-bottom:none}.review-label{font-size:.8rem;color:#047857;white-space:nowrap}.review-value{font-size:.85rem;font-weight:500;color:#111827;text-align:right;max-width:65%;word-break:break-word}.review-section:last-child .review-value{text-align:left}@media(max-width:640px){.review-row{flex-direction:column;align-items:flex-start}.review-value{max-width:100%;text-align:left}}.project-search{display:flex;align-items:center}.ps-form{display:flex;align-items:center;gap:8px}.ps-input-wrap{position:relative;display:flex;align-items:center}.project-search input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none;transition:all .2s ease}.ps-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;cursor:pointer;transition:background .15s ease,color .15s ease}.ps-clear:hover{background:#16a34a1f;color:#16a34a}.ps-search-btn{height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:1px solid #16a34a;cursor:pointer;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease,transform .05s ease}.ps-search-btn:hover{background:#15803d;box-shadow:0 4px 10px #16a34a40}.ps-search-btn:active{transform:translateY(1px)}@media(max-width:768px){.project-search,.ps-form,.project-search input{width:100%}}.project-filters{width:100%}.pf-row{display:flex;align-items:center;gap:1.75rem}.pf-inline{display:flex;align-items:center;gap:.6rem}.pf-inline span{font-size:14px;font-weight:500;color:#111827}.pf-inline select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.pf-inline select:focus{border-color:#22c55e}.pf-meta{margin-left:auto;font-size:13px;color:#6b7280;white-space:nowrap}@media(max-width:900px){.pf-row{flex-wrap:wrap;gap:1rem}.pf-meta{margin-left:0}}.pp-empty{padding:40px;text-align:center;color:#6b7280;font-size:14px}.p-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.p-strong{font-weight:600}.project-table{width:100%;border-collapse:collapse;background:#fff}.project-table th,.project-table td{padding:12px 14px;text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb}.project-actions{display:flex;gap:6px;align-items:center;white-space:nowrap}.project-actions .btn{padding:4px 10px;font-size:11px;font-weight:600;border-radius:6px;line-height:1.2}.project-page{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;min-height:100%}.project-header{display:flex;align-items:center;justify-content:space-between}.project-header h1{font-size:22px;font-weight:600}.project-header .btn-green{height:38px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:none;cursor:pointer}.project-header .btn-green:hover{background:#15803d}.project-toolbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:10px}.project-toolbar .project-search{flex:2}.project-toolbar .project-filters{flex:3}.project-content{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000a}.pp-empty{padding:2rem;text-align:center;color:#6b7280;font-size:14px}.project-search{position:relative;display:flex;align-items:center}.project-search input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none}.project-search input::placeholder{color:#9ca3af}.project-search input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.project-filters{display:flex;align-items:center;gap:12px}.project-filters select{height:36px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.project-filters select:focus{border-color:#22c55e}.project-table-wrapper{width:100%;overflow-x:auto}.project-table{width:100%;border-collapse:collapse}.project-table th,.project-table td{padding:12px 14px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}.project-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb}.project-table tr:hover{background:#f9fafb}.actions{display:flex;gap:6px}.actions .btn-outline{padding:4px 10px;font-size:12px;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.actions .btn-outline:hover{background:#f3f4f6}@media(max-width:1024px){.project-search input{width:260px}}@media(max-width:900px){.project-toolbar{flex-direction:column;align-items:stretch}.project-filters{justify-content:flex-start}}@media(max-width:768px){.project-search,.project-search input{width:100%}.project-header{flex-direction:column;align-items:flex-start;gap:10px}}.project-stepper{display:flex;gap:.75rem;padding:1rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;overflow-x:auto}.ps-step{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;cursor:pointer;white-space:nowrap;transition:all .15s ease}.ps-step:hover{background:#d1fae5}.ps-step.active{background:#16a34a;color:#fff;border-color:#16a34a}.ps-step.active .ps-index{background:#ffffff40;color:#fff}.ps-index{width:1.4rem;height:1.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;background:#a7f3d0;color:#065f46}.ps-label{line-height:1}@media(max-width:640px){.project-stepper{padding-bottom:.75rem}.ps-step{flex-shrink:0}}.step-actions{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;margin-top:2rem;border-top:1px solid #e5e7eb}.step-actions button{padding:.55rem 1.1rem;font-size:.875rem;border-radius:6px;cursor:pointer;line-height:1.2;white-space:nowrap}.step-actions .btn-primary{background-color:#16a34a;color:#fff;border:none}.step-actions .btn-primary:hover{background-color:#15803d}.step-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.step-actions .btn-secondary{background:#fff;border:1px solid #d1d5db;color:#111827}.step-actions .btn-secondary:hover{background:#f9fafb}@media(max-width:640px){.step-actions{flex-direction:column;align-items:stretch;gap:.75rem}.step-actions-right{justify-content:flex-end}}.rpm-backdrop{position:fixed;inset:0;z-index:9999;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.rpm-modal{width:100%;max-width:420px;background:#fff;border-radius:12px;padding:1.5rem 1.75rem;box-shadow:0 10px 25px #00000026;animation:rpmFadeIn .18s ease-out}.rpm-modal h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:#111827}.rpm-modal .muted{font-size:.9rem;color:#6b7280;line-height:1.45}.rpm-actions{margin-top:1.25rem;display:flex;justify-content:flex-end}.rpm-actions .btn-primary{padding:.55rem 1.1rem;font-size:.875rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;background-color:#16a34a;color:#fff}.rpm-actions .btn-primary:hover{background-color:#15803d}.project-edit-header{display:flex;justify-content:center;align-items:center;text-align:center;padding:24px 16px 12px;border-bottom:1px solid #eee}.project-title-main{font-size:30px;font-weight:600;letter-spacing:.4px;line-height:1.2;margin:0;color:#111;text-align:center}.ref-badge{display:inline-block;margin-top:6px;padding:4px 10px;font-size:12px;border-radius:999px;background:#f2f2f2;color:#555}.muted{color:#777;font-size:13px;margin:0}.locked-banner{margin:12px auto;max-width:960px;padding:10px 14px;border-radius:8px;background:#fff6e5;color:#8a5a00;font-size:14px}.pcb-title{font-size:18px;font-weight:600;margin-bottom:18px}.pcb-muted{font-size:13px;color:#6b7280}.pcb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.pcb-field{display:flex;flex-direction:column;gap:6px}.pcb-full{grid-column:1 / -1}.pcb-field input,.pcb-field textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:10px;font-size:14px}.pcb-field textarea{min-height:90px;resize:vertical}.pcb-search{position:relative}.pcb-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;z-index:9999;max-height:260px;overflow-y:auto;box-shadow:0 20px 32px #0000001f;padding:6px 0}.pcb-dropdown li{padding:10px 14px;cursor:pointer}.pcb-dropdown li:hover{background:#f0fdf4}.pcb-dd-name{font-size:14px;font-weight:500}.pcb-dd-meta{font-size:12px;color:#6b7280}.pcb-client-box{border:1px dashed #d1d5db;border-radius:14px;background:#f9fafb}.pcb-client-box-head{padding:12px 16px;font-weight:600;border-bottom:1px dashed #d1d5db;background:#fff;border-radius:14px 14px 0 0}.pcb-client-box-body{padding:14px 16px;display:grid;gap:10px;font-size:13px}.pcb-client-box-body div{display:flex;justify-content:space-between}.pcb-client-box-body span{color:#6b7280}.project-step-form{padding:0;margin:0;background:transparent}.events-project-title{text-align:center;font-size:1.6rem;font-weight:600;margin-bottom:1.75rem;text-decoration:none;border-bottom:none}.events-add{margin-bottom:2rem}.event-row{display:flex;gap:.75rem;align-items:center;margin-bottom:.6rem}.event-row input{flex:1;padding:.5rem .65rem;font-size:.85rem;border-radius:6px;border:1px solid #d1d5db;background:#fff}.event-row input:focus{outline:none;border-color:#16a34a}.event-add-row{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.event-add-btn{width:32px;height:32px;border-radius:50%;background:#16a34a;color:#fff;border:none;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.event-add-btn:hover{background:#15803d}.events-list{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e5e7eb}.event-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.55rem 0}.event-item-info{display:flex;flex-direction:column;gap:.15rem}.event-location{font-size:.75rem;color:#6b7280;padding-left:.1rem}.event-remove-btn{background:transparent;border:none;color:#ef4444;font-size:.8rem;cursor:pointer;text-decoration:none}.event-remove-btn:hover{text-decoration:none;opacity:.75}@media(max-width:640px){.event-row{flex-direction:column;align-items:stretch}.event-add-row{justify-content:flex-start}.event-item{gap:.5rem}}.event-dates-step{padding:0;margin:0}.event-dates-block{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.event-dates-block h4{font-size:1rem;font-weight:600;margin-bottom:.75rem}.event-date-add-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.event-date-add-row input[type=date],.event-date-add-row input[type=text],.event-date-add-row input[type=time]{padding:.45rem .55rem;font-size:.8rem;border-radius:6px;border:1px solid #d1d5db;background:#fff}.event-date-add-row input:focus{outline:none;border-color:#16a34a}.checkbox-inline{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#374151;white-space:nowrap;cursor:pointer}.checkbox-inline input{cursor:pointer}.btn-primary{background:#16a34a;color:#fff;border:none;border-radius:6px;padding:.4rem .75rem;font-size:.75rem;cursor:pointer}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;border:none;cursor:pointer}.btn-xs{font-size:.7rem}.danger{color:#ef4444}.danger:hover{opacity:.75}.event-date-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.6rem 0;border-top:1px dashed #e5e7eb}.event-date-info{display:flex;flex-direction:column;gap:.2rem}.event-date-info strong{font-size:.85rem;font-weight:600;color:#111827}.event-date-info .muted{font-size:.75rem}.row-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.modal-backdrop{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:999}.modal{width:100%;max-width:420px;background:#fff;border-radius:10px;padding:1rem 1.2rem;box-shadow:0 10px 30px #00000026}.modal h3{font-size:1rem;font-weight:600;margin-bottom:.75rem}.modal label{font-size:.75rem;color:#374151;margin-top:.6rem;display:block}.modal input,.modal textarea{width:100%;margin-top:.25rem;padding:.45rem .55rem;font-size:.8rem;border-radius:6px;border:1px solid #d1d5db}.modal textarea{min-height:70px;resize:vertical}.modal input:focus,.modal textarea:focus{outline:none;border-color:#16a34a}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:.4rem .75rem;font-size:.75rem;cursor:pointer}@media(max-width:767px){.event-date-add-row{flex-direction:column;align-items:stretch}.event-date-row{flex-direction:column;align-items:flex-start}.row-actions{align-self:flex-end}}@media(min-width:768px){.event-date-add-row{flex-direction:row;flex-wrap:nowrap;white-space:nowrap}}.modal-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card{background:#fff;border-radius:10px;width:720px;max-width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #00000040}.modal-card.large{width:860px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:18px;font-weight:600}.modal-close{background:transparent;border:none;font-size:22px;cursor:pointer;line-height:1}.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-field.full-width{width:100%}.form-field.grow-1{flex:1}.form-field label{font-size:13px;font-weight:600;color:#374151}.req{color:#dc2626}input,select,textarea{width:100%;padding:8px 10px;font-size:14px;border-radius:6px;border:1px solid #d1d5db;outline:none}input:focus,select:focus,textarea:focus{border-color:#2563eb}textarea{min-height:80px;resize:vertical}.service-inline-row{display:flex;gap:12px;padding:16px 22px}.modal-card .form-field{padding:0 22px}.event-section{margin-bottom:14px}.event-section h5{margin:8px 0;font-size:14px;font-weight:600;color:#1f2937}.date-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.date-card{padding:10px;text-align:center;font-size:13px;border-radius:6px;border:1px solid #d1d5db;cursor:pointer;background:#f9fafb;transition:all .15s ease}.date-card:hover{background:#e5e7eb}.date-card.selected{background:#2563eb;color:#fff;border-color:#2563eb}.checkbox-inline{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:10px;color:#374151}.checkbox-inline input{width:auto}.actions-row{display:flex;justify-content:flex-end;gap:10px;padding:18px 22px;border-top:1px solid #e5e7eb}.btn-primary{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#f3f4f6;color:#111827;border:1px solid #d1d5db;border-radius:6px;padding:8px 16px;font-size:14px;cursor:pointer}.modal-card::-webkit-scrollbar{width:6px}.modal-card::-webkit-scrollbar-thumb{background:#cbd5f5;border-radius:6px}.services-step{display:flex;flex-direction:column;gap:28px}.req{color:#ef4444;font-weight:600}.premium-card{background:#fff;padding:22px;border-radius:14px;box-shadow:0 12px 28px #0000000f}.premium-card h3{font-size:1.15rem;font-weight:600;margin-bottom:18px;color:#14532d}.service-inline-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:12px}.form-field{display:flex;flex-direction:column;gap:4px}.form-field label{font-size:.75rem;font-weight:500;color:#374151}.form-field input,.form-field select{padding:8px 10px;font-size:.8rem;border-radius:8px;border:1px solid #d1d5db;background:#fff}.form-field input:focus,.form-field select:focus{outline:none;border-color:#16a34a}.grow-1{flex:1;min-width:120px}.grow-2{flex:2;min-width:220px}.included-items{margin-top:6px;font-size:.75rem;color:#374151;line-height:1.4}.event-section{margin-top:16px}.event-section h5{font-size:.8rem;font-weight:600;margin-bottom:6px;color:#111827}.date-selection-grid{display:flex;flex-wrap:wrap;gap:8px}.date-card{border:1px solid #d1d5db;background:#fff;padding:6px 10px;border-radius:8px;font-size:.75rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.date-card:hover{border-color:#16a34a}.date-card.selected{background:#dcfce7;border-color:#22c55e;color:#166534;font-weight:600}.check{font-size:.7rem}.actions-row{margin-top:18px;display:flex;justify-content:flex-end}.btn-add-service{background:#16a34a;color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .05s ease}.btn-add-service:hover{background:#15803d}.btn-add-service:active{transform:translateY(1px)}.services-list-container{background:#fff;padding:22px;border-radius:14px;box-shadow:0 12px 28px #0000000d}.services-list-container h4{font-size:1rem;font-weight:600;margin-bottom:14px;color:#14532d}.service-row{display:grid;grid-template-columns:2.2fr 1fr .8fr 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px dashed #e5e7eb}.service-row:last-child{border-bottom:none}.service-row strong{font-size:.85rem;color:#111827}.mode-tag{display:inline-block;margin-top:4px;font-size:.7rem;padding:2px 6px;border-radius:6px;background:#ecfdf5;color:#047857}.date-badges{margin-top:6px}.badge-date{display:inline-block;background:#ecfdf5;color:#065f46;padding:3px 6px;border-radius:6px;font-size:.7rem;margin-right:4px;margin-top:4px}.text-danger{background:transparent;border:none;color:#ef4444;font-size:1.2rem;cursor:pointer}.text-danger:hover{opacity:.75}@media(max-width:768px){.service-inline-row{flex-direction:column;align-items:stretch}.service-row{grid-template-columns:1fr;gap:6px}.actions-row{justify-content:stretch}.btn-add-service{width:100%}}.finance-step{max-width:1000px;margin:0 auto;padding:1rem 0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Ubuntu,Helvetica Neue,Arial,sans-serif}.muted{font-size:.8rem;color:#6b7280}.finance-header{margin-bottom:1.5rem}.finance-header h2{margin:0;font-size:1.5rem;font-weight:600}.finance-lock-banner{margin:.75rem 0 1.25rem;padding:.75rem 1rem;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:.85rem}.finance-lock-banner strong{font-weight:600}.finance-lock-banner .admin-note{margin-top:.25rem;font-size:.75rem;color:#7f1d1d}.finance-mode-toggle{display:flex;gap:.5rem;margin-bottom:1.25rem}.toggle{border:1px solid #d1d5db;background:#fff;padding:.4rem .75rem;font-size:.8rem;border-radius:999px;cursor:pointer;color:#374151}.toggle.active{background:#22c55e;border-color:#22c55e;color:#fff;font-weight:600}.finance-total-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:2rem}.finance-total-amount{font-size:1.8rem;font-weight:700}.finance-service-row{border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem;display:grid;grid-template-columns:2fr 1.5fr 1fr;gap:.75rem}.mode-tag{font-size:.7rem;padding:.15rem .45rem;background:#ecfdf5;color:#047857;border-radius:4px}.finance-grand-total{margin-top:2rem;padding-top:1rem;border-top:2px solid #e5e7eb;max-width:420px;margin-left:auto}.finance-grand-total .line{display:flex;justify-content:space-between;font-size:.9rem}.finance-grand-total .final{margin-top:.6rem;padding-top:.6rem;border-top:1px solid #e5e7eb;font-weight:600}.finance-note{margin-top:2rem;font-size:.8rem;color:#6b7280}.project-header-unique{padding:20px 48px 20px 20px;background-color:#4caf50;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin-bottom:20px;text-align:center;position:relative;overflow:hidden}.edit-project-btn{position:absolute;top:14px;right:14px;background:#ffffff26;border:none;border-radius:6px;padding:8px;cursor:pointer;color:#fff;font-size:14px;transition:background .2s ease,transform .2s ease}.edit-project-btn:hover{background:#ffffff4d;transform:scale(1.05)}.project-title{font-size:32px;font-weight:700;color:#fff;margin:0;display:inline-flex;align-items:center;gap:12px}.title-text{white-space:nowrap}.heart-wrapper{display:inline-flex;align-items:center}.heart-icon{color:#fff;font-size:26px;animation:heartbeat 1.4s ease-in-out infinite}@keyframes heartbeat{0%{transform:scale(1)}25%{transform:scale(1.15)}50%{transform:scale(1.3)}75%{transform:scale(1.15)}to{transform:scale(1)}}.loading{text-align:center;font-size:18px;color:#777;padding:20px}.error{text-align:center;font-size:18px;color:#f44336;padding:20px}.project-meta-bar{display:flex;justify-content:space-between;align-items:center;background-color:#f4f4f4;padding:15px 30px;margin-bottom:20px;border-radius:8px;box-shadow:0 4px 8px #0000001a}.meta-item{display:flex;align-items:center;gap:10px;font-size:16px;color:#333}.meta-item .icon{font-size:20px;color:#28a745}.project-meta-bar strong{font-weight:700;color:#555}.meta-item p{margin:0;color:#777}.meta-item:hover{background-color:#e8f4e1;cursor:pointer;padding:8px;border-radius:4px}.overview-tab{display:flex;flex-direction:column;gap:20px}.overview-empty{padding:24px;text-align:center;color:#6b7280;font-size:14px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.overview-grid.small{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.overview-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;transition:all .2s ease}.overview-item span{font-size:12px;font-weight:500;color:#6b7280}.overview-item strong{font-size:18px;font-weight:700;color:#111827}.overview-item:hover{transform:translateY(-2px);box-shadow:0 6px 14px #0000000f}.overview-item.highlight{background:#f0fdf4;border-color:#86efac}.overview-item.danger{background:#fef2f2;border-color:#fecaca}.overview-item.danger strong{color:#dc2626}.overview-health{display:flex;gap:10px;flex-wrap:wrap}.health{font-size:12px;padding:6px 12px;border-radius:999px;font-weight:600;line-height:1}.health.danger{background:#fee2e2;color:#b91c1c}.health.success{background:#dcfce7;color:#166534}.health.info{background:#e0f2fe;color:#075985}.overview-section{margin-top:12px}.overview-section h3{font-size:14px;font-weight:700;color:#111827;margin-bottom:8px}.overview-description{font-size:14px;color:#374151;line-height:1.6}.overview-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.overview-timeline div{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.overview-timeline span{font-size:12px;color:#6b7280}.overview-timeline strong{font-size:14px;font-weight:600;color:#111827}@media(max-width:768px){.overview-item strong{font-size:16px}.overview-grid{gap:12px}}.activity-tab{padding-left:8px}.activity-list{list-style:none;margin:0;padding:0}.activity-item{display:flex;gap:14px;position:relative;padding-bottom:22px}.activity-item:before{content:"";position:absolute;left:5px;top:10px;bottom:-12px;width:1px;background:#e5e7eb}.activity-dot{width:10px;height:10px;background:#16a34a;border-radius:50%;margin-top:6px;flex-shrink:0}.activity-content{display:flex;flex-direction:column;gap:4px}.activity-title{font-size:14px;font-weight:500;color:#111827}.activity-meta{font-size:12px;color:#6b7280}.activity-empty{padding:40px;text-align:center;color:#9ca3af;font-size:14px}.events-tab{display:flex;flex-direction:column;gap:20px}.events-empty{padding:40px;text-align:center;color:#9ca3af}.event-card{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fff}.event-header{display:flex;justify-content:space-between;align-items:center}.event-header h3{font-size:16px;font-weight:600;margin:0}.event-location{font-size:13px;color:#6b7280;margin-top:4px}.event-sequence{font-size:12px;background:#f3f4f6;padding:4px 8px;border-radius:6px;color:#374151}.event-dates{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.event-date{background:#f9fafb;border:1px solid #e5e7eb;padding:8px 12px;border-radius:6px;font-size:13px;display:flex;gap:8px;align-items:center}.event-date.key-date{background:#ecfdf5;border-color:#16a34a;color:#166534}.key-badge{font-size:11px;font-weight:500;background:#16a34a;color:#fff;padding:2px 6px;border-radius:4px}.event-no-dates{font-size:13px;color:#9ca3af}.dates-tab{display:flex;flex-direction:column;gap:20px}.dates-empty{padding:40px;text-align:center;color:#9ca3af}.dates-event-card{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fff}.dates-event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.dates-event-header h3{font-size:15px;font-weight:600;margin:0}.dates-location{font-size:12px;color:#6b7280}.dates-list{display:flex;flex-direction:column;gap:10px}.date-item{background:#f9fafb;border:1px solid #e5e7eb;padding:12px;border-radius:8px;font-size:13px}.date-item.key-date{background:#ecfdf5;border-color:#16a34a}.date-main{display:flex;align-items:center;gap:8px}.date-main strong{font-size:14px;color:#111827}.key-badge{font-size:11px;background:#16a34a;color:#fff;padding:2px 6px;border-radius:4px}.date-time{font-size:12px;color:#374151;margin-top:4px}.date-location{font-size:12px;color:#6b7280;margin-top:2px}.services-tab{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0;font-size:14px;color:#1f2937}.services-header-actions{display:flex;justify-content:flex-end}.services-edit-btn{background:#16a34a;color:#fff;padding:.45rem .85rem;border-radius:6px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s ease,transform .1s ease}.services-edit-btn:hover{background:#15803d;transform:translateY(-1px)}.services-empty{padding:2rem;text-align:center;color:#6b7280;background:#f9fafb;border-radius:8px;border:1px dashed #d1d5db}.services-list{display:flex;flex-direction:column;gap:1.25rem}.service-card{background:#fff;border-radius:10px;padding:1.1rem 1.25rem;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000a}.service-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.service-header h3{margin:0;font-size:15px;font-weight:600;color:#065f46}.pricing-mode{background:#dcfce7;color:#166534;font-size:12px;padding:.2rem .5rem;border-radius:999px;text-transform:capitalize;white-space:nowrap}.service-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem}.service-meta-item{background:#f9fafb;padding:.5rem .65rem;border-radius:6px;border:1px solid #e5e7eb}.service-meta-item span{display:block;font-size:11px;color:#6b7280;margin-bottom:.15rem}.service-meta-item strong{font-size:13px;font-weight:600;color:#111827}.service-meta-item.highlight{background:#ecfdf5;border-color:#86efac}.service-meta-item.highlight strong{color:#065f46}.service-dates{margin-top:.6rem;padding-top:.6rem;border-top:1px dashed #e5e7eb}.service-dates-title{font-size:12px;font-weight:600;color:#374151;margin-bottom:.35rem}.service-dates-list{list-style:none;padding-left:0;margin:0}.service-dates-list li{font-size:13px;color:#374151;padding:.15rem 0}.key-badge{margin-left:.4rem;background:#16a34a;color:#fff;font-size:10px;padding:.1rem .35rem;border-radius:4px}.service-included{margin-top:.75rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.6rem .75rem}.service-included-title{font-size:12px;font-weight:600;color:#166534;margin-bottom:.25rem}.service-included-content{font-size:13px;color:#14532d;line-height:1.4}.service-notes{margin-top:.6rem;padding:.5rem .65rem;background:#f9fafb;border-left:3px solid #16a34a;font-size:13px;color:#374151;border-radius:4px}.services-summary{margin-top:1rem;padding:.75rem 1rem;background:#065f46;color:#fff;border-radius:10px;display:flex;justify-content:space-between;align-items:center}.services-summary span{font-size:13px;opacity:.9}.services-summary strong{font-size:16px;font-weight:700}.finance-tab{display:flex;flex-direction:column;gap:1.5rem}.finance-empty{padding:2rem;text-align:center;color:#6b7280;font-size:.95rem}.finance-header{display:flex;justify-content:space-between;align-items:center}.finance-header h3{font-size:1.1rem;font-weight:600;color:#111827}.finance-tab .finance-add-payment-btn{background-color:#059669!important;color:#fff!important;border:none!important;border-radius:6px!important;padding:.55rem .9rem!important;font-size:.85rem!important;font-weight:600!important;cursor:pointer;transition:background-color .15s ease}.finance-tab .finance-add-payment-btn:hover{background-color:#047857!important}.finance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.finance-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.35rem}.finance-card span{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.finance-card strong{font-size:1.1rem;font-weight:600;color:#111827}.finance-card.highlight{border-color:#059669;background:#ecfdf5}.finance-card strong.positive{color:#047857}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:720px}.finance-tab table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.finance-tab thead{background:#f9fafb}.finance-tab th,.finance-tab td{padding:.65rem .75rem;font-size:.85rem;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top;line-height:1.2}.finance-tab th{font-weight:500;color:#374151;white-space:nowrap}.finance-tab tr{height:56px}.finance-tab tr:last-child td{border-bottom:none}.finance-services h4,.finance-ledger h4{margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:#111827}.created-cell{display:flex;flex-direction:column;justify-content:center;gap:2px}.created-by{font-weight:600;font-size:13px;line-height:1}.created-at{font-size:11px;color:#888;line-height:1}.direction{display:inline-block;padding:.15rem .45rem;border-radius:999px;font-size:.7rem;font-weight:500;white-space:nowrap}.direction.in{background:#dcfce7;color:#166534}.direction.out{background:#fee2e2;color:#991b1b}.finance-tab .finance-link-btn{background:none;border:none;color:#059669;cursor:pointer;padding:0;font-size:13px;white-space:nowrap}.finance-tab .finance-link-btn:hover{color:#047857;text-decoration:underline}@media(max-width:768px){.finance-header{flex-direction:column;align-items:flex-start;gap:.75rem}.finance-summary{grid-template-columns:1fr}}.invoice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;flex-wrap:wrap}.invoice-header h3{font-size:24px;font-weight:600;color:#333;margin:0}.invoice-list{display:flex;flex-direction:column;gap:12px}.invoice-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;box-shadow:0 2px 8px #0000000f}.invoice-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.invoice-card h4{font-size:18px;font-weight:700;color:#111827}.invoice-status{padding:6px 10px;font-size:12px;border-radius:999px;text-transform:uppercase;font-weight:700;letter-spacing:.5px;border:1px solid transparent;white-space:nowrap}.invoice-status.draft{background-color:#f3f4f6;color:#374151;border-color:#e5e7eb}.invoice-status.issued{background-color:#dbeafe;color:#1e40af;border-color:#bfdbfe}.invoice-status.partially_paid{background-color:#ffedd5;color:#9a3412;border-color:#fed7aa}.invoice-status.paid{background-color:#dcfce7;color:#166534;border-color:#bbf7d0}.invoice-status.cancelled,.invoice-status.void{background-color:#fee2e2;color:#991b1b;border-color:#fecaca}.invoice-status.pending{background-color:#ffedd5;color:#9a3412;border-color:#fed7aa}.invoice-status.unpaid{background-color:#fee2e2;color:#991b1b;border-color:#fecaca}.invoice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:14px}.invoice-meta{display:flex;justify-content:space-between;font-size:14px;padding:10px 12px;background:#fafafa;border:1px solid #f0f0f0;border-radius:8px}.invoice-meta span{font-weight:600;color:#6b7280}.invoice-meta strong{font-weight:800;color:#111827}.invoice-actions{display:flex;gap:12px;margin-top:10px;flex-wrap:wrap}.invoice-actions button{padding:10px 16px;border-radius:8px;border:none;font-size:14px;cursor:pointer;font-weight:700}.invoice-actions .btn-secondary{background-color:#f3f4f6;color:#111827}.invoice-actions .btn-primary{background-color:#16a34a;color:#fff}.invoice-actions .btn-secondary:hover{background-color:#e5e7eb}.invoice-actions .btn-primary:hover{background-color:#15803d}.payment-allocations{margin-top:16px}.payment-allocations h4{font-size:16px;font-weight:800;color:#111827;margin:0 0 10px}.allocations-list{padding:10px;background-color:#f9fafb;border-radius:10px;border:1px solid #eef2f7}.allocation-item{padding:10px;border-bottom:1px solid #e5e7eb}.allocation-item:last-child{border-bottom:none}.allocation-item p{font-size:13px;margin:6px 0;color:#374151}.allocation-item strong{font-weight:800;color:#111827}.invoice-empty{text-align:center;padding:20px}.invoice-empty h3{font-size:24px;color:#333;margin-bottom:10px}.invoice-empty p{font-size:16px;color:#777;margin-bottom:20px}.invoice-empty button{padding:10px 20px;font-size:16px;background-color:#ccc;border-radius:8px;cursor:not-allowed;border:none}@media screen and (max-width:768px){.invoice-grid{grid-template-columns:1fr}.invoice-actions{flex-direction:column;gap:10px}.invoice-actions button{width:100%}}.project-tabs-wrapper{margin-top:24px;width:100%}.project-tabs-bar{display:flex;gap:12px;border-bottom:1px solid #e5e7eb;padding-bottom:8px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.project-tab{background:transparent;border:none;padding:10px 14px;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;border-radius:6px 6px 0 0;transition:all .2s ease;flex-shrink:0}.project-tab:hover{color:#111827;background:#f3f4f6}.project-tab.active{color:#16a34a;background:#ecfdf5;border-bottom:2px solid #16a34a}.project-tab-content{margin-top:20px}.project-detail{padding:24px;font-family:Arial,sans-serif;background-color:#fff;min-height:100vh}.project-header{text-align:center;margin-bottom:24px}.project-header h1{font-size:28px;font-weight:700;color:#111827;margin-bottom:8px}.project-meta-bar{display:flex;justify-content:space-between;background-color:#f3f4f6;padding:16px;border-radius:8px;margin-bottom:24px;border:1px solid #e5e7eb}.project-meta-bar div{font-size:14px;font-weight:500;color:#374151}.project-tabs-wrapper{margin-top:10px;width:100%}.project-tabs-bar{display:flex;gap:8px;border-bottom:1px solid #e5e7eb;padding-bottom:0;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.project-tabs-bar::-webkit-scrollbar{display:none}.project-tab{background:transparent;border:none;padding:12px 16px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease;flex-shrink:0}.project-tab:hover{color:#111827;background-color:#f9fafb}.project-tab.active{color:#16a34a;border-bottom:2px solid #16a34a;background-color:#f0fdf4}.project-tab-content{padding-top:24px;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.activity-tab,.events-tab,.dates-tab,.finance-tab,.invoice-tab,.services-tab{background-color:#fff;border-radius:8px}.project-tab-content ul{list-style-type:none;padding:0}.project-tab-content li{margin-bottom:12px;font-size:15px;color:#4b5563;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.project-tab-content h3{font-size:18px;color:#111827;margin-bottom:16px;font-weight:600}.btn-green{background-color:#16a34a;color:#fff;padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:background .2s}.btn-green:hover{background-color:#15803d}.no-data{font-style:italic;color:#9ca3af;margin-top:10px}@media(max-width:768px){.project-detail{padding:16px 12px 120px}.project-header{margin-bottom:16px;text-align:left}.project-header h1{font-size:22px}.project-meta-bar{flex-direction:column;gap:12px;padding:14px}.project-meta-bar div{border-bottom:1px solid #e5e7eb;padding-bottom:8px}.project-meta-bar div:last-child{border-bottom:none;padding-bottom:0}.project-tabs-bar{gap:4px}.project-tab{padding:10px 14px;font-size:13px}}.fc-daygrid-event{display:none!important}.fc a{color:inherit;text-decoration:none}.psc-container{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;padding:20px;height:calc(100vh - 120px);font-family:Inter,system-ui,sans-serif}.psc-filters{display:flex;gap:12px;padding:14px 16px;border-bottom:1px solid #e5e7eb}.psc-filters select{padding:8px 10px;font-size:13px;border-radius:8px;border:1px solid #d1d5db}.fc-toolbar{display:flex!important;align-items:center;justify-content:space-between;padding:12px 16px}.fc-toolbar-chunk{display:flex!important;align-items:center;gap:10px}.fc-toolbar-title{font-size:20px;font-weight:700;color:#111827}.fc-button-group{display:flex!important;gap:8px;background:transparent!important;padding:0!important;border:0!important;box-shadow:none!important}.fc-button{background:none!important;border:none!important;box-shadow:none!important;outline:none!important}.fc-prev-button,.fc-next-button{background:#166534!important;color:#fff!important;padding:6px 14px!important;border-radius:12px!important;height:34px!important;min-width:34px;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer}.fc-prev-button:hover,.fc-next-button:hover{background:#15803d!important}.fc-button .fc-icon{background:none!important;box-shadow:none!important;border-radius:0!important}.fc-today-button{background:#166534!important;color:#fff!important;padding:6px 16px!important;border-radius:999px!important;height:34px!important;font-size:12px;font-weight:600}.fc-today-button:disabled{opacity:.4;cursor:not-allowed}.psc-day-cell{height:100%;padding:6px;box-sizing:border-box}.psc-day-content{display:flex;flex-direction:column;gap:4px}.psc-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.psc-day-count-strip{width:22px;height:22px;background:#166534;color:#fff;font-size:11px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center}.psc-day-number{font-size:12px;font-weight:700;color:#374151}.psc-day-service{background:#ecfdf5;border-left:3px solid #16a34a;padding:4px 6px;border-radius:4px;cursor:pointer}.psc-day-service:hover{background:#d1fae5}.psc-day-service-name{font-size:11px;font-weight:600;color:#065f46;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.psc-day-service-meta{font-size:10px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.psc-day-more{font-size:10px;color:#6b7280;padding-left:4px}.psc-side{background:#fff;border-radius:14px;box-shadow:0 6px 18px #0000000f;padding:16px}.psc-empty{text-align:center;margin-top:40%;color:#6b7280}.psc-date-header{font-size:18px;font-weight:700;margin-bottom:14px}.psc-list{display:flex;flex-direction:column;gap:10px}.psc-item{border:1px solid #e5e7eb;padding:12px;border-radius:10px}.psc-item-title{font-weight:600}.psc-item-sub{font-size:12px;color:#6b7280}.psc-item-price{font-size:13px;font-weight:600;color:#166534}.psc-modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:999}.psc-modal{width:420px;background:#fff;border-radius:16px;padding:20px}.psc-modal-header{font-size:18px;font-weight:700;margin-bottom:12px}.psc-modal-row{font-size:13px;margin-bottom:8px}.psc-modal-actions{display:flex;justify-content:flex-end;margin-top:16px}.psc-modal-actions button{background:#166534;color:#fff;border:none;padding:8px 14px;border-radius:8px}.branch-list-page{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.25rem}.branch-list-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;border-bottom:1px solid #e5e7eb;padding-bottom:1rem}.branch-list-header h1{margin:0;font-size:1.4rem;font-weight:600;color:#111827}.branch-search{max-width:380px;justify-self:center}.branch-search input{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid #e5e7eb;font-size:.9rem}.branch-search input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 2px #10b98126}.branch-list-table{display:flex;flex-direction:column;gap:.4rem}.branch-list-header-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr .7fr auto;gap:1rem;padding:.4rem 1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#6b7280}.branch-list-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr .7fr auto;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:10px;border:1px solid #e5e7eb;background:#fff}.branch-name{font-weight:500;color:#111827;display:flex;align-items:center;gap:.35rem}.branch-code,.branch-status,.branch-type,.branch-users{font-size:.85rem;color:#374151}.flagship{font-size:.9rem}.branch-actions{display:flex;gap:.75rem}.branch-actions .btn-link{padding:0;background:none;border:none;font-size:.85rem;font-weight:500;color:#16a34a;cursor:pointer}.branch-actions .btn-link:hover{color:#15803d;text-decoration:underline}.branch-list-page .muted{color:#6b7280;font-size:.9rem}.branch-list-page .error{color:#b91c1c;background:#fee2e2;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}@media(max-width:1024px){.branch-list-header-row,.branch-list-row{grid-template-columns:2fr 1fr 1fr auto}.branch-type,.branch-users{display:none}}@media(max-width:640px){.branch-list-page{padding:1rem}.branch-list-header{grid-template-columns:1fr;gap:.75rem}.branch-search{max-width:100%}.branch-list-header-row{display:none}.branch-list-row{grid-template-columns:1fr;gap:.4rem}.branch-actions{justify-content:flex-end}}.branch-stepbar{display:flex;gap:.75rem;padding:1rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem}.bs-step{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;cursor:pointer;white-space:nowrap;transition:all .15s ease}.bs-step:hover{background:#d1fae5}.bs-step.active{background:#16a34a;color:#fff;border-color:#16a34a}.bs-step.active .bs-index{background:#ffffff40;color:#fff}.bs-index{width:1.4rem;height:1.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;background:#a7f3d0;color:#065f46}.bs-label{line-height:1}@media(max-width:640px){.branch-stepbar{overflow-x:auto;padding-bottom:.75rem}.bs-step{flex-shrink:0}}.branch-form-actions{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;margin-top:2rem;border-top:1px solid #e5e7eb}.bfa-right{display:flex;gap:.75rem}.branch-form-actions .btn{padding:.55rem 1.1rem;font-size:.875rem;border-radius:6px;cursor:pointer;line-height:1.2;white-space:nowrap}.branch-form-actions .btn-primary{background-color:#16a34a;color:#fff;border:none}.branch-form-actions .btn-primary:hover{background-color:#15803d}.branch-form-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.branch-form-actions .btn-outline{background:#fff;border:1px solid #d1d5db;color:#111827}.branch-form-actions .btn-outline:hover{background:#f9fafb}.branch-form-actions .btn-ghost{background:transparent;border:none;color:#374151}.branch-form-actions .btn-ghost:hover{text-decoration:underline}.branch-form-actions .error{margin-top:.75rem;color:#b91c1c;font-size:.85rem}@media(max-width:640px){.branch-form-actions{flex-direction:column;align-items:stretch;gap:.75rem}.bfa-right{justify-content:flex-end}}.branch-edit-page{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem}.branch-edit-header{border-bottom:1px solid #e5e7eb;padding-bottom:1rem}.branch-edit-header h1{margin:0;font-size:1.4rem;font-weight:600;color:#111827}.branch-edit-header .muted{margin-top:.25rem;font-size:.85rem;color:#6b7280}.warning-text{margin-top:8px;color:#d32f2f;font-size:13px}.branch-edit-content{padding-top:.5rem}.branch-edit-page .error{color:#b91c1c;background:#fee2e2;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.branch-edit-page .muted{color:#6b7280;font-size:.9rem}@media(max-width:768px){.branch-edit-page{padding:1rem}}.branch-detail-page{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem;background:#f9fafb}.branch-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;border-bottom:1px solid #e5e7eb;padding-bottom:1rem}.branch-detail-header h1{margin:0;font-size:1.4rem;font-weight:600;color:#111827}.branch-detail-header .muted{margin-top:.25rem;font-size:.85rem;color:#6b7280}.branch-detail-header .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem}.branch-detail-actions{display:flex;gap:.75rem}.branch-detail-page .branch-stepbar{margin-top:.5rem}.branch-detail-page .branch-stepbar .bs-step:last-child{display:none!important;visibility:hidden!important;pointer-events:none!important}.branch-detail-content{padding-top:.5rem}.branch-detail-page .branch-review{display:none!important;visibility:hidden!important}.branch-detail-page .review-section{display:none!important}.branch-detail-page .branch-detail-content *:has(.branch-review){display:none!important}.branch-detail-page .branch-detail-content{min-height:0}.branch-detail-page .error{color:#b91c1c;background:#fee2e2;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.branch-detail-page .muted{color:#6b7280;font-size:.9rem}@media(max-width:768px){.branch-detail-page{padding:1rem}.branch-detail-header{flex-direction:column;align-items:stretch}.branch-detail-actions{justify-content:flex-start}}.branch-step-form .req{color:#dc2626;margin-left:2px}.branch-step-form input,.branch-step-form select{padding:.55rem .65rem;font-size:.875rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#111827;transition:border-color .15s ease,box-shadow .15s ease}.branch-step-form input:focus,.branch-step-form select:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.branch-step-form .muted{font-size:.75rem;color:#6b7280;margin-top:.15rem}.branch-step-form .form-group.checkbox{margin-top:.5rem}.branch-step-form .checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#111827;cursor:pointer}.branch-step-form .checkbox-label input[type=checkbox]{width:15px;height:15px;accent-color:#16a34a;cursor:pointer}.branch-detail-page .branch-step-form input,.branch-detail-page .branch-step-form select{background:#f9fafb;border-color:#e5e7eb;color:#374151;pointer-events:none}.branch-detail-page .branch-step-form input:focus,.branch-detail-page .branch-step-form select:focus{box-shadow:none}.branch-detail-page .branch-step-form .req{display:none}@media(max-width:640px){.branch-step-form{max-width:100%}}.branch-step-form{max-width:720px;display:flex;flex-direction:column;gap:1.25rem}.branch-step-form input{padding:.55rem .7rem;font-size:.9rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#111827;transition:border-color .15s ease,box-shadow .15s ease}.branch-step-form input::placeholder{color:#9ca3af}.branch-step-form input:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 1px #16a34a}.branch-detail-page .branch-step-form input{pointer-events:none;background:#f9fafb;color:#374151;border-color:#e5e7eb}.branch-step-form{max-width:760px;display:flex;flex-direction:column;gap:1.25rem}.branch-step-form .form-group{display:flex;flex-direction:column;gap:.35rem}.branch-step-form label{font-size:.85rem;font-weight:500;color:#111827}.branch-step-form input,.branch-step-form textarea{padding:.55rem .7rem;font-size:.9rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#111827;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.branch-step-form textarea{line-height:1.4}.branch-step-form input::placeholder,.branch-step-form textarea::placeholder{color:#9ca3af}.branch-step-form input:focus,.branch-step-form textarea:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 1px #16a34a}.branch-step-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.branch-detail-page .branch-step-form input,.branch-detail-page .branch-step-form textarea{pointer-events:none;background:#f9fafb;color:#374151;border-color:#e5e7eb}.branch-step-form .muted{font-size:.8rem;color:#6b7280}@media(max-width:640px){.branch-step-form{max-width:100%}.branch-step-form .form-row{grid-template-columns:1fr}}.branch-step-form{display:flex;flex-direction:column;gap:1.5rem}.flagship-toggle{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-radius:10px;border:1px solid #d1fae5;background:#ecfdf5}.flagship-info{display:flex;flex-direction:column;gap:.25rem}.flagship-info strong{font-size:.9rem;font-weight:600;color:#065f46}.flagship-info .muted{font-size:.8rem;color:#6b7280}.switch{position:relative;width:46px;height:24px}.switch input{display:none}.slider{position:absolute;inset:0;background:#d1d5db;border-radius:999px;cursor:pointer;transition:background .2s ease}.slider:before{content:"";position:absolute;width:18px;height:18px;top:3px;left:3px;background:#fff;border-radius:50%;transition:transform .2s ease}.switch input:checked+.slider{background:#16a34a}.switch input:checked+.slider:before{transform:translate(22px)}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.85rem;font-weight:500;color:#111827}.form-group input,.form-group select{padding:.55rem .65rem;font-size:.9rem;border-radius:6px;border:1px solid #d1d5db}.form-group input:focus,.form-group select:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 1px #16a34a}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.weekday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:.5rem;margin-top:.25rem}.weekday-checkbox{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.8rem;padding:.4rem .6rem;border-radius:999px;border:1px solid #e5e7eb;background:#fff;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease}.weekday-checkbox:hover{background:#ecfdf5;border-color:#a7f3d0}.weekday-checkbox input[type=checkbox]{accent-color:#16a34a;outline:none!important;box-shadow:none!important}.weekday-checkbox input[type=checkbox]:focus,.weekday-checkbox input[type=checkbox]:active,.weekday-checkbox input[type=checkbox]:focus-visible{outline:none!important;box-shadow:none!important}.weekday-checkbox:focus,.weekday-checkbox:focus-within{outline:none!important;box-shadow:none!important}.weekday-checkbox input[type=checkbox]:checked{accent-color:#16a34a}.branding-section{padding-top:1rem;border-top:1px dashed #e5e7eb}.section-title{font-size:.9rem;font-weight:600;color:#065f46;margin-bottom:.75rem}.form-group.checkbox{margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#111827}.checkbox-label input{accent-color:#16a34a}@media(max-width:640px){.form-row{grid-template-columns:1fr}.flagship-toggle{flex-direction:column;align-items:flex-start;gap:.75rem}}.branch-step-form{display:flex;flex-direction:column;gap:2rem}.branding-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem 1.5rem}.section-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#065f46;border-bottom:1px solid #d1fae5;padding-bottom:.4rem}.form-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{font-size:.8rem;font-weight:500;color:#374151}.form-group input{height:38px;padding:0 .65rem;border-radius:8px;border:1px solid #d1d5db;font-size:.85rem;outline:none;transition:all .2s ease}.form-group input:focus{border-color:#10b981;box-shadow:0 0 0 2px #10b98126}.confirm-finance{background:#f0fdf4;border:1px dashed #6ee7b7}.checkbox-row{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer}.checkbox-row input{margin-top:.2rem;accent-color:#10b981}.checkbox-row span{font-size:.85rem;color:#065f46;line-height:1.3}.muted{font-size:.75rem;color:#6b7280}.warning{margin-top:.5rem;color:#b45309;font-weight:500}@media(max-width:768px){.branding-section{padding:1rem}.section-title{font-size:.95rem}}.branch-review{display:flex;flex-direction:column;gap:1.75rem}.review-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem 1.5rem}.review-section h3{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:#065f46;border-bottom:1px solid #ecfdf5;padding-bottom:.4rem}.review-row{display:grid;grid-template-columns:220px 1fr;gap:1rem;padding:.45rem 0}.review-row:not(:last-child){border-bottom:1px dashed #f0fdf4}.review-label{font-size:.8rem;font-weight:500;color:#6b7280}.review-value{font-size:.85rem;font-weight:500;color:#111827;word-break:break-word}.review-value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.8rem}.review-value:has(:contains("⭐")),.review-value.flagship{color:#166534;font-weight:600}.review-value:empty:after{content:"—";color:#9ca3af}.review-section:nth-child(odd){background:#fff}.review-section:nth-child(2n){background:#f9fafb}@media(max-width:768px){.review-row{grid-template-columns:1fr;gap:.25rem}.review-label{font-size:.75rem}.review-value{font-size:.85rem}.review-section{padding:1rem}}.member-search{display:flex;align-items:center}.ms-input-wrap{position:relative}.member-search input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;outline:none}.member-search input::placeholder{color:#9ca3af}.member-search input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.ms-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;cursor:pointer}.ms-clear:hover{background:#16a34a1f;color:#16a34a}.member-filters{width:100%}.mf-row{display:flex;align-items:center;gap:1.5rem}.mf-inline{display:flex;align-items:center;gap:.6rem}.mf-inline span{font-size:14px;font-weight:500;color:#111827}.mf-inline select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.mf-inline select:focus{border-color:#22c55e}.mf-meta{margin-left:auto;font-size:13px;color:#6b7280}@media(max-width:900px){.mf-row{flex-wrap:wrap}.mf-meta{margin-left:0}}.member-table-wrapper{width:100%;overflow-x:auto}.member-table{width:100%;border-collapse:collapse;background:#fff}.member-table th,.member-table td{padding:12px 14px;border-bottom:1px solid #e5e7eb;text-align:left}.member-table th{font-size:12px;text-transform:uppercase;color:#6b7280;background:#f9fafb}.member-page{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;min-height:100%}.member-header{display:flex;align-items:center;justify-content:space-between}.member-header h1{font-size:22px;font-weight:600;color:#111827}.btn-green{height:38px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:none;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.btn-green:hover{background:#15803d;box-shadow:0 4px 10px #16a34a40}.member-toolbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:10px}.member-content{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000a}.member-table{width:100%;border-collapse:collapse}.member-table th,.member-table td{padding:12px 14px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}.member-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb}.member-table tr:hover{background:#f9fafb}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.strong{font-weight:600}.muted{color:#6b7280;font-size:12px}.status-pill{display:inline-block;padding:4px 10px;font-size:11px;font-weight:600;border-radius:999px;background:#ecfdf5;color:#15803d}.member-actions{display:flex;gap:6px}.member-actions button{padding:4px 10px;font-size:12px;font-weight:600;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.member-actions button:hover{background:#f3f4f6}.member-empty{padding:40px;text-align:center;color:#6b7280;font-size:14px}@media(max-width:1024px){.member-toolbar{flex-direction:column;align-items:stretch}}@media(max-width:768px){.member-header{flex-direction:column;align-items:flex-start;gap:10px}}.member-stepper{display:flex;gap:.75rem;padding:1rem 0;margin-bottom:1.5rem;border-bottom:1px solid #e5e7eb;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.member-stepper::-webkit-scrollbar{display:none}.member-stepper{scrollbar-width:none}.ms-step{flex-shrink:0;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .95rem;border-radius:999px;font-size:.85rem;font-weight:500;line-height:1;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease}.ms-step:hover{background:#d1fae5}.ms-index{width:1.4rem;height:1.4rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.7rem;font-weight:600;background:#a7f3d0;color:#065f46}.ms-label{line-height:1}.ms-step.active{background:#16a34a;color:#fff;border-color:#16a34a}.ms-step.active .ms-index{background:#ffffff40;color:#fff}.ms-step.disabled{opacity:.45;cursor:not-allowed}.ms-step.disabled:hover{background:#ecfdf5}@media(max-width:640px){.member-stepper{padding-bottom:.75rem}.ms-step{font-size:.8rem}}.step-actions{display:flex;justify-content:space-between;padding:1rem 0;margin-top:2rem;border-top:1px solid #e5e7eb}.step-actions-right{display:flex;gap:.75rem}.step-actions button{padding:.55rem 1.1rem;font-size:.875rem;border-radius:6px;cursor:pointer}.btn-primary{background:#16a34a;color:#fff;border:none}.btn-secondary{background:#fff;border:1px solid #d1d5db}.step-error{margin-top:.75rem;color:#b91c1c;font-size:.85rem}@media(max-width:640px){.step-actions{flex-direction:column;gap:.75rem}}.rmm-backdrop{position:fixed;inset:0;z-index:9999;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.rmm-modal{max-width:420px;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 10px 25px #00000026}.rmm-modal h3{margin-bottom:.5rem}.rmm-modal .muted{color:#6b7280;font-size:.9rem}.rmm-actions{margin-top:1.25rem;display:flex;justify-content:flex-end}.btn-primary{background:#16a34a;color:#fff;border:none;padding:.55rem 1.1rem;border-radius:6px}.mb-card{border-radius:16px;padding:24px;max-width:100%}.mb-title{font-size:18px;font-weight:600;margin-bottom:20px;color:#111827}.mb-muted{font-size:13px;color:#6b7280}.mb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.mb-full{grid-column:1 / -1}.mb-field{display:flex;flex-direction:column;gap:6px}.mb-field label{font-size:13px;font-weight:500;color:#374151}.mb-field input,.mb-field select,.mb-field textarea{width:100%;padding:10px 12px;font-size:14px;line-height:1.4;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;transition:border-color .15s ease,box-shadow .15s ease}.mb-field textarea{min-height:96px;resize:vertical}.mb-field input:focus,.mb-field select:focus,.mb-field textarea:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.mb-field input:disabled,.mb-field select:disabled{background:#f9fafb;color:#9ca3af}.mb-search{position:relative}.mb-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;z-index:9999;max-height:260px;overflow-y:auto;box-shadow:0 20px 32px #0000001f}.mb-dropdown li{padding:12px 14px;font-size:14px;cursor:pointer;line-height:1.3}.mb-dropdown li:hover{background:#f0fdf4}.mb-field.required label:after{content:" *";color:#dc2626;font-weight:600}@media(max-width:1024px){.mb-card{padding:20px}.mb-grid{gap:14px 14px}}@media(max-width:768px){.mb-card{padding:16px;border-radius:12px}.mb-title{font-size:17px;margin-bottom:16px}.mb-grid{grid-template-columns:1fr;gap:14px}.mb-field input,.mb-field select,.mb-field textarea{font-size:15px;padding:12px 14px;border-radius:12px}.mb-dropdown li{padding:14px 16px;font-size:15px}}@media(max-width:480px){.mb-card{padding:14px}.mb-title{font-size:16px}.mb-field label{font-size:12px}.mb-field textarea{min-height:110px}}.finance-charge-config-list{display:flex;flex-direction:column;gap:16px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.page-header h2{font-size:20px;font-weight:600;color:#065f46}button{padding:8px 14px;border-radius:6px;font-size:14px;cursor:pointer;border:none;transition:background .15s ease}button.primary{background:#16a34a;color:#fff}button.primary:hover{background:#15803d}button.secondary{background:#dcfce7;color:#166534}button.secondary:hover{background:#bbf7d0}button.danger{background:#dc2626;color:#fff}button.danger:hover{background:#b91c1c}button:disabled{opacity:.6;cursor:not-allowed}.card-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid #d1fae5;border-radius:8px;background:#fff}.card-row+.card-row{margin-top:8px}.card-info{display:flex;flex-direction:column;gap:4px}.title-row{display:flex;align-items:center;gap:8px}.badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px}.badge.green{background:#bbf7d0;color:#166534}.actions{display:flex;gap:8px}.muted{color:#6b7280;font-size:14px}.empty-state{padding:24px;text-align:center;border:1px dashed #86efac;border-radius:8px;background:#f0fdf4}.visitors-page{padding:24px;display:flex;flex-direction:column;gap:24px;background-color:#f9fafb;min-height:100%}.visitors-header h1{margin:0;font-size:24px;font-weight:600;color:#111827}.visitors-header p{margin-top:6px;font-size:14px;color:#6b7280}.visitors-error{background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:8px;font-size:14px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;transition:box-shadow .2s ease,transform .2s ease}.kpi-card:hover{box-shadow:0 6px 16px #0000000f;transform:translateY(-2px)}.kpi-card-header{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#6b7280}.kpi-icon svg{width:20px;height:20px;color:#6b7280}.kpi-value{margin-top:12px;font-size:28px;font-weight:600;color:#111827}.skeleton{width:80px;height:32px;border-radius:6px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.visitors-table{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;overflow-x:auto}.visitors-table p{font-size:14px;color:#6b7280}.visitors-table table{width:100%;border-collapse:collapse;font-size:14px}.visitors-table thead th{text-align:left;padding:12px;background:#f9fafb;color:#374151;font-weight:500;border-bottom:1px solid #e5e7eb}.visitors-table tbody td{padding:12px;border-bottom:1px solid #e5e7eb;color:#111827;vertical-align:middle}.visitors-table tbody tr:hover{background:#f9fafb}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;color:#374151}.finance-page{padding:24px;min-height:100%;background:#f9fafb}.finance-header{margin-bottom:24px}.finance-header h1{font-size:22px;font-weight:700;color:#111827}.finance-header p{font-size:14px;color:#6b7280;margin-top:4px}.finance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.finance-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;cursor:pointer;transition:all .2s ease}.finance-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0000000f}.finance-card.disabled{background:#f3f4f6;border-color:#e5e7eb;cursor:not-allowed;opacity:.7}.finance-card.disabled:hover{transform:none;box-shadow:none}.fc-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ecfdf5;font-size:22px}.fc-body{flex:1}.fc-title{font-size:15px;font-weight:600;color:#111827}.fc-desc{font-size:13px;color:#6b7280;margin-top:2px}.fc-arrow{font-size:20px;font-weight:600;color:#16a34a}@media(max-width:640px){.finance-page{padding:16px}}.inv-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.inv-status.draft{background:#f3f4f6;color:#374151}.inv-status.issued{background:#eff6ff;color:#1d4ed8}.inv-status.partially_paid{background:#fffbeb;color:#92400e}.inv-status.paid{background:#ecfdf5;color:#047857}.inv-status.cancelled{background:#fef2f2;color:#b91c1c}.inv-status.void{background:#f3f4f6;color:#6b7280}.inv-status.muted{background:transparent;color:#9ca3af}.invoice-table{width:100%;border-collapse:collapse;background:#fff}.invoice-table th,.invoice-table td{padding:12px 14px;text-align:left;vertical-align:middle;border:none!important}.invoice-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;background:#f9fafb}.invoice-table tr:hover{background:#f9fafb}.invoice-actions{display:flex;gap:6px;align-items:center;white-space:nowrap}.invoice-actions .btn{padding:4px 10px;font-size:11px;font-weight:600;border-radius:6px;line-height:1.2}.btn-outline{background:transparent;border:1px solid #d1d5db;color:#374151}.btn-outline:hover{background:#f3f4f6}.invoice-table td .inv-status{vertical-align:middle}.if-row{display:flex;align-items:center;gap:28px}.invoice-search .is-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;line-height:1;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease}.invoice-filters{width:100%;background:transparent}.if-row{display:flex;align-items:center;gap:28px;border-radius:10px}.if-inline{display:flex;align-items:center;gap:10px}.if-inline select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none;transition:border-color .15s ease}@media(max-width:900px){.if-row{flex-wrap:wrap}.if-meta{margin-left:0}}.invoice-search{display:flex;align-items:center}.is-form{display:flex;align-items:center;gap:8px}.is-input-wrap{position:relative;display:flex;align-items:center}.is-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;cursor:pointer;transition:background .15s ease,color .15s ease}.is-clear:hover{background:#16a34a1f;color:#16a34a}.is-search-btn{height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:14px;font-weight:500;background:#16a34a;color:#fff;border:1px solid #16a34a;cursor:pointer;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease,transform .05s ease}.is-search-btn:hover{background:#15803d;box-shadow:0 4px 10px #16a34a40}.is-search-btn:active{transform:translateY(1px)}@media(max-width:768px){.invoice-search,.is-form,.invoice-search input{width:100%}}.ism-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.ism-modal{background:#fff;width:420px;max-width:90%;border-radius:12px;padding:20px}.ism-modal h3{margin:0 0 14px}.ism-invoice-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:12px;margin-bottom:16px}.ism-row{display:flex;justify-content:space-between;font-size:14px}.ism-field{display:flex;flex-direction:column;gap:6px}.ism-field select{height:36px;border-radius:8px;border:1px solid #d1d5db;padding:0 10px}.ism-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.invoice-page{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;min-height:100%}.invoice-toolbar{display:flex;align-items:stretch;gap:1rem;border-radius:10px;padding:.75rem 1rem}.invoice-toolbar .invoice-search{flex:2}.invoice-toolbar .invoice-filters{flex:3}.invoice-content{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000a}.ip-empty{padding:2rem;text-align:center;color:#6b7280;font-size:.95rem}.ip-empty.error{color:#b91c1c;background:#fef2f2;border-radius:8px}.invoice-filters{width:100%}.if-row{display:flex;align-items:center;gap:1.75rem;flex-wrap:wrap}.if-inline{display:flex;align-items:center;gap:.6rem}.if-inline span{font-size:14px;font-weight:500;color:#111827}.if-inline select{height:34px;min-width:160px;padding:0 12px;font-size:14px;border-radius:8px;border:1px solid #d1d5db;background:#fff;outline:none}.if-inline select:focus{border-color:#22c55e}.if-meta{margin-left:auto;font-size:13px;color:#6b7280;white-space:nowrap}.invoice-search{position:relative;display:flex;align-items:center}.invoice-search input{width:320px;height:40px;padding:0 16px;font-size:14px;color:#111827;border-radius:999px;border:1px solid #d1d5db;background:#fff;outline:none;transition:all .2s ease}.invoice-search input::placeholder{color:#9ca3af}.invoice-search input:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.invoice-search .is-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:#6b7280;font-size:16px;line-height:1;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease,transform .05s ease}.invoice-search .is-clear:hover{background:#16a34a1f;color:#16a34a}.invoice-search .is-clear:active{transform:translateY(-50%) scale(.95)}.invoice-search .is-clear:focus-visible{outline:none;box-shadow:0 0 0 2px #16a34a59}.service-table{width:100%;border-collapse:collapse!important;margin-top:1rem}.service-table th,.service-table td{padding:.75rem!important;border:none!important;text-align:left;font-size:.85rem}.service-table th{font-weight:600;color:#374151;background-color:#f9fafb}.service-table td{color:#4b5563}.align-right{text-align:right}.actions{white-space:nowrap}@media(max-width:1024px){.invoice-search input{width:260px}}@media(max-width:900px){.invoice-toolbar{flex-direction:column}.if-row{flex-wrap:wrap}.if-meta{margin-left:0}}@media(max-width:768px){.invoice-search input,.invoice-search{width:100%}}.invoice-open{max-width:1000px;margin:24px auto;padding:24px;background:linear-gradient(180deg,#f0fdf4,#fff);font-family:Inter,system-ui,sans-serif}.inv-top{display:flex;justify-content:space-between;border-bottom:3px solid #22c55e;padding-bottom:16px}.inv-brand{font-size:26px;font-weight:800;color:#15803d}.inv-branch{font-size:14px;font-weight:600;color:#065f46;margin-top:2px}.inv-branch-sub{font-size:12px;color:#065f46;margin-top:2px;max-width:520px;line-height:1.4}.inv-gst{font-size:12px;color:#065f46;margin-top:2px}.inv-powered{margin-top:6px;font-size:11px;font-weight:700;color:#16a34a}.inv-meta{text-align:right;font-size:13px}.inv-title{font-size:18px;font-weight:700;color:#16a34a}.inv-status{display:inline-block;margin-top:6px;padding:4px 12px;border-radius:999px;font-size:11px;font-weight:700}.inv-project-title{font-size:18px;font-weight:600;color:#0f5132}.inv-amount-box.hero{padding:18px 22px}.inv-amount.hero{font-size:36px;font-weight:700;color:#0f5132;line-height:1.1}.inv-status.draft{background:#e5e7eb}.inv-status.issued{background:#dbeafe;color:#1d4ed8}.inv-status.partial{background:#fef3c7;color:#92400e}.inv-status.paid{background:#dcfce7;color:#166534}.inv-status.cancelled{background:#fee2e2;color:#991b1b}.inv-status.void{background:#e5e7eb}.inv-row-block{display:flex;justify-content:space-between;margin:24px 0}.inv-label{font-size:12px;color:#6b7280;text-transform:uppercase;margin-bottom:6px}.inv-client{font-size:16px;font-weight:600}.inv-client-sub{font-size:13px;font-weight:400;color:#374151;margin-top:4px;line-height:1.4}.inv-amount-box{border:2px solid #16a34a;background:#fff;color:#166534;padding:16px 22px;border-radius:14px;min-width:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.inv-amount-label{font-size:12px;opacity:.85}.inv-amount{font-size:30px;font-weight:800}.inv-table{width:100%;border-collapse:collapse;margin-top:16px}.inv-table th{background:#16a34a;color:#fff;padding:12px;text-align:left;font-size:13px}.inv-table td{padding:14px 12px;border-bottom:1px solid #e5e7eb;vertical-align:top}.inv-item-title{font-weight:600}.inv-item-meta{font-size:12px;color:#065f46;margin-top:4px;line-height:1.4}.inv-item-meta ul{margin:4px 0 0 18px;padding:0}.inv-item-meta li{margin-bottom:2px}.r{text-align:right}.strong{font-weight:700}.inv-bank{margin-top:8px;padding:16px;border-radius:12px;color:#065f46;font-size:13px}.inv-bank-row div{margin-bottom:4px}.inv-bottom{display:flex;justify-content:space-between;margin-top:24px;gap:20px}.inv-notes{max-width:55%;margin:24px auto 0;text-align:center;font-size:13px;color:#065f46}.inv-totals{min-width:280px;background:#ecfdf5;padding:16px;border-radius:12px}.inv-total-row{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}.inv-total-row .bold{font-weight:800}.inv-total-row .highlight{color:#dc2626;font-weight:800}.inv-empty{padding:40px;text-align:center;color:#6b7280}.inv-empty.error{color:#b91c1c}.receipt-page{width:100%;padding:16px}.receipt-container{width:100%;max-width:100%}.receipt-header{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}.receipt-header h1{font-size:18px;font-weight:600}.table-wrap{width:100%}.receipt-table{width:100%;border-collapse:collapse;font-size:13px}.receipt-table th,.receipt-table td{padding:10px 12px;border:1px solid #e5e7eb;text-align:left;vertical-align:middle}.receipt-table th{font-weight:600;color:#374151}.receipt-table td.right{text-align:right}.receipt-table td.center{text-align:center}.loading,.empty{padding:20px;text-align:center;color:#6b7280}.btn-primary{background:#16a34a;color:#fff;padding:8px 14px;border-radius:6px;font-size:13px}.btn-outline{background:#fff;border:1px solid #d1d5db;border-radius:5px;font-size:12px}.btn-secondary{background:#2563eb;color:#fff;border-radius:5px;font-size:12px}.btn-danger{background:#dc2626;color:#fff;border:none;padding:8px 10px;border-radius:6px;cursor:pointer;margin-left:8px;display:inline-block}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.receipt-table td.center{display:flex;justify-content:center;gap:8px}.receipt-table td.center button{min-width:64px;height:32px;padding:0 12px;line-height:32px;font-size:12px;white-space:nowrap}@media(max-width:640px){.receipt-page{padding:10px}.receipt-header{flex-direction:column;align-items:stretch}.receipt-header h1{text-align:center;font-size:17px}.btn-primary{width:100%;text-align:center}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.receipt-table{width:110%;min-width:520px;font-size:12px}.receipt-table th,.receipt-table td{padding:8px 10px;white-space:nowrap}.receipt-table td.center{flex-wrap:wrap;gap:6px}.receipt-table td.center button{min-width:60px;height:30px;line-height:30px;font-size:11px}}.form-group{position:relative;margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:#1f2937}.input-wrap input{width:100%;height:40px;padding:8px 36px 8px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;outline:none;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.input-wrap input:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.clear-btn{position:absolute;top:50%;right:10px;transform:translateY(-50%);font-size:18px;color:#9ca3af;cursor:pointer;-webkit-user-select:none;user-select:none}.dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 12px 30px #0000001f;max-height:280px;overflow-y:auto;z-index:1000}.dropdown-section{position:relative;padding:8px 12px 8px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#065f46;background:#ecfdf5;border-top:1px solid #bbf7d0;border-bottom:1px solid #bbf7d0}.dropdown-section:before{content:"";position:absolute;left:6px;top:50%;transform:translateY(-50%);width:4px;height:14px;border-radius:2px;background:#16a34a}.dropdown-item{padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .15s ease}.account-name{font-size:14px;font-weight:500;color:#111827}.account-meta{font-size:12px;color:#6b7280}.account-meta span.primary{color:#16a34a;font-weight:600}.dropdown-empty{padding:12px;font-size:13px;color:#6b7280;text-align:center}.dropdown::-webkit-scrollbar{width:6px}.dropdown::-webkit-scrollbar-thumb{background:#d1fae5;border-radius:6px}.dropdown::-webkit-scrollbar-thumb:hover{background:#86efac}.receipt-create-page{padding:24px;max-width:980px;margin:0 auto}.receipt-header{margin-bottom:20px}.receipt-header h1{font-size:22px;font-weight:600;margin-bottom:4px}.receipt-header p{font-size:14px;color:#6b7280}.receipt-card{background:#fff;border-radius:10px;padding:24px;box-shadow:0 8px 24px #0000000f}.form-group{margin-bottom:18px;position:relative}input,textarea{width:100%;font-size:14px;padding:10px 38px 10px 12px;border:1px solid #d1d5db;border-radius:6px;outline:none;transition:border .2s,box-shadow .2s;background:#fff}textarea{resize:vertical}input:focus,textarea:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a24}.input-wrap{position:relative}.input-wrap.disabled input{background:#f9fafb;cursor:not-allowed}.clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:18px;color:#9ca3af;cursor:pointer;-webkit-user-select:none;user-select:none}.clear-btn:hover{color:#111827}.textarea-wrap .clear-btn{top:10px;transform:none}.dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 12px 30px #0000001f;max-height:240px;overflow-y:auto;z-index:1000}.dropdown-item{padding:10px 12px;cursor:pointer;transition:background .15s}.dropdown-empty{padding:10px 12px;font-size:13px;color:#9ca3af}.dd-title{font-size:14px;font-weight:500}.dd-sub{font-size:12px;color:#6b7280}.info-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:14px;margin-bottom:22px}.info-row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.info-row:last-child{margin-bottom:0}.info-label{color:#6b7280}.info-value{font-weight:500;color:#111827}.invoice-box{margin-bottom:28px;padding-bottom:20px;border-bottom:1px dashed #e5e7eb}.invoice-box h4{font-size:14px;font-weight:600;margin-bottom:12px;color:#111827;display:flex;align-items:center;gap:6px}.invoice-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:10px;background:#fff;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.invoice-row:hover{background:#f9fafb;border-color:#d1d5db}.invoice-row.active{background:#ecfdf5;border-color:#16a34a;box-shadow:0 0 0 1px #16a34a2e}.invoice-row input{width:16px;height:16px;cursor:pointer}.inv-main{flex:1;display:flex;flex-direction:column;gap:2px}.inv-title{font-size:13px;font-weight:600;color:#111827}.inv-date{font-size:12px;color:#6b7280}.inv-amount{font-size:14px;font-weight:600;color:#111827;white-space:nowrap}.invoice-row.locked{opacity:.65;cursor:not-allowed;background:#fafafa}.invoice-row.locked:hover{background:#fafafa;border-color:#e5e7eb}.inv-lock-badge{margin-left:8px;padding:2px 6px;font-size:11px;font-weight:600;color:#92400e;background:#fef3c7;border-radius:4px}.advance-note{padding:14px;border:1px dashed #d1d5db;border-radius:8px;font-size:13px;color:#374151;background:#fafafa}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.btn-primary{background:#16a34a;color:#fff;padding:10px 18px;border-radius:6px;font-size:14px;border:none;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#111827;padding:10px 18px;border-radius:6px;font-size:14px;border:none;cursor:pointer}.btn-secondary:hover{background:#e5e7eb}.invoice-row input[type=checkbox]{accent-color:#16a34a}@media(max-width:640px){.receipt-card{padding:16px}.actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@page{size:A4;margin:20mm}body{background:#f9fafb;margin:0;font-family:Arial,Helvetica,sans-serif}.receipt-page{display:flex;justify-content:center;padding:24px 0}.receipt-a4{width:210mm;min-height:297mm;background:#fff;padding:20mm;box-shadow:0 10px 30px #00000014;color:#111827}.receipt-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #16a34a;padding-bottom:14px;margin-bottom:20px}.receipt-brand{font-size:22px;font-weight:800;color:#14532d}.receipt-meta{text-align:right;font-size:12px;line-height:1.5}.receipt-title{font-size:14px;font-weight:700;color:#16a34a;letter-spacing:1px}.receipt-no{font-weight:600}.receipt-message{margin:18px 0;font-size:13px;line-height:1.6;color:#374151}.receipt-card{margin-top:16px;padding:18px;border-radius:8px;border:1px solid #e5e7eb;background:#fff}.card-title{font-weight:700;margin-bottom:12px;font-size:14px;color:#111827}.card-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.amount{font-size:26px;font-weight:800;color:#166534}.receipt-footer{margin-top:28px;text-align:center;font-size:11px;color:#6b7280;border-top:1px dashed #e5e7eb;padding-top:10px}.receipt-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:10px}.btn{padding:8px 14px;border-radius:6px;font-size:13px;cursor:pointer;border:none}.btn.primary{background:#16a34a;color:#fff}.btn.primary:hover{background:#15803d}.btn.secondary{background:#e5e7eb;color:#111827}@media print{body{background:#fff}.receipt-page{padding:0}.receipt-a4{box-shadow:none;margin:0}.no-print{display:none!important}}.page-padding{padding:24px}.space-y-4>*+*{margin-top:16px}.text-muted{color:#6b7280}.text-right{text-align:right}.font-medium{font-weight:500}.account-header{display:grid;grid-template-columns:1fr 520px auto;align-items:center;gap:20px}.account-header-left h1{font-size:22px;font-weight:600;color:#111827}.account-header-left p{font-size:13px;color:#6b7280;margin-top:2px}.account-header-search{display:flex;justify-content:center}.account-header-search input{width:100%;max-width:480px;padding:10px 12px;font-size:14px;border-radius:6px;border:1px solid #d1d5db;background:#fff;transition:border-color .15s,box-shadow .15s}.account-header-search input::placeholder{color:#9ca3af}.account-header-search input:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 2px #16a34a2e}.account-header-action{display:flex;justify-content:flex-end}.btn-primary{padding:10px 16px;background:#16a34a;color:#fff;border-radius:6px;border:none;font-size:14px;font-weight:600;cursor:pointer}.btn-primary:hover{background:#15803d}.btn-secondary{padding:6px 12px;border-radius:6px;font-size:13px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.btn-secondary:hover{background:#f9fafb}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.table-wrapper{border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow-x:auto}.account-table{width:100%;border-collapse:collapse;font-size:14px}.account-table thead{background:#f9fafb}.account-table th{padding:12px 14px;text-align:left;font-size:13px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.account-table td{padding:12px 14px;border-top:1px solid #f1f5f9;color:#111827}.account-table tr:hover{background:#f9fafb}.badge{display:inline-block;padding:3px 10px;font-size:12px;font-weight:600;border-radius:999px}.badge-primary{background:#dcfce7;color:#166534}.badge-active{background:#e0f2fe;color:#0369a1}.badge-inactive{background:#fee2e2;color:#991b1b}.sub-text{font-size:12px;color:#6b7280;margin-top:2px}.empty-row{padding:24px;text-align:center;color:#6b7280;font-size:14px}.account-create-page{padding:24px;max-width:880px;margin:0 auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;color:#111827}.account-create-header{margin-bottom:20px}.account-create-header h1{font-size:22px;font-weight:600;margin-bottom:4px}.account-create-header p{font-size:13px;color:#6b7280}.account-create-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:24px;box-shadow:0 4px 10px #0000000a}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border-radius:6px;border:1px solid #d1d5db;font-size:14px;outline:none;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.form-group textarea{resize:vertical;min-height:80px}.form-group input::placeholder{color:#9ca3af}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.dropdown-wrapper{position:relative}.dropdown-wrapper input{cursor:text}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:220px;overflow-y:auto;z-index:20;box-shadow:0 10px 24px #0000001f}.dropdown-item{padding:10px 12px;font-size:14px;cursor:pointer;transition:background .15s ease}.dropdown-item:hover{background:#f0fdf4}.dropdown-empty{padding:12px;font-size:13px;text-align:center;color:#6b7280}.form-flags{display:flex;gap:24px;margin:16px 0}.form-flags label{display:flex;align-items:center;gap:8px;font-size:13px;color:#374151}.form-flags input[type=checkbox]{accent-color:#16a34a;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.btn-primary{background:#16a34a;color:#fff;border:none;padding:10px 18px;font-size:14px;border-radius:6px;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.btn-primary:hover{background:#15803d;box-shadow:0 6px 14px #16a34a40}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db;padding:10px 18px;font-size:14px;border-radius:6px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}@media(max-width:640px){.account-create-page{padding:16px}.account-create-card{padding:18px}.form-flags{flex-direction:column;gap:12px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.email-settings{max-width:600px;padding:24px}.email-settings-desc{margin:12px 0 24px;color:#555}.email-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #ddd;border-radius:8px}.email-toggle-label{font-weight:600}.email-toggle{min-width:80px;padding:8px 16px;border-radius:20px;border:none;cursor:pointer;font-weight:600}.email-toggle.on{background:#16a34a;color:#fff}.email-toggle.off{background:#dc2626;color:#fff}.email-toggle:disabled{opacity:.6;cursor:not-allowed}.email-settings-hint{margin-top:12px;color:#555}.email-settings-error{margin-top:12px;color:#dc2626;font-weight:500}.email-settings-note{margin-top:24px;font-size:14px;color:#666}.email-settings-actions{margin-top:20px}.email-logs-btn{background:transparent;border:1px solid #e5e7eb;padding:8px 14px;border-radius:6px;cursor:pointer;font-weight:500;color:#374151}.email-logs-btn:hover{background:#f3f4f6}.email-logs{padding:20px;background:#f4fbf6;color:#1f2937;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.email-logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.email-logs h2{margin:0;font-size:22px;font-weight:600;color:#065f46}.email-logs-count{font-size:13px;color:#047857}.email-logs-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.email-logs-search{min-width:240px;padding:8px 10px;border-radius:6px;border:1px solid #a7f3d0;background:#ecfdf5;outline:none}.email-logs-search:focus{border-color:#34d399;background:#fff}.email-logs-filters select{padding:8px 10px;border-radius:6px;border:1px solid #a7f3d0;background:#ecfdf5;cursor:pointer}.email-logs-filters select:focus{border-color:#34d399;background:#fff}.email-logs-table-wrapper{border-radius:8px;overflow-x:auto;background:#fff;border:1px solid #d1fae5}.email-logs-table{width:100%;border-collapse:collapse;min-width:900px}.email-logs-table thead{background:#ecfdf5}.email-logs-table th{padding:10px 12px;font-size:12px;text-transform:uppercase;text-align:left;color:#065f46;border-bottom:1px solid #d1fae5}.email-logs-table td{padding:10px 12px;font-size:13px;border-bottom:1px solid #ecfdf5;vertical-align:middle}.email-logs-table tbody tr:hover{background:#f0fdf4}.status-badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.sent{background:#dcfce7;color:#166534}.status-badge.skipped{background:#fef9c3;color:#854d0e}.status-badge.failed{background:#fee2e2;color:#991b1b}.email-logs-table td.event{font-weight:500}.email-logs-table td.reason{max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-logs-table td.invoice{font-family:monospace;font-size:12px;color:#065f46}.email-logs-table td.source,.email-logs-table td.sent-by{font-size:12px;color:#047857}.email-logs-table td.date{font-size:12px;color:#065f46;white-space:nowrap}.email-logs.empty,.email-logs.error{padding:20px;text-align:center;border-radius:8px}.email-logs.empty{background:#ecfdf5;color:#065f46}.email-logs.error{background:#fee2e2;color:#991b1b}@media(max-width:1024px){.email-logs{padding:16px}.email-logs-header{flex-direction:column;align-items:flex-start;gap:6px}.email-logs-table{min-width:800px}}@media(max-width:768px){.email-logs{padding:12px}.email-logs h2{font-size:18px}.email-logs-filters{flex-direction:column;align-items:stretch}.email-logs-search,.email-logs-filters select{width:100%}.email-logs-table{min-width:720px}.email-logs-table th,.email-logs-table td{padding:8px 10px;font-size:12px}.email-logs-table td.reason{max-width:200px}.status-badge{font-size:10px;padding:3px 6px}}@media(max-width:480px){.email-logs h2{font-size:16px}.email-logs-count{font-size:12px}.email-logs-table{min-width:640px}.email-logs-table td.reason{max-width:160px}}
