:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0px;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--blue-50:#eff6ff;--blue-100:#dbeafe;--blue-200:#bfdbfe;--blue-300:#93c5fd;--blue-400:#60a5fa;--blue-500:#2196f3;--blue-600:#1976d2;--blue-700:#1565c0;--blue-800:#0d47a1;--green-50:#ecfdf5;--green-100:#d1fae5;--green-300:#6ee7b7;--green-500:#10b981;--green-600:#059669;--green-700:#047857;--green-800:#065f46;--teal-100:#ccfbf1;--teal-600:#0d9488;--amber-100:#fef3c7;--amber-500:#f59e0b;--amber-600:#d97706;--red-50:#fef2f2;--red-100:#fee2e2;--red-500:#ef4444;--red-700:#b91c1c;--purple-100:#ede9fe;--purple-600:#7c3aed;--orange-100:#ffedd5;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--bg-app:#f5f7fb;--bg-card:#fff;--bg-input:#fff;--bg-hover:#f3f6fb;--border:#e5e7eb;--border-strong:#d1d5db;--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-full:999px;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 12px #0f172a14;--shadow-lg:0 8px 24px #0f172a1a;--shadow-xl:0 20px 40px #0f172a26;--shadow-blue:0 6px 16px #0d47a133;--shadow-green:0 6px 16px #05966933;--sidebar-w:240px;--sidebar-collapsed:64px;--t-fast:all 0.12s ease;--t-base:all 0.18s ease}[data-theme=dark]{--bg-app:#0f172a;--bg-card:#1e293b;--bg-input:#1e293b;--bg-hover:#273449;--border:#334155;--border-strong:#475569;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--gray-50:#1e293b;--gray-100:#273449;--gray-200:#334155}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;scroll-behavior:smooth}body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font);line-height:1.6;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}button{background:none;border:none;cursor:pointer;font-size:inherit}button,input,select,textarea{font-family:var(--font)}img{display:block;max-width:100%}ol,ul{list-style:none}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.app-shell{height:100vh}.app-shell,.main-area{display:flex;overflow:hidden}.main-area{flex:1 1;flex-direction:column;margin-left:var(--sidebar-w);transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.main-area.sidebar-collapsed{margin-left:var(--sidebar-collapsed)}.page-body{flex:1 1;overflow-y:auto;padding:24px 28px 40px}.page-header{margin-bottom:24px}.page-header h1{color:var(--text-primary);font-size:1.45rem;font-weight:800;letter-spacing:-.025em;line-height:1.2}.page-header-sub{color:var(--text-muted);font-size:.83rem;margin-top:3px}.page-header-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.breadcrumb{align-items:center;color:var(--text-muted);display:flex;font-size:.76rem;gap:5px;margin-bottom:6px}.breadcrumb .bc-sep{opacity:.4}.breadcrumb .bc-cur{color:var(--text-secondary);font-weight:600}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:var(--t-base)}.card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.card-header h3{color:var(--text-primary);font-size:.9rem;font-weight:700}.card-header-left{align-items:center;display:flex;gap:10px}.card-body{padding:20px}.card-footer{border-top:1px solid var(--border);padding:12px 20px}.kpi-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);cursor:default;display:flex;flex-direction:column;gap:10px;overflow:hidden;padding:16px 18px;position:relative;transition:var(--t-base)}.kpi-card:after{background:var(--blue-500);background:var(--kpi-accent,var(--blue-500));border-radius:var(--r-lg) var(--r-lg) 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-top{justify-content:space-between}.kpi-icon,.kpi-top{align-items:center;display:flex}.kpi-icon{background:var(--blue-50);background:var(--kpi-bg,var(--blue-50));border-radius:var(--r-md);color:var(--blue-500);color:var(--kpi-accent,var(--blue-500));flex-shrink:0;height:36px;justify-content:center;width:36px}.kpi-change{align-items:center;display:flex;font-size:.72rem;font-weight:600;gap:3px}.kpi-change.up{color:var(--green-600)}.kpi-change.down{color:var(--red-500)}.kpi-value{color:var(--text-primary);font-size:1.65rem;font-weight:800;letter-spacing:-.035em;line-height:1}.kpi-label{color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.btn{align-items:center;border:1.5px solid #0000;border-radius:var(--r-md);display:inline-flex;font-size:.83rem;font-weight:600;gap:7px;line-height:1;padding:8px 16px;transition:var(--t-base);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--blue-800);border-color:var(--blue-800);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue-700);border-color:var(--blue-700);box-shadow:var(--shadow-blue)}.btn-success{background:var(--green-600);border-color:var(--green-600);color:#fff}.btn-success:hover:not(:disabled){background:var(--green-700);border-color:var(--green-700);box-shadow:var(--shadow-green)}.btn-danger{background:var(--red-500);border-color:var(--red-500);color:#fff}.btn-danger:hover:not(:disabled){background:var(--red-700);border-color:var(--red-700)}.btn-outline{background:#0000;border-color:var(--border-strong);color:var(--text-secondary)}.btn-outline:hover:not(:disabled){background:var(--gray-100);border-color:var(--gray-300);color:var(--text-primary)}.btn-ghost{background:#0000;border-color:#0000;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--gray-100);color:var(--text-primary)}.btn-sm{border-radius:var(--r-sm);font-size:.77rem;padding:5px 11px}.btn-lg{font-size:.92rem;padding:11px 22px}.btn-icon{border-radius:var(--r-md);padding:7px}.btn-icon-sm{border-radius:var(--r-sm);padding:5px}.badge{align-items:center;border-radius:var(--r-full);display:inline-flex;font-size:.7rem;font-weight:700;gap:4px;letter-spacing:.02em;padding:3px 8px;white-space:nowrap}.badge-dot{border-radius:50%;height:6px;width:6px}.b-blue{background:var(--blue-100);color:var(--blue-800)}.b-green{background:var(--green-100);color:#065f46;color:var(--green-800,#065f46)}.b-teal{background:var(--teal-100);color:var(--teal-600)}.b-amber{background:var(--amber-100);color:var(--amber-600)}.b-red{background:var(--red-100);color:var(--red-700)}.b-gray{background:var(--gray-100);color:var(--gray-600)}.b-purple{background:var(--purple-100);color:var(--purple-600)}.b-orange{background:var(--orange-100);color:#c2410c}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{color:var(--text-secondary);font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.form-control{background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--text-primary);font-size:.84rem;outline:none;padding:9px 12px;transition:var(--t-base);width:100%}.form-control:focus{background:var(--bg-card);border-color:var(--blue-500);box-shadow:0 0 0 3px #2196f31f}.form-control::placeholder{color:var(--text-muted)}.form-control:disabled{cursor:not-allowed;opacity:.6}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-row-3{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr 1fr}.form-hint{color:var(--text-muted);font-size:.72rem}.tbl-wrap{border:1px solid var(--border);border-radius:var(--r-lg);overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background:var(--gray-50)}thead th{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.07em;padding:10px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}thead th:first-child{border-radius:var(--r-lg) 0 0 0}thead th:last-child{border-radius:0 var(--r-lg) 0 0}tbody tr{border-bottom:1px solid var(--border);transition:var(--t-fast)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--bg-hover)}tbody td{color:var(--text-primary);font-size:.83rem;padding:12px 16px;vertical-align:middle}.td-bold{font-weight:700}.td-muted{color:var(--text-muted)!important;font-size:.76rem!important}.td-mono{font-family:var(--font-mono);font-size:.78rem}.api-error-banner{align-items:flex-start;animation:slideDown .2s ease;background:var(--red-50);border:1px solid #fecaca;border-left:4px solid var(--red-500);border-radius:var(--r-md);color:var(--red-700);display:flex;font-size:.83rem;gap:10px;line-height:1.4;margin:0 0 12px;padding:10px 12px}.api-error-banner-icon{flex-shrink:0;margin-top:1px}.api-error-banner-text{flex:1 1;word-break:break-word}.api-error-banner-text strong{font-weight:700}.api-error-banner-close{align-items:center;background:#0000;border-radius:var(--r-sm);color:var(--red-700);display:flex;flex-shrink:0;height:22px;justify-content:center;width:22px}.api-error-banner-close:hover{background:#b91c1c1a}.form-field-error{color:var(--red-700);display:block;font-size:.74rem;font-weight:600;margin-top:4px}.modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);background:var(--bg-card);border-radius:var(--r-xl);box-shadow:var(--shadow-xl);max-height:92vh;max-width:680px;overflow:hidden}.modal,.modal>form{display:flex;flex-direction:column;width:100%}.modal>form{flex:1 1;max-height:100%;min-height:0}.modal-sm{max-width:440px}.modal-lg{max-width:900px}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;flex:0 0 auto;justify-content:space-between;padding:20px 24px}.modal-header h2{font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px}.modal-footer{border-top:1px solid var(--border);display:flex;flex:0 0 auto;gap:10px;justify-content:flex-end;padding:16px 24px}.modal-close{align-items:center;border-radius:var(--r-md);color:var(--text-muted);display:flex;height:32px;justify-content:center;transition:var(--t-fast);width:32px}.modal-close:hover{color:var(--text-primary)}.modal-close:hover,.tabs{background:var(--gray-100)}.tabs{border-radius:var(--r-md);display:flex;flex-shrink:0;gap:2px;margin-bottom:20px;overflow-x:auto;padding:4px}.tab-btn{border-radius:var(--r-sm);color:var(--text-muted);cursor:pointer;font-size:.79rem;font-weight:600;padding:6px 14px;transition:var(--t-base);white-space:nowrap}.tab-btn.active{background:var(--bg-card);box-shadow:var(--shadow-sm);color:var(--blue-800)}.tab-btn:hover:not(.active){background:#ffffff80;color:var(--text-primary)}.toolbar{flex-wrap:wrap;margin-bottom:18px}.toolbar,.toolbar-right{align-items:center;display:flex;gap:8px}.toolbar-right{margin-left:auto}.search-field{align-items:center;display:flex;position:relative}.search-field .si{color:var(--text-muted);left:10px;pointer-events:none;position:absolute}.search-field input{min-width:220px;padding-left:32px}.filter-pills{display:flex;flex-wrap:wrap;gap:5px}.f-pill{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-full);color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:600;padding:4px 12px;transition:var(--t-base)}.f-pill:hover:not(.active){border-color:var(--blue-400);color:var(--blue-800)}.f-pill.active{background:var(--blue-800);border-color:var(--blue-800);color:#fff}.dropdown{position:relative}.dd-menu{animation:slideDown .18s ease;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);min-width:180px;padding:5px;position:absolute;right:0;top:calc(100% + 6px);z-index:300}.dd-menu.left{left:0;right:auto}.dd-item{align-items:center;border-radius:var(--r-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:.83rem;gap:8px;padding:8px 11px;transition:var(--t-fast)}.dd-item:hover{background:var(--gray-100)}.dd-item.danger{color:var(--red-500)}.dd-item.danger:hover{background:var(--red-50)}.dd-divider{background:var(--border);height:1px;margin:4px 0}.avatar{align-items:center;background:linear-gradient(135deg,var(--blue-600),var(--green-600));border-radius:var(--r-full);color:#fff;display:flex;flex-shrink:0;font-weight:800;justify-content:center;text-transform:uppercase}.av-sm{font-size:.65rem;height:28px;width:28px}.av-md{font-size:.78rem;height:34px;width:34px}.av-lg{font-size:1rem;height:48px;width:48px}.av-xl{font-size:1.3rem;height:64px;width:64px}.progress-track{background:var(--gray-100);border-radius:var(--r-full);height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--blue-500),var(--green-500));border-radius:var(--r-full);height:100%;transition:width .6s ease}.g-2{grid-gap:18px;grid-template-columns:1fr 1fr}.g-2,.g-3{display:grid;gap:18px}.g-3{grid-gap:18px;grid-template-columns:1fr 1fr 1fr}.g-4{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.g-auto{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.empty-state{color:var(--text-muted);padding:52px 20px;text-align:center}.empty-state .es-icon{margin:0 auto 14px;opacity:.25}.empty-state h3{color:var(--text-secondary);font-size:1rem;font-weight:700;margin-bottom:5px}.empty-state p{font-size:.82rem;margin:0 auto;max-width:280px}.stat-row{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:9px 0}.stat-row:last-child{border-bottom:none;padding-bottom:0}.sr-label{color:var(--text-secondary);font-size:.81rem}.sr-value{color:var(--text-primary);font-size:.88rem;font-weight:700}.kanban-board{display:flex;gap:12px;min-height:520px;overflow-x:auto;padding-bottom:16px}.kanban-col{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--r-lg);display:flex;flex:0 0 240px;flex-direction:column}.kanban-col-head{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:10px 12px}.kanban-col-head h4{color:var(--text-primary);font-size:.78rem;font-weight:700}.k-count{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-full);color:var(--text-secondary);display:flex;font-size:.7rem;font-weight:800;height:20px;justify-content:center;min-width:20px}.kanban-cards{display:flex;flex:1 1;flex-direction:column;gap:6px;overflow-y:auto;padding:8px}.k-card{animation:fadeIn .2s ease;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;padding:11px;transition:var(--t-base)}.k-card:hover{border-color:var(--blue-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.k-card-name{color:var(--text-primary);font-size:.83rem;font-weight:700;margin-bottom:7px}.k-card-row{align-items:center;color:var(--text-muted);display:flex;font-size:.71rem;gap:4px;margin-bottom:2px}.timeline{display:flex;flex-direction:column}.tl-item{display:flex;gap:12px;padding-bottom:18px;position:relative}.tl-item:last-child{padding-bottom:0}.tl-dot{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:30px;justify-content:center;margin-top:1px;width:30px}.tl-line{background:var(--border);bottom:0;left:14px;position:absolute;top:30px;width:2px}.tl-item:last-child .tl-line{display:none}.tl-content{flex:1 1;padding-top:3px}.tl-text{color:var(--text-primary);font-size:.82rem;line-height:1.4;margin-bottom:2px}.tl-time{color:var(--text-muted);font-size:.72rem}.skeleton{animation:shimmer 1.6s infinite;background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;border-radius:var(--r-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.divider{background:var(--border);height:1px;margin:16px 0}.chart-tooltip{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md);font-size:.79rem;padding:10px 14px}.ct-label{color:var(--text-primary);font-weight:800;margin-bottom:5px}.ct-row{align-items:center;display:flex;gap:6px;margin-bottom:2px}.ct-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.ct-name{color:var(--text-secondary)}.ct-val{color:var(--text-primary);font-weight:700;margin-left:auto}.info-row{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;gap:10px;padding:9px 0}.info-row:last-child{border-bottom:none}.ir-label{color:var(--text-muted);flex-shrink:0;font-size:.72rem;font-weight:700;letter-spacing:.05em;min-width:120px;padding-top:1px;text-transform:uppercase}.ir-value{color:var(--text-primary);font-size:.84rem;font-weight:500}.notif-item{border-bottom:1px solid var(--border);cursor:pointer;display:flex;gap:10px;padding:10px 16px;transition:var(--t-fast)}.notif-item:hover{background:var(--gray-50)}.notif-item.unread{background:var(--blue-50)}[data-theme=dark] .notif-item.unread{background:#2196f312}.notif-item:last-child{border-bottom:none}.ni-dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:5px;width:8px}.ni-text{color:var(--text-primary);font-size:.79rem;line-height:1.4;margin-bottom:2px}.ni-time{color:var(--text-muted);font-size:.71rem}.appt-slot{align-items:center;background:var(--gray-50);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:var(--t-base)}.appt-slot:hover{background:var(--blue-50);border-color:var(--blue-300)}.as-time{color:var(--blue-800);font-size:.77rem;font-weight:800;min-width:65px}.as-info{flex:1 1;min-width:0}.as-name{color:var(--text-primary);font-size:.83rem;font-weight:700}.as-sub{color:var(--text-muted);font-size:.73rem}.reminder-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:14px;transition:var(--t-base)}.reminder-card:hover{border-color:var(--amber-500);box-shadow:0 0 0 2px #f59e0b1a}.code-tag{background:var(--gray-100);border-radius:var(--r-sm);color:var(--blue-800);font-family:var(--font-mono);font-size:.76rem;font-weight:600;padding:2px 7px}.view-toggle{border:1.5px solid var(--border);border-radius:var(--r-md);display:flex;overflow:hidden}.vt-btn{align-items:center;color:var(--text-muted);display:flex;font-size:.79rem;font-weight:600;gap:5px;padding:6px 12px;transition:var(--t-fast)}.vt-btn.active{background:var(--blue-800);color:#fff}.vt-btn:hover:not(.active){background:var(--gray-100);color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.anim-fade{animation:fadeIn .3s ease}.anim-slide{animation:slideIn .3s ease}@media (max-width:1200px){.g-4{grid-template-columns:repeat(2,1fr)}.g-3{grid-template-columns:1fr 1fr}}@media (max-width:768px){.main-area{margin-left:0!important}.page-body{padding:16px 14px 32px}.form-row,.form-row-3,.g-2,.g-3,.g-4{grid-template-columns:1fr}.col-2,.col-3{grid-column:span 1}.kpi-grid{grid-template-columns:repeat(2,1fr)}.toolbar{gap:6px}.toolbar-right{margin-left:0;width:100%}.search-field input{min-width:160px}}.cal-conflict-advisory{background:#fffbeb!important;background:var(--amber-50,#fffbeb)!important;border:1px solid #fde68a!important;border:1px solid var(--amber-200,#fde68a)!important;color:#92400e!important}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-webkit-appearance:textfield;appearance:textfield}.bill-register td,.bill-register th{font-size:.84rem;padding:8px 10px}.bill-register .bill-treatment{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bill-sort-th{-webkit-user-select:none;user-select:none}.bill-sort-th:hover{color:var(--text-primary)}.bill-cell.is-clickable{border-radius:var(--r-sm);cursor:text}.bill-cell.is-clickable:hover{background:var(--bg-hover);box-shadow:inset 0 0 0 1px var(--border-strong)}.bill-row-editing{background:#3b82f60f}.bill-input{display:block;height:30px;margin-left:auto;max-width:110px;min-width:72px;padding:2px 6px;text-align:right}@media (max-width:480px){.kpi-grid{grid-template-columns:1fr}}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;transition:width .3s cubic-bezier(.4,0,.2,1);width:var(--sidebar-w);z-index:50}.sidebar.collapsed{width:var(--sidebar-collapsed)}.sidebar-brand{border-bottom:1px solid var(--border);gap:10px;min-height:64px;padding:16px}.brand-mark,.sidebar-brand{align-items:center;display:flex}.brand-mark{background:linear-gradient(135deg,var(--blue-600),var(--green-500));border-radius:var(--r-md);color:#fff;flex-shrink:0;height:36px;justify-content:center;width:36px}.brand-logo{flex-shrink:0;max-width:40px;object-fit:contain}.sidebar.collapsed .brand-logo{height:32px!important;margin:0 auto;max-width:32px}.brand-name{color:var(--text-primary);font-size:.95rem;font-weight:800;letter-spacing:-.02em}.brand-sub{color:var(--text-muted);font-size:.7rem}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:12px 8px}.sb-link{align-items:center;border-radius:var(--r-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.84rem;font-weight:600;gap:12px;padding:9px 12px;transition:var(--t-fast);white-space:nowrap}.sb-link:hover{background:var(--gray-100);color:var(--text-primary)}.sb-link.active{background:var(--blue-50);color:var(--blue-800)}.sb-link.active svg{color:var(--blue-700)}.sidebar.collapsed .sb-link{justify-content:center;padding:10px}.topbar{align-items:center;background:var(--bg-card);border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:12px;height:64px;padding:12px 24px}.topbar .search-field input{min-width:280px}.topbar-user{align-items:center;border-radius:var(--r-md);cursor:pointer;display:flex;gap:10px;padding:4px 8px 4px 4px;transition:var(--t-fast)}.topbar-user:hover{background:var(--gray-100)}.topbar-user-text{text-align:left}.topbar-user-name{color:var(--text-primary);font-size:.83rem;font-weight:700}.topbar-user-role{color:var(--text-muted);font-size:.7rem}.drawer-overlay{animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:1100}.drawer{animation:slideInRight .25s cubic-bezier(.4,0,.2,1);background:var(--bg-card);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;height:100vh;max-width:560px;width:100%}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.drawer .modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:18px 22px}.drawer .modal-body{display:flex;flex:1 1;flex-direction:column;gap:0;overflow-y:auto;padding:22px}.auth-shell{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.auth-art{background:radial-gradient(1200px 600px at 15% -10%,#ffffff29,#0000 60%),linear-gradient(150deg,#1e40af,#2563eb 42%,#16a34a);background:radial-gradient(1200px 600px at 15% -10%,#ffffff29,#0000 60%),linear-gradient(150deg,var(--blue-800,#1e40af) 0,var(--blue-600,#2563eb) 42%,var(--green-600,#16a34a) 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:56px 60px;position:relative}.auth-art-watermark{bottom:-80px;filter:grayscale(1) brightness(2.5);height:460px;object-fit:contain;opacity:.1;pointer-events:none;position:absolute;right:-80px;width:460px;z-index:0}.auth-art>:not(.auth-art-watermark){position:relative;z-index:1}.auth-art-center{display:flex;flex-direction:column}.auth-logo-lg{border-radius:18px;box-shadow:0 8px 30px #0000002e;height:92px;margin-bottom:22px;padding:10px;width:92px}.auth-logo-lg,.auth-logo-sm{background:#ffffffeb;object-fit:contain}.auth-logo-sm{border-radius:8px;height:30px;padding:3px;width:30px}.auth-art h1{font-size:2.1rem;font-weight:800;line-height:1.18;max-width:520px}.auth-art p{font-size:1rem;line-height:1.55;margin-top:16px;max-width:500px;opacity:.92}.auth-art .auth-art-brand{align-items:center;display:flex;font-size:1.05rem;font-weight:700;gap:12px}.auth-art .auth-art-foot{font-size:.8rem;opacity:.8}.auth-form-wrap{align-items:center;background:var(--bg-app);display:flex;justify-content:center;padding:60px 40px}.auth-form{max-width:400px;width:100%}.auth-form-logo{border-radius:14px;display:none;height:64px;margin-bottom:18px;object-fit:contain;width:64px}.auth-form h2{color:var(--text-primary);font-size:1.6rem;font-weight:800;margin-bottom:6px}.auth-form .auth-sub{color:var(--text-muted);font-size:.9rem;margin-bottom:32px}.auth-error{background:var(--red-50);border:1px solid #fecaca;border-radius:var(--r-md);color:var(--red-700);font-size:.83rem;margin-bottom:16px;padding:10px 12px}.auth-pw-wrap{position:relative}.auth-pw-wrap .form-control{padding-right:42px}.auth-pw-toggle{align-items:center;background:#0000;border:none;border-radius:var(--r-sm);color:var(--text-muted);cursor:pointer;display:flex;height:30px;justify-content:center;position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px}.auth-pw-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}@media (max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-form-logo{display:block}}.pcb-wrap{width:100%}.pcb-input-wrap,.pcb-wrap{position:relative}.pcb-input-icon{color:var(--text-muted);left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.pcb-input{padding-left:34px}.pcb-dropdown{animation:slideDown .15s ease;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md);left:0;max-height:320px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:50}.pcb-hint{color:var(--text-muted);font-size:.8rem;font-style:italic;padding:14px 16px}.pcb-row{align-items:center;background:#0000;border:none;border-bottom:1px solid var(--gray-100);cursor:pointer;display:flex;gap:10px;padding:10px 14px;text-align:left;transition:var(--t-fast);width:100%}.pcb-row:last-child{border-bottom:none}.pcb-row:hover{background:var(--bg-hover)}.pcb-row-avatar{align-items:center;background:linear-gradient(135deg,var(--blue-100),var(--green-100));border-radius:50%;color:var(--blue-800);display:flex;flex-shrink:0;font-size:.74rem;font-weight:800;height:32px;justify-content:center;width:32px}.pcb-row-main{flex:1 1;min-width:0}.pcb-row-name{align-items:baseline;color:var(--text-primary);display:flex;font-size:.86rem;font-weight:700;gap:8px}.pcb-row-code{color:var(--blue-700);font-family:var(--font-mono);font-size:.74rem;font-weight:700}.pcb-row-meta{color:var(--text-muted);font-size:.74rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pcb-create-row{align-items:center;background:var(--green-50);border:none;border-top:1px solid var(--gray-100);color:var(--green-700);cursor:pointer;display:flex;font-size:.83rem;font-weight:700;gap:8px;padding:11px 14px;text-align:left;transition:var(--t-fast);width:100%}.pcb-create-row:hover{background:var(--green-100)}.pcb-selected{align-items:center;background:var(--blue-50);border:1.5px solid var(--blue-300);border-radius:var(--r-md);display:flex;gap:12px;padding:10px 14px}.pcb-selected-avatar{align-items:center;background:var(--blue-700);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.82rem;font-weight:800;height:36px;justify-content:center;width:36px}.pcb-selected-info{flex:1 1;min-width:0}.pcb-selected-name{align-items:baseline;color:var(--text-primary);display:flex;font-size:.92rem;font-weight:800;gap:8px}.pcb-selected-code{background:#ffffffb3;border-radius:var(--r-sm);color:var(--blue-800);font-family:var(--font-mono);font-size:.76rem;font-weight:700;padding:1px 6px}.pcb-selected-meta{color:var(--text-secondary);font-size:.78rem;margin-top:2px}.pcb-clear{align-items:center;background:#ffffffb3;border-radius:var(--r-sm);color:var(--blue-800);cursor:pointer;display:flex;flex-shrink:0;height:26px;justify-content:center;transition:var(--t-fast);width:26px}.pcb-clear:hover{background:#fff}.cal-page{flex-direction:column;height:calc(100vh - 64px);margin:-24px -28px -40px}.cal-header,.cal-page{background:var(--bg-card);display:flex}.cal-header{align-items:center;border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;gap:12px;padding:12px 18px}.cal-header-title{align-items:center;display:flex;gap:10px}.cal-header-title h1{color:var(--text-primary);font-size:1.25rem;font-weight:800;margin:0}.cal-header-title .cal-clinic{color:var(--text-muted);font-size:.85rem}.cal-header-spacer{flex:1 1 auto}.cal-date-nav{align-items:center;color:var(--text-primary);display:flex;font-size:.9rem;font-weight:600;gap:8px}.cal-date-nav .cal-nav-btn{align-items:center;background:#0000;border-radius:var(--r-md);color:var(--text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;transition:var(--t-fast);width:28px}.cal-date-nav .cal-nav-btn:hover{background:var(--gray-100)}.cal-date-nav .cal-date-label{min-width:170px;text-align:center}.cal-view-toggle{border:1px solid var(--border);border-radius:var(--r-md);display:flex;overflow:hidden}.cal-view-toggle button{background:var(--bg-card);border-right:1px solid var(--border);color:var(--text-secondary);font-size:.81rem;font-weight:600;padding:6px 14px;transition:var(--t-fast)}.cal-view-toggle button:last-child{border-right:none}.cal-view-toggle button.active{background:var(--blue-700);color:#fff}.cal-view-toggle button:hover:not(.active){background:var(--gray-50)}.cal-header-icon{align-items:center;background:#0000;border-radius:var(--r-md);color:var(--text-secondary);display:flex;height:34px;justify-content:center;transition:var(--t-fast);width:34px}.cal-header-icon:hover{background:var(--gray-100);color:var(--text-primary)}.cal-body{display:grid;flex:1 1;grid-template-columns:220px 1fr 300px;min-height:0}.cal-left{border-right:1px solid var(--border);flex-direction:column;overflow-y:auto}.cal-block-btn,.cal-left{background:var(--bg-card);display:flex}.cal-block-btn{align-items:center;border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:600;gap:8px;margin:14px;padding:9px 12px;transition:var(--t-fast)}.cal-block-btn:hover{background:var(--gray-50);border-color:var(--blue-300)}.cal-section-label{align-items:center;color:var(--text-muted);display:flex;font-size:.7rem;font-weight:700;justify-content:space-between;letter-spacing:.07em;padding:8px 16px;text-transform:uppercase}.cal-section-label .cal-section-edit{color:var(--blue-700);cursor:pointer;font-size:.7rem;font-weight:700}.cal-doc-list{display:flex;flex-direction:column}.cal-doc{align-items:center;border-left:3px solid #0000;color:var(--text-primary);cursor:pointer;display:flex;font-size:.85rem;gap:10px;padding:8px 16px;transition:var(--t-fast)}.cal-doc:hover{background:var(--gray-50)}.cal-doc.active{background:var(--gray-100);border-left-color:var(--blue-700);font-weight:700}.cal-doc-dot{border-radius:50%;flex-shrink:0;height:9px;width:9px}.cal-doc-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-doc-count{color:var(--text-muted);font-size:.78rem;font-weight:600}.cal-doc.active .cal-doc-count{color:var(--blue-700)}.cal-center{background:var(--bg-app);display:flex;flex-direction:column;overflow:hidden}.cal-collapse-btn{align-items:center;background:#0000;border-radius:var(--r-sm);color:var(--text-muted);display:flex;height:24px;justify-content:center;margin:4px;width:24px}.cal-collapse-btn:hover{background:var(--gray-100);color:var(--text-primary)}.cal-grid-wrap{background:var(--bg-card);flex:1 1;overflow:auto;position:relative}.cal-grid{display:grid;grid-auto-rows:30px;grid-auto-rows:var(--cal-row-height,30px);grid-template-columns:64px repeat(6,minmax(160px,1fr));grid-template-columns:64px repeat(var(--cal-days,6),minmax(var(--cal-day-min-width,160px),1fr));grid-template-rows:auto 34px;min-width:100%;position:relative}.cal-day-header{background:var(--bg-card);border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--text-secondary);font-size:.73rem;font-weight:700;letter-spacing:.05em;overflow:hidden;padding:10px 6px;position:-webkit-sticky;position:sticky;text-align:center;text-overflow:ellipsis;text-transform:uppercase;top:0;white-space:nowrap;z-index:5}.cal-day-header.today{background:#4b5563;color:#fff}.cal-day-header.weekend:not(.today){background:var(--gray-50)}.cal-time-header{top:0;z-index:10}.cal-allday-label,.cal-time-header{background:var(--bg-card);border-bottom:1px solid var(--border);border-right:1px solid var(--border);left:0;position:-webkit-sticky;position:sticky}.cal-allday-label{align-items:flex-start;color:var(--text-muted);display:flex;font-size:.72rem;justify-content:flex-end;padding:8px 8px 4px;text-align:right;z-index:4}.cal-allday-cell{background:var(--bg-card);border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.cal-allday-cell.today{background:#fee2b259}.cal-allday-cell.weekend:not(.today){background:var(--gray-50)}.cal-time-label{align-items:flex-start;background:var(--bg-card);color:var(--text-muted);display:flex;font-size:.68rem;font-weight:600;justify-content:flex-end;left:0;overflow:visible;padding:3px 6px 0 2px;position:-webkit-sticky;position:sticky;text-align:right;z-index:4}.cal-cell,.cal-time-label{border-right:1px solid var(--border)}.cal-cell{border-bottom:1px solid var(--gray-100);cursor:pointer;position:relative;transition:background .1s}.cal-cell:hover{background:#2196f30d}.cal-cell.hour-divider{border-bottom:1px solid var(--border)}.cal-cell.off-hours{background:var(--gray-50)}.cal-cell.off-hours:hover{background:#2196f30f}.cal-cell.today{background:#fee2b24d}.cal-cell.today.hour-divider{background:#fee2b266}.cal-cell.today.off-hours{background:#fee2b24d}.cal-cell.weekend:not(.today){background:var(--gray-50)}.cal-time-overlay{pointer-events:none;position:relative;z-index:6}.cal-now-arrow{border-bottom:6px solid #0000;border-left:9px solid #f59e0b;border-top:6px solid #0000;filter:drop-shadow(0 1px 2px rgba(245,158,11,.35));height:0;left:2px;width:0}.cal-now-arrow,.cal-now-line{position:absolute;transform:translateY(-50%)}.cal-now-line{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b26;height:2px;left:0;pointer-events:none;right:0;z-index:3}.cal-day-overlay{overflow:hidden;pointer-events:none;position:relative;z-index:2}.cal-day-overlay>.cal-appt{pointer-events:auto}.cal-appt{border:1px solid;border-left:4px solid;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;font-size:.72rem;gap:2px;justify-content:flex-start;line-height:1.2;overflow:hidden;padding:4px 6px;position:absolute;transition:transform .1s,box-shadow .1s;z-index:2}.cal-appt:hover{box-shadow:var(--shadow-md);transform:translateY(-1px) scaleX(1.01);z-index:4}.cal-appt-head{align-items:center;display:flex;gap:4px;min-width:0}.cal-appt-head .cal-appt-name{flex:1 1;min-width:0}.cal-appt-meta{align-items:center;display:flex;font-size:.66rem;gap:6px;min-width:0;opacity:.9}.cal-appt-doc{font-weight:600;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-appt--compact{align-items:center;flex-direction:row;gap:4px;padding:2px 5px}.cal-appt--compact .cal-appt-head{flex:1 1}.cal-appt--compact .cal-appt-name{font-size:.68rem}.cal-appt--compact .cal-appt-time--inline{flex-shrink:0;font-size:.65rem;opacity:.85;white-space:nowrap}.cal-appt--mini .cal-status-pill{display:none}.cal-appt--cancelled .cal-appt-doc,.cal-appt--cancelled .cal-appt-name,.cal-appt--cancelled .cal-appt-time{opacity:.55;text-decoration:line-through}.cal-appt--noshow{background-image:repeating-linear-gradient(-45deg,#ef444414,#ef444414 6px,#0000 0,#0000 12px)}.cal-appt--done{opacity:.85}.cal-appt-name{font-size:.72rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-appt-time{font-size:.66rem;font-weight:600;opacity:.85;white-space:nowrap}.cal-appt-status{background:#ffffffb3;border-radius:2px;display:inline-block;flex-shrink:0;font-size:.58rem;font-weight:800;letter-spacing:.04em;margin-right:3px;padding:1px 4px;text-transform:uppercase}.cal-day-header-sub{font-weight:500;letter-spacing:0;opacity:.75;text-transform:none}.cal-right{background:var(--bg-card);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.cal-right-header{align-items:center;border-bottom:1px solid var(--border);color:var(--text-primary);display:flex;font-size:.92rem;font-weight:700;justify-content:space-between;padding:12px 16px}.cal-right-header-nav{display:flex;gap:4px}.cal-right-header-title{align-items:flex-start;display:flex;flex-direction:column;gap:2px;min-width:0}.cal-right-header-title>span:first-child{color:var(--text-primary);font-size:.92rem;font-weight:700;line-height:1.2}.cal-right-header-sub{color:var(--text-muted);font-size:.72rem;font-weight:600}.cal-right-today-link{background:#0000;color:var(--blue-700);cursor:pointer;font-size:.7rem;font-weight:700;letter-spacing:.03em;margin-top:2px}.cal-right-today-link:hover{text-decoration:underline}.cal-walkin{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);color:var(--amber-600);cursor:pointer;display:flex;font-size:.83rem;font-weight:700;gap:6px;justify-content:center;margin:14px;padding:10px 12px;transition:var(--t-fast)}.cal-walkin:hover{background:#fffbeb;box-shadow:0 0 0 3px #f59e0b1a}.cal-right-tabs{background:var(--gray-50);border-bottom:1px solid var(--border);display:flex}.cal-right-tab{background:#0000;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;flex:1 1;font-size:.81rem;font-weight:600;padding:8px 4px;text-align:center;transition:var(--t-fast)}.cal-right-tab.active{background:var(--bg-card);border-bottom-color:var(--blue-700);color:var(--blue-800)}.cal-right-stats{border-bottom:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr)}.cal-right-stat{border-right:1px solid var(--border);padding:10px 4px;text-align:center}.cal-right-stat:last-child{border-right:none}.cal-right-stat-label{color:var(--text-muted);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cal-right-stat-value{border-radius:var(--r-sm);display:inline-block;font-size:1.15rem;font-weight:800;margin-top:2px;min-width:30px;padding:2px 6px}.stat-today .cal-right-stat-value{background:var(--gray-200);color:var(--gray-800)}.stat-wait .cal-right-stat-value{background:var(--amber-100);color:var(--amber-600)}.stat-engaged .cal-right-stat-value{background:var(--blue-100);color:var(--blue-800)}.stat-done .cal-right-stat-value{background:var(--green-100);color:var(--green-700)}.cal-right-list{flex:1 1;overflow-y:auto;padding:4px 0}.cal-appt-row{border-bottom:1px solid var(--border);cursor:pointer;display:flex;gap:12px;padding:10px 14px;transition:var(--t-fast)}.cal-appt-row:hover{background:var(--bg-hover)}.cal-appt-time-col{color:var(--text-primary);font-size:.78rem;font-weight:700;min-width:64px}.cal-appt-body{flex:1 1;min-width:0}.cal-appt-body-name{align-items:center;color:var(--text-primary);display:flex;font-size:.86rem;font-weight:700;gap:6px}.cal-appt-body-reason{color:var(--text-muted);font-size:.75rem;margin:3px 0}.cal-appt-body-doc{color:var(--text-secondary);font-size:.78rem}.cal-appt-status-dot{background:var(--blue-500);border-radius:50%;flex-shrink:0;height:7px;width:7px}.cal-new-badge{background:var(--green-600);border-radius:3px;color:#fff;display:inline-flex;font-size:.6rem;font-weight:800;letter-spacing:.04em;padding:1px 4px}.cal-new-badge,.cal-popover-overlay{align-items:center;justify-content:center}.cal-popover-overlay{animation:fadeIn .15s ease;background:#0f172a40;display:flex;inset:0;padding:20px;position:fixed;z-index:1200}.cal-popover{animation:slideUp .2s cubic-bezier(.34,1.56,.64,1);background:var(--bg-card);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);max-width:380px;overflow:hidden;width:100%}.cal-popover-top{display:flex;gap:12px;padding:18px;position:relative}.cal-popover-actions{display:flex;gap:4px;position:absolute;right:10px;top:10px}.cal-popover-actions button{align-items:center;background:#0000;border-radius:var(--r-sm);color:var(--text-muted);display:flex;height:26px;justify-content:center;transition:var(--t-fast);width:26px}.cal-popover-actions button:hover{background:var(--gray-100);color:var(--text-primary)}.cal-popover-status-dot{border-radius:50%;height:9px;position:absolute;right:84px;top:14px;width:9px}.cal-popover-avatar{align-items:center;background:var(--gray-100);border-radius:50%;color:var(--gray-600);display:flex;flex-shrink:0;font-size:.85rem;font-weight:800;height:48px;justify-content:center;width:48px}.cal-popover-meta{flex:1 1;min-width:0}.cal-popover-name{color:var(--text-primary);font-size:1rem;font-weight:800;margin-bottom:2px}.cal-popover-code{color:var(--text-muted);font-family:var(--font-mono);font-size:.78rem;margin-bottom:4px}.cal-popover-sub{color:var(--text-muted);font-size:.76rem}.cal-popover-link{color:var(--blue-700);cursor:pointer;font-weight:600}.cal-popover-link:hover{text-decoration:underline}.cal-popover-rows{display:flex;flex-direction:column;gap:8px;padding:0 18px 12px}.cal-popover-row{align-items:center;color:var(--text-primary);display:flex;font-size:.83rem;gap:8px}.cal-popover-row svg{flex-shrink:0}.cal-popover-row .muted,.cal-popover-row svg{color:var(--text-muted)}.cal-popover-appt{align-items:center;border:1px solid var(--border);border-radius:var(--r-md);display:flex;gap:10px;justify-content:space-between;margin:0 18px 14px;padding:12px}.cal-popover-appt-info{color:var(--text-primary);flex:1 1;font-size:.8rem}.cal-popover-appt-info-title{align-items:center;display:flex;font-weight:700;gap:6px}.cal-popover-appt-info-detail{color:var(--text-muted);font-size:.75rem;margin-top:2px}.cal-popover-category{border-top:1px solid var(--border);color:var(--text-secondary);font-size:.8rem;padding:8px 18px}.cal-popover-category strong{color:var(--text-primary)}.cal-popover-promo{align-items:center;background:linear-gradient(135deg,#5eead4,#06b6d4);border-radius:var(--r-md);color:#fff;display:flex;font-size:.78rem;gap:10px;margin:12px 18px;padding:10px 12px}.cal-popover-promo a{color:#fff;font-weight:800;text-decoration:underline}.cal-popover-pay{background:var(--amber-500);border-radius:var(--r-md);color:#fff;display:block;font-size:.9rem;font-weight:800;margin:0 18px 18px;padding:10px;text-align:center;transition:var(--t-fast);width:calc(100% - 36px)}.cal-popover-pay:hover{background:var(--amber-600);box-shadow:0 4px 12px #f59e0b4d}.cal-status-pill{border-radius:999px;display:inline-block;font-size:.66rem;font-weight:800;letter-spacing:.04em;padding:1px 7px;text-transform:uppercase;vertical-align:middle}.cal-popover-workflow{border-top:1px solid var(--border);padding:4px 18px 12px}.cal-wf-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.cal-wf-extend{align-items:center;border-top:1px dashed var(--border);padding-top:10px}.cal-wf-extend-label{color:var(--text-muted);font-size:.75rem;gap:4px;letter-spacing:.04em;margin-right:4px;text-transform:uppercase}.cal-wf-extend-label,.wf-btn{align-items:center;display:inline-flex;font-weight:700}.wf-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-secondary);cursor:pointer;font-size:.79rem;gap:5px;padding:6px 10px;transition:var(--t-fast);white-space:nowrap}.wf-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--border-strong);color:var(--text-primary)}.wf-btn:disabled{cursor:not-allowed;opacity:.5}.wf-btn--primary{background:var(--blue-50);border-color:var(--blue-300);color:var(--blue-800)}.wf-btn--primary:hover:not(:disabled){background:var(--blue-100)}.wf-btn--success{background:var(--green-50);border-color:var(--green-300);color:var(--green-700)}.wf-btn--success:hover:not(:disabled){background:var(--green-100)}.wf-btn--warn{background:var(--amber-100);border-color:#fcd34d;color:#92400e}.wf-btn--warn:hover:not(:disabled){background:#fde68a}.wf-btn--danger{background:var(--red-50);border-color:#fca5a5;color:var(--red-700)}.wf-btn--danger:hover:not(:disabled){background:var(--red-100)}.wf-btn--ghost{color:var(--text-secondary)}.cal-page.is-fullscreen{height:100vh;inset:0;margin:0;position:fixed;z-index:1050}.cal-conflict-banner{align-items:flex-start;background:var(--red-50);border:1px solid #fca5a5;border-radius:var(--r-md);color:var(--red-700);display:flex;font-size:.84rem;gap:8px;margin-bottom:12px;padding:10px 12px}.cal-conflict-banner strong{color:var(--red-700)}.cal-day-overlay>.cal-appt+.cal-appt{border-left-width:4px}.cal-form-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.cal-form{animation:slideUp .25s cubic-bezier(.34,1.56,.64,1);background:var(--bg-card);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:92vh;max-width:720px;overflow:hidden;width:100%}.cal-form-tabs{background:#1e293b;display:flex;padding:0}.cal-form-tab{background:#0000;color:#ffffffb3;cursor:pointer;flex:1 1;font-size:.92rem;font-weight:600;padding:14px;text-align:center;transition:var(--t-fast)}.cal-form-tab.active{background:var(--gray-500);color:#fff;font-weight:800}.cal-form-tab:hover:not(.active){background:#64748b66;color:#fff}.cal-form-body{flex:1 1;overflow-y:auto;padding:22px}.cal-form-row-2{grid-gap:8px;align-items:end;display:grid;gap:8px;grid-template-columns:1fr auto;margin-bottom:14px}.cal-form-row-2 .form-group{margin:0}.cal-form-row-2 button{background:var(--gray-200);border-radius:var(--r-md);color:var(--text-secondary);font-size:.83rem;font-weight:600;height:38px;padding:9px 16px}.cal-form-row-2 button:hover{background:var(--gray-300);color:var(--text-primary)}.cal-form-divider{border:none;border-top:1px solid var(--border);margin:18px 0}.cal-notify-line{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin:6px 0 14px}.cal-notify-line,.cal-notify-line label{align-items:center;display:flex;font-size:.83rem}.cal-notify-line label{cursor:pointer;gap:6px}.cal-notify-line input[type=checkbox]{accent-color:var(--purple-600);cursor:pointer;height:16px;width:16px}.cal-form-sched-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr auto 1fr auto 1fr;margin-bottom:14px}.cal-form-sched-row .joiner{color:var(--text-muted);font-size:.8rem;padding:0 4px}.cal-form-sched-row input{padding:9px 12px}.cal-form-footer{background:var(--gray-50);border-top:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:14px 22px}.cal-form-save{background:var(--amber-500);border-radius:var(--r-md);color:#fff;font-size:.88rem;font-weight:700;padding:9px 20px;transition:var(--t-fast)}.cal-form-save:hover:not(:disabled){background:var(--amber-600);box-shadow:0 4px 12px #f59e0b4d}.cal-form-save:disabled{cursor:not-allowed;opacity:.6}.cal-found-banner{background:#d1fae5;border:1px solid var(--green-300);border-radius:var(--r-md);color:#065f46;color:var(--green-800,#065f46);font-size:.82rem;margin-bottom:14px;padding:10px 14px}.cal-found-banner strong{font-weight:800}@media (max-width:1100px){.cal-body{grid-template-columns:200px 1fr}.cal-right{display:none}}@media (max-width:768px){.cal-body{grid-template-columns:1fr}.cal-left{display:none}}.pay-overlay{align-items:flex-start;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:32px 20px;position:fixed;z-index:1200}.pay-modal{animation:slideUp .25s cubic-bezier(.34,1.56,.64,1);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);flex-direction:column;max-width:980px;overflow:hidden;width:100%}.pay-modal,.pay-stepper{background:var(--bg-card);display:flex}.pay-stepper{align-items:center;padding:22px 28px 8px}.pay-step{flex-direction:column;flex-shrink:0;gap:6px;position:relative}.pay-step,.pay-step-dot{align-items:center;display:flex}.pay-step-dot{background:var(--gray-200);border:3px solid var(--gray-200);border-radius:50%;color:#0000;height:22px;justify-content:center;transition:var(--t-fast);width:22px}.pay-step.active .pay-step-dot,.pay-step.done .pay-step-dot{background:var(--green-600);border-color:var(--green-600)}.pay-step.done .pay-step-dot{color:#fff}.pay-step-label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.pay-step.active .pay-step-label{color:var(--text-primary)}.pay-step-line{align-self:flex-start;background:var(--gray-300);border-radius:2px;flex:1 1;height:3px;margin:11px 8px 0}.pay-step-line.done{background:var(--green-600)}.pay-patient{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:14px;padding:18px 28px}.pay-patient-avatar{align-items:center;background:var(--gray-100);border-radius:50%;color:var(--gray-600);display:flex;flex-shrink:0;font-size:.82rem;font-weight:800;height:44px;justify-content:center;width:44px}.pay-patient-name{color:var(--text-primary);font-size:1rem;font-weight:800}.pay-patient-name .muted-id{color:var(--text-muted);font-size:.85rem;font-weight:600;margin-left:4px}.pay-patient-spacer{flex:1 1}.pay-patient-contact{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.83rem;gap:4px}.pay-patient-contact-row{align-items:center;display:flex;gap:6px}.pay-patient-contact-row svg,.pay-patient-contact-row.muted{color:var(--text-muted)}.pay-appt-row{border-bottom:1px solid var(--border);color:var(--text-primary);font-size:.86rem;padding:14px 28px}.pay-appt-row strong{font-weight:700}.pay-invoice{padding:18px 28px}.pay-invoice-head{align-items:center;color:var(--text-primary);display:flex;font-size:.9rem;gap:8px;margin-bottom:14px}.pay-invoice-head .pay-meta{color:var(--text-muted);font-size:.78rem;font-weight:400}.pay-invoice-head .pay-link{color:var(--blue-700);cursor:pointer;font-weight:600;margin-left:4px}.pay-invoice-head .pay-share{align-items:center;color:var(--green-600);cursor:pointer;display:flex;font-size:.83rem;font-weight:600;gap:4px;margin-left:auto}.pay-invoice-body{grid-gap:20px;display:grid;gap:20px;grid-template-columns:380px 1fr;min-height:280px}.pay-search,.pay-search-wrap{position:relative}.pay-search input{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.86rem;padding:10px 32px 10px 12px;width:100%}.pay-search input:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px #2196f31a;outline:none}.pay-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.pay-search-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);margin-top:6px;max-height:280px;overflow-y:auto}.pay-search-group-label{background:var(--bg-card);border-bottom:1px solid var(--gray-100);color:var(--text-muted);font-size:.7rem;font-weight:800;letter-spacing:.07em;padding:12px 14px 6px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0}.pay-search-item{border-bottom:1px solid var(--gray-100);cursor:pointer;padding:10px 14px;transition:var(--t-fast)}.pay-search-item:last-child{border-bottom:none}.pay-search-item:hover{background:var(--bg-hover)}.pay-search-item-name{color:var(--text-primary);font-size:.85rem}.pay-search-item-price{color:var(--text-muted);font-size:.82rem;margin-top:2px}.pay-search-add{color:var(--blue-700);cursor:pointer;font-size:.83rem;font-weight:600;padding:10px 14px}.pay-search-add:hover{background:var(--blue-50)}.pay-items{border-left:1px solid var(--border);display:flex;flex-direction:column;gap:8px;padding-left:20px}.pay-items-empty{align-items:center;color:var(--text-muted);display:flex;font-size:.88rem;font-style:italic;height:100%;justify-content:center;min-height:240px}.pay-item{grid-gap:8px;align-items:center;border-bottom:1px solid var(--gray-100);display:grid;gap:8px;grid-template-columns:1fr 70px 80px 90px 28px;padding:8px 0}.pay-item-name{color:var(--text-primary);font-size:.85rem;font-weight:600}.pay-item-input{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.8rem;padding:5px 6px;text-align:right}.pay-item-input:focus{border-color:var(--blue-500);outline:none}.pay-item-total{color:var(--text-primary);font-size:.85rem;font-weight:700;text-align:right}.pay-item-remove{align-items:center;background:#0000;border-radius:var(--r-sm);color:var(--red-500);display:flex;height:26px;justify-content:center;transition:var(--t-fast);width:26px}.pay-item-remove:hover{background:var(--red-50)}.pay-items-totals{border-top:2px solid var(--border);margin-top:auto;padding-top:12px}.pay-items-totals-row{color:var(--text-secondary);display:flex;font-size:.84rem;justify-content:space-between;padding:4px 0}.pay-items-totals-row.grand{border-top:1px solid var(--border);color:var(--text-primary);font-size:.95rem;font-weight:800;margin-top:4px;padding-top:8px}.pay-band{background:#fef3c7;border-top:1px solid var(--amber-100);padding:18px 28px 22px}.pay-band-head{color:var(--text-primary);font-size:.9rem;margin-bottom:14px}.pay-band-head .pay-meta{color:var(--text-secondary);font-size:.78rem;font-weight:400}.pay-band-head .pay-link{color:var(--blue-700);cursor:pointer;font-weight:600;margin-left:4px}.pay-band-fields{grid-gap:18px;align-items:start;display:grid;gap:18px;grid-template-columns:200px 240px 1fr}.pay-band-field{display:flex;flex-direction:column;gap:4px}.pay-band-field-label{color:var(--text-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.pay-band-field-label .req{color:var(--red-500)}.pay-band-field input,.pay-band-field select{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.86rem;padding:8px 10px}.pay-band-field input:focus,.pay-band-field select:focus{border-color:var(--amber-500);outline:none}.pay-band-error{color:var(--red-700);font-size:.75rem;margin-top:4px}.pay-band-default{color:var(--blue-700);cursor:pointer;font-size:.76rem;font-weight:600;margin-top:4px}.pay-band-default:hover{text-decoration:underline}.pay-footer{background:var(--bg-card);border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:14px 28px}.pay-accept{background:var(--amber-500);border-radius:var(--r-md);color:#fff;font-size:.9rem;font-weight:700;padding:9px 22px;transition:var(--t-fast)}.pay-accept:hover:not(:disabled){background:var(--amber-600);box-shadow:0 4px 12px #f59e0b4d}.pay-accept:disabled{cursor:not-allowed;opacity:.55}.pay-success{padding:60px 40px;text-align:center}.pay-success-icon{align-items:center;background:var(--green-100);border-radius:50%;color:var(--green-700);display:flex;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.pay-success h3{color:var(--text-primary);font-size:1.25rem;font-weight:800;margin-bottom:6px}.pay-success p{color:var(--text-secondary);font-size:.9rem;margin:0 auto 24px;max-width:420px}.pay-success-actions{display:flex;gap:10px;justify-content:center}@media (max-width:860px){.pay-invoice-body{grid-template-columns:1fr}.pay-items{border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:16px}.pay-band-fields{grid-template-columns:1fr 1fr}}.staff-tabs{border-bottom:1px solid var(--border);display:flex;gap:4px;margin-bottom:16px}.staff-tab{background:#0000;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:600;padding:9px 18px;transition:var(--t-fast)}.staff-tab.active{border-bottom-color:var(--blue-700);color:var(--blue-800)}.staff-tab:hover:not(.active){color:var(--text-primary)}.staff-tab .count{align-items:center;background:var(--gray-100);border-radius:var(--r-full);color:var(--text-secondary);display:inline-flex;font-size:.7rem;font-weight:800;justify-content:center;margin-left:6px;min-width:20px;padding:0 7px}.staff-tab.active .count{background:var(--blue-100);color:var(--blue-800)}.staff-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.staff-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:16px;position:relative;transition:var(--t-base)}.staff-card:hover{border-color:var(--blue-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.staff-card.inactive{opacity:.55}.staff-card-stripe{background:var(--blue-500);border-radius:var(--r-lg) var(--r-lg) 0 0;height:4px;left:0;position:absolute;right:0;top:0}.staff-card-top{align-items:center;display:flex;gap:12px}.staff-card-avatar{align-items:center;border:2px solid;border-radius:50%;display:flex;flex-shrink:0;font-size:1rem;font-weight:800;height:56px;justify-content:center;width:56px}.staff-card-meta{flex:1 1;min-width:0}.staff-card-name{color:var(--text-primary);font-size:1rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-card-role{color:var(--text-muted);font-size:.78rem;margin-top:2px}.staff-card-spec{font-style:italic;margin-top:6px}.staff-card-contact,.staff-card-spec{color:var(--text-secondary);font-size:.78rem}.staff-card-contact{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px;padding-top:8px}.staff-card-contact-row{align-items:center;display:flex;gap:6px}.staff-card-contact-row svg{color:var(--text-muted);flex-shrink:0}.staff-card-actions{border-top:1px solid var(--border);display:flex;gap:6px;margin-top:4px;padding-top:10px}.staff-search-bar{align-items:center;display:flex;gap:8px;margin-bottom:14px}.staff-form-section{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.78rem;font-weight:800;letter-spacing:.07em;margin:18px 0 10px;padding-bottom:4px;text-transform:uppercase}.staff-form-preview{align-items:center;background:var(--gray-50);border-radius:var(--r-md);display:flex;gap:14px;margin-bottom:6px;padding:14px}.staff-form-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:1.05rem;font-weight:800;height:56px;justify-content:center;width:56px}.staff-form-preview-info{flex:1 1;min-width:0}.staff-form-preview-name{color:var(--text-primary);font-size:1rem;font-weight:800}.staff-form-preview-role{color:var(--text-muted);font-size:.78rem;margin-top:3px}.staff-form-preview-spec{color:var(--text-secondary);font-size:.76rem;font-style:italic;margin-top:3px}.staff-role-grid{display:flex;flex-wrap:wrap;gap:6px}.staff-role-chip{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-full);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.83rem;font-weight:600;gap:6px;padding:7px 12px;transition:var(--t-fast)}.staff-role-chip:hover{border-color:var(--blue-300);color:var(--blue-800)}.staff-role-chip.checked{background:var(--blue-50);border-color:var(--blue-700);color:var(--blue-800)}.staff-color-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));margin-bottom:12px}.staff-color-swatch{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.82rem;font-weight:600;gap:8px;padding:8px 10px;transition:var(--t-fast)}.staff-color-swatch:hover{border-color:var(--blue-300)}.staff-color-swatch.selected{background:var(--blue-50);border-color:var(--blue-700);color:var(--blue-800)}.staff-color-swatch-dot{border-radius:50%;box-shadow:0 0 0 2px var(--bg-card),0 0 0 3px var(--border);flex-shrink:0;height:18px;width:18px}.staff-color-custom{align-items:center;display:flex;gap:10px;margin-top:4px}.cl-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:16px}.cl-stat-card{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--blue-500);border-radius:var(--r-md);padding:10px 14px}.cl-stat-card.new{border-left-color:var(--blue-500)}.cl-stat-card.today{border-left-color:var(--green-600)}.cl-stat-card.lead{border-left-color:var(--amber-500)}.cl-stat-card.patient{border-left-color:var(--teal-600)}.cl-stat-card.conv{border-left-color:var(--green-700)}.cl-stat-card.discard{border-left-color:var(--gray-400)}.cl-stat-label{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.cl-stat-value{color:var(--text-primary);font-size:1.4rem;font-weight:800;line-height:1.1;margin-top:2px}.cl-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.cl-filter-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-full);color:var(--text-secondary);cursor:pointer;font-size:.78rem;font-weight:600;padding:5px 12px;transition:var(--t-fast)}.cl-filter-chip:hover{border-color:var(--blue-300);color:var(--blue-800)}.cl-filter-chip.active{background:var(--blue-700);border-color:var(--blue-700);color:#fff}.cl-filter-chip .chip-count{align-items:center;background:#ffffff40;border-radius:var(--r-full);display:inline-flex;font-size:.7rem;font-weight:800;justify-content:center;margin-left:6px;min-width:18px;padding:0 6px}.cl-filter-chip:not(.active) .chip-count{background:var(--gray-100);color:var(--text-secondary)}.cl-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(310px,1fr))}.cl-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;display:flex;flex-direction:column;gap:10px;overflow:hidden;padding:14px;position:relative;transition:var(--t-base)}.cl-card:hover{border-color:var(--blue-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cl-card.discarded{opacity:.55}.cl-card.converted{border-color:var(--green-300)}.cl-card-stripe{height:3px;left:0;position:absolute;right:0;top:0}.cl-card-stripe,.cl-card-stripe.new{background:var(--blue-500)}.cl-card-stripe.converted{background:var(--green-600)}.cl-card-stripe.reviewed{background:var(--gray-400)}.cl-card-stripe.discarded{background:var(--red-500)}.cl-card-top{gap:10px}.cl-card-icon,.cl-card-top{align-items:center;display:flex}.cl-card-icon{background:var(--blue-50);border-radius:50%;color:var(--blue-700);flex-shrink:0;height:38px;justify-content:center;width:38px}.cl-card-main{flex:1 1;min-width:0}.cl-card-phone{color:var(--text-primary);font-family:var(--font-mono);font-size:.95rem;font-weight:800;letter-spacing:.01em}.cl-card-name{color:var(--text-muted);font-size:.78rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cl-card-meta{align-items:center;color:var(--text-secondary);display:flex;font-size:.78rem;gap:8px;justify-content:space-between}.cl-card-calls{align-items:center;background:var(--gray-100);border-radius:var(--r-full);color:var(--text-primary);display:inline-flex;font-weight:700;gap:5px;padding:3px 8px}.cl-card-calls.many{background:var(--amber-100);color:var(--amber-600)}.cl-card-time{color:var(--text-muted);font-size:.76rem}.cl-card-badges{display:flex;flex-wrap:wrap;gap:4px}.cl-card-actions{border-top:1px solid var(--gray-100);display:flex;gap:6px;padding-top:10px}.cl-card-actions .btn{flex:1 1;justify-content:center}.cl-card-actions .btn-icon-sm{flex:0 0 auto}.cl-live{align-items:center;color:var(--green-700);display:inline-flex;font-size:.74rem;font-weight:600;gap:5px;margin-left:8px}.cl-live-dot{animation:pulse 1.4s infinite;background:var(--green-600);border-radius:50%;height:7px;width:7px}.cl-drawer-section-title{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:.07em;margin:16px 0 8px;padding-bottom:4px;text-transform:uppercase}.cl-existing-card{align-items:center;background:var(--amber-100);border:1px solid var(--amber-500);border-radius:var(--r-md);display:flex;gap:10px;justify-content:space-between;margin-bottom:8px;padding:12px}.cl-existing-card.patient{background:#ccfbf1;border-color:var(--teal-600)}.cl-existing-card-info{flex:1 1;min-width:0}.cl-existing-card-label{color:var(--amber-600);font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.cl-existing-card.patient .cl-existing-card-label{color:var(--teal-600)}.cl-existing-card-name{color:var(--text-primary);font-size:.92rem;font-weight:800;margin-top:2px}.cl-existing-card-sub{color:var(--text-secondary);font-size:.78rem;margin-top:2px}
/*# sourceMappingURL=main.b3957140.css.map*/