:root{--navy:#102c47;--navy-2:#173b5e;--green:#168151;--green-2:#1f9d65;--gold:#f1ad2f;--bg:#f3f6f9;--white:#fff;--text:#172334;--muted:#66768a;--line:#dce4ec;--red:#b42318;--shadow:0 8px 30px #102c4712}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{grid-template-columns:246px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:linear-gradient(180deg, var(--navy) 0%, #0c2237 100%);height:100vh;padding:24px 16px;position:sticky;top:0;overflow:hidden}.sidebar:after{content:"";background:#1f9d651f;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-80px;right:-80px}.sidebar-inner{z-index:1;flex-direction:column;height:100%;display:flex;position:relative}.brand{align-items:center;gap:12px;padding:0 8px 24px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg, var(--green-2), var(--green));border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:22px;font-weight:900;display:grid;box-shadow:0 7px 18px #1681514d}.brand-copy{line-height:1.05;display:grid}.brand-copy strong{letter-spacing:.02em;font-size:19px}.brand-copy small{color:#9eb0c1;margin-top:5px;font-size:10px;font-weight:600}.nav{gap:6px;display:grid}.nav-link{color:#cad6e1;border:1px solid #0000;border-radius:10px;align-items:center;gap:11px;min-height:44px;padding:10px 12px;font-size:14px;font-weight:650;transition:all .18s;display:flex}.nav-link:hover{color:#fff;background:#ffffff12}.nav-link.active{color:#fff;box-shadow:inset 3px 0 0 var(--gold);background:linear-gradient(90deg,#1f9d6547,#1f9d651f);border-color:#53c58840}.nav-icon{text-align:center;width:21px;font-size:16px}.nav-logout{margin-top:12px}.nav-logout button{color:#fff;background:#ffffff0f;width:100%}.sidebar-foot{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-top:auto;padding:14px 12px}.sidebar-foot strong{font-size:12px;display:block}.sidebar-foot small{color:#95a9bc;text-overflow:ellipsis;margin-top:4px;font-size:10px;display:block;overflow:hidden}.main{width:100%;min-width:0;max-width:1540px;padding:32px clamp(22px,3vw,44px) 48px}.topbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:25px;display:flex}.title{color:var(--navy);letter-spacing:-.025em;margin:0;font-size:clamp(25px,2.4vw,32px);font-weight:850;line-height:1.15}.subtitle{color:var(--muted);margin:7px 0 0;font-size:14px}.button{color:#fff;background:linear-gradient(135deg, var(--green), #147246);white-space:nowrap;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 6px 15px #16815129}.button:hover{transform:translateY(-1px)}.button.secondary{color:var(--navy);border:1px solid var(--line);box-shadow:none;background:#fff}.button.danger{background:var(--red)}.grid{gap:16px;display:grid}.grid.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:20px}.grid.stats .card{min-height:142px;position:relative;overflow:hidden}.grid.stats .card:before{content:"";background:var(--green);width:3px;position:absolute;top:0;bottom:0;left:0}.stat-label{color:var(--muted);font-size:12px;font-weight:750}.stat-value{color:var(--navy);letter-spacing:-.03em;margin-top:11px;font-size:27px;font-weight:900}.stat-hint{color:var(--green);margin-top:8px;font-size:11px;font-weight:650}.section{margin-top:26px}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section h2,.card h2,.form-card h2{color:var(--navy);margin:0 0 17px;font-size:18px}.table-wrap{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;overflow:auto}.table{border-collapse:collapse;width:100%;min-width:760px}.table th,.table td{text-align:left;border-bottom:1px solid #edf1f4;padding:13px 15px;font-size:13px}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#f8fafb}.table th{color:var(--muted);letter-spacing:.055em;text-transform:uppercase;background:#fafbfd;font-size:10px;font-weight:800}.code{color:var(--green);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.badge{color:var(--green);background:#e8f5ee;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:800;display:inline-block}.badge.pending{color:#8a5700;background:#fff4dd}.badge.failed{color:var(--red);background:#feeceb}.form-card{border:1px solid var(--line);max-width:920px;box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:24px}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label{color:#405164;font-size:12px;font-weight:750}.field input,.field select,.field textarea{width:100%;min-height:43px;color:var(--text);background:#fff;border:1px solid #cfd9e3;border-radius:9px;padding:10px 12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);outline:3px solid #1681511f}.actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.login-page{background:#fff;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);min-height:100vh;display:grid}.login-hero{color:#fff;background:radial-gradient(circle at 15% 15%, #1f9d6538, transparent 30%), linear-gradient(145deg, var(--navy), #0b2034);flex-direction:column;justify-content:center;padding:70px;display:flex}.login-hero h1{letter-spacing:-.04em;max-width:670px;margin:20px 0;font-size:clamp(44px,5vw,70px);line-height:.98}.login-hero p{color:#c8d4df;max-width:570px;font-size:17px;line-height:1.7}.login-panel{place-items:center;padding:35px;display:grid}.login-box{width:100%;max-width:400px}.login-box h2{color:var(--navy);margin:0 0 8px;font-size:30px}.login-box form{gap:16px;margin-top:28px;display:grid}.error{color:var(--red);background:#feeceb;border-radius:8px;padding:10px 12px;font-size:13px}.detail-grid{grid-template-columns:minmax(0,2fr) minmax(260px,.8fr);gap:18px;display:grid}.info-list{grid-template-columns:1fr 1fr;gap:16px 26px;display:grid}.info-label{color:var(--muted);font-size:11px}.info-value{margin-top:4px;font-size:13px;font-weight:700}.empty{color:var(--muted);text-align:center;padding:35px}.badge-sheet{background:#fff;border-radius:12px;grid-template-columns:1fr 31mm;width:86mm;height:54mm;margin:25px auto;display:grid;position:relative;overflow:hidden;box-shadow:0 13px 38px #102c4729}.badge-sheet:after{content:"";background:linear-gradient(90deg, var(--green) 0 68%, var(--gold) 68%);height:2.2mm;position:absolute;bottom:0;left:0;right:0}.badge-left{color:#fff;background:radial-gradient(circle at 10% 0, #1f9d654d, transparent 35%), linear-gradient(145deg, var(--navy), var(--navy-2));padding:8mm 5mm}.badge-left h1{letter-spacing:-.04em;margin:0;font-size:8mm}.badge-left .municipality{color:#c4d1dc;margin-top:2mm;font-size:3.1mm}.badge-left .person{margin-top:7mm;font-size:4.5mm;font-weight:850}.badge-left .business{color:#d8e1e9;margin-top:1mm;font-size:2.9mm}.badge-code{color:#ffd27d;margin-top:5mm;font-family:monospace;font-size:2.7mm;font-weight:800}.badge-right{text-align:center;border-left:1px solid #dde5ec;padding:5mm 4mm}.badge-right img{width:24mm;height:24mm}.badge-right p{color:#4b5563;margin:2mm 0;font-size:2.4mm}.print-tools{text-align:center;margin:10px 0 22px}.verify{background:radial-gradient(circle at 20% 10%, #1f9d6538, transparent 30%), linear-gradient(145deg,var(--navy),#0d1f32);place-items:center;min-height:100vh;padding:25px;display:grid}.verify-card{background:#fff;border-radius:18px;width:100%;max-width:520px;padding:30px;box-shadow:0 18px 60px #0000002e}.verify-ok{width:60px;height:60px;color:var(--green);background:#e8f5ee;border-radius:18px;place-items:center;font-size:30px;display:grid}@media (max-width:1180px){.grid.stats{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}}@media (max-width:760px){.shell{grid-template-columns:1fr}.sidebar{height:auto;min-height:0;padding:13px 14px 14px;position:relative}.sidebar:after,.sidebar-foot{display:none}.brand{padding:0 4px 12px}.brand-mark{border-radius:10px;flex-basis:36px;width:36px;height:36px;font-size:19px}.brand-copy small{display:none}.nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.nav-link{justify-content:center;min-height:37px;padding:8px 6px;font-size:11px}.nav-icon{width:auto;font-size:13px}.nav-logout{margin-top:0}.main{padding:22px 16px 38px}.topbar{flex-direction:column;align-items:flex-start}.form-grid,.info-list,.login-page{grid-template-columns:1fr}.login-hero{display:none}}@media (max-width:520px){.grid.stats{grid-template-columns:1fr}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.title{font-size:24px}.badge-sheet{transform-origin:top;margin-bottom:8px;transform:scale(.92)}}@media print{@page{size:86mm 54mm;margin:0}body{background:#fff}.print-tools,.sidebar,.topbar{display:none!important}.shell{display:block}.main{max-width:none;padding:0}.badge-sheet{break-after:page;box-shadow:none;border-radius:0;margin:0;transform:none}}.settings-section{scroll-margin-top:20px}.settings-stats,.badge-summary{margin-bottom:28px}.small-stat{font-size:21px}.danger-text{font-weight:800;color:var(--red)!important}.settings-table{min-width:900px}.inline-editor{position:relative}.inline-editor>summary,.collapsible-card>summary{color:var(--green);cursor:pointer;font-weight:800;list-style:none}.inline-editor>summary::-webkit-details-marker{display:none}.collapsible-card>summary::-webkit-details-marker{display:none}.inline-edit-form{z-index:20;width:min(420px,82vw);color:var(--text);border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:1fr 1fr;gap:12px;padding:18px;display:grid;position:absolute;top:30px;right:0;box-shadow:0 18px 55px #102c4733}.inline-edit-form .button,.inline-edit-form .check-row{align-self:end}.collapsible-card{max-width:100%;margin-top:16px}.collapsible-card[open]>summary{margin-bottom:18px}.form-inside{margin-top:18px}.check-row{color:#405164;align-items:center;gap:9px;font-size:13px;font-weight:750;display:flex!important}.check-row input{width:18px;height:18px;min-height:auto}.background-preview{object-fit:cover;border:1px solid var(--line);border-radius:10px;width:170px;height:105px;margin-top:8px}.table-sub{color:var(--muted);margin-top:4px;font-size:10px;display:block}.text-action{color:var(--green);font-weight:800}.taxpayer-heading{align-items:center;gap:14px;display:flex}.profile-photo{object-fit:cover;width:58px;height:58px;box-shadow:var(--shadow);border:3px solid #fff;border-radius:16px}.placeholder-photo{color:#fff;background:var(--navy);place-items:center;font-size:22px;font-weight:900;display:grid}.photo-form{border-top:1px solid var(--line);gap:12px;margin-top:22px;padding-top:18px;display:grid}.top-actions{margin-top:0}.badge-toolbar{text-align:left;justify-content:space-between;align-items:flex-start;gap:15px;max-width:920px;margin:0 auto 20px;display:flex}.badge-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-position:50%;background-size:cover;grid-template-columns:57mm 29mm}.badge-left-v13{z-index:1;color:#fff;gap:3mm;min-width:0;padding:6mm 4.5mm;display:flex;position:relative}.badge-copy{flex:1;min-width:0}.badge-left-v13 h1{letter-spacing:-.04em;margin:0;font-size:6mm}.badge-left-v13 .municipality{color:#c4d1dc;margin-top:1mm;font-size:2.7mm}.badge-left-v13 .person{text-overflow:ellipsis;white-space:nowrap;margin-top:6mm;font-size:3.7mm;font-weight:850;overflow:hidden}.badge-left-v13 .business{text-overflow:ellipsis;white-space:nowrap;color:#d8e1e9;margin-top:1mm;font-size:2.4mm;overflow:hidden}.badge-left-v13 .badge-code{margin-top:4mm;font-size:2mm}.badge-photo{object-fit:cover;border:.6mm solid #fffc;border-radius:2mm;flex:none;width:15mm;height:20mm;margin-top:15mm}.badge-sheet.with-photo .badge-left-v13 .person{margin-top:6mm}.badge-right{z-index:1;background:#fffffff0;position:relative}.badge-right p{line-height:1.25}.badge-actions-card{border:1px solid var(--line);max-width:720px;box-shadow:var(--shadow);background:#fff;border-radius:15px;margin:24px auto;padding:22px}.centered-actions{justify-content:center;margin-top:0}.billing-note{color:var(--navy)}.duplicate-form{text-align:left;gap:12px;max-width:440px;margin:18px auto 0;display:grid}button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}@media (max-width:760px){.inline-edit-form{grid-template-columns:1fr;width:auto;max-height:76vh;position:fixed;top:12vh;left:16px;right:16px;overflow:auto}.badge-toolbar{flex-direction:column}.top-actions{width:100%}}@media print{.badge-actions-card,.badge-toolbar{display:none!important}.badge-left-v13{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.agent-filters{grid-template-columns:minmax(260px,1fr) minmax(180px,240px) auto auto;align-items:end;gap:12px;max-width:none;margin-bottom:16px;padding:14px;display:grid}.agent-filters .button{height:43px}.list-summary{color:var(--muted);justify-content:space-between;gap:12px;margin:0 2px 10px;font-size:12px;display:flex}.agents-table{min-width:850px}.agent-row-actions{align-items:center;gap:8px;display:flex}.agent-row-actions form{margin:0}.button.compact{min-height:34px;padding:7px 11px;font-size:11px}.button.disabled{opacity:.45;pointer-events:none}.pagination{color:var(--muted);justify-content:flex-end;align-items:center;gap:14px;margin-top:16px;font-size:12px;display:flex}.notice{border-radius:10px;margin:-8px 0 16px;padding:12px 14px;font-size:13px;font-weight:700}.notice.success{color:#12633f;background:#e8f5ee;border:1px solid #c9e9d8}.field small{color:var(--muted);font-size:11px;line-height:1.45}@media (max-width:850px){.agent-filters{grid-template-columns:1fr 1fr}.agent-search{grid-column:1/-1}}@media (max-width:560px){.agent-filters{grid-template-columns:1fr}.agent-search{grid-column:auto}.pagination{justify-content:space-between;gap:7px}.pagination>span:not(.button){display:none}}
