:root{--primary: #0b8f84;--accent: #2f6fed;--sidebar: #0f2a2e;--sidebar-text: #c6dcdc;--danger: #e5484d;--warning: #e2a336;--success: #30a46c;--info: #0090ff;--bg: #f3f6f7;--surface: #ffffff;--surface-2: #f8f9fb;--surface-3: #eef0f4;--border: #e1e4ea;--border-strong: #cdd2db;--text: #1c2130;--text-2: #4d5568;--text-3: #7c8496;--radius: 8px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .14), 0 2px 6px rgba(16, 24, 40, .06);--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--row-h: 40px;--topbar-h: 56px;--nav-w: 64px}:root[data-density=compact]{--row-h: 32px}:root[data-theme=dark]{--bg: #111318;--surface: #1a1d24;--surface-2: #20242c;--surface-3: #272b35;--border: #2e333e;--border-strong: #3b4150;--text: #e8eaf0;--text-2: #b4bac8;--text-3: #8890a2;--shadow: 0 1px 3px rgba(0,0,0,.4);--shadow-lg: 0 12px 32px rgba(0,0,0,.5)}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font);font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.01em}h1{font-size:20px}h2{font-size:17px}h3{font-size:15px}h4{font-size:13px}p{margin:0 0 8px}hr{border:0;border-top:1px solid var(--border);margin:12px 0}code{background:var(--surface-3);padding:1px 5px;border-radius:4px;font-size:12px}::selection{background:color-mix(in srgb,var(--primary) 25%,transparent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;border:2px solid var(--bg)}::-webkit-scrollbar-track{background:transparent}.btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-weight:550;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,box-shadow .12s}.btn:hover{background:var(--surface-2);border-color:var(--text-3);text-decoration:none}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{filter:brightness(1.07)}.btn.success{background:var(--accent);border-color:var(--accent);color:#fff}.btn.success:hover{filter:brightness(1.06)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--surface-3)}.btn.sm{height:28px;padding:0 9px;font-size:13px}.btn.xs{height:24px;padding:0 7px;font-size:12px}.btn.icon{width:34px;padding:0;justify-content:center}.btn.icon.sm{width:28px}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;margin-left:-1px}.btn-group .btn:first-child{border-radius:var(--radius) 0 0 var(--radius);margin-left:0}.btn-group .btn:last-child{border-radius:0 var(--radius) var(--radius) 0}.btn-group .btn.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:var(--primary);color:var(--primary);z-index:1}.link{background:none;border:0;padding:0;color:var(--primary);font:inherit;cursor:pointer}.link:hover{text-decoration:underline}.link.muted{color:var(--text-3)}.input,select.input,textarea.input{width:100%;height:34px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;transition:border-color .12s,box-shadow .12s}textarea.input{height:auto;min-height:72px;padding:8px 10px;resize:vertical;line-height:1.45}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.input.sm{height:28px;font-size:13px}.input.invalid{border-color:var(--danger)}.form-row{margin-bottom:14px}.form-row>label,.label{display:block;font-size:12.5px;font-weight:600;color:var(--text-2);margin-bottom:5px}.form-row .hint,.hint{font-size:12px;color:var(--text-3);margin-top:4px}.req{color:var(--danger)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.check{display:inline-flex;align-items:center;gap:7px;cursor:pointer;-webkit-user-select:none;user-select:none}.check input{width:16px;height:16px;accent-color:var(--primary)}.switch{position:relative;width:34px;height:20px;flex:none}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border-strong);border-radius:20px;transition:.15s;cursor:pointer}.switch span:before{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.15s;box-shadow:var(--shadow-sm)}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:before{transform:translate(14px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);box-shadow:var(--shadow-sm)}.card-h{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border)}.card-h h3{flex:1}.card-b{padding:16px}.small{font-size:12.5px}.tiny{font-size:11.5px}.bold{font-weight:650}.right{text-align:right}.center{text-align:center}.row{display:flex;align-items:center;gap:8px}.row.wrap{flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1;min-width:0}.spacer{flex:1}.mt{margin-top:12px}.mb{margin-bottom:12px}.mt-lg{margin-top:24px}.hidden{display:none!important}.empty{padding:40px 20px;text-align:center;color:var(--text-3)}.empty svg{opacity:.5;margin-bottom:8px}.tag{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:10px;font-size:11.5px;font-weight:600;white-space:nowrap;background:var(--surface-3);color:var(--text-2)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:700;background:var(--danger);color:#fff}.status-open{color:var(--info)}.status-won{color:var(--success)}.status-lost{color:var(--danger)}.pill-won{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.pill-lost{background:color-mix(in srgb,var(--danger) 13%,transparent);color:var(--danger)}.pill-open{background:color-mix(in srgb,var(--info) 13%,transparent);color:var(--info)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:700;flex:none;text-transform:uppercase}.table-wrap{overflow:auto;background:var(--surface)}table.table{width:100%;border-collapse:separate;border-spacing:0}.table th{position:sticky;top:0;z-index:2;background:var(--surface-2);text-align:left;font-size:12px;font-weight:650;color:var(--text-2);padding:0 10px;height:36px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.table th.sortable{cursor:pointer}.table th.sortable:hover{color:var(--text)}.table td{padding:0 10px;height:var(--row-h);border-bottom:1px solid var(--border);white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis}.table tr:hover td{background:var(--surface-2)}.table tr.selected td{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.table td.chk,.table th.chk{width:36px;padding:0 0 0 12px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border)}.tab{padding:10px 14px;border:0;background:none;font:inherit;color:var(--text-2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:550;display:inline-flex;align-items:center;gap:6px}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.page{height:100%;display:flex;flex-direction:column;min-height:0}.page-h{display:flex;align-items:center;gap:10px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;min-height:58px}.page-h h1{margin-right:6px}.page-b{flex:1;overflow:auto;min-height:0}.page-pad{padding:20px}.toolbar{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap}.menu{position:absolute;z-index:1000;min-width:200px;max-height:420px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:5px}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:0;background:none;border-radius:6px;font:inherit;color:var(--text);text-align:left;cursor:pointer}.menu-item:hover,.menu-item.active{background:var(--surface-3);text-decoration:none}.menu-item.danger{color:var(--danger)}.menu-sep{height:1px;background:var(--border);margin:5px 0}.menu-title{padding:6px 10px 4px;font-size:11px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-block{display:flex;align-items:center;justify-content:center;padding:40px}.kbd{display:inline-block;padding:1px 6px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:4px;font-size:11px;color:var(--text-3);background:var(--surface-2)}.progress{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.progress>div{height:100%;background:var(--accent);border-radius:4px;transition:width .3s}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.section-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:18px 0 8px}.rich{line-height:1.5;word-wrap:break-word}.rich p{margin:0 0 6px}.rich ul,.rich ol{margin:0 0 6px;padding-left:20px}.rich img{max-width:100%}.mention{background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary);border-radius:4px;padding:0 3px;font-weight:600}@media(max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}.page-h{padding:10px 14px}.hide-mobile{display:none!important}}.shell{display:flex;height:100%}.nav{width:218px;flex:none;background:var(--sidebar);color:var(--sidebar-text);display:flex;flex-direction:column;transition:width .15s}.nav.collapsed{width:62px}.nav-brand{display:flex;align-items:center;gap:10px;padding:14px 16px;color:#fff;font-weight:750;font-size:15px;height:var(--topbar-h)}.nav-brand .logo{width:30px;height:30px;border-radius:8px;background:var(--primary);display:flex;align-items:center;justify-content:center;flex:none}.nav-brand img{width:30px;height:30px;border-radius:8px;object-fit:cover}.nav-items{flex:1;overflow:auto;padding:6px 8px;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:8px;color:var(--sidebar-text);font-weight:550;text-decoration:none!important;white-space:nowrap;position:relative}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.router-link-active,.nav-item.active{background:color-mix(in srgb,var(--primary) 32%,transparent);color:#fff}.nav-item .badge{position:absolute;right:8px}.nav.collapsed .nav-item span.lbl,.nav.collapsed .nav-brand span{display:none}.nav-foot{padding:10px 8px;border-top:1px solid rgba(255,255,255,.08)}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:var(--topbar-h);display:flex;align-items:center;gap:10px;padding:0 16px;background:var(--surface);border-bottom:1px solid var(--border);flex:none}.topbar .search-box{flex:1;max-width:520px;position:relative}.topbar .search-box .input{padding-left:34px;background:var(--surface-2)}.topbar .search-box .icon{position:absolute;left:10px;top:9px;color:var(--text-3)}.content{flex:1;min-height:0;overflow:hidden}.search-results{position:absolute;top:40px;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:950;max-height:420px;overflow:auto}.search-results .menu-item{padding:8px 12px}.idle-warn{position:fixed;bottom:18px;left:50%;transform:translate(-50%);z-index:2000;background:#1e2a32;color:#fff;padding:10px 16px;border-radius:10px;box-shadow:var(--shadow-lg);display:flex;gap:12px;align-items:center}@media(max-width:900px){.nav{position:fixed;z-index:980;height:100%;left:-230px}.nav.open{left:0}.nav.collapsed{width:218px}}.toasts{position:fixed;right:16px;bottom:16px;z-index:3000;display:flex;flex-direction:column;gap:8px}.toast{min-width:240px;max-width:420px;padding:11px 14px;border-radius:10px;background:#1e2a32;color:#fff;box-shadow:var(--shadow-lg);font-weight:550;display:flex;gap:8px;align-items:flex-start;animation:pop .15s}.toast.error{background:#b42318}.toast.warn{background:#b45309}.alert{padding:10px 12px;border-radius:var(--radius);display:flex;gap:8px;align-items:flex-start;margin-bottom:12px;font-size:13.5px}.alert.info{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:color-mix(in srgb,var(--accent) 70%,var(--text))}.alert.warn{background:#fff6e5;color:#8a4b00}.alert.danger{background:#fdecec;color:#a3261c}.alert.ok{background:#e8f6ef;color:#14532d}:root[data-theme=dark] .alert.warn{background:#3a2a10;color:#ffcf8a}:root[data-theme=dark] .alert.danger{background:#3c1614;color:#ffb4ab}:root[data-theme=dark] .alert.ok{background:#12301f;color:#a6e3bf}.chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:11px;font-size:12px;font-weight:650;white-space:nowrap;background:color-mix(in srgb,var(--c, #8a94a6) 15%,transparent);color:color-mix(in srgb,var(--c, #8a94a6) 85%,var(--text))}.chip .dot{background:var(--c, #8a94a6)}.chip.solid{background:var(--c);color:#fff}.allergy{background:#fdecec;color:#a3261c}:root[data-theme=dark] .allergy{background:#3c1614;color:#ffb4ab}.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);padding:14px 16px}.kpi .v{font-size:24px;font-weight:750;letter-spacing:-.02em}.kpi .l{font-size:12.5px;color:var(--text-3);margin-top:2px}.kpi.link{cursor:pointer}.kpi.link:hover{border-color:var(--primary)}.grid-home{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}.grid-home>*,.grid-2>*,.grid-3>*{min-width:0}.tabs .tab{white-space:nowrap;flex:none}@media(max-width:1100px){.grid-home{grid-template-columns:1fr}}.list-row{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border)}.list-row:last-child{border-bottom:0}.list-row.clickable{cursor:pointer}.list-row.clickable:hover{background:var(--surface-2)}.kanban{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:12px;padding:16px 20px;align-items:start;overflow-x:auto}.kcol{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;min-height:120px}.kcol-h{padding:10px 12px;font-weight:700;font-size:13px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.kcard{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--c, var(--primary));border-radius:8px;padding:9px 10px;margin:8px;box-shadow:var(--shadow-sm);cursor:pointer}.kcard:hover{box-shadow:var(--shadow)}.agenda{display:flex;flex-direction:column;height:100%;min-height:0}.agenda-grid{flex:1;overflow:auto;position:relative;background:var(--surface)}.ag-head{display:grid;position:sticky;top:0;z-index:6;background:var(--surface);border-bottom:1px solid var(--border)}.ag-head .hcell{padding:8px 6px;text-align:center;font-weight:650;font-size:13px;border-left:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-head .hcell .sub{font-weight:500;font-size:11.5px;color:var(--text-3)}.ag-body{display:grid;position:relative}.ag-times{position:relative;border-right:1px solid var(--border);background:var(--surface)}.ag-time{position:absolute;right:6px;font-size:11px;color:var(--text-3);transform:translateY(-7px)}.ag-col{position:relative;border-left:1px solid var(--border)}.ag-slot{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent);cursor:pointer}.ag-slot.hour{border-top-color:var(--border)}.ag-slot.off{background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 6px,var(--surface-3) 6px,var(--surface-3) 7px);cursor:default}.ag-slot:not(.off):hover{background:color-mix(in srgb,var(--primary) 9%,transparent)}.ag-block{position:absolute;left:2px;right:2px;background:repeating-linear-gradient(45deg,#f1e3e3,#f1e3e3 6px,#f8eded 6px,#f8eded 12px);border:1px dashed #d79a9a;border-radius:6px;color:#8a3b3b;font-size:11.5px;padding:3px 6px;z-index:2;overflow:hidden}:root[data-theme=dark] .ag-block{background:repeating-linear-gradient(45deg,#3a2222,#3a2222 6px,#2e1c1c 6px,#2e1c1c 12px);color:#f0b7b7;border-color:#7a4040}.ag-appt{position:absolute;border-radius:6px;padding:3px 6px 3px 8px;font-size:12px;line-height:1.3;overflow:hidden;cursor:pointer;z-index:3;color:var(--text);background:color-mix(in srgb,var(--c) 16%,var(--surface));border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-left:4px solid var(--c);box-shadow:var(--shadow-sm)}.ag-appt:hover{z-index:5;box-shadow:var(--shadow)}.ag-appt .t{font-weight:700;font-size:11px;color:var(--text-2)}.ag-appt .n{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-appt .s{color:var(--text-3);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-appt.cancelled{opacity:.55;text-decoration:line-through}.ag-appt.dragging{opacity:.5}.ag-appt.overbook{background-image:repeating-linear-gradient(135deg,transparent,transparent 8px,color-mix(in srgb,var(--c) 12%,transparent) 8px,color-mix(in srgb,var(--c) 12%,transparent) 10px)}.ag-now{position:absolute;left:0;right:0;height:2px;background:#e5484d;z-index:4;pointer-events:none}.ag-now:before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:#e5484d}.ag-drop{background:color-mix(in srgb,var(--primary) 18%,transparent)!important}.mini-cal{width:238px;-webkit-user-select:none;user-select:none}.mini-cal .mh{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-weight:650;text-transform:capitalize}.mini-cal .grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;font-size:12px}.mini-cal .dow{color:var(--text-3);font-weight:650;padding:3px 0}.mini-cal .d{padding:5px 0;border-radius:6px;cursor:pointer}.mini-cal .d:hover{background:var(--surface-3)}.mini-cal .d.other{color:var(--text-3);opacity:.55}.mini-cal .d.today{font-weight:800;color:var(--primary)}.mini-cal .d.sel{background:var(--primary);color:#fff}.agenda-side{width:260px;flex:none;border-right:1px solid var(--border);background:var(--surface);padding:14px;overflow:auto}@media(max-width:1100px){.agenda-side{display:none}}.prof-check{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer;font-size:13px}.prof-check .sw{width:12px;height:12px;border-radius:3px;flex:none}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--surface);box-shadow:var(--shadow-lg);z-index:920;display:flex;flex-direction:column;animation:slide .16s ease-out;border-left:1px solid var(--border)}.drawer-h{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border)}.drawer-b{flex:1;overflow:auto;padding:16px}.drawer-f{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;flex-wrap:wrap}@keyframes slide{0%{transform:translate(30px);opacity:0}}.status-bar{display:flex;flex-wrap:wrap;gap:6px}.status-bar button{border:1px solid color-mix(in srgb,var(--c) 45%,var(--border));background:var(--surface);color:var(--text);border-radius:16px;padding:4px 10px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.status-bar button.on{background:var(--c);border-color:var(--c);color:#fff}.status-bar button:hover:not(.on){background:color-mix(in srgb,var(--c) 10%,var(--surface))}.kv{display:grid;grid-template-columns:120px 1fr;gap:6px 12px;font-size:13.5px}.kv dt{color:var(--text-3)}.kv dd{margin:0;font-weight:550;min-width:0;overflow-wrap:anywhere}.p-head{background:var(--surface);border-bottom:1px solid var(--border);padding:14px 20px 0}.p-head .top{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}.p-head h1{font-size:21px}.p-head .meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--text-2);font-size:13px;margin-top:4px}.p-head .meta span{display:inline-flex;align-items:center;gap:4px}.p-alerts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.p-tabs{overflow-x:auto;margin-top:10px;border-bottom:0}.p-body{padding:18px 20px}.balance{font-weight:750}.balance.debt{color:var(--danger)}.balance.credit{color:var(--success)}.timeline{position:relative;padding-left:22px}.timeline:before{content:"";position:absolute;left:8px;top:4px;bottom:4px;width:2px;background:var(--border)}.tl-item{position:relative;margin-bottom:14px}.tl-item:before{content:"";position:absolute;left:-18px;top:14px;width:10px;height:10px;border-radius:50%;background:var(--c, var(--primary));border:2px solid var(--surface)}.enc-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.enc-card .h{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap}.enc-card .b{padding:12px 14px}.enc-card .addendum{margin:0 14px 12px;padding:8px 12px;border-left:3px solid var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--surface));border-radius:6px}.pre{white-space:pre-wrap;line-height:1.5}.form-sec{margin-bottom:18px}.form-sec>h4{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-size:11.5px;margin-bottom:10px;border-bottom:1px solid var(--border);padding-bottom:4px}.fgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:0 12px}.fgrid>.w-full{grid-column:span 6}.fgrid>.w-half{grid-column:span 3}.fgrid>.w-third{grid-column:span 2}@media(max-width:800px){.fgrid>.w-half,.fgrid>.w-third{grid-column:span 6}}.scale{display:flex;gap:4px;flex-wrap:wrap}.scale button{width:34px;height:30px;border:1px solid var(--border-strong);background:var(--surface);border-radius:6px;cursor:pointer;font:inherit;font-weight:650}.scale button.on{background:var(--primary);color:#fff;border-color:var(--primary)}.opt-chips{display:flex;flex-wrap:wrap;gap:6px}.opt-chips label{border:1px solid var(--border-strong);border-radius:16px;padding:4px 11px;cursor:pointer;font-size:13px;display:inline-flex;gap:6px;align-items:center}.opt-chips label.on{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:var(--primary);color:var(--primary);font-weight:650}.opt-chips input{display:none}.vitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.vitals-grid label{font-size:11.5px;color:var(--text-3);font-weight:600;display:block;margin-bottom:3px}.sig-pad{border:1px dashed var(--border-strong);border-radius:8px;background:#fff;touch-action:none;width:100%;height:170px;display:block;cursor:crosshair}.doc-body{border:1px solid var(--border);border-radius:8px;padding:14px;background:var(--surface-2);max-height:360px;overflow:auto}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.gallery .g{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.gallery .g .th{height:110px;background:var(--surface-3);display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery .g .th img{width:100%;height:100%;object-fit:cover}.gallery .g .c{padding:6px 8px;font-size:12px}.builder-sec{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;background:var(--surface)}.builder-sec .h{display:flex;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:10px 10px 0 0}.builder-field{display:grid;grid-template-columns:1fr 150px 110px 90px auto;gap:8px;align-items:center;padding:6px 10px;border-bottom:1px dashed var(--border)}.builder-field:last-child{border-bottom:0}@media(max-width:900px){.builder-field{grid-template-columns:1fr 1fr}}.odonto{display:flex;flex-direction:column;gap:10px;align-items:center;overflow-x:auto;padding:8px}.odonto .row{gap:4px}.tooth{width:38px;text-align:center;cursor:pointer}.tooth svg{width:36px;height:36px}.tooth .num{font-size:11px;color:var(--text-3);font-weight:650}.tooth.sel svg{filter:drop-shadow(0 0 3px var(--primary))}.face-map{position:relative;max-width:360px;margin:auto}.face-map svg{width:100%;height:auto;cursor:crosshair}.face-pt{cursor:pointer}.seg{display:inline-flex;background:var(--surface-3);border-radius:8px;padding:2px}.seg button{border:0;background:none;padding:5px 11px;border-radius:6px;font:inherit;font-weight:600;color:var(--text-2);cursor:pointer;font-size:13px}.money-pos{color:var(--success)}.money-neg{color:var(--danger)}.num{text-align:right;font-variant-numeric:tabular-nums}.table td.wrap{white-space:normal}.table tr.clickable{cursor:pointer}.table tfoot td{font-weight:700;background:var(--surface-2)}.settings{display:flex;height:100%;min-height:0}.settings-nav{width:236px;flex:none;border-right:1px solid var(--border);background:var(--surface);overflow:auto;padding:10px 8px}.settings-nav .grp{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);padding:12px 10px 4px}.settings-nav a{display:block;padding:7px 10px;border-radius:7px;color:var(--text-2);font-weight:550;text-decoration:none;font-size:13.5px}.settings-nav a:hover{background:var(--surface-3)}.settings-nav a.on{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.settings-body{flex:1;overflow:auto;padding:20px 24px;min-width:0}.settings-body>h2{margin-bottom:4px}.settings-body .lead{color:var(--text-3);margin-bottom:16px}@media(max-width:900px){.settings{flex-direction:column}.settings-nav{width:auto;max-height:180px;border-right:0;border-bottom:1px solid var(--border)}}.copy-box{display:flex;gap:6px}.copy-box .input{font-family:ui-monospace,monospace;font-size:12.5px}.printable-row td{cursor:default}.empty-state{text-align:center;padding:48px 20px;color:var(--text-3)}.empty-state .icon{opacity:.45;margin-bottom:8px}.login-bg{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(900px 500px at 15% -10%,color-mix(in srgb,var(--primary) 60%,#000),transparent),#071c1a}.login-card{width:100%;max-width:400px;background:var(--surface);border-radius:14px;padding:30px;box-shadow:0 20px 60px #00000059}.login-card .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;margin-bottom:18px;color:var(--primary)}:root{--primary: #0f766e;--accent: #c2703d;--sidebar: #0f2a2b;--sidebar-text: #b9d0cc;--ink: #12302f;--sage: #8fb3a6;--clay: #c2703d;--ivory: #f7f4ee;--danger: #c2413a;--warning: #c98a1b;--success: #2f8f5b;--info: #2c6fb3;--bg: #f4f1ea;--surface: #fffdf9;--surface-2: #f8f5ef;--surface-3: #efeae1;--border: #e5dfd4;--border-strong: #d5cdbf;--text: #1d2a2a;--text-2: #475755;--text-3: #7a8784;--radius: 10px;--shadow-sm: 0 1px 2px rgba(29, 42, 42, .05);--shadow: 0 1px 2px rgba(29, 42, 42, .06), 0 4px 14px rgba(29, 42, 42, .05);--shadow-lg: 0 18px 48px rgba(18, 48, 47, .16), 0 3px 10px rgba(18, 48, 47, .07);--font: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--topbar-h: 60px}:root[data-theme=dark]{--bg: #0d1a1a;--surface: #132424;--surface-2: #172b2b;--surface-3: #1d3434;--border: #24403f;--border-strong: #31514f;--text: #e6efec;--text-2: #b3c6c1;--text-3: #829792;--sidebar: #091515;--ivory: #132424;--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .25);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .5)}body{font-size:14px;letter-spacing:-.003em;background:var(--bg)}h1,h2,.display{font-family:var(--font-display);font-weight:560;letter-spacing:-.015em;font-optical-sizing:auto}h1{font-size:26px;line-height:1.15}h2{font-size:19px}h3{font-size:15px;font-weight:700}.muted{color:var(--text-3)}.btn{height:36px;border-radius:10px;border-color:var(--border-strong);font-weight:600;box-shadow:var(--shadow-sm)}.btn.sm{height:32px}.btn.xs{height:26px;border-radius:8px}.btn.primary{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 92%,#fff) 0%,var(--primary) 100%);border-color:color-mix(in srgb,var(--primary) 85%,#000);box-shadow:0 1px #ffffff2e inset,0 2px 6px color-mix(in srgb,var(--primary) 30%,transparent)}.btn.success{background:var(--clay);border-color:var(--clay)}.btn.ghost{box-shadow:none}.btn.danger{color:var(--danger)}.input{border-radius:10px;border-color:var(--border-strong);background:var(--surface);transition:border-color .12s,box-shadow .12s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}.input.color{padding:2px;height:36px;width:100%;cursor:pointer}.req{color:var(--clay);margin-left:2px}.seg{background:var(--surface-3);border-radius:10px;padding:3px;display:inline-flex;gap:2px;flex-wrap:wrap}.seg button{border:0;background:none;padding:5px 11px;border-radius:8px;font:inherit;font-weight:600;color:var(--text-2);cursor:pointer}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg.full{display:flex;width:100%}.seg.full button{flex:1;padding:6px 4px;font-size:12.5px}.chip{border-radius:999px}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.card-h{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.card-h h3{font-family:var(--font-display);font-weight:600;font-size:16px;display:flex;align-items:center;gap:8px}.card-b{padding:16px 18px}.kpi{border-radius:16px;box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi .v{font-family:var(--font-display);font-weight:600;font-size:28px}.kpi:after{content:"";position:absolute;right:-24px;top:-24px;width:80px;height:80px;border-radius:50%;background:color-mix(in srgb,var(--primary) 7%,transparent)}.section-title{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--text-3);margin:16px 0 8px;display:flex;align-items:center;gap:6px}.empty-state{text-align:center;padding:34px 20px;color:var(--text-3)}.empty-state img.ill{width:150px;height:120px;object-fit:contain;opacity:.95;margin-bottom:6px}.modal{border-radius:18px;box-shadow:var(--shadow-lg)}.modal-h h2{font-size:20px}.modal-bg{background:#0d1e1e6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.alert{border-radius:12px}.tag{border-radius:999px}.list-row{padding:11px 16px}.nav{width:232px;background:var(--sidebar) var(--nav-bg, none) center bottom / cover no-repeat;position:relative}.nav:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--sidebar) 0%,color-mix(in srgb,var(--sidebar) 82%,transparent) 70%,color-mix(in srgb,var(--sidebar) 55%,transparent) 100%);pointer-events:none}.nav>*{position:relative}.nav-brand{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em;padding:16px 18px}.nav-brand .logo{width:34px;height:34px;border-radius:10px;background:#fff;padding:4px}.nav-brand .logo img{width:100%;height:100%;border-radius:6px}.nav-brand>span{display:block;line-height:1.15;min-width:0}.nav-brand small{display:block;font-family:var(--font);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--sidebar-text) 70%,transparent)}.nav-group{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:color-mix(in srgb,var(--sidebar-text) 55%,transparent);padding:14px 12px 4px}.nav.collapsed .nav-group{visibility:hidden;height:8px;padding:0}.nav-item{padding:9px 12px;border-radius:10px;font-weight:550;gap:12px}.nav-item.router-link-active,.nav-item.active{background:#ffffff1a;color:#fff;box-shadow:inset 3px 0 0 var(--sage)}.nav-item .icon{opacity:.9}.topbar{background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.topbar .search-box .input{background:var(--surface-2);border-radius:12px;height:38px}.topbar .page-title{font-family:var(--font-display);font-size:18px;font-weight:600;white-space:nowrap}.quick-act{display:flex;gap:6px}@media(max-width:900px){.quick-act .lbl,.topbar .page-title{display:none}}.page-h{background:color-mix(in srgb,var(--surface) 70%,transparent);padding:14px 24px;min-height:64px}.page-h h1{font-size:23px}.page-pad{padding:22px 24px 40px}.page-head{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.page-head p{margin:4px 0 0}@media(max-width:700px){.page-pad{padding:16px 14px 32px}h1,.page-h h1{font-size:20px}.page-h{padding:10px 14px}}.hero{position:relative;border-radius:20px;overflow:hidden;background:var(--ivory) var(--hero-bg, none) right center / cover no-repeat;border:1px solid var(--border);padding:26px 30px;margin-bottom:18px;min-height:150px;display:flex;flex-direction:column;justify-content:center}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--ivory) 30%,color-mix(in srgb,var(--ivory) 70%,transparent) 55%,transparent 80%)}.hero>*{position:relative;max-width:560px}.hero h1{font-size:30px}.hero p{color:var(--text-2);margin:6px 0 0}:root[data-theme=dark] .hero{background-color:var(--surface)}:root[data-theme=dark] .hero:before{background:linear-gradient(90deg,var(--surface) 40%,color-mix(in srgb,var(--surface) 75%,transparent) 70%,color-mix(in srgb,var(--surface) 40%,transparent))}.p-head{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:18px 22px;margin-bottom:16px}.p-head h1{font-size:28px}.tabs{gap:2px;border-bottom:1px solid var(--border)}.tabs .tab{border-radius:10px 10px 0 0;font-weight:600}.tabs .tab.active,.tabs .tab.on{color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.login-split{display:grid;grid-template-columns:minmax(380px,1fr) 1.1fr;min-height:100%;background:var(--surface)}.login-split .l-form{display:flex;flex-direction:column;justify-content:center;padding:48px clamp(28px,6vw,90px)}.login-split .l-art{background:var(--ink) var(--login-bg, none) center / cover no-repeat;position:relative}.login-split .l-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 50%,rgba(10,28,28,.55))}.login-split .l-quote{position:absolute;left:40px;right:40px;bottom:36px;color:#fff;z-index:1;font-family:var(--font-display);font-size:22px;line-height:1.3;max-width:520px}.login-split .l-quote small{display:block;font-family:var(--font);font-size:12.5px;opacity:.8;margin-top:8px;letter-spacing:.02em}.l-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:22px;font-weight:600;margin-bottom:34px}.l-brand img{width:40px;height:40px}@media(max-width:860px){.login-split{grid-template-columns:1fr}.login-split .l-art{display:none}}.doc-quick{display:flex;flex-wrap:wrap;gap:8px}.doc-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font:inherit;font-weight:600;color:var(--text-2);cursor:pointer;box-shadow:var(--shadow-sm)}.doc-chip:hover{border-color:var(--primary);color:var(--primary)}.doc-ico{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary);flex:none}.doc-maker{display:grid;grid-template-columns:minmax(340px,440px) 1fr;gap:18px;min-height:62vh}.doc-form{max-height:70vh;overflow:auto;padding-right:6px}.doc-preview{background:var(--surface-3);border-radius:14px;padding:12px;display:flex;flex-direction:column;min-width:0}.doc-frame{width:100%;height:60vh;border:0;border-radius:10px;background:#fff;box-shadow:var(--shadow)}.doc-frame.tall{height:72vh}@media(max-width:980px){.doc-maker{grid-template-columns:1fr}.doc-form{max-height:none}}.ph-pick{display:flex;flex-wrap:wrap;gap:6px}.ph-opt{position:relative;width:74px;height:74px;border-radius:10px;border:2px solid transparent;overflow:hidden;padding:0;background:var(--surface-3);cursor:pointer}.ph-opt img{width:100%;height:100%;object-fit:cover;display:block}.ph-opt.on{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.ph-n{position:absolute;top:4px;left:4px;background:var(--primary);color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center}.title-input{font-family:var(--font-display);font-size:19px;font-weight:600;border-color:transparent;background:transparent;max-width:520px}.title-input:hover,.title-input:focus{border-color:var(--border-strong);background:var(--surface)}.designer{display:grid;grid-template-columns:300px minmax(300px,380px) 1fr;gap:16px;height:74vh}.designer>*{min-height:0;overflow:auto}.d-left,.d-mid{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:12px}.d-right{background:var(--surface-3);border-radius:14px;padding:12px;display:flex;flex-direction:column}.d-right .doc-frame{flex:1;height:auto;min-height:400px}.designer .d-left:only-child,.designer .d-left+.d-right{grid-column:auto}@media(max-width:1200px){.designer{grid-template-columns:1fr 1fr;height:auto}.d-right{grid-column:1 / -1}.d-right .doc-frame{min-height:70vh}}@media(max-width:760px){.designer{grid-template-columns:1fr}}.blk-list{display:flex;flex-direction:column;gap:4px}.blk{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--border);cursor:pointer;font-size:13px}.blk.on{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.blk .grow{min-width:0}.add-blk{position:relative;margin-top:10px}.add-menu{margin-top:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:4px;max-height:320px;overflow:auto}.add-menu .menu-item{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:7px 9px;border-radius:8px;font:inherit;text-align:left;cursor:pointer;color:var(--text)}.add-menu .menu-item:hover{background:var(--surface-3)}.btn.full{width:100%;justify-content:center}.fld-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:9px;margin-bottom:8px}.var-chips{display:flex;flex-wrap:wrap;gap:4px}.var-chip{border:1px dashed var(--border-strong);background:var(--surface);border-radius:8px;padding:2px 7px;font-size:11.5px;font-family:ui-monospace,Menlo,Consolas,monospace;cursor:pointer;color:var(--text-2)}.var-chip:hover{border-color:var(--primary);color:var(--primary)}.cover-thumb{width:64px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--border)}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.tpl-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.tpl-card.off{opacity:.55}.tpl-ico{width:42px;height:42px;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.tpl-ico.alt{background:color-mix(in srgb,var(--clay) 85%,#000)}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-field .ph-grid-sm{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ph-cell{position:relative;width:86px;height:86px;border-radius:12px;overflow:hidden;background:var(--surface-3)}.ph-cell img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}.ph-ph{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:var(--text-3)}.ph-x{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:999px;border:0;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.ph-add{width:86px;height:86px;border-radius:12px;border:1.5px dashed var(--border-strong);background:var(--surface-2);color:var(--text-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.ph-add:hover{border-color:var(--primary);color:var(--primary)}.ph-zoom{position:fixed;top:0;right:0;bottom:0;left:0;background:#081212e0;z-index:4000;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:zoom-out;padding:20px}.ph-zoom img{max-width:100%;max-height:88vh;border-radius:10px;box-shadow:0 20px 60px #00000080}.ph-zoom-cap{color:#e6efec;margin-top:10px;font-size:13px}.ph-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.ph-tile{position:relative;margin:0;border-radius:14px;overflow:hidden;background:var(--surface-3);aspect-ratio:1 / 1;cursor:pointer;border:2px solid transparent}.ph-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.ph-tile:hover img{transform:scale(1.03)}.ph-tile.on{border-color:var(--primary)}.ph-tile figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 8px 6px;font-size:11.5px;color:#fff;background:linear-gradient(transparent,#0000008c);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ph-open{position:absolute;top:6px;right:6px;border:0;border-radius:999px;width:26px;height:26px;background:#ffffffd9;cursor:pointer;display:flex;align-items:center;justify-content:center}.ph-day{margin-bottom:8px}.cam{background:#0b1414;border-radius:14px;overflow:hidden;position:relative;aspect-ratio:4 / 3}.cam video{width:100%;height:100%;object-fit:contain;display:block}.cam-err{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#fbd5c5;padding:20px;text-align:center}.cmp{position:relative;border-radius:14px;overflow:hidden;background:#000}.cmp img{width:100%;display:block;max-height:64vh;object-fit:contain}.cmp-top{position:absolute;top:0;right:0;bottom:0;left:0}.cmp-bar{position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 0 1px #0003;pointer-events:none}.cmp-range{width:100%;margin:10px 0 4px;accent-color:var(--primary)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card.w1{grid-column:span 1}.stat-card.w2{grid-column:span 2}.stat-card.w3{grid-column:span 3}.stat-card.w4{grid-column:span 4}@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card.w3,.stat-card.w4{grid-column:span 2}}@media(max-width:700px){.stat-grid{grid-template-columns:1fr}.stat-card{grid-column:span 1!important}}.stat-card .card-h h3{font-size:15px;min-width:0}.stat-kpi{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.stat-kpi b{font-family:var(--font-display);font-size:30px;font-weight:600;letter-spacing:-.02em}.stat-kpi span{color:var(--text-3);font-size:12px}.stat-chart{position:relative}.stat-editor{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:900px){.stat-editor{grid-template-columns:1fr}}.stat-preview{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:12px;margin-top:10px}.chart-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px}.chart-pick button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:11.5px;color:var(--text-2);cursor:pointer}.chart-pick button.on{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.filters-box{border:1px solid var(--border);border-radius:12px;padding:8px 12px;background:var(--surface-2)}.filters-box summary{cursor:pointer;font-weight:600;color:var(--text-2)}.chk-list{max-height:160px;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:6px 10px;background:var(--surface);display:flex;flex-direction:column;gap:2px}.chk-list.sm{max-height:110px}.table.compact td,.table.compact th{padding:5px 8px;font-size:12.5px}td.r,th.r{text-align:right}.meter{height:10px;border-radius:999px;background:var(--surface-3);overflow:hidden}.meter span{display:block;height:100%;border-radius:999px;transition:width .4s}.big{font-family:var(--font-display);font-size:24px}.inline-num{width:64px;display:inline-block;height:26px;padding:0 6px}.pay-prov{border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin-bottom:10px;background:var(--surface-2)}.prof-photo{width:76px;height:76px;border-radius:50%;background:var(--surface-3);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--text-3);flex:none}.prof-photo img{width:100%;height:100%;object-fit:cover}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:none}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.nav.collapsed{width:64px}.nav.collapsed .nav-brand{padding:13px 14px}@media(max-width:900px){.nav{position:fixed;z-index:980;height:100%;top:0;left:-260px;box-shadow:none;transition:left .2s ease,box-shadow .2s}.nav.open{left:0}.nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:970;background:#08141461}.nav.collapsed{width:232px}.nav.collapsed .nav-group{visibility:visible;height:auto;padding:14px 12px 4px}}.empty-state.sm{padding:18px 16px}.empty-state.sm img.ill{width:110px;height:88px}:root[data-theme=dark] .empty-state img.ill{filter:brightness(1.35) saturate(.9)}.cap1{display:inline-block}.cap1:first-letter{text-transform:uppercase}@media(max-width:600px){.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi .v{font-size:24px}.hero{padding:20px}.hero h1{font-size:24px}.hero:before{background:linear-gradient(90deg,var(--ivory) 45%,color-mix(in srgb,var(--ivory) 70%,transparent) 75%,transparent)}}.html-ed{display:flex;border:1px solid var(--border-strong);border-radius:12px;overflow:hidden;background:#10201f;color:#dce9e5;font:12.5px/1.6 ui-monospace,Cascadia Code,Menlo,Consolas,monospace;height:100%}.html-ed-g{flex:none;width:42px;padding:10px 6px 10px 0;text-align:right;color:#5f7a76;background:#0c1918;overflow:hidden;-webkit-user-select:none;user-select:none;border-right:1px solid #1f3534}.html-ed-t{flex:1;min-width:0;border:0;outline:0;resize:none;padding:10px 12px;background:transparent;color:inherit;font:inherit;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto;caret-color:#8fe0c8}.html-ed-t::placeholder{color:#5f7a76}.html-ed:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.mode-switch{display:inline-flex;gap:2px;background:var(--surface-3);border-radius:10px;padding:3px}.mode-switch button{border:0;background:none;padding:5px 12px;border-radius:8px;font:inherit;font-weight:600;font-size:12.5px;color:var(--text-2);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.mode-switch button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.page-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.page-opt{border:1.5px solid var(--border);border-radius:12px;background:var(--surface);padding:10px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;font:inherit;color:var(--text-2);text-align:center}.page-opt:hover{border-color:var(--border-strong)}.page-opt.on{border-color:var(--primary);color:var(--text);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 15%,transparent)}.page-opt .sheet{background:#fff;border:1px solid var(--border-strong);border-radius:2px;box-shadow:0 2px 6px #00000014;position:relative}.page-opt .sheet:after{content:"";position:absolute;left:18%;right:18%;top:14%;height:2px;background:color-mix(in srgb,var(--primary) 55%,transparent);box-shadow:0 6px 0 var(--border),0 11px 0 var(--border),0 16px 0 var(--border)}.page-opt b{font-size:12.5px}.page-opt small{font-size:10.5px;color:var(--text-3);line-height:1.2}.dyn-chip{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:12.5px;text-align:left;cursor:pointer;color:var(--text);margin-bottom:4px}.dyn-chip:hover{border-color:var(--primary)}.dyn-chip code{font-size:11px;color:var(--text-3)}.html-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:64vh}.html-split>*{min-width:0;display:flex;flex-direction:column}@media(max-width:980px){.html-split{grid-template-columns:1fr}}.designer.html-mode{grid-template-columns:270px minmax(380px,1.15fr) minmax(320px,1fr)}.d-mid.d-code{display:flex;flex-direction:column;gap:4px}.d-mid.d-code .html-ed{min-height:52vh}@media(max-width:1200px){.designer.html-mode{grid-template-columns:1fr 1fr}}@media(max-width:760px){.designer.html-mode{grid-template-columns:1fr}}.page-pick.sm{grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:6px}.page-pick.sm .page-opt{padding:7px 4px 6px;gap:4px;border-radius:10px}.page-pick.sm .page-opt b{font-size:11.5px;font-weight:600}.audit-opt{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--surface-2)}.audit-opt.on{border-color:color-mix(in srgb,var(--warning) 55%,transparent);background:color-mix(in srgb,var(--warning) 8%,var(--surface))}
