@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background: #f4f5f2;--surface: #ffffff;--surface-muted: #f8f9f6;--surface-sunken: #eef0eb;--border: #e2e5de;--border-strong: #cfd4ca;--text-primary: #15191a;--text-secondary: #5b6361;--text-tertiary: #858d8a;--text-inverse: #ffffff;--accent: #127a4b;--accent-hover: #0e663e;--accent-soft: #e5f2ea;--accent-text: #0d5c38;--success: #16804d;--success-soft: #e3f3e9;--warning: #a35f00;--warning-soft: #fdf1dc;--danger: #c2372c;--danger-hover: #a52d24;--danger-soft: #fbe9e7;--info: #2f5d9e;--info-soft: #e7eef8;--neutral-soft: #eceeea;--sidebar-bg: #111615;--sidebar-border: #232a28;--sidebar-text: #aab3b0;--sidebar-text-strong: #f2f5f3;--sidebar-active-bg: #1d2523;--sidebar-accent: #3ecf8e;--focus-ring: 0 0 0 3px rgb(18 122 75 / 35%);--font-sans: "Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgb(16 24 20 / 6%);--shadow-md: 0 4px 16px rgb(16 24 20 / 8%);--shadow-lg: 0 16px 48px rgb(16 24 20 / 18%);--sidebar-width: 248px;--mobile-nav-height: 64px;--content-max-width: 1280px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--background);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--text-2xl);font-weight:650;letter-spacing:-.02em;line-height:1.2}h2{font-size:var(--text-lg);font-weight:620;letter-spacing:-.01em}h3{font-size:var(--text-md);font-weight:600}a{color:var(--accent-text)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--text-secondary)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field>label,.field>.field-label{font-size:var(--text-sm);font-weight:560;color:var(--text-primary)}.field .hint{font-size:var(--text-xs);color:var(--text-secondary)}.field .field-error{font-size:var(--text-xs);color:var(--danger)}.input,.select,.textarea{width:100%;min-height:42px;padding:0 var(--space-3);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-base);transition:border-color .12s ease,box-shadow .12s ease}.input:hover,.select:hover,.textarea:hover{border-color:var(--text-tertiary)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-sunken);color:var(--text-tertiary)}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.textarea{padding:var(--space-2) var(--space-3);min-height:84px;resize:vertical}.select{appearance:none;padding-right:var(--space-8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235b6361' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.form-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:span 2}@media(max-width:599px){.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:auto}}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}.filter-bar .field{flex:1 1 160px}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--surface-sunken);border-radius:var(--radius-sm);max-width:100%;overflow-x:auto}.segmented button{border:0;background:transparent;padding:6px 12px;border-radius:5px;font-size:var(--text-sm);font-weight:560;color:var(--text-secondary);cursor:pointer;white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.page{display:flex;flex-direction:column;gap:var(--space-6);width:100%;max-width:var(--content-max-width);margin:0 auto}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.page-header .eyebrow{font-size:var(--text-sm);font-weight:560;color:var(--text-secondary);margin-bottom:var(--space-1)}.page-header .subtitle{margin-top:var(--space-1);color:var(--text-secondary)}.page-header .actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.data-table th{text-align:left;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr.clickable{cursor:pointer}.data-table tbody tr.clickable:hover{background:var(--surface-muted)}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.row-button{all:unset;cursor:pointer;font-weight:560;color:var(--text-primary)}.row-button:focus-visible{box-shadow:var(--focus-ring);border-radius:4px}.card-list{display:flex;flex-direction:column;gap:var(--space-3)}.list-card{display:flex;flex-direction:column;gap:var(--space-2);width:100%;padding:var(--space-4);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer}.list-card:hover{border-color:var(--border-strong)}.list-card .row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.list-card .title{font-weight:600}.list-card .meta{font-size:var(--text-sm);color:var(--text-secondary)}@media(max-width:899px){.desktop-only{display:none!important}}@media(min-width:900px){.mobile-only{display:none!important}}.detail-list{display:grid;grid-template-columns:minmax(110px,auto) 1fr;gap:var(--space-3) var(--space-4);margin:0;font-size:var(--text-sm)}.detail-list dt{color:var(--text-secondary)}.detail-list dd{margin:0;font-weight:520;overflow-wrap:anywhere}.error-banner{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-soft);color:var(--danger);font-size:var(--text-sm);font-weight:520}.warning-banner{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--warning-soft);color:var(--warning);font-size:var(--text-sm);font-weight:520}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border);background:var(--surface-muted)}@media(max-width:599px){.modal-footer{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.modal-footer>*{flex:1}}.nv-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.nv-btn:disabled,.nv-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.nv-btn--primary{background:var(--accent);color:var(--text-inverse)}.nv-btn--primary:hover:not(:disabled){background:var(--accent-hover)}.nv-btn--secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text-primary)}.nv-btn--secondary:hover:not(:disabled){background:var(--surface-muted)}.nv-btn--ghost{background:transparent;color:var(--text-secondary)}.nv-btn--ghost:hover:not(:disabled){background:var(--surface-sunken);color:var(--text-primary)}.nv-btn--danger{background:var(--danger);color:var(--text-inverse)}.nv-btn--danger:hover:not(:disabled){background:var(--danger-hover)}.nv-btn--sm{min-height:32px;padding:0 var(--space-3)}.nv-btn--icon{padding:0;width:40px}.nv-btn--icon.nv-btn--sm{width:32px}.nv-btn--block{width:100%}.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:nv-spin .7s linear infinite}@keyframes nv-spin{to{transform:rotate(360deg)}}.auth-shell{display:grid;grid-template-columns:minmax(0,13fr) minmax(400px,8fr);min-height:100dvh;background:var(--background)}@media(max-width:1023px){.auth-shell{grid-template-columns:minmax(0,1fr)}}.auth-brand{position:relative;display:flex;min-width:0;background:linear-gradient(90deg,#080d0cd1,#080d0c94 45%,#080d0c24 80%,#080d0c00),linear-gradient(0deg,rgba(8,13,12,.72) 0%,rgba(8,13,12,.25) 30%,transparent 55%),linear-gradient(180deg,rgba(8,13,12,.4) 0%,transparent 25%),url(/assets/auth/rande-hero.jpg) 72% 40%/cover no-repeat,radial-gradient(90% 70% at 85% 20%,rgba(62,207,142,.22) 0%,transparent 60%),linear-gradient(135deg,#0d1513,#16221e);color:var(--sidebar-text);overflow:hidden}.auth-brand .brand-inner{display:flex;flex-direction:column;gap:clamp(var(--space-4),2.4vh,var(--space-6));width:100%;max-width:880px;padding:clamp(var(--space-5),4vh,var(--space-10)) clamp(var(--space-6),4vw,4rem)}.auth-brand .hero-copy{margin-top:clamp(var(--space-2),2vh,var(--space-8))}.auth-brand h2{max-width:14ch;color:#fff;font-size:clamp(2rem,3.4vw,3.25rem);font-weight:700;line-height:1.08;letter-spacing:-.03em}.auth-brand h2 em{color:var(--sidebar-accent);font-style:normal}.auth-brand .lead{max-width:42ch;margin-top:var(--space-3);color:#c6cfcc;font-size:var(--text-md);line-height:1.6}.auth-brand .features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin:0;padding:var(--space-4) 0 0;border-top:1px solid rgba(255,255,255,.12);list-style:none}.auth-brand .features li{display:flex;flex-direction:column;gap:var(--space-2);color:#b4beba;font-size:var(--text-xs);line-height:1.45}.auth-brand .features strong{display:block;color:#fff;font-size:var(--text-sm);font-weight:600}.auth-brand .feature-icon{display:grid;flex-shrink:0;place-items:center;width:34px;height:34px;border:1px solid rgba(62,207,142,.28);border-radius:var(--radius-sm);background:#3ecf8e1a;color:var(--sidebar-accent)}.auth-brand .sectors h3{color:#fff;font-size:var(--text-lg);font-weight:650;letter-spacing:-.01em}.auth-brand .sectors .sectors-sub{margin-top:2px;color:#b4beba;font-size:var(--text-sm)}.auth-brand .sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none}.auth-brand .sector-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2);min-height:clamp(80px,9.5vh,100px);padding:var(--space-3);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--sector-tint, #1d2a26) 0%,#121a18 100%);overflow:hidden;isolation:isolate;transition:border-color .2s ease}.auth-brand .sector-card:before,.auth-brand .sector-card:after{content:"";position:absolute;inset:0;z-index:-1}.auth-brand .sector-card:before{background:var(--sector-image, none) center/cover no-repeat;transition:transform .35s ease,filter .35s ease}.auth-brand .sector-card:after{background:linear-gradient(0deg,#080d0cc7,#080d0c33 55%,#080d0c0d)}.auth-brand .sector-card:hover{border-color:#3ecf8e8c}.auth-brand .sector-card:hover:before{transform:scale(1.06);filter:brightness(1.08)}@media(prefers-reduced-motion:reduce){.auth-brand .sector-card:before{transition:none}.auth-brand .sector-card:hover:before{transform:none}}.auth-brand .sector-icon{position:absolute;top:var(--space-3);left:var(--space-3);display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-sm);background:#080d0c8c;color:var(--sidebar-accent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-brand .sector-text{display:flex;flex-direction:column;color:#e3e9e7;font-size:11px;line-height:1.35;text-shadow:0 1px 3px rgba(0,0,0,.6)}.auth-brand .sector-text strong{color:#fff;font-size:var(--text-sm);font-weight:650}.auth-brand .sector-sports{--sector-image: url(/assets/auth/sectors/sports.jpg);--sector-tint: #1f3a2a}.auth-brand .sector-dental{--sector-image: url(/assets/auth/sectors/dental.jpg);--sector-tint: #1d3340}.auth-brand .sector-beauty{--sector-image: url(/assets/auth/sectors/beauty.jpg);--sector-tint: #3a2a33}.auth-brand .sector-restaurant{--sector-image: url(/assets/auth/sectors/restaurant.jpg);--sector-tint: #3d2c1d}.auth-brand .sector-automotive{--sector-image: url(/assets/auth/sectors/automotive.jpg);--sector-tint: #2a2f38}.auth-brand .sector-studio{--sector-image: url(/assets/auth/sectors/studio.jpg);--sector-tint: #2f2a3d}.auth-brand .ai-callout{position:relative;display:flex;align-items:center;min-height:clamp(92px,11vh,112px);padding:var(--space-3) var(--space-4);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-lg);background:linear-gradient(90deg,#121a18 0%,#121a18 38%,rgba(18,26,24,.55) 52%,transparent 66%),url(/assets/auth/ai-assistant.jpg) right center/auto 100% no-repeat,#121a18;overflow:hidden}.auth-brand .ai-callout .ai-copy{display:flex;align-items:flex-start;gap:var(--space-3);max-width:46%}.auth-brand .ai-callout p{color:#c6cfcc;font-size:var(--text-xs);line-height:1.5}.auth-brand .ai-callout strong{display:block;color:#fff;font-size:var(--text-sm);font-weight:600}@media(min-width:1024px)and (max-height:800px){.auth-brand .lead{display:none}}@media(min-width:1024px)and (max-height:700px){.auth-brand .sector-text span{display:none}}@media(max-width:1023px){.auth-brand .brand-inner{max-width:none;padding:var(--space-6) var(--space-6) var(--space-5)}.auth-brand .sectors,.auth-brand .ai-callout{display:none}.auth-brand h2{max-width:none;font-size:var(--text-2xl)}.auth-brand .features{gap:var(--space-3)}}@media(max-width:639px){.auth-brand .brand-inner{gap:var(--space-3);padding:var(--space-4)}.auth-brand .hero-copy{margin-top:0}.auth-brand .lead,.auth-brand .features{display:none}.auth-brand h2{font-size:var(--text-lg)}}.auth-wordmark{display:inline-flex;align-items:center;align-self:flex-start;gap:12px;color:#fff;text-decoration:none}.auth-wordmark:focus-visible{outline:2px solid var(--sidebar-accent);outline-offset:4px;border-radius:var(--radius-sm)}.auth-wordmark .mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--sidebar-accent);color:#06140d;font-size:20px;font-weight:800}.auth-wordmark .words{display:flex;flex-direction:column;line-height:1.1}.auth-wordmark .words strong{font-size:20px;font-weight:800;letter-spacing:.18em}.auth-wordmark .words span{font-size:11px;letter-spacing:.04em;opacity:.7}.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);min-width:0;padding:var(--space-8) var(--space-6)}@media(max-width:1023px){.auth-main{justify-content:flex-start;padding:var(--space-6) var(--space-4) var(--space-8)}}.auth-main .auth-foot{color:var(--text-secondary);font-size:var(--text-xs)}.auth-card{width:100%;max-width:440px}.auth-card.wide{max-width:520px}.auth-card .auth-heading{margin-bottom:var(--space-6)}.auth-card .auth-heading h1{font-size:var(--text-2xl)}.auth-card .auth-heading p{margin-top:var(--space-2);color:var(--text-secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form .row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}@media(max-width:420px){.auth-form .row-2{grid-template-columns:minmax(0,1fr)}}.auth-form .between{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm)}.auth-form .check{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.auth-form .check input{width:16px;height:16px;accent-color:var(--accent)}.auth-form button[type=submit]{min-height:46px;margin-top:var(--space-1);font-size:var(--text-base)}.auth-alt{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border);color:var(--text-secondary);font-size:var(--text-sm);text-align:center}.auth-alt a{font-weight:600}.notice-box{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5}.notice-box.success{background:var(--success-soft);color:var(--success)}.notice-box.info{background:var(--info-soft);color:var(--info)}.notice-box.warning{background:var(--warning-soft);color:var(--warning)}.notice-box nv-icon{flex-shrink:0;margin-top:2px}.dev-link{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--warning);border-radius:var(--radius-md);background:var(--warning-soft);font-size:var(--text-xs);color:var(--warning)}.dev-link button{align-self:flex-start}.dev-link a,.dev-link code{color:var(--text-primary);font-size:var(--text-xs);overflow-wrap:anywhere}.step-head{margin-bottom:var(--space-6)}.step-head h2{font-size:var(--text-xl);font-weight:650;letter-spacing:-.015em}.step-head p{max-width:64ch;margin-top:var(--space-2);color:var(--text-secondary)}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border)}@media(max-width:599px){.step-actions{flex-direction:column-reverse;align-items:stretch}.step-actions>*{width:100%}}.error-banner+.form-grid,.error-banner+nv-hours-editor,.error-banner+.pitch-rows,.error-banner+.price-rows{margin-top:var(--space-4)}
