:root{--background:0 0% 100%;--background-alt:220 20% 97%;--foreground:222.2 47% 11%;--card:0 0% 100%;--card-foreground:222.2 47% 11%;--popover:0 0% 100%;--popover-foreground:222.2 47% 11%;--primary:222.2 47.4% 11.2%;--primary-variant:222.2 47.4% 24.2%;--primary-foreground:210 40% 98%;--secondary:220 16% 94%;--secondary-foreground:222.2 17.4% 36.2%;--secondary-highlight:220 16% 91%;--muted:220 20% 96.5%;--muted-foreground:220 9% 46%;--accent:220 20% 95%;--accent-foreground:222.2 47.4% 11.2%;--selected:228 89% 63%;--selected-foreground:0 0% 100%;--selected-soft:228 100% 97%;--selected-strong:228 76% 54%;--success:160 84% 39%;--success-foreground:0 0% 100%;--success-soft:160 70% 95%;--warning:38 92% 50%;--warning-foreground:26 83% 20%;--warning-soft:42 100% 95%;--destructive:0 72% 51%;--destructive-foreground:0 0% 100%;--destructive-soft:0 86% 97%;--info:190 85% 40%;--info-soft:190 70% 95%;--border:220 13% 91%;--border-strong:220 13% 84%;--input:220 13% 91%;--ring:228 89% 63%;--radius-xs:6px;--radius-sm:8px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-pill:999px;--shadow-xs:0 1px 2px #0f172a0f;--shadow-sm:0 1px 3px #0f172a14,0 1px 2px #0f172a0a;--shadow-md:0 6px 16px -4px #0f172a1a,0 2px 6px -2px #0f172a0f;--shadow-lg:0 18px 40px -12px #0f172a29,0 6px 14px -6px #0f172a14;--shadow-xl:0 32px 64px -24px #0f172a3d;--shadow-panel:-18px 10px 28px -18px #0f172a38;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"SFMono-Regular",ui-monospace,Menlo,Consolas,"Courier New",monospace;--sidebar-width:248px;--sidebar-width-collapsed:76px;--topbar-height:68px;--mobilenav-height:62px;--content-max:1440px;--content-gutter:clamp(16px,2.2vw,32px);--ease:cubic-bezier(0.4,0,0.2,1);--speed-fast:0.12s;--speed:0.18s;--speed-slow:0.28s;color-scheme:light}:root[data-theme=dark]{--background:0 0% 5%;--background-alt:0 0% 8%;--foreground:0 0% 98%;--card:0 0% 10%;--card-foreground:0 0% 98%;--popover:0 0% 12%;--popover-foreground:0 0% 98%;--primary:0 0% 96%;--primary-variant:0 0% 72%;--primary-foreground:0 0% 9%;--secondary:0 0% 13%;--secondary-foreground:0 0% 68%;--secondary-highlight:0 0% 20%;--muted:0 0% 14%;--muted-foreground:0 0% 62%;--accent:0 0% 18%;--accent-foreground:0 0% 98%;--selected:228 89% 68%;--selected-foreground:0 0% 100%;--selected-soft:228 45% 18%;--selected-strong:228 89% 76%;--success:158 64% 46%;--success-foreground:0 0% 100%;--success-soft:160 40% 13%;--warning:38 92% 55%;--warning-foreground:40 90% 92%;--warning-soft:34 45% 15%;--destructive:0 72% 58%;--destructive-foreground:0 0% 100%;--destructive-soft:0 45% 15%;--info:190 75% 52%;--info-soft:190 45% 15%;--border:0 0% 20%;--border-strong:0 0% 28%;--input:0 0% 22%;--ring:228 89% 68%;--shadow-xs:0 1px 2px #00000080;--shadow-sm:0 1px 3px #0000008c,0 1px 2px #0006;--shadow-md:0 6px 16px -4px #0009,0 2px 6px -2px #00000073;--shadow-lg:0 18px 40px -12px #000000b3,0 6px 14px -6px #00000080;--shadow-xl:0 32px 64px -24px #000c;--shadow-panel:-18px 10px 28px -18px #000000b3;color-scheme:dark}*,:after,:before{box-sizing:border-box}body,html{background-color:hsl(var(--background));color:hsl(var(--foreground))}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans);font-size:14px;line-height:1.5;transition:background-color var(--speed-slow) var(--ease),color var(--speed-slow) var(--ease)}button,input,select,textarea{font-family:inherit}a{color:hsl(var(--selected));text-decoration:none}a:hover{color:hsl(var(--selected-strong))}:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ui-scroll{scrollbar-color:hsl(var(--border-strong)) #0000;scrollbar-width:thin}.ui-scroll::-webkit-scrollbar{height:8px;width:8px}.ui-scroll::-webkit-scrollbar-track{background:#0000}.ui-scroll::-webkit-scrollbar-thumb{background-color:hsl(var(--border-strong));border-radius:var(--radius-pill)}.ui-scroll::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--muted-foreground)/.6)}.ui-page{display:flex;flex-direction:column;gap:24px}.ui-page-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.ui-page-head__text{min-width:0}.ui-page-head__title{color:hsl(var(--foreground));font-size:clamp(24px,2.4vw,32px);font-weight:650;letter-spacing:-.02em;line-height:1.15;margin:0}.ui-page-head__subtitle{color:hsl(var(--muted-foreground));font-size:14px;margin:6px 0 0;max-width:68ch}.ui-page-head__actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.ui-breadcrumbs{align-items:center;display:flex;font-size:13px;gap:8px}.ui-breadcrumbs,.ui-breadcrumbs a{color:hsl(var(--muted-foreground))}.ui-breadcrumbs a{transition:color var(--speed) var(--ease)}.ui-breadcrumbs a:hover,.ui-section-title{color:hsl(var(--foreground))}.ui-section-title{font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}.ui-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:hsl(var(--card-foreground))}.ui-card--flat{box-shadow:none}.ui-card--interactive{transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),transform var(--speed) var(--ease)}.ui-card--interactive:hover{border-color:hsl(var(--border-strong));box-shadow:var(--shadow-md)}.ui-card__header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;padding:18px 20px}.ui-card__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0}.ui-card__desc{color:hsl(var(--muted-foreground));font-size:13px;margin:4px 0 0}.ui-card__body{padding:20px}.ui-card__footer{align-items:center;border-top:1px solid hsl(var(--border));display:flex;gap:10px;padding:16px 20px}.ui-icon-tile{align-items:center;background-color:hsl(var(--selected-soft));border-radius:var(--radius-md);color:hsl(var(--selected));display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.ui-icon-tile img,.ui-icon-tile svg{height:20px;width:20px}.ui-icon-tile img{display:block}.ui-icon-tile--muted{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.ui-icon-tile--success{background-color:hsl(var(--success-soft));color:hsl(var(--success))}.ui-icon-tile--danger{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.ui-btn{align-items:center;background-color:hsl(var(--secondary));border:1px solid #0000;border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;height:40px;justify-content:center;line-height:1;padding:0 16px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),opacity var(--speed) var(--ease);white-space:nowrap}.ui-btn:hover{background-color:hsl(var(--secondary-highlight))}.ui-btn:active{transform:translateY(.5px)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{cursor:not-allowed;opacity:.55;transform:none}.ui-btn svg{flex-shrink:0;height:16px;width:16px}.ui-btn--primary{background-color:hsl(var(--selected));box-shadow:var(--shadow-xs);color:hsl(var(--selected-foreground))}.ui-btn--primary:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.ui-btn--dark{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.ui-btn--dark:hover:not(:disabled){background-color:hsl(var(--primary-variant))}.ui-btn--outline{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.ui-btn--outline:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.ui-btn--ghost{background-color:initial;color:hsl(var(--muted-foreground))}.ui-btn--ghost:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.ui-btn--danger{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.ui-btn--danger:hover:not(:disabled){background-color:hsl(var(--destructive)/.88)}.ui-btn--danger-soft{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.ui-btn--danger-soft:hover:not(:disabled){background-color:hsl(var(--destructive)/.16)}.ui-btn--link{background:none;color:hsl(var(--selected));font-weight:500;height:auto;padding:0}.ui-btn--link:hover:not(:disabled){background:none;color:hsl(var(--selected-strong));text-decoration:underline}.ui-btn--sm{border-radius:var(--radius-sm);font-size:13px;height:34px;padding:0 12px}.ui-btn--lg{border-radius:var(--radius-md);font-size:15px;height:44px;padding:0 22px}.ui-btn--block{width:100%}.ui-btn--icon{height:40px;padding:0;width:40px}.ui-btn--icon.ui-btn--sm{height:34px;width:34px}.ui-field{display:flex;flex-direction:column;gap:6px;min-width:0}.ui-label{color:hsl(var(--secondary-foreground));font-size:13px;font-weight:500}.ui-input,.ui-select,.ui-textarea{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),background-color var(--speed) var(--ease);width:100%}.ui-textarea{height:auto;min-height:96px;padding:10px 12px;resize:vertical}.ui-input::placeholder,.ui-textarea::placeholder{color:hsl(var(--muted-foreground))}.ui-input:hover:not(:disabled),.ui-select:hover:not(:disabled),.ui-textarea:hover:not(:disabled){border-color:hsl(var(--border-strong))}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.ui-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23888' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:18px 18px;cursor:pointer;padding-right:34px}.ui-checkbox{align-items:center;background-color:hsl(var(--card));border:1.5px solid hsl(var(--border-strong));border-radius:var(--radius-xs);display:inline-flex;flex-shrink:0;height:20px;justify-content:center;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease);width:20px}.ui-checkbox:after{border-bottom:2px solid hsl(var(--selected-foreground));border-left:2px solid hsl(var(--selected-foreground));content:"";height:6px;opacity:0;transform:rotate(-45deg) translate(1px,-1px) scale(.6);transition:opacity var(--speed) var(--ease),transform var(--speed) var(--ease);width:10px}input:checked+.ui-checkbox{background-color:hsl(var(--selected));border-color:hsl(var(--selected))}input:checked+.ui-checkbox:after{opacity:1;transform:rotate(-45deg) translate(1px,-1px) scale(1)}.ui-badge{align-items:center;background-color:hsl(var(--muted));border:1px solid #0000;border-radius:var(--radius-pill);color:hsl(var(--muted-foreground));display:inline-flex;font-size:12px;font-weight:500;gap:6px;line-height:1.4;padding:4px 10px;white-space:nowrap}.ui-badge--accent{background-color:hsl(var(--selected-soft));color:hsl(var(--selected-strong))}.ui-badge--success{background-color:hsl(var(--success-soft));color:hsl(var(--success))}.ui-badge--danger{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.ui-badge--warning{background-color:hsl(var(--warning-soft));color:hsl(var(--warning-foreground))}.ui-badge--info{background-color:hsl(var(--info-soft));color:hsl(var(--info))}.ui-badge--outline{background-color:initial;border-color:hsl(var(--border));color:hsl(var(--foreground))}.ui-dot{background-color:currentColor;border-radius:50%;flex-shrink:0;height:6px;width:6px}.ui-table-wrap{border-radius:var(--radius-md);overflow-x:auto;width:100%}.ui-table{border-collapse:initial;border-spacing:0;font-size:14px;width:100%}.ui-table th{background-color:hsl(var(--muted)/.6);border-bottom:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;letter-spacing:.02em;padding:12px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.ui-table th:first-child{border-top-left-radius:var(--radius-md)}.ui-table th:last-child{border-top-right-radius:var(--radius-md)}.ui-table td{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));padding:14px;vertical-align:middle}.ui-table tbody tr{transition:background-color var(--speed) var(--ease)}.ui-table tbody tr:hover{background-color:hsl(var(--muted)/.55)}.ui-table tbody tr:last-child td{border-bottom:none}.ui-tabs{align-items:center;background-color:hsl(var(--muted));border-radius:var(--radius);display:inline-flex;gap:4px;padding:4px}.ui-tabs__btn{background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.ui-tabs__btn:hover{color:hsl(var(--foreground))}.ui-tabs__btn--active,.ui-tabs__btn[aria-selected=true]{background-color:hsl(var(--card));box-shadow:var(--shadow-xs);color:hsl(var(--foreground))}.ui-menu{animation:ui-pop var(--speed) var(--ease);background-color:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:hsl(var(--popover-foreground));min-width:190px;padding:6px}.ui-menu__item{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:9px 10px;text-align:left;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.ui-menu__item svg{flex-shrink:0;height:16px;width:16px}.ui-menu__item:hover{background-color:hsl(var(--muted))}.ui-menu__item--danger{color:hsl(var(--destructive))}.ui-menu__item--danger:hover{background-color:hsl(var(--destructive-soft))}.ui-menu__sep{background-color:hsl(var(--border));height:1px;margin:6px 4px}.ui-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.ui-modal__backdrop{animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.7);border:none;cursor:default;inset:0;padding:0;position:absolute;width:100%}.ui-modal__dialog{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:520px;overflow:hidden;position:relative;width:100%;z-index:1}.ui-modal__header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;padding:18px 20px}.ui-modal__title{font-size:17px;font-weight:600;letter-spacing:-.01em;margin:0}.ui-modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;line-height:1;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.ui-modal__close:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.ui-modal__body{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:20px}.ui-modal__dialog--sm{max-width:420px}.ui-modal__dialog--lg{max-width:760px}.ui-modal__dialog--xl{max-width:1000px}.ui-modal__footer{align-items:center;border-top:1px solid hsl(var(--border));display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.ui-empty{display:flex;flex-direction:column;font-size:14px;gap:8px;padding:40px 20px;text-align:center}.ui-empty,.ui-empty__icon{align-items:center;color:hsl(var(--muted-foreground));justify-content:center}.ui-empty__icon{background-color:hsl(var(--muted));border-radius:var(--radius-md);display:inline-flex;height:48px;margin-bottom:4px;width:48px}.ui-empty__title{color:hsl(var(--foreground));font-size:15px;font-weight:600}.ui-loading{color:hsl(var(--muted-foreground));font-size:14px;padding:32px 20px;text-align:center}.ui-alert{align-items:flex-start;border:1px solid #0000;border-radius:var(--radius);display:flex;font-size:14px;gap:10px;line-height:1.45;padding:12px 14px}.ui-alert--danger{background-color:hsl(var(--destructive-soft));border-color:hsl(var(--destructive)/.25);color:hsl(var(--destructive))}.ui-alert--warning{background-color:hsl(var(--warning-soft));border-color:hsl(var(--warning)/.3);color:hsl(var(--warning-foreground))}.ui-alert--info{background-color:hsl(var(--info-soft));border-color:hsl(var(--info)/.25);color:hsl(var(--info))}.ui-alert--success{background-color:hsl(var(--success-soft));border-color:hsl(var(--success)/.25);color:hsl(var(--success))}.ui-skeleton{background-color:hsl(var(--muted));border-radius:var(--radius-sm);overflow:hidden;position:relative}.ui-skeleton:after{animation:ui-shimmer 1.4s infinite;background:linear-gradient(90deg,#0000,hsl(var(--foreground)/.06),#0000);content:"";inset:0;position:absolute;transform:translateX(-100%)}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-pop{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ui-shimmer{to{transform:translateX(100%)}}@keyframes ui-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0}code{font-family:var(--font-mono)}.sub-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.sub-modal__backdrop{animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.72);inset:0;position:absolute}.sub-modal__dialog{animation:ui-pop var(--speed-slow) var(--ease);background:radial-gradient(600px 220px at 100% 0,hsl(var(--selected)/.12),#0000 65%),hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));max-height:calc(100vh - 48px);max-width:480px;overflow-y:auto;padding:28px;position:relative;width:100%;z-index:1}.sub-modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-size:20px;height:32px;justify-content:center;line-height:1;position:absolute;right:14px;top:14px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.sub-modal__close:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.sub-modal__title{color:hsl(var(--foreground));font-size:20px;font-weight:650;letter-spacing:-.02em;margin:0 0 20px;padding-right:36px}.sub-modal__features{display:flex;flex-direction:column;gap:4px;margin-bottom:20px}.sub-modal__feature{align-items:flex-start;border-radius:var(--radius);display:flex;gap:12px;padding:10px;transition:background-color var(--speed) var(--ease)}.sub-modal__feature:hover{background-color:hsl(var(--muted)/.6)}.sub-modal__icon{align-items:center;background-color:hsl(var(--selected-soft));border-radius:var(--radius-md);color:hsl(var(--selected));display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.sub-modal__icon-img{display:block}.sub-modal__icon-img,.sub-modal__icon-svg{height:20px;width:20px}.sub-modal__feature-text{display:flex;flex-direction:column;gap:2px;min-width:0}.sub-modal__feature-title{color:hsl(var(--foreground));font-size:14px;font-weight:500}.sub-modal__feature-desc{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.45}.sub-modal__balance-row{align-items:center;background-color:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:var(--radius);display:flex;gap:12px;justify-content:space-between;padding:12px 14px}.sub-modal__balance-label{color:hsl(var(--muted-foreground));font-size:13px}.sub-modal__balance-value{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:15px;font-variant-numeric:tabular-nums;font-weight:600}.sub-modal__hint{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.5;margin:10px 0 0}.sub-modal__error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:13px;margin:12px 0 0;padding:10px 12px}.sub-modal__footer{align-items:center;border-top:1px solid hsl(var(--border));display:flex;gap:16px;justify-content:space-between;margin-top:20px;padding-top:18px}.sub-modal__price{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:20px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em}.sub-modal__cta{align-items:center;background-color:hsl(var(--selected));border:none;border-radius:var(--radius);box-shadow:var(--shadow-xs);color:hsl(var(--selected-foreground));cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:44px;justify-content:center;padding:0 22px;transition:background-color var(--speed) var(--ease),opacity var(--speed) var(--ease)}.sub-modal__cta:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.sub-modal__cta:disabled{cursor:not-allowed;opacity:.55}@media (max-width:520px){.sub-modal__dialog{padding:22px 18px}.sub-modal__footer{align-items:stretch;flex-direction:column;gap:12px}.sub-modal__cta{width:100%}}.loader-container{align-items:center;display:flex;justify-content:center;padding:24px}.loader-container.loader--fullscreen{background-color:hsl(var(--background));inset:0;padding:0;position:fixed;z-index:9999}.loader{flex-direction:column;gap:20px}.loader,.loader__spinner{align-items:center;display:flex;justify-content:center}.loader__spinner{position:relative}.loader__spinner-ring{animation:spin 1.1s cubic-bezier(.5,0,.5,1) infinite;border:3px solid hsl(var(--border));border-radius:50%;border-top-color:hsl(var(--selected));position:absolute}.loader__spinner-ring--delay{animation-delay:-.55s;animation-duration:1.6s;border-color:#0000;border-top-color:hsl(var(--selected)/.35)}.loader__logo{align-items:center;animation:pulse 2s ease-in-out infinite;display:flex;justify-content:center;position:relative;z-index:2}.loader__logo-image{max-height:100%;max-width:100%;object-fit:contain}.loader__logo-image--dark,:root[data-theme=dark] .loader__logo-image--light{display:none}:root[data-theme=dark] .loader__logo-image--dark{display:block}.loader--small .loader__spinner-ring{border-width:2px;height:36px;width:36px}.loader--small .loader__logo{height:20px;width:20px}.loader--medium .loader__spinner-ring{border-width:3px;height:60px;width:60px}.loader--medium .loader__logo{height:34px;width:34px}.loader--large .loader__spinner-ring{border-width:3px;height:96px;width:96px}.loader--large .loader__logo{height:56px;width:56px}.loader__text{animation:fadeInOut 2s ease-in-out infinite;color:hsl(var(--muted-foreground));font-size:14px;font-weight:500;letter-spacing:.02em}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.04)}}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1}}.sidebar{--tab-notch:18px;--tab-radius:12px;bottom:12px;color:hsl(var(--foreground));display:flex;flex-direction:column;left:12px;padding:18px 0 14px 14px;position:fixed;top:12px;width:var(--sidebar-width);z-index:60}.sidebar__shell{background-color:hsl(var(--secondary));border-radius:var(--radius-2xl);box-shadow:var(--shadow-panel);inset:0;position:absolute;z-index:-1}.sidebar__top{align-items:center;display:flex;flex-shrink:0;gap:8px;justify-content:space-between;padding:4px 16px 22px 6px}.sidebar__logo{align-items:center;border-radius:var(--radius-sm);display:inline-flex;min-width:0}.sidebar__logo-img{display:block;height:26px;width:auto}.sidebar__logo-img--dark,:root[data-theme=dark] .sidebar__logo-img--light{display:none}:root[data-theme=dark] .sidebar__logo-img--dark{display:block}.sidebar__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:none;height:32px;justify-content:center;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.sidebar__close:hover{background-color:hsl(var(--secondary-highlight));color:hsl(var(--foreground))}.sidebar__nav{display:flex;flex:1 1;flex-direction:column;gap:2px;margin:calc(var(--tab-notch)*-1) 0;min-height:0;overflow-y:auto;padding:var(--tab-notch) 0}.sidebar__item{align-items:center;background-color:initial;border:none;border-radius:0;color:hsl(var(--secondary-foreground));cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:11px 16px 11px 12px;position:relative;text-align:left;transition:color var(--speed) var(--ease),background-color var(--speed) var(--ease);width:100%}.sidebar__item svg{flex-shrink:0}.sidebar__item-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__item:after,.sidebar__item:before{content:"";height:var(--tab-notch);opacity:0;pointer-events:none;position:absolute;right:0;transition:opacity var(--speed) var(--ease);width:var(--tab-notch)}.sidebar__item:before{background:radial-gradient(circle at top left,#0000 calc(var(--tab-notch) - 1px),hsl(var(--background)) var(--tab-notch));top:calc(var(--tab-notch)*-1)}.sidebar__item:after{background:radial-gradient(circle at bottom left,#0000 calc(var(--tab-notch) - 1px),hsl(var(--background)) var(--tab-notch));bottom:calc(var(--tab-notch)*-1)}.sidebar__item--active,.sidebar__item:hover{background-color:hsl(var(--background));border-bottom-left-radius:var(--tab-radius);border-top-left-radius:var(--tab-radius);color:hsl(var(--foreground));z-index:2}.sidebar__item--active{font-weight:600}.sidebar__item--active svg:first-of-type{color:hsl(var(--selected))}.sidebar__item--active:after,.sidebar__item--active:before,.sidebar__item:hover:after,.sidebar__item:hover:before{opacity:1}.sidebar__nav:has(.sidebar__item:hover) .sidebar__item--active:not(:hover){background-color:initial;border-radius:0;color:hsl(var(--secondary-foreground));z-index:auto}.sidebar__nav:has(.sidebar__item:hover) .sidebar__item--active:not(:hover):after,.sidebar__nav:has(.sidebar__item:hover) .sidebar__item--active:not(:hover):before{opacity:0}.sidebar__count{background-color:hsl(var(--secondary-highlight));border-radius:var(--radius-pill);color:hsl(var(--muted-foreground));flex-shrink:0;font-size:11px;font-weight:600;min-width:22px;padding:1px 6px;text-align:center}.sidebar__item--active .sidebar__count,.sidebar__item:hover .sidebar__count{background-color:hsl(var(--muted))}.sidebar__chevron{color:hsl(var(--muted-foreground));flex-shrink:0;transition:transform var(--speed) var(--ease)}.sidebar__group--open .sidebar__chevron{transform:rotate(180deg)}.sidebar__sub{animation:ui-fade var(--speed) var(--ease);border-left:1px solid hsl(var(--border));display:flex;flex-direction:column;gap:1px;margin:2px 12px 6px 22px;padding-left:10px}.sidebar__subitem{align-items:center;border-radius:var(--radius-sm);color:hsl(var(--secondary-foreground));display:flex;font-size:13px;font-weight:500;gap:9px;padding:8px 10px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease)}.sidebar__subitem svg{color:hsl(var(--muted-foreground));flex-shrink:0}.sidebar__subitem:hover{background-color:hsl(var(--secondary-highlight));color:hsl(var(--foreground))}.sidebar__subitem--active{background-color:hsl(var(--selected-soft));color:hsl(var(--selected-strong))}.sidebar__subitem--active svg{color:hsl(var(--selected))}.sidebar__subitem--muted{color:hsl(var(--muted-foreground))}.sidebar__divider{background-color:hsl(var(--border));height:1px;margin:10px 16px 10px 12px}.sidebar__footer{border-top:1px solid hsl(var(--border));display:flex;flex-direction:column;flex-shrink:0;gap:8px;margin-top:28px;padding:12px 14px 0 0}.sidebar__ghost-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:hsl(var(--secondary-foreground));cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;padding:9px 12px;text-align:left;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.sidebar__ghost-btn:hover{background-color:hsl(var(--secondary-highlight));color:hsl(var(--foreground))}.sidebar__user{align-items:center;background-color:hsl(var(--background)/.65);border-radius:var(--radius-md);display:flex;gap:10px;padding:8px 10px}.sidebar__avatar{align-items:center;background-color:hsl(var(--selected));border-radius:50%;color:hsl(var(--selected-foreground));display:inline-flex;flex-shrink:0;font-size:14px;font-weight:600;height:34px;justify-content:center;width:34px}.sidebar__user-text{display:flex;flex:1 1;flex-direction:column;min-width:0}.sidebar__user-name{color:hsl(var(--foreground));font-size:13px;font-weight:600}.sidebar__user-mail,.sidebar__user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__user-mail{color:hsl(var(--muted-foreground));font-size:11px}.sidebar__logout{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;flex-shrink:0;height:32px;justify-content:center;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.sidebar__logout:hover{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.sidebar-scrim{background-color:#00000073;border:none;display:none;inset:0;opacity:0;padding:0;pointer-events:none;position:fixed;transition:opacity var(--speed-slow) var(--ease);z-index:55}@media (max-width:1024px){.sidebar{bottom:0;left:0;padding:18px 0 14px 14px;top:0;transform:translateX(-102%);transition:transform var(--speed-slow) var(--ease);width:min(300px,86vw)}.sidebar__shell{border-radius:0 var(--radius-2xl) var(--radius-2xl) 0}.sidebar--open{transform:translateX(0)}.sidebar__close{display:inline-flex}.sidebar__item--active,.sidebar__item:hover{border-radius:var(--radius);margin-right:14px;width:calc(100% - 14px)}.sidebar__item:after,.sidebar__item:before{display:none}.sidebar-scrim{display:block}.sidebar-scrim--visible{opacity:1;pointer-events:auto}}.notifications{display:inline-flex;position:relative}.notifications__trigger[aria-expanded=true]{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong));color:hsl(var(--foreground))}.notifications__badge{align-items:center;background-color:hsl(var(--selected));border-radius:var(--radius-pill);color:hsl(var(--selected-foreground));display:inline-flex;font-size:11px;font-weight:700;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 5px;pointer-events:none;position:absolute;right:-5px;top:-5px}.notifications__panel{overflow:hidden;padding:0;position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100vw - 24px));z-index:50}.notifications__head{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:10px;justify-content:space-between;padding:12px 14px}.notifications__title{color:hsl(var(--foreground));font-size:14px;font-weight:600}.notifications__mark-all{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:12px;font-weight:500;padding:0;transition:color var(--speed) var(--ease);white-space:nowrap}.notifications__mark-all:hover{color:hsl(var(--selected-strong));text-decoration:underline}.notifications__list{max-height:min(60vh,380px);overflow-y:auto;padding:6px}.notifications__item{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:10px;text-align:left;transition:background-color var(--speed) var(--ease);width:100%}.notifications__item:hover{background-color:hsl(var(--muted))}.notifications__dot{background-color:initial;border-radius:50%;flex-shrink:0;height:7px;width:7px}.notifications__item--new .notifications__dot{background-color:hsl(var(--selected))}.notifications__item-body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.notifications__item-title{color:hsl(var(--muted-foreground));font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notifications__item--new .notifications__item-title{color:hsl(var(--foreground));font-weight:600}.notifications__item-meta{font-size:12px;overflow:hidden;text-overflow:ellipsis}.notifications__item-meta,.notifications__item-time{color:hsl(var(--muted-foreground));white-space:nowrap}.notifications__item-time{align-self:flex-start;flex-shrink:0;font-size:11px}.notifications__footer{border-top:1px solid hsl(var(--border))}.notifications__all{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:13px;font-weight:500;padding:11px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.notifications__all:hover{background-color:hsl(var(--muted));color:hsl(var(--selected-strong))}.notifications__list .ui-empty,.notifications__list .ui-loading{padding:28px 16px}.notifications__list .ui-empty{gap:6px}@media (max-width:720px){.notifications__panel{left:10px;position:fixed;right:10px;top:calc(var(--topbar-height) + 4px);width:auto}}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:hsl(var(--background)/.82);gap:16px;height:var(--topbar-height);justify-content:space-between;padding:0 var(--content-gutter);position:-webkit-sticky;position:sticky;top:0;z-index:40}.topbar,.topbar__left{align-items:center;display:flex}.topbar__left{gap:12px;min-width:0}.topbar__burger{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;display:none;flex-shrink:0;height:40px;justify-content:center;transition:background-color var(--speed) var(--ease);width:40px}.topbar__burger:hover{background-color:hsl(var(--muted))}.topbar__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__right{align-items:center;display:flex;flex-shrink:0;gap:10px}.topbar__icon-btn{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--secondary-foreground));cursor:pointer;display:inline-flex;height:40px;justify-content:center;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease),border-color var(--speed) var(--ease);width:40px}.topbar__icon-btn:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong));color:hsl(var(--foreground))}.topbar__balance{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;gap:8px;height:40px;padding:0 14px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease)}.topbar__balance:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.topbar__balance-label{color:hsl(var(--muted-foreground));font-size:12px;line-height:1}.topbar__balance-value{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;line-height:1;white-space:nowrap}.topbar__user{position:relative}.topbar__user-trigger{align-items:center;background-color:initial;border:1px solid #0000;border-radius:var(--radius-pill);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;gap:9px;height:40px;padding:0 10px 0 6px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease)}.topbar__user-trigger:hover,.topbar__user-trigger[aria-expanded=true]{background-color:hsl(var(--muted));border-color:hsl(var(--border))}.topbar__avatar{align-items:center;background-color:hsl(var(--selected));border-radius:50%;color:hsl(var(--selected-foreground));display:inline-flex;flex-shrink:0;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.topbar__user-name{font-size:14px;font-weight:500;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__chevron{color:hsl(var(--muted-foreground));transition:transform var(--speed) var(--ease)}.topbar__chevron--open{transform:rotate(180deg)}.topbar__menu{position:absolute;right:0;top:calc(100% + 8px);z-index:50}@media (max-width:1024px){.topbar__burger{display:inline-flex}}@media (max-width:720px){.topbar{gap:8px;padding:0 14px}.topbar__right{gap:10px}.topbar__balance-label,.topbar__theme,.topbar__title,.topbar__user-name{display:none}.topbar__balance{padding:0 10px}}.footer{margin-top:32px;padding:0 0 28px}.footer-inner{background-color:hsl(var(--background-alt));border:1px solid hsl(var(--border));border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:24px;padding:28px 28px 22px}.footer-grid{grid-gap:28px 32px;display:grid;gap:28px 32px;grid-template-columns:auto repeat(3,minmax(0,1fr))}.footer-column{min-width:0}.footer-column__head{margin-bottom:18px}.footer-column--logo .footer-column__head{margin-bottom:0}.footer-column--right .footer-column__head,.footer-column__head--right{display:flex;justify-content:flex-end}.footer-logo{display:block;height:26px;width:auto}.footer-logo--dark,:root[data-theme=dark] .footer-logo--light{display:none}:root[data-theme=dark] .footer-logo--dark{display:block}.footer-email,.footer-phone{color:hsl(var(--foreground));font-size:18px;font-weight:600;letter-spacing:-.01em}.footer-column__body{max-width:260px}.footer-column__title{color:hsl(var(--muted-foreground));font-size:13px;font-weight:600;letter-spacing:.02em;margin:0 0 10px;text-transform:uppercase}.footer-link{background:none;border:none;color:hsl(var(--secondary-foreground));cursor:pointer;display:block;font-size:14px;margin-bottom:8px;padding:0;text-align:left;transition:color var(--speed) var(--ease);width:100%}.footer-link:hover,.footer-logout{color:hsl(var(--foreground))}.footer-logout{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:40px;justify-content:center;padding:0 18px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),color var(--speed) var(--ease)}.footer-logout:hover{background-color:hsl(var(--destructive-soft));border-color:hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.footer-column__body--muted{color:hsl(var(--muted-foreground))}.footer-company__title{font-weight:500;margin-bottom:6px}.footer-company__line,.footer-company__title{color:hsl(var(--muted-foreground));font-size:13px}.footer-company__line{margin-bottom:4px}.footer-bottom{border-top:1px solid hsl(var(--border));display:flex;flex-wrap:wrap;gap:12px 32px;grid-column:1/-1;padding-top:16px}.footer-bottom .footer-link{color:hsl(var(--muted-foreground));font-size:13px;margin-bottom:0;width:auto}@media (max-width:1100px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-column--right .footer-column__head{justify-content:flex-start}}@media (max-width:640px){.footer-inner{padding:22px 18px 18px}.footer-grid{gap:22px;grid-template-columns:1fr}.footer-email,.footer-phone{font-size:16px}.footer-bottom{flex-direction:column;gap:8px}}.app-shell,.app-shell__main{background-color:hsl(var(--background));min-height:100vh}.app-shell__main{display:flex;flex-direction:column;margin-left:calc(var(--sidebar-width) + 12px)}.app-shell__content{animation:ui-rise var(--speed-slow) var(--ease);flex:1 1;padding:28px 0 8px}.mobile-nav{align-items:stretch;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:hsl(var(--background)/.94);border-top:1px solid hsl(var(--border));bottom:0;display:none;height:var(--mobilenav-height);left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:45}.mobile-nav__item{align-items:center;background:#0000;border:none;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:10.5px;font-weight:500;gap:3px;justify-content:center;min-width:0;padding:6px 2px;transition:color var(--speed) var(--ease)}.mobile-nav__item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-nav__item:hover{color:hsl(var(--foreground))}.mobile-nav__item--active{color:hsl(var(--selected))}@media (max-width:1024px){.app-shell__main{border-radius:0;margin-left:0}.app-shell__content{padding-bottom:calc(var(--mobilenav-height) + 8px)}.mobile-nav{display:flex}}@media (max-width:720px){.app-shell__content{padding-top:20px}}.App{min-height:100vh;width:100%}.container{margin:0 auto;max-width:var(--content-max);padding-left:var(--content-gutter);padding-right:var(--content-gutter);width:100%}.container .container{max-width:none;padding-left:0;padding-right:0}.login-container{align-items:center;background-color:hsl(var(--background-alt));display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}.login-container:before{background:radial-gradient(680px 380px at 15% 10%,hsl(var(--selected)/.12),#0000 60%),radial-gradient(560px 320px at 85% 90%,hsl(var(--info)/.1),#0000 60%);content:"";inset:0;pointer-events:none;position:absolute}.login-modal{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:430px;padding:32px;position:relative;width:100%;z-index:1}.login-header{align-items:center;display:flex;justify-content:center;margin-bottom:22px}.login-logo{display:block;height:28px;width:auto}.login-logo--dark,:root[data-theme=dark] .login-logo--light{display:none}:root[data-theme=dark] .login-logo--dark{display:block}.login-title{color:hsl(var(--foreground));font-size:22px;font-weight:650;letter-spacing:-.02em;margin:0;text-align:center}.login-subtitle{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.5;margin:8px 0 24px;text-align:center}.login-tabs{background-color:hsl(var(--muted));border-radius:var(--radius);display:flex;gap:4px;margin-bottom:22px;padding:4px}.login-tab{background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:9px 0;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.login-tab.active,.login-tab:hover{color:hsl(var(--foreground))}.login-tab.active{background-color:hsl(var(--card));box-shadow:var(--shadow-xs);font-weight:600}.login-form{display:flex;flex-direction:column;gap:12px}.login-input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:44px;outline:none;padding:0 14px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.login-input::placeholder{color:hsl(var(--muted-foreground))}.login-input:hover{border-color:hsl(var(--border-strong))}.login-input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.login-button{background-color:hsl(var(--selected));border:1px solid #0000;border-radius:var(--radius);box-shadow:var(--shadow-xs);color:hsl(var(--selected-foreground));cursor:pointer;font-size:15px;font-weight:500;height:44px;margin-top:4px;transition:background-color var(--speed) var(--ease),opacity var(--speed) var(--ease);width:100%}.login-button:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-button--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));box-shadow:none;color:hsl(var(--foreground))}.login-button--secondary:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.login-hint{background-color:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--muted-foreground));font-size:13px;line-height:1.5;padding:10px 12px;text-align:center}.login-hint b{color:hsl(var(--foreground))}.login-error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:13px;padding:10px 12px;text-align:center}.login-options{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:4px}.login-checkbox-label{align-items:center;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-size:13px;gap:8px;-webkit-user-select:none;user-select:none}.login-checkbox{accent-color:hsl(var(--selected));cursor:pointer;height:16px;width:16px}.login-forgot{color:hsl(var(--selected));font-size:13px}.login-forgot:hover{color:hsl(var(--selected-strong));text-decoration:underline}.login-divider{align-items:center;display:flex;gap:12px;margin:18px 0}.login-divider-line{background-color:hsl(var(--border));flex:1 1;height:1px}.login-divider-text{color:hsl(var(--muted-foreground));font-size:12px}.login-social{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.login-social-button{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-size:14px;gap:8px;height:44px;justify-content:center;transition:background-color var(--speed) var(--ease)}.login-social-button:hover{background-color:hsl(var(--muted))}.login-social-icon{height:16px;width:16px}@media (max-width:480px){.login-modal{padding:24px 20px}.login-title{font-size:20px}}.det-stats-modal__dialog{display:flex;flex-direction:column;max-height:min(90vh,880px);max-width:none;width:min(940px,calc(100vw - 32px))}.det-stats__subtitle{color:hsl(var(--muted-foreground));font-size:13px;font-weight:400;margin:4px 0 0}.det-stats-modal__body{flex:1 1;overflow-y:auto;padding:20px}.det-stats__empty,.det-stats__error,.det-stats__loading{color:hsl(var(--muted-foreground));font-size:14px;padding:32px 16px;text-align:center}.det-stats__error{color:hsl(var(--destructive))}.det-stats__cards{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:22px}.det-stats__card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:4px;padding:18px 20px}.det-stats__card--day{background:radial-gradient(420px 160px at 100% 0,hsl(var(--selected)/.14),#0000 65%),hsl(var(--card));border-color:hsl(var(--selected)/.28)}.det-stats__card--week{background:radial-gradient(420px 160px at 100% 0,hsl(var(--info)/.14),#0000 65%),hsl(var(--card));border-color:hsl(var(--info)/.28)}.det-stats__card-label{color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.det-stats__card-value{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:36px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.03em;line-height:1.1}.det-stats__card-hint{color:hsl(var(--muted-foreground));font-size:12px}.det-stats__section{margin-bottom:22px}.det-stats__section--areas{border-top:1px solid hsl(var(--border));margin-top:8px;padding-top:20px}.det-stats__section-title{color:hsl(var(--foreground));font-size:15px;font-weight:600;letter-spacing:-.01em;margin:0 0 12px}.det-stats__chart{align-items:flex-end;background-color:hsl(var(--muted)/.45);border:1px solid hsl(var(--border));border-radius:var(--radius-md);display:flex;gap:8px;height:150px;padding:14px 14px 8px}.det-stats__chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%;justify-content:flex-end;min-width:0}.det-stats__chart-value{font-feature-settings:"tnum";color:hsl(var(--muted-foreground));font-size:11px;font-variant-numeric:tabular-nums;font-weight:600;margin-bottom:4px;min-height:16px}.det-stats__chart-bar-wrap{align-items:flex-end;display:flex;flex:1 1;justify-content:center;max-width:34px;width:100%}.det-stats__chart-bar{background:linear-gradient(180deg,hsl(var(--selected)) 0,hsl(var(--selected-strong)) 100%);border-radius:var(--radius-xs) var(--radius-xs) 2px 2px;min-height:4px;transition:height .25s var(--ease);width:100%}.det-stats__chart-col:hover .det-stats__chart-bar{filter:brightness(1.08)}.det-stats__chart-label{color:hsl(var(--muted-foreground));font-size:11px;margin-top:6px;white-space:nowrap}.det-stats__split{grid-gap:18px;display:grid;gap:18px;grid-template-columns:1fr 1fr}.det-stats__bars{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.det-stats__bar-row{display:flex;flex-direction:column;gap:5px}.det-stats__bar-meta{align-items:baseline;display:flex;font-size:13px;gap:8px;justify-content:space-between}.det-stats__bar-label{color:hsl(var(--foreground));font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det-stats__bar-value{font-feature-settings:"tnum";color:hsl(var(--foreground));flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:600}.det-stats__bar-share{color:hsl(var(--muted-foreground));font-weight:400}.det-stats__bar-track{background-color:hsl(var(--muted));border-radius:var(--radius-pill);height:8px;overflow:hidden}.det-stats__bar-fill{background-color:hsl(var(--selected));border-radius:var(--radius-pill);height:100%;min-width:4px;transition:width .3s var(--ease)}.det-stats__areas{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));list-style:none;margin:0;padding:0}.det-stats__area-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.det-stats__area-card:hover{border-color:hsl(var(--border-strong));box-shadow:var(--shadow-md)}.det-stats__area-top{align-items:flex-start;background-color:hsl(var(--muted)/.4);border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.det-stats__area-title-wrap{align-items:center;display:flex;gap:10px;min-width:0}.det-stats__area-icon-wrap{align-items:center;background-color:hsl(var(--selected-soft));border-radius:var(--radius-md);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.det-stats__area-icon{color:hsl(var(--selected));height:20px;width:20px}.det-stats__area-name{color:hsl(var(--foreground));font-size:15px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det-stats__area-badges{align-items:stretch;display:flex;flex-direction:column;flex-shrink:0;gap:6px;min-width:124px}.det-stats__area-badge{align-items:center;border:1px solid #0000;border-radius:var(--radius-pill);display:flex;font-size:12px;gap:12px;justify-content:space-between;line-height:1.3;padding:5px 11px;width:100%}.det-stats__area-badge--day{background-color:hsl(var(--selected-soft));border-color:hsl(var(--selected)/.25)}.det-stats__area-badge--week{background-color:hsl(var(--info-soft));border-color:hsl(var(--info)/.25)}.det-stats__area-badge-label{color:hsl(var(--muted-foreground));font-weight:500}.det-stats__area-badge-value{font-feature-settings:"tnum";color:hsl(var(--foreground));flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:700;text-align:right}.det-stats__area-body{padding:14px 16px 16px}.det-stats__area-body-label{color:hsl(var(--muted-foreground));display:block;font-size:11px;font-weight:600;letter-spacing:.06em;margin-bottom:10px;text-transform:uppercase}.det-stats__area-models{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.det-stats__area-model{display:flex;flex-direction:column;gap:5px}.det-stats__area-model-meta{align-items:baseline;display:flex;font-size:13px;gap:8px;justify-content:space-between}.det-stats__area-model-label{color:hsl(var(--foreground));font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det-stats__area-model-value{font-feature-settings:"tnum";color:hsl(var(--foreground));flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:600}.det-stats__area-model-share{color:hsl(var(--muted-foreground));font-weight:400}.det-stats__area-model-track{background-color:hsl(var(--muted));border-radius:var(--radius-pill);height:6px;overflow:hidden}.det-stats__area-model-fill{background-color:hsl(var(--selected));border-radius:var(--radius-pill);height:100%;min-width:4px;transition:width .3s var(--ease)}.det-stats__area-empty{color:hsl(var(--muted-foreground));font-size:13px;margin:0;padding:8px 0 2px;text-align:center}@media (max-width:720px){.det-stats__areas,.det-stats__cards,.det-stats__split{grid-template-columns:1fr}.det-stats__card-value{font-size:30px}}.area-page{width:100%}.area-main{gap:24px}.area-cameras,.area-main{display:flex;flex-direction:column}.area-cameras{gap:18px}.area-cameras__header{display:flex;flex-direction:column;gap:6px}.area-cameras__title-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.area-cameras-title-container{align-items:center;display:flex;flex-wrap:wrap;gap:14px;min-width:0}.area-cameras__title{color:hsl(var(--foreground));font-size:clamp(22px,2.2vw,28px);font-weight:650;letter-spacing:-.02em;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis}.area-cameras__description{color:hsl(var(--muted-foreground));font-size:14px;line-height:1.55;margin:0;max-width:70ch}.area-cameras__select{appearance:none;-webkit-appearance:none;background-color:hsl(var(--card));background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23888' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:18px 18px;border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:14px;height:40px;max-width:280px;min-width:190px;outline:none;padding:0 34px 0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.area-cameras__select:hover{border-color:hsl(var(--border-strong))}.area-cameras__select:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.area-cameras__controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.area-cameras__icon-button{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;padding:0;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease);width:40px}.area-cameras__icon-button:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.area-cameras__icon-button:disabled{cursor:not-allowed;opacity:.45}.area-cameras__icon-button--danger:hover:not(:disabled){background-color:hsl(var(--destructive-soft));border-color:hsl(var(--destructive)/.3)}.area-cameras__icon-button--presence,.area-cameras__icon-button--roi{background-color:hsl(var(--selected-soft));border-color:hsl(var(--selected)/.25)}.area-cameras__icon-button--presence:hover:not(:disabled),.area-cameras__icon-button--roi:hover:not(:disabled){background-color:hsl(var(--selected)/.16);border-color:hsl(var(--selected)/.4)}.area-card__icon-image{display:block;height:16px;width:16px}:root[data-theme=dark] .area-card__icon-image{filter:invert(1) brightness(1.6)}.area-cameras__add{align-items:center;background-color:hsl(var(--selected));border:none;border-radius:var(--radius);box-shadow:var(--shadow-xs);color:hsl(var(--selected-foreground));cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;height:40px;justify-content:center;padding:0 16px;transition:background-color var(--speed) var(--ease)}.area-cameras__add:hover{background-color:hsl(var(--selected-strong))}.area-cameras__add-plus{align-items:center;border:1px solid;border-radius:50%;display:inline-flex;font-size:14px;height:18px;justify-content:center;line-height:1;opacity:.85;width:18px}.area-cameras__empty{padding:56px 24px}.area-cameras__single{align-items:center;display:flex;justify-content:center;width:100%}.area-cameras__single .area-cameras__video{aspect-ratio:16/9;max-height:620px;max-width:1100px;width:100%}.area-cameras__layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.area-cameras__main{min-width:0}.area-cameras__video{aspect-ratio:16/11;background:#0b1220;border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;position:relative;width:100%}.area-cameras__video iframe{border:none;height:100%;width:100%}.area-cameras__video-placeholder{background:radial-gradient(900px 350px at 20% 25%,#ffffff1f,#0000 55%),radial-gradient(600px 260px at 75% 60%,hsl(var(--selected)/.16),#0000 60%),linear-gradient(135deg,#111827f2,#020617f2);height:100%;width:100%}.area-cameras__video-overlay{display:flex;flex-direction:column;inset:0;justify-content:space-between;padding:14px;pointer-events:none;position:absolute}.area-cameras__video-top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.area-cameras__video-label{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000073;padding:6px 12px}.area-cameras__video-bottom,.area-cameras__video-label{align-items:center;border-radius:var(--radius-pill);color:#fffffff2;display:inline-flex;font-size:13px;font-weight:600;gap:8px}.area-cameras__video-bottom{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0000006b;border:1px solid #ffffff29;line-height:1;padding:7px 14px;width:-webkit-fit-content;width:fit-content}.area-cameras__live-dot{background:hsl(var(--selected));border-radius:50%;box-shadow:0 0 0 3px hsl(var(--selected)/.28);flex:0 0 auto;height:8px;position:relative;width:8px}.area-cameras__video-bottom>span{display:inline-block;line-height:1}.area-cameras__live-dot:after{animation:area-live-pulse 1.4s ease-out infinite;background:hsl(var(--selected)/.55);border-radius:50%;content:"";inset:0;opacity:.65;position:absolute;transform:scale(1);will-change:transform,opacity}@keyframes area-live-pulse{0%{opacity:.55;transform:scale(1)}70%{opacity:0;transform:scale(3.2)}to{opacity:0;transform:scale(3.2)}}.area-cameras__video-bottom--counter{gap:10px}.area-cameras__counter-label{font-weight:500}.area-cameras__people-count-value{color:#fff;font-size:18px;font-weight:700;min-width:1.5ch}.area-cameras__counter-ws-hint{color:#ffffff8c;font-size:12px;font-weight:400}.area-cameras__video--people-counter{align-items:center;background:linear-gradient(160deg,#16161a,#26262e);display:flex;justify-content:center;min-height:280px}.area-cameras__people-counter-panel{color:#ffffffeb;padding:32px 24px;text-align:center}.area-cameras__people-counter-number{font-size:64px;font-weight:700;letter-spacing:-.03em;line-height:1}.area-cameras__people-counter-caption{color:#fff9;font-size:15px;font-weight:500;margin-top:10px}.area-cameras__grid-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));margin-top:20px}.area-cameras__grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.area-cameras__thumb{-webkit-appearance:none;appearance:none;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:0;padding:8px;text-align:left;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),transform var(--speed) var(--ease)}.area-cameras__thumb:hover{border-color:hsl(var(--border-strong));box-shadow:var(--shadow-md)}.area-cameras__thumb--active{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.area-cameras__thumb-media{aspect-ratio:16/9;background:#0b1220;border-radius:var(--radius-sm);overflow:hidden;position:relative;width:100%}.area-cameras__thumb-media iframe{border:none;height:100%;pointer-events:none;width:100%}.area-cameras__thumb-placeholder{background:radial-gradient(400px 160px at 25% 25%,#ffffff1a,#0000 60%),linear-gradient(135deg,#111827f2,#020617f2);height:100%;width:100%}.area-cameras__thumb-title{color:hsl(var(--foreground));font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.area-cameras__thumb-title--top{order:-1;padding:2px 4px}.area-cameras__thumb--active .area-cameras__thumb-title{color:hsl(var(--selected-strong));font-weight:600}.area-logs{display:flex;flex-direction:column;gap:16px}.area-logs__header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.area-logs__title{color:hsl(var(--foreground));font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}.area-logs__count{color:hsl(var(--muted-foreground));font-weight:500}.area-logs__controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.area-logs__control{display:inline-flex;min-width:0}.area-logs__range,.area-logs__stats-btn{align-items:center;display:inline-flex}.area-logs__stats-btn{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:13px;font-weight:500;gap:8px;height:40px;padding:0 14px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease)}.area-logs__stats-btn:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.area-logs__stats-btn-icon{align-items:center;color:hsl(var(--selected));display:inline-flex}.area-logs__stats-btn-icon svg{height:16px;width:16px}.area-logs-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.area-logs-card__head{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.area-logs-card__title{color:hsl(var(--foreground));font-size:15px;font-weight:600;margin:0}.area-logs-card__camera{color:hsl(var(--muted-foreground));font-size:13px}.area-logs-card__camera-select{appearance:none;-webkit-appearance:none;background-color:hsl(var(--card));background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23888' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:18px 18px;border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:13px;height:40px;max-width:240px;min-width:170px;outline:none;padding:0 34px 0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.area-logs-card__camera-select:hover{border-color:hsl(var(--border-strong))}.area-logs-card__camera-select:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.area-logs-table{width:100%}.area-logs-table__head,.area-logs-table__row{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:minmax(140px,.9fr) minmax(0,1.4fr) minmax(120px,.7fr);padding:0 20px}.area-logs-table__head{background-color:hsl(var(--muted)/.6);border-bottom:1px solid hsl(var(--border));height:42px}.area-logs-table__row{border-bottom:1px solid hsl(var(--border));min-height:52px;padding-bottom:10px;padding-top:10px;transition:background-color var(--speed) var(--ease)}.area-logs-table__row:last-child{border-bottom:none}.area-logs-table__row:hover{background-color:hsl(var(--muted)/.55)}.area-logs-table__cell{color:hsl(var(--foreground));font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis}.area-logs-table__cell--muted,.area-logs-table__head .area-logs-table__cell{color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.area-logs-table__row .area-logs-table__cell{color:hsl(var(--foreground));font-size:14px;font-weight:400;letter-spacing:normal;text-transform:none}.area-logs-table__head>:nth-child(3),.area-logs-table__row>:nth-child(3){justify-self:end;text-align:right}.area-logs-table__sort{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;gap:6px;padding:0;transition:color var(--speed) var(--ease)}.area-logs-table__sort:hover{color:hsl(var(--foreground))}.area-logs-table__sort-icon{align-items:center;display:inline-flex}.area-logs-table__chev{color:hsl(var(--muted-foreground));height:14px;width:14px}.area-logs-table__chev--up{transform:rotate(180deg)}.area-logs-table__dash{color:hsl(var(--muted-foreground))}.area-logs-card__photo-btn{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;height:34px;padding:0 12px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease)}.area-logs-card__photo-btn:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.area-logs-card__photo-btn-icon{display:block;height:16px;width:16px}:root[data-theme=dark] .area-logs-card__photo-btn-icon{filter:invert(1) brightness(1.6)}.area-logs-card__more{align-items:center;background:none;border:none;border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:12px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.area-logs-card__more:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.area-logs-card__chev{height:16px;width:16px}.area-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.area-modal__backdrop{animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.7);inset:0;position:absolute}.area-modal__dialog{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:860px;overflow:hidden;position:relative;width:100%;z-index:1}.area-modal__dialog--small{max-width:440px;padding-bottom:0}.area-modal__dialog--photo{max-width:900px}.area-modal__dialog--photo .area-modal__photo-body{align-items:center;background-color:hsl(var(--background-alt));display:flex;justify-content:center;min-height:240px;overflow:auto;padding:20px}.area-modal__dialog--photo .area-modal__photo-img{border-radius:var(--radius-md);display:block;max-height:70vh;max-width:100%}.area-modal__photo-status{color:hsl(var(--muted-foreground));font-size:14px}.area-modal__photo-status--error{color:hsl(var(--destructive))}.area-modal__dialog--photo .area-modal__footer{justify-content:flex-end}.area-modal__header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:18px 20px}.area-modal__title{color:hsl(var(--foreground));font-size:17px;font-weight:600;letter-spacing:-.01em;margin:0}.area-modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;line-height:1;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.area-modal__close:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.area-modal__body{grid-gap:24px;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow-y:auto;padding:20px}.area-modal__left,.area-modal__right{display:flex;flex-direction:column;gap:12px;min-width:0}.area-modal__field{width:100%}.area-modal__input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.area-modal__input::placeholder{color:hsl(var(--muted-foreground))}.area-modal__input:hover:not(:disabled){border-color:hsl(var(--border-strong))}.area-modal__input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.area-modal__input:disabled{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.area-modal__input--select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23888' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:18px 18px;cursor:pointer;padding-right:34px}.area-modal__subtitle{color:hsl(var(--muted-foreground));font-size:13px;font-weight:600;letter-spacing:.02em;margin:0;text-transform:uppercase}.area-modal__analytics-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto}.area-modal__note{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.45;margin:0}.area-modal__confirm-text{color:hsl(var(--foreground));font-size:14px;line-height:1.55;padding:20px}.area-modal__error{grid-column:1/-1;margin:0 20px}.area-modal-analytic{align-items:center;border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:14px;gap:10px;padding:9px 10px;transition:background-color var(--speed) var(--ease);-webkit-user-select:none;user-select:none}.area-modal-analytic:hover,.area-modal-analytic__icon{background-color:hsl(var(--muted))}.area-modal-analytic__icon{align-items:center;border-radius:var(--radius-sm);display:inline-flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.area-modal-analytic__icon img{display:block;height:16px;width:16px}:root[data-theme=dark] .area-modal-analytic__icon img{filter:invert(1) brightness(1.6)}.area-modal-analytic__text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis}.area-modal-analytic input{height:0;opacity:0;position:absolute;width:0}.area-modal-analytic__checkbox{align-items:center;background-color:hsl(var(--card));border:1.5px solid hsl(var(--border-strong));border-radius:var(--radius-xs);display:inline-flex;flex-shrink:0;height:20px;justify-content:center;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease);width:20px}.area-modal-analytic__checkbox:after{border-bottom:2px solid hsl(var(--selected-foreground));border-left:2px solid hsl(var(--selected-foreground));content:"";height:6px;opacity:0;transform:rotate(-45deg) translate(1px,-1px) scale(.6);transition:opacity var(--speed) var(--ease),transform var(--speed) var(--ease);width:10px}.area-modal-analytic input:checked+.area-modal-analytic__checkbox,.area-modal__people-counter-option input:checked+.area-modal-analytic__checkbox{background-color:hsl(var(--selected));border-color:hsl(var(--selected))}.area-modal-analytic input:checked+.area-modal-analytic__checkbox:after,.area-modal__people-counter-option input:checked+.area-modal-analytic__checkbox:after{opacity:1;transform:rotate(-45deg) translate(1px,-1px) scale(1)}.area-modal__people-options{display:flex;flex-direction:column;gap:2px}.area-modal__people-counter-option{align-items:center;border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:14px;gap:10px;padding:8px 10px;transition:background-color var(--speed) var(--ease);-webkit-user-select:none;user-select:none}.area-modal__people-counter-option:hover{background-color:hsl(var(--muted))}.area-modal__people-counter-option input{height:0;opacity:0;position:absolute;width:0}.area-modal__footer{align-items:center;border-top:1px solid hsl(var(--border));display:flex;flex-shrink:0;gap:10px;grid-column:1/-1;justify-content:flex-end;padding:16px 20px}.area-modal__submit{align-items:center;background-color:hsl(var(--selected));border:1px solid #0000;border-radius:var(--radius);color:hsl(var(--selected-foreground));cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;height:40px;justify-content:center;padding:0 18px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease)}.area-modal__submit:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.area-modal__submit:disabled{cursor:not-allowed;opacity:.55}.area-modal__submit--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.area-modal__submit--secondary:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.area-modal__submit--danger{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.area-modal__submit--danger:hover:not(:disabled){background-color:hsl(var(--destructive)/.88)}.area-modal__submit-plus{align-items:center;border:1px solid;border-radius:50%;display:inline-flex;font-size:14px;height:18px;justify-content:center;line-height:1;opacity:.85;width:18px}@media (max-width:1200px){.area-cameras__grid-container{grid-template-columns:1fr}}@media (max-width:1024px){.area-cameras__layout{grid-template-columns:1fr}.area-cameras__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.area-modal__body{gap:16px;grid-template-columns:1fr}}@media (max-width:768px){.area-cameras__title-row{align-items:flex-start}.area-cameras__controls{width:100%}.area-cameras__add{flex:1 0 100%}.area-cameras__grid,.area-logs__controls{grid-template-columns:repeat(2,minmax(0,1fr))}.area-logs__controls{align-items:stretch;display:grid;width:100%}.area-logs__range,.area-logs__stats-btn{grid-column:1/-1}.area-logs__stats-btn{justify-content:center}.area-logs__control{width:100%}.area-logs-card__camera-select{max-width:none;min-width:0;width:100%}.area-logs__range .logs-daterange{width:100%}.area-logs__range .logs-daterange__trigger{flex:1 1;min-width:0}.area-logs-card__photo-btn{padding:0 8px}.area-logs-card__photo-btn-text{display:none}}@media (max-width:560px){.area-cameras__grid{grid-template-columns:1fr}.area-logs-table__head,.area-logs-table__row{grid-template-columns:minmax(0,1fr) auto;padding-left:14px;padding-right:14px}.area-logs-table__head>:nth-child(2),.area-logs-table__row>:nth-child(2){display:none}.area-modal__dialog{max-height:calc(100vh - 24px)}}.skeleton{background-color:hsl(var(--muted));overflow:hidden;position:relative}.skeleton:after{animation:skeleton-loading 1.4s ease-in-out infinite;background:linear-gradient(90deg,#0000,hsl(var(--foreground)/.06),#0000);content:"";inset:0;position:absolute;transform:translateX(-100%)}@keyframes skeleton-loading{to{transform:translateX(100%)}}.skeleton-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px}.skeleton-card__header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.skeleton-card__menu{flex-shrink:0}.skeleton-card__stats{display:flex;flex-direction:column;gap:6px}.skeleton-card__button{margin-top:4px}.dashboard{width:100%}.dashboard-welcome{display:flex;flex-direction:column;gap:22px}.dashboard-welcome__title{color:hsl(var(--foreground));font-size:clamp(26px,3vw,36px);font-weight:650;letter-spacing:-.025em;line-height:1.15;margin:0}.dashboard-welcome-title-span{color:hsl(var(--muted-foreground));font-weight:500}.dashboard-welcome__text{color:hsl(var(--muted-foreground));font-size:14px;line-height:1.55;margin:8px 0 0;max-width:60ch}.dashboard-welcome__name-skeleton{display:inline-block;vertical-align:middle}.dashboard-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stat-card{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:14px;padding:18px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.dashboard-stat-card:hover{border-color:hsl(var(--border-strong));box-shadow:var(--shadow-md)}.dashboard-stat-card__icon{display:block;height:20px;width:20px}.dashboard-stat-card__icon--chart{color:currentColor}.dashboard-stat-card__body{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dashboard-stat-card__label{color:hsl(var(--muted-foreground));font-size:13px;font-weight:500}.dashboard-stat-card__value{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:28px;font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:-.02em;line-height:1.2}.dashboard-stat-card__value-skeleton{border-radius:var(--radius-sm);height:32px;width:84px}.dashboard-stat-card__hint{color:hsl(var(--muted-foreground));font-size:12px}.dashboard-stat-card__hint--up{color:hsl(var(--success));font-weight:500}.dashboard-stat-card__hint--down{color:hsl(var(--destructive));font-weight:500}.dashboard-panels{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.dashboard-panel{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.dashboard-panel__header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.dashboard-panel__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0}.dashboard-panel__link{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:13px;font-weight:500;padding:0;transition:color var(--speed) var(--ease)}.dashboard-panel__link:hover{color:hsl(var(--selected-strong));text-decoration:underline}.dashboard-events-list{list-style:none;margin:0;padding:6px}.dashboard-event-row{grid-gap:12px;align-items:center;background:none;border:none;border-radius:var(--radius);cursor:pointer;display:grid;gap:12px;grid-template-columns:auto auto 1fr auto;padding:10px 12px;text-align:left;transition:background-color var(--speed) var(--ease);width:100%}.dashboard-event-row:hover{background-color:hsl(var(--muted))}.dashboard-event-row__icon{display:block;height:auto;width:20px}.dashboard-event-row__time{font-feature-settings:"tnum";color:hsl(var(--muted-foreground));font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-event-row__content{display:flex;flex-direction:column;gap:2px;min-width:0}.dashboard-event-row__title{color:hsl(var(--foreground));font-size:14px;font-weight:500}.dashboard-event-row__meta,.dashboard-event-row__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-event-row__meta{color:hsl(var(--muted-foreground));font-size:12px}.dashboard-event-row__badge{justify-content:center;justify-self:end;min-width:104px}.dashboard-event-row__badge--viewed{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.dashboard-panel__more{align-items:center;background:none;border:none;border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:12px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.dashboard-panel__more:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.dashboard-panel__more-chevron{display:block;flex-shrink:0;height:16px;width:16px}.dashboard-actions-list{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:6px}.dashboard-action-row{align-items:center;background:#0000;border:none;border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;padding:10px 12px;text-align:left;transition:background-color var(--speed) var(--ease);width:100%}.dashboard-action-row:hover{background-color:hsl(var(--muted))}.dashboard-action-row__icon-svg,.dashboard-action-row__icon-wrap img{display:block;height:20px;width:20px}.dashboard-action-row__text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dashboard-action-row__title{color:hsl(var(--foreground));font-size:14px;font-weight:500}.dashboard-action-row__desc{color:hsl(var(--muted-foreground));font-size:12px}.dashboard-action-row__chevron{color:hsl(var(--muted-foreground));font-size:20px;line-height:1;transition:transform var(--speed) var(--ease)}.dashboard-action-row:hover .dashboard-action-row__chevron{color:hsl(var(--foreground));transform:translateX(2px)}.dashboard-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.dashboard-card__head{border-bottom:1px solid hsl(var(--border));padding:18px 20px}.dashboard-card__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0}.dashboard-card__form{grid-gap:16px;align-items:end;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;padding:20px}.dashboard-card__field{display:flex;flex-direction:column;gap:6px;min-width:0}.dashboard-button{height:40px}.dashboard-button__icon{align-items:center;border:1px solid;border-radius:50%;display:inline-flex;font-size:14px;height:18px;justify-content:center;line-height:1;opacity:.8;width:18px}.dashboard-areas__head{align-items:center;display:flex;gap:12px;margin-bottom:16px}.dashboard-areas__title{color:hsl(var(--foreground));font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}.dashboard-areas__grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.area-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:16px}.area-card__header{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0}.area-card__title{color:hsl(var(--foreground));font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.3;margin:0;min-width:0}.area-card__desc,.area-card__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.area-card__desc{color:hsl(var(--muted-foreground));font-size:12px;margin:-4px 0 0}.area-card__stats{display:flex;flex-direction:column;gap:6px;margin-top:auto}.area-card__cameras-total{color:hsl(var(--foreground));font-size:13px;font-weight:500;margin:0}.area-card__cameras-status{align-items:center;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;margin:0}.area-card__status-offline,.area-card__status-online{align-items:center;display:inline-flex;font-weight:500;gap:5px}.area-card__status-online{color:hsl(var(--success))}.area-card__status-offline{color:hsl(var(--destructive))}.area-card__open{margin-top:4px;width:100%}.area-card__open:hover{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground))}.area-card__menu-wrap{flex-shrink:0;position:relative}.area-card__menu-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:background-color var(--speed) var(--ease);width:32px}.area-card__menu-btn:hover,.area-card__menu-btn[aria-expanded=true]{background-color:hsl(var(--muted))}.area-card__menu-dots{align-items:center;display:flex;flex-direction:column;gap:3px;justify-content:center}.area-card__menu-dots span{background-color:hsl(var(--muted-foreground));border-radius:50%;height:3.5px;width:3.5px}.area-card__menu{min-width:168px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.delete-confirm-modal__text{color:hsl(var(--foreground));font-size:14px;line-height:1.55;margin:0 0 14px}.delete-confirm-modal__text strong{font-weight:600}.delete-confirm-modal__alert{margin-bottom:12px}.delete-confirm-modal__alert-title{font-weight:600}.delete-confirm-modal__hint{color:hsl(var(--muted-foreground));font-size:13px;margin:0 0 12px}@media (max-width:1280px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1024px){.dashboard-panels{grid-template-columns:1fr}.dashboard-card__form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-card__form .dashboard-button{grid-column:1/-1}}@media (max-width:640px){.dashboard-areas__grid,.dashboard-card__form,.dashboard-stats{grid-template-columns:1fr}.dashboard-event-row{grid-template-areas:"icon content" "time badge";grid-template-columns:auto 1fr;row-gap:8px}.dashboard-event-row__icon-wrap{grid-area:icon}.dashboard-event-row__time{grid-area:time}.dashboard-event-row__content{grid-area:content}.dashboard-event-row__badge{grid-area:badge;justify-self:start}}.roi-modal-overlay{align-items:center;animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.75);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.roi-modal-content{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));margin:auto;max-height:calc(100vh - 48px);max-width:1000px;overflow-y:auto;padding:24px;width:100%}.roi-modal-header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;gap:12px;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.roi-modal-header h2{align-items:center;color:hsl(var(--foreground));display:flex;font-size:18px;font-weight:600;gap:10px;letter-spacing:-.01em;margin:0}.roi-modal-title-icon{display:block;flex-shrink:0;height:20px;width:20px}:root[data-theme=dark] .roi-modal-title-icon{filter:invert(1) brightness(1.6)}.roi-modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;line-height:1;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.roi-modal-close:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.roi-controls{gap:14px;margin-bottom:20px}.roi-control-group,.roi-controls{display:flex;flex-direction:column}.roi-control-group{gap:6px}.roi-control-group label{color:hsl(var(--secondary-foreground));font-size:13px;font-weight:500}.roi-control-group select,.roi-input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.roi-control-group select:focus,.roi-input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.roi-warning{background-color:hsl(var(--warning-soft));border:1px solid hsl(var(--warning)/.3);border-radius:var(--radius);color:hsl(var(--warning-foreground))}.roi-instruction,.roi-warning{font-size:13px;padding:10px 12px}.roi-instruction{background-color:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--muted-foreground));line-height:1.5}.roi-video-container{aspect-ratio:16/9;background:#000;border:1px solid hsl(var(--border));border-radius:var(--radius-md);margin-bottom:20px;overflow:hidden;position:relative;touch-action:none;width:100%}.roi-video-container iframe{border:none;pointer-events:none}.roi-canvas-overlay,.roi-video-container iframe{height:100%;-webkit-user-select:none;user-select:none;width:100%}.roi-canvas-overlay{cursor:crosshair;left:0;pointer-events:auto;position:absolute;top:0;touch-action:none}.roi-no-video{border:1px dashed hsl(var(--border));border-radius:var(--radius-md);font-size:14px;margin-bottom:20px;padding:40px 20px;text-align:center}.roi-info,.roi-no-video{background-color:hsl(var(--muted)/.5);color:hsl(var(--muted-foreground))}.roi-info{border:1px solid hsl(var(--border));border-radius:var(--radius);font-family:var(--font-mono);font-size:12px;line-height:1.6;margin-bottom:14px;padding:12px 14px;word-break:break-word}.roi-status{border:1px solid #0000;border-radius:var(--radius);font-size:13px;margin-bottom:14px;padding:11px 13px}.roi-status--success{background-color:hsl(var(--success-soft));border-color:hsl(var(--success)/.25);color:hsl(var(--success))}.roi-status--error{background-color:hsl(var(--destructive-soft));border-color:hsl(var(--destructive)/.25);color:hsl(var(--destructive))}.roi-status--loading{background-color:hsl(var(--info-soft));border-color:hsl(var(--info)/.25);color:hsl(var(--info))}.roi-buttons{display:flex;flex-direction:column;gap:10px}.roi-btn{border:1px solid #0000;border-radius:var(--radius);cursor:pointer;font-size:14px;font-weight:500;height:44px;padding:0 22px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease);width:100%}.roi-btn__inner{align-items:center;display:inline-flex;gap:8px;justify-content:center}.roi-btn__icon{display:block;flex-shrink:0;object-fit:contain;pointer-events:none}.roi-btn:disabled{cursor:not-allowed;opacity:.55}.roi-btn--primary{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground))}.roi-btn--primary:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.roi-btn--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.roi-btn--secondary:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}:root[data-theme=dark] .roi-btn--secondary .roi-btn__icon{filter:invert(1) brightness(1.6)}@media (max-width:640px){.roi-modal-content{padding:18px}}.presence-loading{color:hsl(var(--muted-foreground));font-size:14px;margin:0 0 12px}.presence-schedule-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.presence-schedule-row{align-items:center;background-color:hsl(var(--muted)/.4);border:1px solid hsl(var(--border));border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:10px;padding:8px 10px}.presence-schedule-row label{align-items:center;color:hsl(var(--secondary-foreground));display:flex;font-size:13px;gap:6px}.presence-schedule-row input[type=time]{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius-sm);color:hsl(var(--foreground));font-size:14px;height:34px;outline:none;padding:0 8px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.presence-schedule-row input[type=time]:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.presence-schedule-remove{align-items:center;background-color:hsl(var(--destructive-soft));border:none;border-radius:var(--radius-sm);color:hsl(var(--destructive));cursor:pointer;display:inline-flex;font-size:18px;height:32px;justify-content:center;line-height:1;margin-left:auto;transition:background-color var(--speed) var(--ease);width:32px}.presence-schedule-remove:hover{background-color:hsl(var(--destructive)/.16)}.presence-add-interval{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:14px;font-weight:500;margin-top:10px;padding:0}.presence-add-interval:hover{color:hsl(var(--selected-strong));text-decoration:underline}.presence-enabled-row{align-items:center;color:hsl(var(--foreground));display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:4px}.presence-zone-hint{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.5;margin:0 0 8px}.presence-section-title{color:hsl(var(--foreground));font-size:14px;font-weight:600;margin:18px 0 8px}.logs-daterange{align-items:center;display:inline-flex;gap:4px;position:relative}.logs-daterange__trigger{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;gap:10px;height:40px;outline:none;padding:0 12px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.logs-daterange__trigger:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.logs-daterange__trigger:focus-visible{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.logs-daterange__value{align-items:center;display:inline-flex;gap:6px;white-space:nowrap}.logs-daterange__all,.logs-daterange__sep{color:hsl(var(--muted-foreground))}.logs-daterange__sep{-webkit-user-select:none;user-select:none}.logs-daterange__part{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.logs-daterange__icon{flex-shrink:0}.logs-daterange__clear,.logs-daterange__icon{color:hsl(var(--muted-foreground));display:inline-flex}.logs-daterange__clear{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:18px;height:32px;justify-content:center;line-height:1;padding:0;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.logs-daterange__clear:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.logs-daterange__popover{animation:ui-pop var(--speed) var(--ease);background-color:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:hsl(var(--popover-foreground));padding:12px;position:absolute;right:0;top:calc(100% + 8px);width:min(320px,calc(100vw - 24px));z-index:40}.logs-daterange__hint{color:hsl(var(--muted-foreground));font-size:12px;margin-bottom:10px;text-align:center}.logs-daterange__nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.logs-daterange__nav-btn{align-items:center;background-color:hsl(var(--muted));border:none;border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-size:18px;height:34px;justify-content:center;line-height:1;transition:background-color var(--speed) var(--ease);width:34px}.logs-daterange__nav-btn:hover{background-color:hsl(var(--secondary-highlight))}.logs-daterange__month{color:hsl(var(--foreground));font-size:14px;font-weight:600}.logs-daterange__weekdays{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.logs-daterange__wd{color:hsl(var(--muted-foreground));font-size:11px;font-weight:500;padding:4px 0;text-align:center}.logs-daterange__grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.logs-daterange__cell{font-feature-settings:"tnum";aspect-ratio:1;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;font-family:inherit;font-size:13px;font-variant-numeric:tabular-nums;min-height:34px;padding:0;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease)}.logs-daterange__cell--empty{min-height:34px;pointer-events:none}.logs-daterange__cell:hover:not(.logs-daterange__cell--empty){background-color:hsl(var(--muted))}.logs-daterange__cell--in-range{background-color:hsl(var(--selected-soft));color:hsl(var(--selected-strong))}.logs-daterange__cell--edge{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground));font-weight:600}.logs-daterange__cell--edge:hover{background-color:hsl(var(--selected-strong));color:hsl(var(--selected-foreground))}.profile-page{width:100%}.profile-main{display:block}.profile-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:24px}.profile-header__title{color:hsl(var(--foreground));font-size:clamp(24px,2.4vw,32px);font-weight:650;letter-spacing:-.025em;margin:0}.profile-header__user{align-items:flex-end;display:flex;flex-direction:column;gap:8px;min-width:0}.profile-header__name{color:hsl(var(--foreground));font-size:15px;font-weight:600}.profile-header__meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.profile-header__balance{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-pill);color:hsl(var(--foreground));display:inline-flex;font-size:13px;font-weight:500;height:34px;padding:0 14px;white-space:nowrap}.profile-header__tariff{color:hsl(var(--muted-foreground));font-size:13px}.profile-header__tariff--btn{align-items:center;background-color:hsl(var(--selected-soft));border:1px solid hsl(var(--selected)/.3);border-radius:var(--radius-pill);color:hsl(var(--selected-strong));cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;height:34px;padding:0 14px;transition:background-color var(--speed) var(--ease);white-space:nowrap}.profile-header__tariff--btn:hover{background-color:hsl(var(--selected)/.16)}.profile-link-btn{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:13px;font-weight:500;padding:0}.profile-link-btn:hover{color:hsl(var(--selected-strong));text-decoration:underline}.profile-content{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.profile-column{display:flex;flex-direction:column;gap:16px;min-width:0}.profile-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;padding:20px}.profile-card__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0 0 14px}.profile-field{align-items:center;display:flex;gap:12px;min-width:0;padding:12px 0}.profile-field+.profile-field{border-top:1px solid hsl(var(--border))}.profile-field__value{color:hsl(var(--foreground));flex:1 1;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-field__edit{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;flex-shrink:0;height:32px;justify-content:center;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease);width:32px}.profile-field__edit:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.profile-field__edit-icon{display:block;height:16px;width:16px}:root[data-theme=dark] .profile-field__edit-icon{filter:invert(1) brightness(1.6)}.profile-field__editor{display:flex;flex-direction:column;gap:8px;width:100%}.profile-field__editor-actions{display:flex;gap:8px}.profile-field__error{color:hsl(var(--destructive));font-size:13px}.profile-field__input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.profile-field__input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.profile-field__cancel-btn,.profile-field__save-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;height:34px;justify-content:center;padding:0 14px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease)}.profile-field__save-btn{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground))}.profile-field__save-btn:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.profile-field__cancel-btn{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.profile-field__cancel-btn:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.profile-field__cancel-btn:disabled,.profile-field__save-btn:disabled{cursor:not-allowed;opacity:.55}.profile-actions-row{display:flex;flex-wrap:wrap;gap:10px}.profile-card__actions--full{margin-top:14px}.profile-button{align-items:center;border:1px solid #0000;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:40px;justify-content:center;padding:0 16px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease)}.profile-button--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.profile-button--secondary:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.profile-button--primary{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground));width:100%}.profile-button--primary:hover{background-color:hsl(var(--selected-strong))}.profile-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.profile-modal__backdrop{animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.7);inset:0;position:absolute}.profile-modal__dialog{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:460px;overflow:hidden;position:relative;width:100%;z-index:1}.profile-modal__header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:18px 20px}.profile-modal__title{color:hsl(var(--foreground));font-size:17px;font-weight:600;letter-spacing:-.01em;margin:0}.profile-modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;flex-shrink:0;font-size:20px;height:32px;justify-content:center;line-height:1;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:32px}.profile-modal__close:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.profile-modal__close:disabled{cursor:not-allowed;opacity:.5}.profile-modal__body{overflow-y:auto;padding:20px}.profile-modal__field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.profile-modal__field:last-of-type{margin-bottom:0}.profile-modal__label{color:hsl(var(--secondary-foreground));font-size:13px;font-weight:500}.profile-modal__input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.profile-modal__input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.profile-modal__input:disabled{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.profile-modal__error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:13px;margin-top:14px;padding:10px 12px}.profile-modal__footer{align-items:center;border-top:1px solid hsl(var(--border));display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:16px 20px}.profile-modal__button{align-items:center;border:1px solid #0000;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:40px;justify-content:center;padding:0 16px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease)}.profile-modal__button--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.profile-modal__button--secondary:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.profile-modal__button--primary{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground))}.profile-modal__button--primary:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.profile-modal__button:disabled{cursor:not-allowed;opacity:.55}.tg-box{background-color:hsl(var(--muted)/.45);border:1px solid hsl(var(--border));border-radius:var(--radius);flex-direction:column;padding:14px}.tg-box,.tg-row{display:flex;gap:12px}.tg-row{align-items:center;justify-content:space-between}.tg-label{color:hsl(var(--muted-foreground));font-size:13px}.tg-value{color:hsl(var(--foreground));font-size:14px;font-weight:500}.tg-actions{display:flex;gap:8px}.tg-help{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.5}.tg-connect{margin-top:16px}.tg-link-hint{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.5;margin-top:10px}@media (max-width:960px){.profile-content{grid-template-columns:1fr}.profile-header,.profile-header__user{align-items:flex-start}.profile-header__meta{justify-content:flex-start}}@media (max-width:560px){.profile-actions-row .profile-button{width:100%}}.topup-modal{align-items:center;animation:ui-fade var(--speed) var(--ease);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:hsl(var(--background)/.7);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.topup-modal__dialog{animation:ui-pop var(--speed-slow) var(--ease);background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:hsl(var(--card-foreground));max-width:420px;padding:24px;width:100%}.topup-modal__title{color:hsl(var(--foreground));font-size:18px;font-weight:600;letter-spacing:-.01em;margin:0}.topup-modal__balance{color:hsl(var(--muted-foreground));font-size:13px;margin:6px 0 20px}.topup-modal__balance strong{font-feature-settings:"tnum";color:hsl(var(--foreground));font-variant-numeric:tabular-nums;font-weight:600}.topup-modal__presets{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.topup-modal__preset{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:13px;font-weight:500;height:40px;padding:0 6px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),color var(--speed) var(--ease);white-space:nowrap}.topup-modal__preset:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.topup-modal__preset--active{background-color:hsl(var(--selected-soft));border-color:hsl(var(--selected));color:hsl(var(--selected-strong));font-weight:600}.topup-modal__field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.topup-modal__field span{color:hsl(var(--secondary-foreground));font-size:13px;font-weight:500}.topup-modal__field input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius);color:hsl(var(--foreground));font-size:14px;height:40px;outline:none;padding:0 12px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);width:100%}.topup-modal__field input::placeholder{color:hsl(var(--muted-foreground))}.topup-modal__field input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.topup-modal__error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:13px;margin:0 0 14px;padding:10px 12px}.topup-modal__submit{background-color:hsl(var(--selected));border:none;border-radius:var(--radius);color:hsl(var(--selected-foreground));cursor:pointer;font-size:14px;font-weight:500;height:44px;transition:background-color var(--speed) var(--ease),opacity var(--speed) var(--ease);width:100%}.topup-modal__submit:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.topup-modal__submit:disabled{cursor:not-allowed;opacity:.6}.balance-page{width:100%}.balance-main{display:block}.balance-breadcrumbs{align-items:center;color:hsl(var(--muted-foreground));display:flex;font-size:13px;gap:8px;margin-bottom:12px}.balance-breadcrumbs a{color:hsl(var(--muted-foreground));transition:color var(--speed) var(--ease)}.balance-breadcrumbs a:hover{color:hsl(var(--foreground))}.balance-header{margin-bottom:24px}.balance-header__title{color:hsl(var(--foreground));font-size:clamp(24px,2.4vw,32px);font-weight:650;letter-spacing:-.025em;margin:0}.balance-header__subtitle{color:hsl(var(--muted-foreground));font-size:14px;margin:6px 0 0}.balance-error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:14px;margin:0 0 16px;padding:12px 14px}.balance-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.balance-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.balance-card--current{background:radial-gradient(700px 220px at 100% 0,hsl(var(--selected)/.1),#0000 65%),hsl(var(--card));grid-column:1;padding:24px}.balance-card--payments{grid-column:2;grid-row:1}.balance-card--transactions{grid-column:1;overflow:hidden;padding:0}.balance-side{display:flex;flex-direction:column;gap:20px;grid-column:2;grid-row:2}.balance-card__top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.balance-card__label{color:hsl(var(--muted-foreground));font-size:13px;font-weight:500;margin:0}.balance-card__amount{font-feature-settings:"tnum";color:hsl(var(--foreground));font-size:clamp(30px,3.4vw,42px);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:6px 0 0}.balance-card__hint{color:hsl(var(--muted-foreground));font-size:13px;margin:6px 0 0}.balance-card__primary-btn{align-items:center;background-color:hsl(var(--selected));border:none;border-radius:var(--radius);box-shadow:var(--shadow-xs);color:hsl(var(--selected-foreground));cursor:pointer;display:inline-flex;flex-shrink:0;font-size:14px;font-weight:500;height:44px;justify-content:center;padding:0 20px;transition:background-color var(--speed) var(--ease)}.balance-card__primary-btn:hover{background-color:hsl(var(--selected-strong))}.balance-card__meta{grid-gap:12px;border-top:1px solid hsl(var(--border));display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:18px}.balance-card__meta-item{display:flex;flex-direction:column;gap:4px;min-width:0}.balance-card__meta-label{color:hsl(var(--muted-foreground));font-size:12px}.balance-card__meta-value{color:hsl(var(--foreground));font-size:14px;font-weight:500}.balance-card__row-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.balance-card--transactions .balance-card__row-header{border-bottom:1px solid hsl(var(--border));margin-bottom:0;padding:16px 20px}.balance-card__title{color:hsl(var(--foreground));font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0}.balance-card__title--small{font-size:15px}.balance-card__link-btn{background:none;border:none;color:hsl(var(--selected));cursor:pointer;font-size:13px;font-weight:500;padding:0;transition:color var(--speed) var(--ease)}.balance-card__link-btn:hover:not(:disabled){color:hsl(var(--selected-strong));text-decoration:underline}.balance-card__link-btn:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed}.balance-payments-empty{background-color:hsl(var(--muted)/.5);border:1px dashed hsl(var(--border));border-radius:var(--radius);color:hsl(var(--muted-foreground));font-size:13px;padding:26px 16px;text-align:center}.balance-card__footer-link,.balance-card__nav-link{align-items:center;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:space-between;margin-top:14px;padding:10px 12px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease);width:100%}.balance-card__footer-link:hover:not(:disabled),.balance-card__nav-link:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.balance-card__footer-link:disabled,.balance-card__nav-link:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed;opacity:.7}.balance-card__empty,.balance-card__loading{color:hsl(var(--muted-foreground));font-size:14px;margin:0;padding:32px 20px;text-align:center}.balance-card__text{color:hsl(var(--muted-foreground));font-size:13px;line-height:1.55;margin:0}.balance-transactions{list-style:none;margin:0;padding:6px}.balance-transaction{align-items:center;border-radius:var(--radius);display:flex;gap:12px;padding:10px 12px;transition:background-color var(--speed) var(--ease)}.balance-transaction:hover{background-color:hsl(var(--muted))}.balance-transaction__icon{align-items:center;background-color:hsl(var(--selected-soft));border-radius:var(--radius-md);display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.balance-transaction__icon img{display:block;height:20px;width:20px}.balance-transaction__content{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.balance-transaction__title{color:hsl(var(--foreground));font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.balance-transaction__date{color:hsl(var(--muted-foreground));font-size:12px}.balance-transaction__right{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:2px}.balance-transaction__amount{font-feature-settings:"tnum";font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.balance-transaction__amount--plus{color:hsl(var(--success))}.balance-transaction__amount--minus{color:hsl(var(--foreground))}.balance-transaction__status{color:hsl(var(--muted-foreground));font-size:11px}.balance-card__more{align-items:center;background:none;border:none;border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:12px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease);width:100%}.balance-card__more:hover:not(:disabled){background-color:hsl(var(--muted));color:hsl(var(--foreground))}.balance-tariff{background-color:hsl(var(--muted)/.45);border:1px solid hsl(var(--border));border-radius:var(--radius);padding:14px}.balance-tariff__head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.balance-tariff__name{color:hsl(var(--foreground));font-size:15px;font-weight:600;margin:0}.balance-tariff__price{color:hsl(var(--muted-foreground));font-size:13px;margin:4px 0 0}.balance-tariff__badge{background-color:hsl(var(--success-soft));border-radius:var(--radius-pill);color:hsl(var(--success));flex-shrink:0;font-size:11px;font-weight:600;padding:4px 10px;white-space:nowrap}.balance-tariff__next{color:hsl(var(--muted-foreground));font-size:12px;margin:12px 0 0}@media (max-width:1100px){.balance-grid{grid-template-columns:1fr}.balance-card--current,.balance-card--payments,.balance-card--transactions,.balance-side{grid-column:1;grid-row:auto}}@media (max-width:600px){.balance-card__top{align-items:stretch;flex-direction:column}.balance-card__primary-btn{width:100%}.balance-card__meta{grid-template-columns:1fr}}.admin-page{width:100%}.admin-main{display:block}.admin-header{margin-bottom:20px}.admin-header__title{color:hsl(var(--foreground));font-size:clamp(24px,2.4vw,32px);font-weight:650;letter-spacing:-.025em;margin:0}.admin-header__subtitle{color:hsl(var(--muted-foreground));font-size:14px;margin:6px 0 0}.admin-tabs{align-items:center;background-color:hsl(var(--muted));border-radius:var(--radius);display:inline-flex;gap:4px;margin-bottom:18px;padding:4px}.admin-tabs__btn{background:#0000;border:none;border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color var(--speed) var(--ease),color var(--speed) var(--ease),box-shadow var(--speed) var(--ease);white-space:nowrap}.admin-tabs__btn--active,.admin-tabs__btn:not(.admin-tabs__btn--active):hover{color:hsl(var(--foreground))}.admin-tabs__btn--active{background-color:hsl(var(--card));box-shadow:var(--shadow-xs)}.admin-card{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.admin-error{background-color:hsl(var(--destructive-soft));border:1px solid hsl(var(--destructive)/.25);border-radius:var(--radius);color:hsl(var(--destructive));font-size:14px;margin-bottom:16px;padding:12px 14px}.admin-table-wrap{overflow-x:auto;width:100%}.admin-table{border-collapse:initial;border-spacing:0;font-size:14px;width:100%}.admin-table th{background-color:hsl(var(--muted)/.6);color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;letter-spacing:.02em;text-align:left;text-transform:uppercase;white-space:nowrap}.admin-table td,.admin-table th{border-bottom:1px solid hsl(var(--border));padding:12px 14px}.admin-table td{color:hsl(var(--foreground));vertical-align:middle}.admin-table tbody tr{transition:background-color var(--speed) var(--ease)}.admin-table tbody tr:hover{background-color:hsl(var(--muted)/.55)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-badge{align-items:center;border-radius:var(--radius-pill);display:inline-flex;font-size:12px;font-weight:500;padding:4px 10px;white-space:nowrap}.admin-badge--admin{background-color:hsl(var(--selected-soft));color:hsl(var(--selected-strong))}.admin-badge--user{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground))}.admin-badge--active{background-color:hsl(var(--success-soft));color:hsl(var(--success))}.admin-badge--inactive{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.admin-input{background-color:hsl(var(--card));border:1px solid hsl(var(--input));border-radius:var(--radius-sm);color:hsl(var(--foreground));font-size:13px;height:34px;min-width:190px;outline:none;padding:0 10px;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.admin-input::placeholder{color:hsl(var(--muted-foreground))}.admin-input:focus{border-color:hsl(var(--selected));box-shadow:0 0 0 3px hsl(var(--selected)/.16)}.admin-input:disabled{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.admin-input--narrow{max-width:120px;min-width:108px}.admin-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:8px}.admin-btn{align-items:center;background-color:hsl(var(--secondary));border:1px solid #0000;border-radius:var(--radius-sm);color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;height:34px;justify-content:center;padding:0 14px;transition:background-color var(--speed) var(--ease),border-color var(--speed) var(--ease),opacity var(--speed) var(--ease);white-space:nowrap}.admin-btn:disabled{cursor:not-allowed;opacity:.55}.admin-btn--primary{background-color:hsl(var(--selected));color:hsl(var(--selected-foreground))}.admin-btn--primary:hover:not(:disabled){background-color:hsl(var(--selected-strong))}.admin-btn--secondary{background-color:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}.admin-btn--secondary:hover:not(:disabled){background-color:hsl(var(--muted));border-color:hsl(var(--border-strong))}.admin-btn--danger{background-color:hsl(var(--destructive-soft));color:hsl(var(--destructive))}.admin-btn--danger:hover:not(:disabled){background-color:hsl(var(--destructive)/.16)}@media (max-width:768px){.admin-tabs{display:flex;width:100%}.admin-tabs__btn{flex:1 1;font-size:13px;padding:8px 10px}.admin-input{min-width:150px}}
/*# sourceMappingURL=main.1176ca65.css.map*/