@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2?dpl=dpl_6ByNQ4moFrycdUQ6CZdReU6a3Fo7)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--accent:#00c896;--accent-dark:#00a87a;--accent-dim:#00c8961a;--accent-border:#00c89647;--accent-shadow:#00c89621;--accent-shadow-lg:#00c8964d;--accent-2:#4f9ef8;--sidebar-bg:#132540;--sidebar-bg-alt:#1a3358;--sidebar-border:#ffffff12;--sidebar-text:#ffffff94;--sidebar-active:#00c89624;--sidebar-w:240px;--bg:#eef3f8;--card:#fff;--border:#e5e7eb;--text:#0a0f1e;--text-muted:#6b7280;--text-subtle:#9ca3af;--danger:#dc2626;--danger-light:#fef2f2}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}body{background:var(--bg);min-height:100%;color:var(--text);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5;display:flex}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}@keyframes mol-pulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes mol-pulse-b{0%,to{opacity:.45}50%{opacity:.9}}@keyframes mol-pulse-c{0%,to{opacity:.6}50%{opacity:1}}@keyframes badge-blink{0%,to{opacity:1}50%{opacity:.35}}.mol-hub{animation:3.2s ease-in-out infinite mol-pulse}.mol-hub--b{animation:4s ease-in-out infinite mol-pulse-b}.mol-hub--c{animation:2.8s ease-in-out infinite mol-pulse-c}.login-page{background:var(--sidebar-bg);min-height:100vh;display:flex}.login-brand{background:linear-gradient(145deg, var(--sidebar-bg) 0%, var(--sidebar-bg-alt) 60%, #081624 100%);flex:1;justify-content:center;align-items:center;padding:3rem 3.5rem;display:flex;position:relative;overflow:hidden}.login-brand:before{content:"";pointer-events:none;background:radial-gradient(circle,#00c89617 0%,#0000 70%);width:520px;height:520px;position:absolute;top:-180px;left:-180px}.login-brand:after{content:"";pointer-events:none;background:radial-gradient(circle,#4f9ef812 0%,#0000 70%);width:380px;height:380px;position:absolute;bottom:-120px;right:-80px}.login-mol-svg{object-fit:cover;opacity:.9;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.login-brand-content{z-index:1;max-width:460px;position:relative}.login-brand-logo{align-items:center;gap:.7rem;margin-bottom:2.75rem;display:flex}.login-brand-name{color:#fff;letter-spacing:.025em;font-size:1.15rem;font-weight:700}.login-brand-headline{color:#fff;letter-spacing:-.025em;margin-bottom:1.25rem;font-size:2.6rem;font-weight:800;line-height:1.15}.login-brand-headline span{background:linear-gradient(120deg, var(--accent) 0%, var(--accent-2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.login-brand-sub{color:#ffffff80;max-width:380px;margin-bottom:3rem;font-size:.975rem;line-height:1.75}.login-brand-stats{align-items:center;gap:0;display:flex}.login-stat{flex-direction:column;gap:.2rem;padding:0 2rem 0 0;display:flex}.login-stat:first-child{padding-left:0}.login-stat-divider{background:#ffffff1f;width:1px;height:36px;margin-right:2rem}.login-stat-num{color:var(--accent);letter-spacing:-.02em;font-size:1.45rem;font-weight:800}.login-stat-label{color:#fff6;text-transform:uppercase;letter-spacing:.09em;font-size:.7rem}.login-form-panel{background:#f8fafc;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:480px;padding:3rem 2.5rem;display:flex;position:relative}.login-card{width:100%;max-width:360px}.login-card-badge{background:var(--accent-dim);color:var(--accent-dark);border:1px solid var(--accent-border);letter-spacing:.09em;text-transform:uppercase;border-radius:100px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.28rem .85rem;font-size:.7rem;font-weight:700;display:inline-flex}.login-badge-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite badge-blink}.login-title{color:#0a0f1e;letter-spacing:-.03em;margin-bottom:.4rem;font-size:1.9rem;font-weight:800}.login-subtitle{color:#6b7280;margin-bottom:2.25rem;font-size:.875rem}.login-form{flex-direction:column;gap:1.25rem;display:flex}.form-group{flex-direction:column;gap:.45rem;display:flex}.form-group label{color:#374151;letter-spacing:.01em;font-size:.8125rem;font-weight:600}.form-group input{color:#111827;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;outline:none;padding:.72rem 1rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.form-group input::placeholder{color:#9ca3af}.form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-shadow)}.form-error{color:var(--danger);margin:0;font-size:.8rem}.form-error--global{background:var(--danger-light);text-align:center;border:1px solid #fecaca;border-radius:10px;padding:.625rem .875rem}.btn-login{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:#fff;letter-spacing:.01em;cursor:pointer;width:100%;box-shadow:0 4px 16px var(--accent-shadow-lg);border:none;border-radius:10px;margin-top:.5rem;padding:.8rem 1rem;font-size:.9375rem;font-weight:700;transition:opacity .15s,transform .12s,box-shadow .15s}.btn-login:hover:not(:disabled){opacity:.93;box-shadow:0 6px 22px var(--accent-shadow-lg);transform:translateY(-1px)}.btn-login:active:not(:disabled){transform:translateY(0)}.btn-login:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-footer-copy{color:#9ca3af;font-size:.72rem;position:absolute;bottom:1.5rem}@media (max-width:768px){.login-brand{display:none}.login-form-panel{width:100%}}.dashboard-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;height:100vh;min-height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--sidebar-border);align-items:center;gap:.625rem;padding:1.25rem 1.25rem 1rem;display:flex}.sidebar-brand-text{color:#fff;letter-spacing:.01em;font-size:.875rem;font-weight:700}.sidebar-section-label{text-transform:uppercase;letter-spacing:.1em;color:#ffffff47;padding:1.25rem 1.25rem .375rem;font-size:.6375rem;font-weight:700}.sidebar-nav{flex:1;padding:.5rem 0}.sidebar-link{color:var(--sidebar-text);border-radius:8px;align-items:center;gap:.625rem;margin:.0625rem .5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:background .12s,color .12s;display:flex}.sidebar-link:hover{color:#fff;background:#ffffff0f}.sidebar-link--active{background:var(--sidebar-active);color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.sidebar-link-icon{opacity:.8;align-items:center;display:flex}.dashboard-content{flex-direction:column;flex:1;min-width:0;display:flex}.dashboard-topbar{background:var(--card);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:flex-end;align-items:center;height:60px;padding:0 1.75rem;display:flex;box-shadow:0 1px 4px #0000000a}.dashboard-topbar-right{align-items:center;gap:1rem;display:flex}.dashboard-user-info{align-items:center;gap:.5rem;display:flex}.dashboard-user-name{color:#374151;font-size:.875rem;font-weight:500}.role-badge{background:var(--accent-dim);color:var(--accent-dark);border:1px solid var(--accent-border);text-transform:uppercase;letter-spacing:.06em;border-radius:99px;padding:.2rem .55rem;font-size:.6875rem;font-weight:700}.btn-logout{border:1px solid var(--border);color:#374151;background:0 0;border-radius:8px;padding:.4rem .875rem;font-size:.875rem;transition:background .12s,border-color .12s}.btn-logout:hover{background:var(--bg);border-color:#9ca3af}.dashboard-main{flex:1;padding:2rem 1.75rem;overflow-y:auto}.dash-home{padding:.5rem 0}.dash-home-title{color:var(--text);margin-bottom:.375rem;font-size:1.5rem;font-weight:700}.dash-home-subtitle{color:var(--text-muted);font-size:.9375rem}.users-page{flex-direction:column;gap:1.25rem;display:flex}.users-page-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.users-page-title{color:var(--text);font-size:1.375rem;font-weight:700;line-height:1.3}.users-page-subtitle{color:var(--text-muted);margin-top:.125rem;font-size:.875rem}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:#fff;white-space:nowrap;box-shadow:0 2px 10px var(--accent-shadow-lg);border:none;border-radius:8px;align-items:center;gap:.375rem;padding:.5625rem 1rem;font-size:.875rem;font-weight:600;transition:opacity .12s,transform .1s,box-shadow .12s;display:inline-flex}.btn-primary:hover:not(:disabled){opacity:.9;box-shadow:0 4px 14px var(--accent-shadow-lg);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-outline{color:#374151;border:1px solid var(--border);background:0 0;border-radius:8px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn-outline:hover:not(:disabled){background:var(--bg);border-color:#9ca3af}.btn-danger{background:var(--danger);color:#fff;border:none;border-radius:8px;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:background .12s;display:inline-flex}.btn-danger:hover{background:#b91c1c}.search-row{align-items:center;gap:.5rem;display:flex}.search-bar{flex:1;max-width:420px;position:relative}.search-bar input{border:1px solid var(--border);background:var(--card);border-radius:8px;outline:none;width:100%;padding:.5625rem .875rem .5625rem 2.25rem;transition:border-color .15s,box-shadow .15s}.search-bar input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-shadow)}.search-icon{color:var(--text-subtle);pointer-events:none;position:absolute;top:50%;left:.625rem;transform:translateY(-50%)}.btn-search{background:var(--card);border:1px solid var(--border);color:#374151;border-radius:8px;padding:.5625rem 1rem;font-weight:500;transition:background .12s}.btn-search:hover:not(:disabled){background:var(--bg)}.btn-search:disabled{opacity:.6;cursor:not-allowed}.table-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.table-scroll{overflow-x:auto}.users-table{border-collapse:collapse;width:100%;font-size:.875rem}.users-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;background:#f9fafb;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.users-table td{color:var(--text);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:.875rem 1rem}.users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr:hover td{background:#fafafa}.table-num{color:var(--text-muted);font-variant-numeric:tabular-nums;width:3rem}.table-name{white-space:nowrap;font-weight:600}.table-email{color:var(--accent);font-size:.8125rem}.table-date{white-space:nowrap;color:var(--text-muted);font-size:.8125rem}.table-addr-count{text-align:center;color:var(--text-muted)}.table-muted{color:var(--text-subtle)}.table-empty{text-align:center;color:var(--text-muted);padding:3rem 1rem}.table-actions{align-items:center;gap:.5rem;display:flex}.btn-table-edit,.btn-table-delete{border:1px solid;border-radius:6px;align-items:center;gap:.3rem;padding:.3125rem .625rem;font-size:.8125rem;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.btn-table-edit{color:var(--accent-dark);border-color:var(--accent-border);background:var(--accent-dim)}.btn-table-edit:hover{border-color:var(--accent);background:#00c8962e}.btn-table-delete{color:var(--danger);background:var(--danger-light);border-color:#fecaca}.btn-table-delete:hover{background:#fee2e2;border-color:#f87171}.btn-table-view{color:#374151;cursor:pointer;background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;align-items:center;gap:.3rem;padding:.3rem .65rem;font-size:.78rem;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.btn-table-view:hover{background:#f3f4f6;border-color:#9ca3af}.comm-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:99px;align-items:center;padding:.2rem .5rem;font-size:.6875rem;font-weight:700;display:inline-flex}.comm-badge--email{color:#1d4ed8;background:#dbeafe}.comm-badge--phone{color:#15803d;background:#dcfce7}.pagination{border-top:1px solid var(--border);background:#fafafa;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.pagination-info{color:var(--text-muted);font-size:.8125rem}.pagination-controls{align-items:center;gap:.25rem;display:flex}.pagination-btn{border:1px solid var(--border);background:var(--card);color:#374151;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background .12s}.pagination-btn:hover:not(:disabled){background:var(--bg)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{gap:.25rem;display:flex}.pagination-page{border:1px solid var(--border);background:var(--card);color:#374151;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8125rem;transition:background .12s;display:inline-flex}.pagination-page:hover:not(:disabled){background:var(--bg)}.pagination-page--active{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#00000073;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--card);border-radius:14px;flex-direction:column;width:100%;max-width:680px;max-height:calc(100vh - 4rem);display:flex;box-shadow:0 24px 64px #0000002e}.modal-header{justify-content:space-between;align-items:center;padding:1.25rem 1.5rem 0;display:flex}.modal-title{color:var(--text);font-size:1.0625rem;font-weight:700}.modal-close{width:32px;height:32px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.modal-close:hover{background:var(--bg);color:var(--text)}.modal-tabs{border-bottom:1px solid var(--border);gap:0;margin-top:.75rem;padding:1rem 1.5rem 0;display:flex}.modal-tab{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.375rem;margin-bottom:-1px;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:color .12s,border-color .12s;display:inline-flex}.modal-tab:hover{color:var(--text)}.modal-tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.modal-tab-count{background:var(--accent-dim);min-width:18px;height:18px;color:var(--accent);border-radius:99px;justify-content:center;align-items:center;padding:0 4px;font-size:.6875rem;font-weight:700;display:inline-flex}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.modal-form{flex-direction:column;gap:1.125rem;display:flex}.mf-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.mf-row--3{grid-template-columns:1fr 1fr 1fr}.mf-group{flex-direction:column;gap:.375rem;display:flex}.mf-group--full{grid-column:1/-1}.mf-group label{color:#374151;font-size:.8125rem;font-weight:500}.req{color:var(--danger)}.mf-group input,.mf-group select{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;outline:none;padding:.5625rem .75rem;transition:border-color .15s,box-shadow .15s}.mf-group input:focus,.mf-group select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-shadow)}.mf-group input:disabled,.mf-group select:disabled{color:var(--text-muted);cursor:default;background:#f9fafb}.mf-group input.input-error,.mf-group select.input-error{border-color:var(--danger)}.mf-group input.input-error:focus,.mf-group select.input-error:focus{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-light)}.field-error{color:var(--danger);font-size:.75rem}.password-field{position:relative}.password-field input{width:100%;padding-right:2.5rem}.password-toggle{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.25rem;display:flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.password-toggle:hover{color:var(--text)}.password-toggle:disabled{cursor:default;opacity:.5}.phone-field{gap:.5rem;display:flex}.phone-code-select{flex:none;width:6.5rem}.phone-field input{flex:1;min-width:0}.mf-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2rem}.modal-shipping{flex-direction:column;gap:.875rem;display:flex}.empty-addresses{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.625rem;padding:2.5rem 1rem;font-size:.875rem;display:flex}.address-list{flex-direction:column;gap:.625rem;display:flex}.address-card{border:1px solid var(--border);border-radius:10px;transition:border-color .12s;overflow:hidden}.address-card--open{border-color:var(--accent-border)}.address-card-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#f9fafb;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.address-card-header:hover{background:#f3f4f6}.address-card-summary{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.address-card-num{color:var(--text-muted);flex-shrink:0;font-size:.75rem;font-weight:700}.address-card-preview{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;overflow:hidden}.default-badge{text-transform:uppercase;letter-spacing:.05em;color:#065f46;background:#d1fae5;border-radius:99px;flex-shrink:0;padding:.15rem .4rem;font-size:.625rem;font-weight:700}.address-card-controls{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.btn-set-default{color:var(--accent);background:var(--accent-dim);border:none;border-radius:5px;padding:.2rem .5rem;font-size:.75rem;font-weight:500;transition:background .12s}.btn-set-default:hover{background:#00c89633}.btn-remove-addr{width:24px;height:24px;color:var(--text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.btn-remove-addr:hover{background:var(--danger-light);color:var(--danger)}.address-chevron{color:var(--text-subtle);flex-shrink:0}.address-card-body{border-top:1px solid var(--border);flex-direction:column;gap:.875rem;padding:1rem;display:flex}.btn-add-address{border:1.5px dashed var(--accent-border);color:var(--accent-dark);background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:.375rem;width:100%;padding:.625rem .875rem;font-size:.875rem;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn-add-address:hover{background:var(--accent-dim);border-color:var(--accent)}.modal-footer{border-top:1px solid var(--border);flex-direction:column;gap:.625rem;padding:1rem 1.5rem;display:flex}.modal-footer-error{color:var(--danger);background:var(--danger-light);border:1px solid #fecaca;border-radius:8px;padding:.5rem .75rem;font-size:.8125rem}.modal-footer-actions{justify-content:flex-end;gap:.5rem;display:flex}.confirm-dialog{background:var(--card);border-radius:12px;flex-direction:column;gap:.75rem;width:100%;max-width:400px;padding:1.5rem;display:flex;box-shadow:0 20px 60px #0000002e}.confirm-title{color:var(--text);font-size:1rem;font-weight:700}.confirm-body{color:var(--text-muted);font-size:.875rem;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.products-page{flex-direction:column;gap:1.25rem;display:flex}.products-table th,.products-table td{white-space:nowrap}.product-name-cell{flex-direction:column;gap:.15rem;display:flex}.product-name{color:var(--text);font-size:.875rem;font-weight:600}.product-subtitle{color:var(--text-muted);font-size:.75rem}.variant-cell{flex-direction:column;gap:.25rem;display:flex}.variant-price{color:var(--text);font-size:.875rem;font-weight:600}.stock-chip{letter-spacing:.02em;border-radius:99px;align-items:center;padding:.15rem .45rem;font-size:.7rem;font-weight:600;display:inline-flex}.stock-chip--ok{color:#15803d;background:#dcfce7}.stock-chip--low{color:#92400e;background:#fef9c3}.stock-chip--empty{background:var(--danger-light);color:var(--danger)}.product-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:99px;align-items:center;padding:.2rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex}.product-status-badge--active{background:var(--accent-dim);color:var(--accent-dark);border:1px solid var(--accent-border)}.product-status-badge--inactive{color:var(--text-muted);border:1px solid var(--border);background:#f3f4f6}.order-count-cell{text-align:center;font-size:.875rem;font-weight:600}.order-count--ordered{color:var(--accent-2)}.order-count--shipped{color:var(--accent-dark)}.order-count--cancelled{color:var(--danger)}.modal--product{max-width:720px}.product-modal-section{margin-bottom:1.5rem}.product-modal-section:last-child{margin-bottom:0}.product-modal-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:.875rem;padding-bottom:.5rem;font-size:.75rem;font-weight:700}.mf-textarea{border:1px solid var(--border);background:var(--card);resize:vertical;width:100%;color:var(--text);border-radius:8px;outline:none;padding:.5625rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.mf-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-shadow)}.mf-textarea:disabled{color:var(--text-muted);cursor:default;background:#f9fafb}.mf-optional{color:var(--text-subtle);font-size:.75rem;font-weight:400}.mf-group--center{justify-content:center}.variants-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.variant-card{border:1px solid var(--border);border-radius:10px;overflow:hidden}.variant-card-header{border-bottom:1px solid var(--border);background:#f9fafb;padding:.6rem .875rem}.variant-card-label{color:var(--text);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:700}.variant-card .modal-form{gap:.75rem;padding:.875rem}.input-prefix-wrap{align-items:center;display:flex;position:relative}.input-prefix{color:var(--text-muted);pointer-events:none;font-size:.875rem;font-weight:600;position:absolute;left:.75rem}.input-with-prefix{padding-left:1.75rem!important}.toggle-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.625rem;margin-top:.25rem;display:inline-flex}.toggle-input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:#d1d5db;border-radius:99px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.toggle-input:checked+.toggle-track{background:var(--accent)}.toggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-input:checked+.toggle-track .toggle-thumb{transform:translate(18px)}.toggle-text{color:var(--text-muted);font-size:.875rem}@keyframes spin{to{transform:rotate(360deg)}}.img-upload-dropzone{border:1.5px dashed var(--border);width:100%;color:var(--text-muted);cursor:pointer;background:#fafafa;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.75rem 1rem;transition:border-color .15s,background .15s;display:flex}.img-upload-dropzone:hover{border-color:var(--accent);background:var(--accent-dim);color:var(--accent-dark)}.img-upload-dropzone--readonly{cursor:default;pointer-events:none}.img-upload-dropzone:hover .img-upload-label{color:var(--accent-dark)}.img-upload-label{color:var(--text);font-size:.875rem;font-weight:600}.img-upload-hint{color:var(--text-subtle);font-size:.75rem}.img-upload{border:1px solid var(--border);background:#f9fafb;border-radius:10px;position:relative;overflow:hidden}.img-upload--preview{height:180px}.img-upload-preview{object-fit:contain;width:100%;height:100%;display:block}.img-upload-overlay{color:#fff;background:#00000080;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;display:flex;position:absolute;inset:0}.img-upload-spinner{animation:.9s linear infinite spin}.img-upload-hover-actions{opacity:0;background:#00000073;justify-content:center;align-items:center;gap:.625rem;transition:opacity .15s;display:flex;position:absolute;inset:0}.img-upload--preview:hover .img-upload-hover-actions{opacity:1}.img-upload-btn-change,.img-upload-btn-remove{cursor:pointer;border:none;border-radius:7px;padding:.4rem .875rem;font-size:.8125rem;font-weight:600;transition:opacity .12s}.img-upload-btn-change{color:var(--text);background:#fff}.img-upload-btn-remove{background:var(--danger);color:#fff}.img-upload-btn-change:hover,.img-upload-btn-remove:hover{opacity:.88}.roles-page{flex-direction:column;gap:1.25rem;display:flex}.role-tag{text-transform:uppercase;letter-spacing:.06em;border-radius:99px;align-items:center;padding:.2rem .55rem;font-size:.6875rem;font-weight:700;display:inline-flex}.role-tag--superadmin{background:var(--accent-dim);color:var(--accent-dark);border:1px solid var(--accent-border)}.role-tag--admin{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.role-tag--cashier{color:#7e22ce;background:#f3e8ff;border:1px solid #e9d5ff}.perm-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.75rem;font-weight:700}.perm-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.perm-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.perm-card-header{border-bottom:1px solid var(--border);background:#f9fafb;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.perm-card-icon{color:var(--text-muted);align-items:center;display:flex}.perm-card-label{color:var(--text);font-size:.875rem;font-weight:700}.perm-table{border-collapse:collapse;width:100%;font-size:.8125rem}.perm-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:.5rem .75rem;font-weight:600}.perm-table th:not(:first-child){text-align:center}.perm-table td{color:var(--text);border-bottom:1px solid #f3f4f6;padding:.625rem .75rem}.perm-table tbody tr:last-child td{border-bottom:none}.perm-table tbody tr:hover td{background:#fafafa}.perm-cell{text-align:center}.perm-icon{vertical-align:middle;display:inline-block}.perm-icon--yes{color:var(--accent-dark)}.perm-icon--no{color:var(--text-subtle)}.page-container{background-color:#fafafa;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.page-main{background-color:#fff;flex-direction:column;flex:1;justify-content:space-between;align-items:center;width:100%;max-width:48rem;padding:8rem 4rem;display:flex}.logo-image{display:block}@media (prefers-color-scheme:dark){.logo-image{filter:invert()}}.page-content{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;display:flex}.page-title{letter-spacing:-.025em;color:#000;max-width:20rem;font-size:1.875rem;font-weight:600;line-height:2.5rem}.page-description{color:#52525b;max-width:28rem;font-size:1.125rem;line-height:2rem}.page-link{color:#09090b;font-weight:500}.page-actions{flex-direction:column;gap:1rem;font-size:1rem;font-weight:500;display:flex}@media (min-width:640px){.page-actions{flex-direction:row}.page-main{align-items:flex-start}.page-content{text-align:left;align-items:flex-start}}.btn-deploy{color:#fff;background-color:#171717;border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;width:100%;height:3rem;padding:0 1.25rem;text-decoration:none;transition:background-color .15s;display:flex}.btn-docs{width:100%;height:3rem;color:inherit;border:1px solid #00000014;border-radius:9999px;justify-content:center;align-items:center;padding:0 1.25rem;text-decoration:none;transition:border-color .15s,background-color .15s;display:flex}@media (min-width:768px){.btn-deploy,.btn-docs{width:158px}}
