.layout{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--surface-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100}.logo{padding:24px 20px 20px;display:flex;align-items:center;gap:12px}.logo-icon{width:34px;height:34px;border-radius:8px;object-fit:contain}.logo-text{font-family:var(--font-display);font-size:22px;color:var(--text)}.nav-links{padding:8px 12px;display:flex;flex-direction:column;gap:2px;flex:1}.nav-footer{padding:12px;border-top:1px solid var(--border)}.nav-footer .nav-link{color:var(--text-secondary);text-decoration:none}.nav-link{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:10px;color:var(--text);font-size:16px;text-decoration:none}.nav-link:hover{background:color-mix(in srgb,var(--text) 7%,transparent)}.nav-link.active{background:var(--primary);color:var(--on-primary);font-weight:600}.nav-phone-only{display:none}.main-content{flex:1;margin-left:240px;padding:24px;max-width:1200px}@media(max-width:768px){.sidebar{width:100%;height:auto;position:fixed;bottom:0;top:auto;border-right:none;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:saturate(160%) blur(20px);backdrop-filter:saturate(160%) blur(20px)}.logo,.nav-footer,.nav-wide-only{display:none}.nav-phone-only{display:flex}.nav-links{flex-direction:row;justify-content:space-around;padding:6px 4px 0;gap:0}.nav-link,.nav-link.active{flex:1;min-width:0;flex-direction:column;justify-content:center;gap:2px;min-height:50px;padding:2px 0;border-radius:0;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500}.nav-link:hover{background:transparent}.nav-link.active{color:var(--text);font-weight:700}.nav-link svg{width:26px;height:26px;flex-shrink:0;stroke-width:1.7}.nav-link.active svg{stroke-width:2.1}.nav-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:center}.main-content{margin-left:0;margin-bottom:75px;padding:16px;width:100%;max-width:100%}}.studio-layout .logo{flex-direction:column;align-items:flex-start;gap:4px}.studio-layout .logo-icon-svg{color:var(--text)}.studio-layout .logo-text-group{display:flex;flex-direction:column}.studio-layout .logo-text{font-size:1.15rem;color:var(--text)}.studio-layout .logo-subtitle{font-size:.75rem;color:var(--text-secondary)}.studio-layout .nav-link.active,.studio-layout .nav-link.active svg{color:var(--on-primary)}.sidebar-footer{padding:16px;border-top:1px solid var(--border);margin-top:auto}.switch-mode-btn{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 16px;background:transparent;border:none;box-shadow:inset 0 0 0 2px var(--text);border-radius:10px;color:var(--text);cursor:pointer;font-size:14px;font-weight:600}.switch-mode-btn:hover{background:var(--primary);color:var(--on-primary);box-shadow:none}.switch-mode-btn svg{flex-shrink:0}@media(max-width:768px){.studio-layout .sidebar-footer,.studio-layout .logo{display:none}.studio-layout .nav-links{justify-content:flex-start;padding:6px 8px 0;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.studio-layout .nav-links::-webkit-scrollbar{display:none}.studio-layout .nav-link{flex:0 0 auto;min-width:64px;padding:2px 6px}.studio-layout .nav-link.active,.studio-layout .nav-link.active svg{color:var(--text)}.studio-layout .mobile-switch-btn{display:flex;box-shadow:inset 0 0 0 2px var(--text);color:var(--text)}.studio-layout .mobile-switch-btn:hover,.studio-layout .mobile-switch-btn:active{background:var(--primary);color:var(--on-primary)}}@media(min-width:769px){.studio-layout .mobile-switch-btn{display:none}}.studio-owner-layout .logo{align-items:flex-start}.studio-owner-layout .logo-text-group{display:flex;flex-direction:column;gap:2px;min-width:0}.studio-owner-layout .logo-text{font-size:19px;line-height:1.1}.studio-owner-layout .logo-subtitle{font-size:13px;color:var(--text-secondary)}.studio-owner-layout .studio-owner-icon{width:36px;height:36px;border-radius:10px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--on-primary);font-family:var(--font-display);font-size:1.1rem}.studio-owner-layout .exit-studio-btn{background:transparent;box-shadow:inset 0 0 0 2px var(--danger);color:var(--danger)}.studio-owner-layout .exit-studio-btn:hover{background:var(--danger);color:var(--on-pigment)}@media(max-width:768px){.studio-owner-layout .sidebar-footer,.studio-owner-layout .logo{display:none}.studio-owner-layout .nav-links{justify-content:flex-start;padding:6px 8px 0;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.studio-owner-layout .nav-links::-webkit-scrollbar{display:none}.studio-owner-layout .nav-link{flex:0 0 auto;min-width:64px;padding:2px 6px}}.layout-main .sidebar{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box}.layout-main .main-content{padding-top:calc(24px + env(safe-area-inset-top));padding-right:calc(24px + env(safe-area-inset-right));padding-bottom:calc(24px + env(safe-area-inset-bottom))}@media(min-width:769px)and (max-width:1100px){.layout-main .sidebar{width:calc(88px + env(safe-area-inset-left))}.layout-main .logo{justify-content:center;padding:20px 0}.layout-main .logo-text{display:none}.layout-main .nav-links,.layout-main .nav-footer{padding:12px 8px}.layout-main .nav-link{flex-direction:column;justify-content:center;gap:4px;padding:10px 4px;font-size:11px;text-align:center}.layout-main .nav-link span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layout-main .main-content{margin-left:calc(88px + env(safe-area-inset-left));max-width:none}}@media(min-width:1101px){.layout-main .main-content{margin-left:calc(240px + env(safe-area-inset-left));max-width:1400px}.layout-main .sidebar{width:calc(240px + env(safe-area-inset-left))}}@media(max-width:768px){.layout-main .sidebar{padding-top:0;padding-right:env(safe-area-inset-right)}.layout-main .main-content{padding-top:calc(16px + env(safe-area-inset-top));padding-right:calc(16px + env(safe-area-inset-right));padding-bottom:16px;margin-bottom:calc(75px + env(safe-area-inset-bottom))}}@media(min-width:769px)and (max-width:1100px){.studio-owner-layout .logo-text-group{display:none}.studio-owner-layout .sidebar-footer{padding:12px 8px}.studio-owner-layout .switch-mode-btn{flex-direction:column;justify-content:center;gap:4px;padding:10px 4px;font-size:11px;text-align:center}.studio-owner-layout .switch-mode-btn span{max-width:100%;line-height:1.15;overflow-wrap:anywhere}}.studio-owner-layout .main-content{color:var(--text)}.studio-owner-layout .page-header h1,.studio-owner-layout .page-title,.studio-owner-layout .studio-projects h1{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:34px;font-weight:400;line-height:1.1;color:var(--text)}.studio-owner-layout .page-header h1 svg,.studio-owner-layout .studio-projects h1 svg{display:none}.studio-owner-layout .page-header{margin-bottom:16px;padding-bottom:12px;border-bottom:var(--rule);background:transparent}.studio-owner-layout .section,.studio-owner-layout .detail-section{margin-bottom:22px;padding:12px 0 0;border:none;border-top:var(--rule);border-radius:0;background:transparent;box-shadow:none}.studio-owner-layout .section h2,.studio-owner-layout .section h3,.studio-owner-layout .detail-section h3{color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.studio-owner-layout .stat-card,.studio-owner-layout .master-info,.studio-owner-layout .master-settings,.studio-owner-layout .event-type-item,.studio-owner-layout .setting-row,.studio-owner-layout .detail-item,.studio-owner-layout .client-card,.studio-owner-layout .project-card,.studio-owner-layout .session-card,.studio-owner-layout .info-row{border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.studio-owner-layout .stat-card:hover,.studio-owner-layout .client-card:hover,.studio-owner-layout .project-card:hover,.studio-owner-layout .session-card:hover{transform:none;background:color-mix(in srgb,var(--text) 4%,transparent);box-shadow:none}.studio-owner-layout .stat-icon{background:transparent!important;color:var(--text-secondary)}.studio-owner-layout .stat-value{font-family:var(--font-display);font-weight:400;color:var(--text)}.studio-owner-layout .stat-label,.studio-owner-layout .section-hint,.studio-owner-layout .client-contact,.studio-owner-layout .meta-item{color:var(--text-secondary)}.studio-owner-layout .period-selector,.studio-owner-layout .permission-chips{gap:8px}.studio-owner-layout .period-selector button,.studio-owner-layout .permission-chips button,.studio-owner-layout .filter-btn{min-height:36px;border:none;border-radius:18px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text);font-weight:500}.studio-owner-layout .period-selector button.active,.studio-owner-layout .permission-chips button.active,.studio-owner-layout .permission-chips button.on,.studio-owner-layout .filter-btn.active{background:var(--primary);color:var(--on-primary);box-shadow:none}.studio-owner-layout .add-btn,.studio-owner-layout .save-btn,.studio-owner-layout .submit-btn,.studio-owner-layout .btn-submit{min-height:44px;border:none;border-radius:12px;background:var(--primary);color:var(--on-primary);font-weight:600;box-shadow:none}.studio-owner-layout .cancel-btn,.studio-owner-layout .btn-cancel,.studio-owner-layout .icon-btn,.studio-owner-layout .edit{min-height:44px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text)}.studio-owner-layout .icon-btn{min-width:44px}.studio-owner-layout .search-box{min-height:40px;border:none;border-radius:10px;background:var(--surface-secondary)}.studio-owner-layout .search-box input{background:transparent;border:none;color:var(--text);font-size:17px}.studio-owner-layout input,.studio-owner-layout select,.studio-owner-layout textarea,.studio-owner-layout .setting-input{min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:16px}.studio-owner-layout .info-code{font-family:var(--font-ui);letter-spacing:.08em;font-weight:700;color:var(--text);background:transparent;border:1.6px dashed var(--stencil);border-radius:8px}.studio-owner-layout .empty-state{color:var(--text-secondary);border:1.6px dashed var(--stencil);border-radius:12px;background:transparent}.studio-owner-layout .modal-overlay{align-items:flex-end;padding:0;background:#0d0c0b73;-webkit-backdrop-filter:none;backdrop-filter:none}.studio-owner-layout .modal-overlay>*{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border:none;border-radius:14px 14px 0 0;background:var(--bg);color:var(--text);padding-bottom:calc(20px + env(safe-area-inset-bottom));animation:studio-up .28s var(--ease-out) both}@media(min-width:769px){.studio-owner-layout .modal-overlay{align-items:center}.studio-owner-layout .modal-overlay>*{border-radius:14px}}@keyframes studio-up{0%{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.studio-owner-layout .modal-overlay>*{animation:none}}.studio-owner-layout .studio-projects .header-left h1{margin:0}.studio-owner-layout .studio-projects .projects-count{min-width:0;padding:0;background:transparent;color:var(--text-secondary);font-family:var(--font-ui);font-size:17px;font-weight:600;font-variant-numeric:tabular-nums}.studio-owner-layout .studio-projects .filter-btn .filter-count{opacity:.7}.studio-owner-layout .studio-projects .sp-list{border-top:var(--rule)}.studio-owner-layout .studio-projects .sp-row{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1.3fr) minmax(0,1fr) 112px 128px 18px;align-items:center;gap:16px;width:100%;min-height:60px;padding:10px 8px;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.studio-owner-layout .studio-projects .sp-row:hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.studio-owner-layout .studio-projects .sp-row:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.studio-owner-layout .studio-projects .sp-head{min-height:36px;padding-top:6px;padding-bottom:6px;color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:default}.studio-owner-layout .studio-projects .sp-head:hover{background:transparent}.studio-owner-layout .studio-projects .sp-title{display:flex;flex-direction:column;gap:2px;min-width:0}.studio-owner-layout .studio-projects .project-title{margin:0;overflow:hidden;font-size:16px;font-weight:600;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.studio-owner-layout .studio-projects .sp-sub,.studio-owner-layout .studio-projects .sp-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-owner-layout .studio-projects .sp-sub{font-size:13px;color:var(--text-secondary)}.studio-owner-layout .studio-projects .sp-cell{font-size:15px}.studio-owner-layout .studio-projects .sp-none{color:var(--text-muted)}.studio-owner-layout .studio-projects .sp-num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.studio-owner-layout .studio-projects .sp-chev{color:var(--text-muted)}.studio-owner-layout .studio-projects .stage-row-cancelled .project-title{color:var(--text-secondary);text-decoration:line-through;text-decoration-thickness:1.5px}.studio-owner-layout .stage-badge{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:none;border-radius:13px;background:transparent;color:var(--text);font-size:12px;font-weight:700;letter-spacing:0;text-transform:none;white-space:nowrap}.studio-owner-layout .stage-badge.stage-consultation{background:var(--pigment-ochre);color:#121110}.studio-owner-layout .stage-badge.stage-sketch{color:var(--text-secondary);outline:1.6px dashed var(--stencil);outline-offset:-1.6px}.studio-owner-layout .stage-badge.stage-approved{box-shadow:inset 0 0 0 1.6px var(--text)}.studio-owner-layout .stage-badge.stage-in_progress{background:var(--ink);color:var(--on-ink)}.studio-owner-layout .stage-badge.stage-done{background:var(--pigment-green);color:var(--on-pigment)}.studio-owner-layout .stage-badge.stage-cancelled{color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border)}.studio-owner-layout .studio-projects .filter-dot{width:8px;height:8px;border-radius:4px;background:var(--text)}.studio-owner-layout .studio-projects .filter-dot.stage-consultation{background:var(--pigment-ochre)}.studio-owner-layout .studio-projects .filter-dot.stage-sketch{background:transparent;outline:1.4px dashed var(--stencil);outline-offset:-1.4px}.studio-owner-layout .studio-projects .filter-dot.stage-approved{background:transparent;box-shadow:inset 0 0 0 1.4px var(--text)}.studio-owner-layout .studio-projects .filter-dot.stage-in_progress{background:var(--ink)}.studio-owner-layout .studio-projects .filter-dot.stage-done{background:var(--pigment-green)}.studio-owner-layout .studio-projects .filter-dot.stage-cancelled{background:var(--stencil)}.studio-owner-layout .studio-projects .filter-btn.active .filter-dot{box-shadow:0 0 0 1.5px var(--on-primary)}.studio-owner-layout .studio-projects .stage-btn{min-height:40px;border:none;border-radius:20px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text);font-weight:600}.studio-owner-layout .studio-projects .stage-btn.active{background:var(--primary);color:var(--on-primary);box-shadow:none}.studio-owner-layout .studio-projects .detail-item label{color:var(--text-secondary);font-size:13px}@media(max-width:760px){.studio-owner-layout .studio-projects .sp-head{display:none}.studio-owner-layout .studio-projects .sp-row{grid-template-columns:minmax(0,1fr) auto 18px;gap:2px 12px}.studio-owner-layout .studio-projects .sp-row>:nth-child(1){grid-column:1;grid-row:1}.studio-owner-layout .studio-projects .sp-row>:nth-child(5){grid-column:2;grid-row:1;justify-self:end}.studio-owner-layout .studio-projects .sp-row>:nth-child(6){grid-column:3;grid-row:1 / span 2}.studio-owner-layout .studio-projects .sp-row>:nth-child(2){grid-column:1;grid-row:2;font-size:13px;color:var(--text-secondary)}.studio-owner-layout .studio-projects .sp-row>:nth-child(3){display:none}.studio-owner-layout .studio-projects .sp-row>:nth-child(4){grid-column:2;grid-row:2}.studio-owner-layout .studio-projects .sp-title .sp-sub{display:none}}.studio-owner-layout .studio-clients-page .page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.studio-owner-layout .studio-clients-page .search-box{display:flex;align-items:center;gap:8px;margin:4px 0 12px;padding:0 12px;border:none;box-shadow:none;color:var(--text-secondary)}.studio-owner-layout .studio-clients-page .search-box input{flex:1;min-height:40px;padding:0;border:none;background:transparent;box-shadow:none}.studio-owner-layout .studio-clients-page .clients-list{display:flex;flex-direction:column;gap:0;border-top:var(--rule)}.studio-owner-layout .studio-clients-page .client-card{display:flex;align-items:center;gap:14px;min-height:64px;margin:0;padding:10px 4px;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;animation:none}.studio-owner-layout .studio-clients-page .client-avatar{display:flex;flex:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:47% 53% 50% 50%/55% 48% 52% 45%;background:var(--ink);color:var(--on-ink);font-family:var(--font-display);font-size:17px}.studio-owner-layout .studio-clients-page .client-info{flex:1;min-width:0;padding:0;border:none;background:transparent;box-shadow:none}.studio-owner-layout .studio-clients-page .client-name{font-size:16px;font-weight:600;color:var(--text)}.studio-owner-layout .studio-clients-page .client-contact{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:2px;font-size:14px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.studio-owner-layout .studio-clients-page .client-contact a{color:inherit;text-decoration:none}.studio-owner-layout .studio-clients-page .client-contact a:hover{color:var(--text);text-decoration:underline}.studio-owner-layout .studio-clients-page .action-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:12px;background:transparent;box-shadow:none;color:var(--text-secondary)}.studio-owner-layout .studio-clients-page .action-btn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent)}.studio-owner-layout .studio-clients-page .action-btn svg{width:18px;height:18px}.studio-owner-layout .studio-masters-page .invite-card{margin-bottom:22px;padding:16px;border:none;outline:1.6px dashed var(--stencil);outline-offset:-1.6px;border-radius:14px;background:transparent;box-shadow:none;color:var(--text)}.studio-owner-layout .studio-masters-page .invite-header{color:var(--text);font-weight:700}.studio-owner-layout .studio-masters-page .invite-code{flex:1;padding:10px 14px;border:none;border-radius:10px;background:var(--surface-secondary);color:var(--text);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:20px;font-weight:600;letter-spacing:.12em}.studio-owner-layout .studio-masters-page .invite-card .icon-btn{width:44px;height:44px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text)}.studio-owner-layout .studio-masters-page .invite-hint{color:var(--text-secondary)}.studio-owner-layout .studio-masters-page .section h2 svg{display:none}.studio-owner-layout .studio-masters-page .masters-list{gap:0;border-top:1px solid var(--border)}.studio-owner-layout .studio-masters-page .master-card,.studio-owner-layout .studio-masters-page .master-card.editing{margin:0;padding:10px 0;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.studio-owner-layout .studio-masters-page .master-header{display:flex;align-items:center;gap:12px;min-height:52px;padding:0;border:none;background:transparent}.studio-owner-layout .studio-masters-page .master-avatar{width:40px;height:40px;border-radius:47% 53% 50% 50%/55% 48% 52% 45%;background:var(--ink);color:var(--on-ink);font-family:var(--font-display);font-size:17px}.studio-owner-layout .studio-masters-page .master-info{flex:1;min-width:0;border:none}.studio-owner-layout .studio-masters-page .master-name{font-size:16px;font-weight:600;color:var(--text)}.studio-owner-layout .studio-masters-page .master-email{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.studio-owner-layout .studio-masters-page .badge.owner{padding:3px 10px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);font-size:12px;font-weight:700}.studio-owner-layout .studio-masters-page .master-percent{display:flex;flex-direction:column;align-items:flex-end;min-width:64px;padding:0;border:none;background:transparent;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.15}.studio-owner-layout .studio-masters-page .master-percent b{font-size:17px;font-weight:700}.studio-owner-layout .studio-masters-page .master-percent small{font-size:12px;color:var(--text-secondary)}.studio-owner-layout .studio-masters-page .master-actions{gap:4px}.studio-owner-layout .studio-masters-page .master-actions button{width:44px;height:44px;border:none;border-radius:12px;background:transparent;color:var(--text-secondary)}.studio-owner-layout .studio-masters-page .master-actions button:hover{background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text)}.studio-owner-layout .studio-masters-page .master-actions .delete-btn:hover{color:var(--danger)}.studio-owner-layout .studio-masters-page .master-settings{margin:10px 0 4px 52px;padding:14px;border:none;border-radius:12px;background:var(--surface-secondary)}.studio-owner-layout .studio-masters-page .setting-row{border:none;padding:0 0 12px}.studio-owner-layout .studio-masters-page .chip{min-height:36px;border:none;border-radius:18px}.studio-owner-layout .studio-masters-page .chip.off{background:transparent;box-shadow:inset 0 0 0 1.6px var(--stencil);color:var(--text-secondary)}.studio-owner-layout .studio-masters-page .add-admin-form button{width:44px;height:44px;border:none;border-radius:12px;background:var(--primary);color:var(--on-primary)}.studio-owner-layout .studio-masters-page .admin-item{border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent}.studio-owner-layout .studio-masters-page .master-header:not(:has(.master-actions)) .master-percent{margin-right:92px}.studio-owner-layout .studio-stats-page .page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.studio-owner-layout .studio-stats-page .period-selector{display:inline-flex;gap:0;padding:2px;border-radius:10px;background:var(--surface-secondary)}.studio-owner-layout .studio-stats-page .period-selector button{min-width:76px;min-height:36px;border-radius:8px;box-shadow:none;font-size:14px}.studio-owner-layout .studio-stats-page .ss-ledger{margin:8px 0 28px}.studio-owner-layout .studio-stats-page .ss-lead-label{margin:0;font-size:15px;color:var(--text-secondary)}.studio-owner-layout .studio-stats-page .ss-lead{margin:2px 0 14px;font-family:var(--font-display);font-size:48px;line-height:1.05;font-variant-numeric:tabular-nums;color:var(--text)}.studio-owner-layout .studio-stats-page .ss-split{display:flex;height:12px;overflow:hidden;border-radius:6px;outline:1.6px dashed var(--stencil);outline-offset:-1.6px}.studio-owner-layout .studio-stats-page .ss-split-studio{height:100%;background:var(--ink);animation:ink-fill .9s var(--ease-out) both}.studio-owner-layout .studio-stats-page .ss-rows{margin:10px 0 0;border-top:1px solid var(--border)}.studio-owner-layout .studio-stats-page .ss-rows>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;min-height:44px;padding:10px 0;border-bottom:1px solid var(--border)}.studio-owner-layout .studio-stats-page .ss-rows dt{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--text)}.studio-owner-layout .studio-stats-page .ss-rows dd{margin:0;font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}.studio-owner-layout .studio-stats-page .ss-key{width:10px;height:10px;border-radius:3px}.studio-owner-layout .studio-stats-page .ss-key-studio{background:var(--ink)}.studio-owner-layout .studio-stats-page .ss-key-masters{outline:1.4px dashed var(--stencil);outline-offset:-1.4px}.studio-owner-layout .studio-stats-page .ss-tr{display:grid;grid-template-columns:minmax(0,2fr) 90px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px;min-height:48px;padding:8px 0;border-bottom:1px solid var(--border);font-size:15px}.studio-owner-layout .studio-stats-page .ss-th{min-height:34px;color:var(--text-secondary);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.studio-owner-layout .studio-stats-page .ss-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-owner-layout .studio-stats-page .ss-num{text-align:right;font-variant-numeric:tabular-nums}.studio-owner-layout .studio-stats-page .ss-empty{margin:12px 0 0;padding:18px;text-align:center}@media(max-width:600px){.studio-owner-layout .studio-stats-page .page-header{flex-direction:column;align-items:stretch}.studio-owner-layout .studio-stats-page .period-selector button{flex:1;min-width:0}.studio-owner-layout .studio-stats-page .ss-lead{font-size:40px}.studio-owner-layout .studio-stats-page .ss-tr{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)}.studio-owner-layout .studio-stats-page .ss-tr>:nth-child(3){display:none}}@media(prefers-reduced-motion:reduce){.studio-owner-layout .studio-stats-page .ss-split-studio{animation:none}}.studio-owner-layout .section h2 svg,.studio-owner-layout .setting-row label svg{display:none}.studio-owner-layout .studio-settings-page .page-header{border-bottom:none;padding-bottom:0}.studio-owner-layout .studio-settings-page .section-hint{margin:0 0 6px;padding:0;border:none;background:transparent;font-size:14px;color:var(--text-secondary)}.studio-owner-layout .studio-settings-page .setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:8px 0}.studio-owner-layout .studio-settings-page .setting-row label{font-size:16px;color:var(--text)}.studio-owner-layout .studio-settings-page .setting-input{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.studio-owner-layout .studio-settings-page .setting-input input{width:64px;min-height:42px;padding:0;border:none;background:transparent;text-align:right;font-variant-numeric:tabular-nums}.studio-owner-layout .studio-settings-page .setting-input span{padding:0;border:none;background:transparent;color:var(--text-secondary)}.studio-owner-layout .studio-settings-page .save-btn{margin-top:14px}.studio-owner-layout .studio-settings-page .event-type-item{min-height:48px}.studio-owner-layout .studio-settings-page .event-color{width:14px;height:14px;border-radius:7px;box-shadow:0 0 0 1px var(--border)}.studio-owner-layout .studio-settings-page .default-badge{border:none;background:transparent;font-size:13px;color:var(--text-muted)}.studio-owner-layout .studio-settings-page .add-type-form{margin-top:14px;padding:14px;border:none;border-radius:12px;background:var(--surface-secondary)}.studio-owner-layout .studio-settings-page .add-type-form h4{margin:0 0 10px;font-size:15px;font-weight:700}.studio-owner-layout .studio-settings-page .add-type-form .form-row{gap:10px;align-items:center}.studio-owner-layout .studio-settings-page .add-type-form input[type=text]{flex:1;min-width:0;padding:0 12px;text-align:left}.studio-owner-layout .studio-settings-page .add-type-form input[type=color]{flex:none;width:44px;height:44px;min-height:44px;padding:3px;border:1px solid var(--border);border-radius:22px;background:var(--surface);cursor:pointer}.studio-owner-layout .studio-settings-page .add-type-form input[type=color]::-webkit-color-swatch-wrapper{padding:0}.studio-owner-layout .studio-settings-page .add-type-form input[type=color]::-webkit-color-swatch{border:none;border-radius:19px}.studio-owner-layout .studio-settings-page .add-type-form .add-btn{margin-left:auto;padding:0 16px}.studio-owner-layout .studio-settings-page .danger-section h2{color:var(--danger)}.studio-owner-layout .studio-settings-page .delete-studio-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--danger);color:var(--danger);font-weight:600}.studio-owner-layout .studio-settings-page .delete-studio-btn:hover{background:color-mix(in srgb,var(--danger) 8%,transparent)}@media(max-width:760px){.studio-owner-layout .studio-projects .projects-header{flex-wrap:wrap;gap:12px}.studio-owner-layout .studio-projects .header-left h1{font-size:30px}.studio-owner-layout .studio-projects .header-right{width:100%;gap:10px}.studio-owner-layout .studio-projects .search-box{flex:1;min-width:0}.studio-owner-layout .studio-projects .stage-filters{flex-wrap:nowrap;margin-right:-16px;padding-right:16px;overflow-x:auto;scrollbar-width:none}.studio-owner-layout .studio-projects .stage-filters::-webkit-scrollbar{display:none}.studio-owner-layout .studio-projects .filter-btn{flex:none;white-space:nowrap}}@media(max-width:760px){.studio-owner-layout .studio-projects .header-left{justify-content:flex-start;align-items:baseline;gap:8px}.studio-owner-layout .studio-projects .header-left h1{flex:0 1 auto}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:var(--bg)}.login-card{background:var(--surface);border-radius:24px;padding:2.5rem 2rem;width:100%;max-width:400px;border:1px solid var(--border);animation:scaleIn .5s cubic-bezier(.16,1,.3,1);box-shadow:0 20px 60px #0003}@keyframes scaleIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.login-header{text-align:center;margin-bottom:2rem;animation:fadeInDown .5s ease-out .2s both}.login-logo-icon{width:80px;height:80px;margin-bottom:1rem;border-radius:16px;object-fit:contain}.login-logo{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--text);margin-bottom:.5rem}.login-subtitle{color:var(--text-secondary);font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-input{background:var(--bg);border:2px solid var(--border);border-radius:14px;padding:1rem 1.25rem;color:var(--text);font-size:1rem;transition:all .25s ease;animation:fadeInUp .5s ease-out both}.login-input:nth-child(1){animation-delay:.25s}.login-input:nth-child(2){animation-delay:.3s}.login-input:nth-child(3){animation-delay:.35s}.login-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.15)}.login-input::placeholder{color:var(--text-muted)}.login-button{background:linear-gradient(135deg,var(--primary),var(--purple));color:var(--on-primary);border:none;border-radius:14px;padding:1rem;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fadeInUp .5s ease-out .4s both;box-shadow:0 6px 20px rgba(var(--accent-rgb),.35);margin-top:.5rem}.login-button:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(var(--accent-rgb),.45)}.login-button:active{transform:translateY(-1px) scale(.98)}.login-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.login-error{color:var(--danger);text-align:center;font-size:.9rem;padding:.75rem;background:color-mix(in srgb,var(--danger) 10%,transparent);border-radius:10px;overflow-wrap:anywhere;animation:shake .4s ease-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.login-switch{background:none;border:none;color:var(--primary);cursor:pointer;margin-top:1rem;width:100%;font-size:.95rem;font-weight:500;transition:all .2s ease;animation:fadeIn .5s ease-out .5s both}.login-switch:hover{color:var(--purple);text-decoration:underline}.invite-code-input{font-family:Courier New,monospace;letter-spacing:2px;text-transform:uppercase;text-align:center}@media(max-width:480px){.login-card{padding:2rem 1.5rem;border-radius:20px}.login-logo{font-size:1.75rem}.login-input{padding:.9rem 1rem;border-radius:12px}.login-button{padding:.9rem;border-radius:12px}}.faq-link{display:block;text-align:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border);color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s}.faq-link:hover{color:var(--primary)}.login-type-selector{display:flex;gap:.5rem;margin-bottom:1.5rem;background:var(--bg);padding:.35rem;border-radius:14px;border:1px solid var(--border)}.login-type-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s ease}.login-type-btn:hover{color:var(--text)}.login-type-btn.active{background:var(--surface);color:var(--text);box-shadow:0 2px 8px #00000026}.login-type-btn.active svg{color:var(--primary)}.studio-icon{color:var(--primary)}.studio-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.studio-select-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;background:var(--bg);border:2px solid var(--border);border-radius:14px;cursor:pointer;transition:all .25s ease;text-align:left}.studio-select-btn:hover{border-color:var(--primary);background:rgba(var(--accent-rgb),.05)}.studio-select-btn:disabled{opacity:.5;cursor:not-allowed}.studio-select-btn svg{color:var(--primary);flex-shrink:0}.studio-select-info{display:flex;flex-direction:column;gap:.2rem}.studio-select-name{font-weight:600;color:var(--text);font-size:1rem}.studio-select-role{font-size:.8rem;color:var(--text-secondary)}.social-login{display:flex;flex-direction:column;gap:10px;margin-bottom:4px}.social-btn{height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.social-btn:disabled{opacity:.6;cursor:default}.social-btn-apple{background:#fff;color:#000;border:1px solid #ffffff}.social-btn-google{background:#fff;color:#1f1f1f;border:1px solid #747775}.light .social-btn-apple{background:#000;color:#fff;border-color:#000}.social-divider{display:flex;align-items:center;gap:12px;margin:8px 0 4px;color:var(--text-secondary);font-size:13px}.social-divider:before,.social-divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-legal{margin-top:14px;text-align:center;font-size:12px;line-height:1.5;color:var(--text-secondary)}.login-legal a{color:var(--text-secondary);text-decoration:underline}.lg.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));background:var(--bg);color:var(--text)}.lg .login-card{width:100%;max-width:400px;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;animation:none}.lg .lg-head{margin-bottom:26px;text-align:left}.lg-word{font-family:var(--font-display);font-size:46px;line-height:1.1;color:var(--text)}.lg .login-subtitle{margin-top:10px;font-size:17px;color:var(--text-secondary);text-align:left}.lg .login-type-selector{display:flex;gap:0;margin-bottom:18px;padding:2px;border:none;border-radius:10px;background:var(--surface-secondary)}.lg .login-type-btn{flex:1;min-height:36px;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:15px;font-weight:500;box-shadow:none}.lg .login-type-btn.active{background:var(--primary);color:var(--on-primary);font-weight:600}.lg .social-login{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.lg .social-btn{min-height:50px;border-radius:12px;font-size:17px;font-weight:600}.lg .social-btn-apple{background:#fff;color:#000;border:1px solid #FFFFFF}.light .lg .social-btn-apple{background:#000;color:#fff;border-color:#000}.lg .social-btn-google{background:#fff;color:#1f1f1f;border:1px solid #747775}.lg .social-divider{color:var(--text-secondary);font-size:13px}.lg .social-divider:before,.lg .social-divider:after{background:var(--border)}.lg .login-form{display:flex;flex-direction:column;gap:12px}.lg-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.lg .login-input{min-height:50px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font-size:17px;font-weight:400}.lg .login-input:focus{border-color:var(--text);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}.lg .login-button{min-height:54px;margin-top:6px;border:none;border-radius:12px;background:var(--primary);color:var(--on-primary);font-size:17px;font-weight:600;box-shadow:none}.lg .login-button:hover{transform:none;background:var(--primary-hover);box-shadow:none}.lg .login-button:disabled{opacity:.5}.lg .login-error{text-align:left;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);overflow-wrap:anywhere}.lg .login-switch{display:block;width:100%;min-height:44px;margin-top:14px;border:none;background:transparent;color:var(--text);font-size:16px;font-weight:600;text-decoration:underline;text-decoration-color:var(--stencil);text-decoration-style:dashed;text-underline-offset:5px}.lg .login-legal,.lg .faq-link{display:block;margin-top:14px;color:var(--text-secondary);font-size:13px;text-align:center}.lg .login-legal a,.lg .faq-link{color:var(--text)}.lg .studio-select-btn{min-height:60px;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;color:var(--text)}.lg .studio-select-btn:hover{background:color-mix(in srgb,var(--text) 5%,transparent);transform:none}.lg .studio-icon{color:var(--text)}.lg .login-type-btn svg,.lg .login-type-btn.active svg{color:currentColor;stroke:currentColor}.lg .lg-app-tag{margin-top:4px;font-family:var(--font-display);font-size:15px;letter-spacing:.32em;text-transform:uppercase;color:var(--text-secondary)}.ink-logo{display:inline-flex;align-items:baseline;font-family:var(--font-display);font-weight:400;line-height:1.1;color:var(--text);white-space:nowrap;-webkit-tap-highlight-color:transparent}.ink-logo.is-moving{cursor:pointer}.ink-logo-scene{display:inline-flex;align-items:baseline}.ink-logo-ink{position:relative;display:inline-block;margin-right:.04em;padding:.04em .22em .17em .17em}.ink-logo-ink svg{position:absolute;inset:-.09em -.13em -.17em -.09em;width:calc(100% + .22em);height:calc(100% + .26em);overflow:visible;transform-origin:40% 55%}.ink-logo-blot,.ink-logo-drip,.ink-logo-dot{fill:var(--ink)}.ink-logo-ink-text{position:relative;color:var(--on-ink)}.ink-logo-drip{opacity:0;transform-box:fill-box;transform-origin:50% 0}.ink-logo-dot{transform-box:fill-box;transform-origin:center}.ink-logo.is-moving .ink-logo-ink svg{animation:ink-logo-land .9s var(--ease-out) both}.ink-logo.is-moving .ink-logo-dot{animation:ink-logo-splat .42s var(--ease-out) both}.ink-logo.is-moving .ink-logo-dot-1{animation-delay:.38s}.ink-logo.is-moving .ink-logo-dot-2{animation-delay:.46s}.ink-logo.is-moving .ink-logo-dot-3{animation-delay:.54s}.ink-logo.is-moving .ink-logo-ink-text{animation:ink-logo-surface .52s ease-out .42s both}.ink-logo.is-moving .ink-logo-book{animation:ink-fill .76s var(--ease-out) .62s both}.ink-logo.is-idle .ink-logo-drip{animation:ink-logo-drip 6.5s ease-in 2.2s infinite}@keyframes ink-logo-land{0%{transform:scale(.12) rotate(-12deg);opacity:0}45%{transform:scale(1.08) rotate(2deg);opacity:1}70%{transform:scale(.98) rotate(-.5deg)}to{transform:none;opacity:1}}@keyframes ink-logo-splat{0%{transform:scale(0)}65%{transform:scale(1.5)}to{transform:scale(1)}}@keyframes ink-logo-surface{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:none}}@keyframes ink-logo-drip{0%,70%{opacity:0;transform:translateY(-2px) scaleY(.4)}76%{opacity:1;transform:translateY(0) scaleY(1)}86%{opacity:1;transform:translateY(2px) scaleY(1.7)}to{opacity:0;transform:translateY(26px) scaleY(1)}}@media(prefers-reduced-motion:reduce){.ink-logo .ink-logo-ink svg,.ink-logo .ink-logo-dot,.ink-logo .ink-logo-ink-text,.ink-logo .ink-logo-book,.ink-logo .ink-logo-drip{animation:none!important}}.faq-page{min-height:100vh;background:var(--bg);color:var(--text)}.faq-header{background:linear-gradient(135deg,var(--primary),var(--purple));padding:2rem;position:relative}.faq-page .back-btn{position:absolute;top:1.5rem;left:1.5rem;display:flex;align-items:center;gap:8px;background:#ffffff26;border:none;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .2s}.faq-page .back-btn:hover{background:#ffffff40}.faq-header-content{text-align:center;padding:2rem 1rem}.faq-header h1{font-size:2rem;font-weight:700;color:#fff;margin:0 0 .5rem}.faq-header p{color:#ffffffd9;font-size:1rem;margin:0}.lang-toggle{position:absolute;top:1.5rem;right:1.5rem;display:flex;gap:4px;background:#ffffff26;padding:4px;border-radius:8px}.lang-toggle button{background:transparent;border:none;color:#ffffffb3;padding:6px 12px;border-radius:6px;cursor:pointer;font-weight:500;font-size:.85rem;transition:all .2s}.lang-toggle button.active{background:#fff;color:var(--primary)}.faq-search{max-width:600px;margin:-1.5rem auto 2rem;padding:0 1rem;position:relative;z-index:10}.faq-search input{width:100%;padding:1rem 1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--text);font-size:1rem;box-shadow:0 4px 20px #00000026}.faq-search input::placeholder{color:var(--text-secondary)}.faq-search input:focus{outline:none;border-color:var(--primary)}.faq-content{max-width:800px;margin:0 auto;padding:1rem}.faq-category{margin-bottom:2rem}.category-header{display:flex;align-items:center;gap:12px;margin-bottom:1rem;padding:0 .5rem}.category-header svg{color:var(--primary)}.category-header h2{font-size:1.25rem;font-weight:600;margin:0;color:var(--text)}.questions-list{display:flex;flex-direction:column;gap:8px}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all .2s}.faq-item:hover{border-color:var(--primary)}.faq-item.open{border-color:var(--primary);box-shadow:0 2px 12px rgba(var(--accent-rgb),.15)}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:transparent;border:none;color:var(--text);font-size:.95rem;font-weight:500;text-align:left;cursor:pointer;gap:1rem}.faq-question:hover{background:var(--surface-secondary)}.chevron{flex-shrink:0;color:var(--text-secondary);transition:transform .3s ease}.chevron.rotated{transform:rotate(180deg);color:var(--primary)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.faq-answer.show{max-height:500px;padding:0 1.25rem 1.25rem}.faq-answer p{margin:0;color:var(--text-secondary);line-height:1.6;font-size:.9rem;padding-top:.5rem;border-top:1px solid var(--border)}.no-results{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.no-results svg{margin-bottom:1rem;opacity:.5}.no-results p{font-size:1.1rem}.faq-footer{text-align:center;padding:3rem 1rem;background:var(--surface);border-top:1px solid var(--border);margin-top:2rem}.faq-footer p{color:var(--text-secondary);margin:0 0 1rem}.contact-btn{display:inline-block;background:var(--primary);color:var(--on-primary);padding:12px 24px;border-radius:10px;text-decoration:none;font-weight:500;transition:all .2s}.contact-btn:hover{background:var(--purple);transform:translateY(-2px)}@media(max-width:640px){.faq-header{padding:1.5rem 1rem}.faq-page .back-btn{position:static;margin-bottom:1rem}.lang-toggle{position:static;justify-content:center;margin-top:1rem}.faq-header-content{padding:1rem 0}.faq-header h1{font-size:1.5rem}.faq-search{margin-top:1rem}.faq-question{font-size:.9rem;padding:.875rem 1rem}.faq-answer.show{padding:0 1rem 1rem}}.faq-page{max-width:720px;margin:0 auto;padding:calc(12px + env(safe-area-inset-top)) 16px calc(32px + env(safe-area-inset-bottom));background:var(--bg);color:var(--text)}.faq-page .faq-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px 12px;margin:0;padding:0 0 14px;border:none;border-bottom:var(--rule);border-radius:0;background:transparent;color:var(--text);text-align:left}.faq-page .back-btn{grid-column:1;grid-row:1;display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 4px 0 0;border:none;border-radius:0;background:transparent;color:var(--text);font-size:17px;font-weight:400}.faq-page .faq-header-content{grid-column:1 / -1;grid-row:2;padding:0;text-align:left}.faq-page .faq-header-content h1{margin:8px 0 6px;font-family:var(--font-display);font-size:34px;font-weight:400;line-height:1.1;color:var(--text);text-align:left}.faq-page .faq-header-content p{margin:0;font-size:16px;color:var(--text-secondary)}.faq-page .lang-toggle{grid-column:3;grid-row:1;display:inline-flex;margin:0;padding:2px;border:none;border-radius:9px;background:var(--surface-secondary)}.faq-page .lang-toggle button{min-width:44px;min-height:32px;padding:0 10px;border:none;border-radius:7px;background:transparent;color:var(--text);font-size:13px;font-weight:600}.faq-page .lang-toggle button.active{background:var(--primary);color:var(--on-primary)}.faq-page .faq-search{margin:14px 0 6px;padding:0;background:transparent}.faq-page .faq-search input{width:100%;min-height:40px;padding:0 12px;border:none;border-radius:10px;background:var(--surface-secondary);box-shadow:none;color:var(--text);font-size:17px}.faq-page .faq-content{padding:0}.faq-page .faq-category{margin:26px 0 0}.faq-page .category-header{display:block;margin:0;padding:10px 0 8px;border-top:var(--rule)}.faq-page .category-header h2{margin:0;font-family:var(--font-ui);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text)}.faq-page .questions-list{display:block}.faq-page .faq-item,.faq-page .faq-item.open{margin:0;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.faq-page .faq-question{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:12px 0;border:none;background:transparent;color:var(--text);font-size:17px;font-weight:600;line-height:1.3;text-align:left}.faq-page .faq-question:focus-visible{outline:2px solid var(--text);outline-offset:2px}.faq-page .faq-question .chevron{flex:none;color:var(--text-secondary);transition:transform .22s var(--ease-out)}.faq-page .faq-question .chevron.rotated{transform:rotate(180deg)}.faq-page .faq-answer{padding:0}.faq-page .faq-answer.show{max-height:1200px;padding:0 0 14px}.faq-page .faq-answer p{max-width:62ch;margin:0;padding:0;font-size:16px;line-height:1.55;color:var(--text-secondary)}.faq-page .no-results{padding:28px 16px;border:none;outline:1.6px dashed var(--stencil);outline-offset:-1.6px;border-radius:12px;color:var(--text-secondary);text-align:center}.faq-page .faq-footer{margin:32px 0 0;padding:16px 0 0;border:none;border-top:var(--rule);border-radius:0;background:transparent;text-align:left}.faq-page .faq-footer p{margin:0 0 12px;font-size:16px;color:var(--text)}.faq-page .contact-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:none;border-radius:12px;background:var(--primary);box-shadow:none;color:var(--on-primary);font-weight:600;text-decoration:none}@media(min-width:769px){.faq-page{padding-top:32px}.faq-page .faq-header-content h1{font-size:44px}}@media(prefers-reduced-motion:reduce){.faq-page .faq-question .chevron,.faq-page .faq-answer{transition:none}}.legal-page{min-height:100vh;background:var(--bg);color:var(--text);padding:calc(32px + env(safe-area-inset-top)) 16px calc(48px + env(safe-area-inset-bottom))}.legal-doc{max-width:720px;margin:0 auto;line-height:1.6}.legal-brand a{color:var(--text-secondary);font-weight:600;text-decoration:none}.legal-doc h1{font-size:30px;line-height:1.2;margin:12px 0 4px}.legal-updated{color:var(--text-secondary);font-size:14px;margin-bottom:20px}.legal-intro{font-size:17px;margin-bottom:12px}.legal-doc h2{font-size:19px;margin:28px 0 8px}.legal-doc ul{padding-left:20px;display:flex;flex-direction:column;gap:8px}.legal-doc a{color:var(--primary)}.legal-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:40px;padding-top:20px;border-top:1px solid var(--border);font-size:14px}.legal-page .legal-brand{margin:0}.legal-page .legal-brand a{display:inline-flex;align-items:center;min-height:44px;color:var(--text);font-size:17px;font-weight:600}.legal-page .legal-brand a:before{content:"‹";margin-right:6px;font-size:24px;line-height:1}.legal-page .legal-doc h1{margin:8px 0 6px;font-family:var(--font-display);font-size:clamp(22px,6.2vw,40px);font-weight:400;line-height:1.12;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.legal-page .legal-updated{margin:0 0 18px;padding-bottom:14px;border-bottom:var(--rule)}.legal-page .legal-intro{max-width:62ch}.legal-page .legal-doc h2{margin:30px 0 8px;font-size:17px;font-weight:700}.legal-page .legal-doc li{max-width:62ch;color:var(--text)}.legal-page .legal-doc li::marker{color:var(--text-secondary)}.legal-page .legal-doc a{color:var(--text);text-decoration-thickness:1px;text-underline-offset:3px}.legal-page .legal-links{border-top:var(--rule)}.inventory-chat{display:flex;flex-direction:column;height:300px;background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:1.5rem}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.chat-message{display:flex;gap:.75rem;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.assistant{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary)}.chat-message.assistant .message-avatar{background:var(--primary);color:var(--on-primary)}.message-content{padding:.75rem 1rem;border-radius:16px;font-size:.9rem;line-height:1.4}.chat-message.user .message-content{background:var(--primary);color:var(--on-primary);border-bottom-right-radius:4px}.chat-message.assistant .message-content{background:var(--bg);color:var(--text);border-bottom-left-radius:4px}.message-content.executed{background:color-mix(in srgb,var(--success) 15%,transparent);border:1px solid var(--success)}.message-content.typing{display:flex;gap:4px;padding:.75rem 1.25rem}.message-content.typing span{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:typing 1.4s infinite}.message-content.typing span:nth-child(2){animation-delay:.2s}.message-content.typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.chat-input-form{padding:1rem;border-top:1px solid var(--border);background:var(--bg)}.chat-input-wrapper{display:flex;align-items:center;gap:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:.5rem .5rem .5rem 1rem;transition:border-color .2s}.chat-input-wrapper:focus-within{border-color:var(--primary)}.chat-input-wrapper input{flex:1;border:none;background:transparent;color:var(--text);font-size:.95rem;outline:none}.chat-input-wrapper input::placeholder{color:var(--text-secondary)}.chat-input-buttons{display:flex;gap:.25rem}.chat-input-buttons button{width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.voice-btn{background:transparent;color:var(--text-secondary)}.voice-btn:hover{background:var(--bg);color:var(--text)}.voice-btn.recording{background:var(--danger);color:var(--on-danger);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.send-btn{background:var(--primary);color:var(--on-primary)}.send-btn:hover:not(:disabled){opacity:.9}.send-btn:disabled{background:var(--border);color:var(--text-secondary);cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:600px){.inventory-chat{height:280px}.chat-message{max-width:90%}}.inventory-page{padding:1rem;max-width:900px;margin:0 auto;padding-bottom:100px;animation:fadeIn .4s ease-out}.inventory-page .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;animation:fadeInDown .5s ease-out}.inventory-page .page-title{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;color:var(--text)}.inventory-page .page-title svg{color:var(--primary)}.header-actions{display:flex;gap:.5rem}.inventory-page .filter-btn,.inventory-page .add-btn{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;padding:.5rem;cursor:pointer;transition:all .2s;position:relative}.inventory-page .filter-btn:hover{border-color:var(--primary);color:var(--primary)}.inventory-page .add-btn{background:linear-gradient(135deg,var(--primary),var(--purple));color:var(--on-primary);border-color:transparent;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3);transition:all .25s cubic-bezier(.4,0,.2,1)}.inventory-page .add-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}.filter-badge{position:absolute;top:-2px;right:-2px;width:6px;height:6px;background:var(--primary);border-radius:50%}.tabs-row{display:flex;gap:.5rem;margin-bottom:.75rem;align-items:center}.tab-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.tab-btn:hover{border-color:var(--primary)}.tab-btn.active{background:linear-gradient(135deg,var(--primary),var(--purple));border-color:transparent;color:var(--on-primary);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.scope-dropdown{margin-left:auto;position:relative;display:flex;align-items:center}.scope-dropdown select{appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.5rem 2rem .5rem .75rem;color:var(--text);font-size:.8rem;cursor:pointer}.scope-dropdown select:focus{outline:none;border-color:var(--primary)}.scope-dropdown svg{position:absolute;right:.5rem;pointer-events:none;color:var(--text-secondary)}.inventory-source-tabs{display:flex;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}.inventory-source-tabs::-webkit-scrollbar{display:none}.source-tab{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--surface);border:2px solid var(--border);border-radius:12px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .25s ease;white-space:nowrap;flex-shrink:0}.source-tab:hover{border-color:var(--primary);color:var(--text)}.source-tab.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.source-tab.studio-tab{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3)}.source-tab.studio-tab.active{background:var(--purple);border-color:var(--purple);color:var(--on-primary)}.filters-row{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap;align-items:center}.filters-row select{appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.4rem 1.5rem .4rem .6rem;color:var(--text);font-size:.8rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='%239ca3af' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center}.filters-row select:focus{outline:none;border-color:var(--primary)}.clear-filters{background:var(--danger);color:var(--on-danger);border:none;border-radius:6px;padding:.35rem;cursor:pointer;display:flex}.inventory-compact-list{display:flex;flex-direction:column;gap:.75rem}.category-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;transition:all .3s ease;animation:fadeInUp .5s ease-out both}.category-section:hover{border-color:rgba(var(--accent-rgb),.3);box-shadow:0 4px 20px #0000001a}.category-header{background:var(--bg);padding:.5rem .75rem;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}.compact-item{display:flex;align-items:center;padding:.7rem .85rem;border-bottom:1px solid var(--border);gap:.75rem;transition:all .2s ease}.compact-item:hover{background:var(--bg)}.compact-item:last-child{border-bottom:none}.compact-item .item-main{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0}.compact-item .item-name{font-size:.9rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-dot.warning{background:var(--warning)}.status-dot.critical,.status-dot.out,.status-dot.expired{background:var(--danger)}.status-dot.ordered{background:var(--info)}.status-dot.expiring{background:var(--warning)}.compact-item .item-qty{display:flex;align-items:baseline;gap:.2rem;min-width:50px;justify-content:flex-end;cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:background .15s}.compact-item .item-qty:hover{background:var(--bg)}.compact-item .qty-num{font-size:1rem;font-weight:600;color:var(--text)}.compact-item .qty-num.clickable:hover{text-decoration:underline}.compact-item .qty-unit{font-size:.7rem;color:var(--text-secondary)}.compact-item.status-critical .qty-num,.compact-item.status-out .qty-num{color:var(--danger)}.compact-item.status-warning .qty-num{color:var(--warning)}.compact-item.status-ordered .qty-num{color:var(--info)}.compact-item.ink-item .item-expiry{display:flex;align-items:baseline;gap:.3rem;min-width:70px;justify-content:flex-end;padding:.25rem .5rem;border-radius:6px;background:var(--bg)}.item-expiry .expiry-label{font-size:.7rem;color:var(--text-muted)}.item-expiry .expiry-date{font-size:.9rem;font-weight:600;color:var(--text)}.item-expiry.warn{background:color-mix(in srgb,var(--danger) 15%,transparent)}.item-expiry.warn .expiry-date{color:var(--danger)}.item-expiry .no-expiry{font-size:.75rem;color:var(--text-muted);font-style:italic}.item-quick-actions{display:flex;gap:.25rem}.item-quick-actions button{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.3rem;color:var(--text-secondary);cursor:pointer;transition:all .15s;display:flex}.item-quick-actions button:hover{border-color:var(--primary);color:var(--primary)}.item-quick-actions button:disabled{opacity:.3;cursor:not-allowed}.item-quick-actions button.active{background:var(--info);border-color:var(--info);color:var(--on-info)}.item-quick-actions button.del:hover{border-color:var(--danger);color:var(--danger)}.reports-section{display:flex;flex-direction:column;gap:1rem}.reports-controls{display:flex;gap:.5rem}.reports-controls select{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.5rem 1rem;color:var(--text);font-size:.85rem}.report-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem}.report-card h3{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:var(--text);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.report-card h3 svg{color:var(--primary)}.summary-list{display:flex;flex-direction:column;gap:1rem}.user-summary{background:var(--bg);border-radius:8px;padding:.75rem}.user-name{font-weight:600;color:var(--text);margin-bottom:.5rem;font-size:.9rem}.user-items{display:flex;flex-direction:column;gap:.3rem}.usage-item{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary)}.usage-qty{color:var(--danger);font-weight:500}.more-items{font-size:.75rem;color:var(--text-muted);font-style:italic}.logs-list{display:flex;flex-direction:column;gap:.25rem}.log-item{display:grid;grid-template-columns:1fr 1.5fr auto auto;gap:.5rem;padding:.4rem .5rem;font-size:.8rem;border-radius:4px}.log-item:nth-child(odd){background:var(--bg)}.log-item.manual{background:color-mix(in srgb,var(--warning) 10%,transparent);border-left:none}.log-item.manual:nth-child(odd){background:color-mix(in srgb,var(--warning) 15%,transparent)}.log-user{color:var(--text);font-weight:500}.log-item-name{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-qty{color:var(--danger);font-weight:500;text-align:right}.log-qty.manual-qty{color:var(--warning);display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.log-reason{font-size:.65rem;color:var(--text-muted);font-weight:400}.log-date{color:var(--text-muted);font-size:.75rem}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary)}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state button{margin-top:1rem;background:var(--primary);color:var(--on-primary);border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.loading{text-align:center;padding:2rem;color:var(--text-secondary)}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-height:90vh;overflow-y:auto;animation:scaleIn .3s cubic-bezier(.16,1,.3,1);box-shadow:0 20px 60px #0000004d}.modal.modal-sm{max-width:320px}.modal.modal-md{max-width:420px}.modal.modal-lg{max-width:520px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1rem;color:var(--text)}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem}.modal form{padding:1rem}.modal label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.3rem;margin-top:.75rem}.modal label:first-child{margin-top:0}.modal input,.modal select{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.6rem .75rem;color:var(--text);font-size:.9rem}.modal input:focus,.modal select:focus{outline:none;border-color:var(--primary)}.category-select-row{display:flex;gap:.5rem}.category-select{flex:1}.add-cat-btn{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:0 .6rem;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center}.add-cat-btn:hover{border-color:var(--primary);color:var(--primary)}.needle-fields{background:var(--bg);border-radius:8px;padding:.75rem;margin-top:.75rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.form-row-3{grid-template-columns:repeat(3,1fr)}.form-row select{width:100%}.expiry-field,.pack-toggle{margin-top:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.modal-buttons{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-cancel{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.6rem;color:var(--text-secondary);cursor:pointer;font-size:.85rem}.btn-submit{flex:1;background:linear-gradient(135deg,var(--primary),var(--purple));border:none;border-radius:10px;padding:.7rem;color:var(--on-primary);cursor:pointer;font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.3rem;transition:all .25s ease;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}.btn-submit.btn-danger{background:var(--danger)}.btn-submit.btn-warning{background:var(--warning)}.stock-item-name{font-weight:600;color:var(--text);margin-bottom:.25rem}.stock-current{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.monthly-table-wrapper{overflow-x:auto;margin-top:.5rem}.monthly-table{width:100%;border-collapse:collapse;font-size:.85rem}.monthly-table th,.monthly-table td{padding:.65rem .5rem;text-align:center;border-bottom:1px solid var(--border)}.monthly-table th{background:var(--bg);color:var(--text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.monthly-table th:first-child,.monthly-table td.item-name-cell{text-align:left;padding-left:.75rem}.monthly-table td.item-name-cell{font-weight:500;color:var(--text);max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monthly-table td{color:var(--text-muted)}.monthly-table td.has-value{color:var(--primary);font-weight:600}.monthly-table td.total-cell{font-weight:700;color:var(--text);background:rgba(var(--accent-rgb),.08)}.monthly-table tbody tr:hover{background:var(--surface-secondary)}@media(max-width:600px){.inventory-page{padding:.75rem;padding-bottom:320px}.compact-item{flex-wrap:wrap}.item-quick-actions{width:100%;justify-content:flex-end;margin-top:.5rem}.log-item{grid-template-columns:1fr 1fr}.form-row,.form-row-3{grid-template-columns:1fr}.tabs-row{flex-wrap:wrap}.scope-dropdown{width:100%;margin-left:0;margin-top:.5rem}.scope-dropdown select{width:100%}}.date-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.filter-type-select{min-width:140px}.date-input{padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem}.date-input:focus{outline:none;border-color:var(--primary)}.custom-date-range{display:flex;align-items:center;gap:8px}.date-separator{color:var(--text-secondary)}@media(max-width:600px){.date-filter-group{flex-direction:column;align-items:stretch}.custom-date-range{flex-direction:column}.date-separator{display:none}}.inv{max-width:720px;color:var(--text)}.inv-nav{display:flex;justify-content:flex-end;align-items:center;gap:6px;min-height:46px}.inv-icon-btn{width:44px;height:44px;border:none;border-radius:22px;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.inv-icon-btn.on{background:var(--primary);color:var(--on-primary)}.inv-add{position:relative;width:46px;height:46px;padding:0;border:none;background:transparent;color:var(--on-ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.inv-add svg:first-child{position:absolute;inset:0;width:46px;height:46px}.inv-add>svg:last-child{position:relative}.inv-title{margin:2px 4px 0;font-size:38px;line-height:1.05}.inv-seg{display:flex;margin:12px 0 0;padding:2px;border-radius:10px;background:var(--surface-secondary)}.inv-seg button{flex:1;min-height:34px;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:14px;font-weight:500;cursor:pointer}.inv-seg button.active{background:var(--primary);color:var(--on-primary);font-weight:600}.inv .inventory-source-tabs{margin-top:10px}.inv .source-tab{border:none;border-radius:17px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text)}.inv .source-tab.active{background:var(--primary);color:var(--on-primary);box-shadow:none}.inv .filters-row select{min-height:40px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}.inv-brands{margin-top:18px}.inv-h2{margin:0 4px 8px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.inv-brand-row{display:flex;gap:10px;padding:0 4px 4px;overflow-x:auto;scrollbar-width:none}.inv-brand-row::-webkit-scrollbar{display:none}.inv-brand{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:5px;padding:0;border:none;background:transparent;color:var(--text);cursor:pointer}.inv-brand-count{font-size:11px;color:var(--text-secondary)}.inv-brand.on .inv-tile{border-style:solid;border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.inv-brand.on .inv-brand-count{color:var(--text);font-weight:700}.inv-tile{flex:0 0 auto;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border:1.4px dashed var(--stencil);border-radius:10px;color:var(--text);overflow:hidden;text-align:center}.inv-brand .inv-tile{border-radius:14px}.inv-tile.has-logo{border-style:solid;border-color:var(--border);background:#fff}.inv-tile img{width:82%;height:82%;object-fit:contain}.inv-tile-word{padding:0 2px;font-weight:800;letter-spacing:.02em;line-height:1.1;text-transform:uppercase;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.inv-more-step{display:none}.inv-more button:disabled{opacity:.35}@media(max-width:480px){.inv-steps button:not(:last-child){display:none}.inv-more-step{display:inline-flex}}.inv-tile-empty{border-style:solid;border-color:transparent;background:var(--surface-secondary);color:var(--text-secondary)}.inv-restock{margin-top:20px;padding:0 4px}.inv-list{list-style:none}.inv-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:62px;border-bottom:1px solid var(--border)}.inv-restock .inv-row{grid-template-columns:40px minmax(0,1fr) auto}.inv-row-body{display:flex;flex-direction:column;min-width:0;padding:6px 0;border:none;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.inv-row-name{font-size:17px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inv-row-sub{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inv-row .ink-blot-text{font-size:14px}.inv .inventory-compact-list{margin-top:18px;padding:0 4px;background:transparent;border:none}.inv .category-section{margin-top:10px;background:transparent;border:none;border-radius:0}.inv .category-header{padding:12px 0 4px;border-top:var(--rule);background:transparent;color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.inv-item.status-out .inv-row-name,.inv-item.status-critical .inv-row-name,.inv-item.status-expired .inv-row-name{color:var(--danger)}.inv-qty{min-width:44px;min-height:44px;padding:0 4px;border:none;background:transparent;color:var(--text);font-size:17px;font-weight:700;cursor:pointer}.inv-qty small{margin-left:2px;font-size:12px;font-weight:500;color:var(--text-secondary)}.inv-steps{display:flex;gap:2px}.inv-steps button{width:36px;height:44px;border:none;border-radius:10px;background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.inv-steps button:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.inv-steps button:disabled{opacity:.3;cursor:default}.inv-steps button.on{background:var(--primary);color:var(--on-primary)}.inv-more{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 12px 50px;border-bottom:1px solid var(--border)}.inv-more button{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:none;border-radius:10px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--text);color:var(--text);font-size:14px;font-weight:600;cursor:pointer}.inv-more button.on{background:var(--primary);color:var(--on-primary);box-shadow:none}.inv-more button.del{box-shadow:inset 0 0 0 1.6px var(--danger);color:var(--danger)}.inv .empty-state{color:var(--text-secondary);background:transparent;border:1.6px dashed var(--stencil);border-radius:12px}.inv .empty-state button{border:none;border-radius:12px;background:var(--primary);color:var(--on-primary);min-height:44px}.inv .modal-overlay{align-items:flex-end;padding:0;background:#0d0c0b73;-webkit-backdrop-filter:none;backdrop-filter:none}.inv .modal-overlay>*{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border:none;border-radius:14px 14px 0 0;background:var(--bg);color:var(--text);padding-bottom:calc(20px + env(safe-area-inset-bottom));animation:inv-up .28s var(--ease-out) both}@media(min-width:769px){.inv .modal-overlay{align-items:center}.inv .modal-overlay>*{border-radius:14px}}@keyframes inv-up{0%{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}.inv .modal-overlay input,.inv .modal-overlay select,.inv .modal-overlay textarea{min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:17px}@media(prefers-reduced-motion:reduce){.inv .modal-overlay>*{animation:none}}.studio-calendar{padding:0;height:100%;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.studio-calendar.loading,.studio-calendar.no-studio{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary)}.calendar-layout{display:flex;flex:1;gap:0;overflow:hidden;height:100%}.calendar-sidebar{width:200px;min-width:200px;background:var(--card-bg);border-right:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:20px;overflow-y:auto}.mini-calendar{background:var(--bg);border-radius:12px;padding:12px}.mini-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mini-calendar-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.mini-calendar-header button:hover{background:var(--border);color:var(--text)}.mini-calendar-header span{font-size:12px;font-weight:600;color:var(--text)}.mini-calendar-days-header{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:4px}.mini-day-name{text-align:center;font-size:9px;color:var(--text-secondary);padding:2px 0}.mini-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.mini-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text);cursor:pointer;border-radius:4px;transition:all .15s;position:relative}.mini-day:hover{background:var(--border)}.mini-day.other-month{color:var(--text-secondary);opacity:.4}.mini-day.today{background:var(--accent);color:var(--on-primary);font-weight:600}.mini-day.selected{background:var(--accent);color:var(--on-primary)}.mini-day.has-sessions:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:3px;height:3px;background:var(--accent);border-radius:50%}.mini-day.selected.has-sessions:after,.mini-day.today.has-sessions:after{background:#fff}.status-legend,.masters-legend{display:flex;flex-direction:column;gap:6px}.status-legend h4,.masters-legend h4{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.status-legend-item,.master-legend-item{display:flex;align-items:center;gap:8px;padding:4px 6px;background:var(--bg);border-radius:4px}.status-color,.master-color{width:10px;height:10px;border-radius:3px;flex-shrink:0}.status-name,.master-name{font-size:11px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg);min-width:0}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--card-bg);border-bottom:1px solid var(--border);gap:16px;flex-shrink:0}.header-left{display:flex;align-items:center;gap:10px}.header-left h1{font-size:16px;font-weight:600;color:var(--text);margin:0}.header-center{display:flex;align-items:center;gap:6px}.nav-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:6px;border-radius:6px;cursor:pointer;transition:all .2s}.nav-btn:hover{background:var(--border)}.current-period{font-size:14px;font-weight:600;color:var(--text);min-width:180px;text-align:center}.today-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s}.today-btn:hover{background:var(--border)}.header-right{display:flex;align-items:center;gap:10px}.view-mode-toggle{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:6px;overflow:hidden}.view-mode-toggle button{background:none;border:none;color:var(--text-secondary);padding:6px 10px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-mode-toggle button:hover{background:var(--border);color:var(--text)}.view-mode-toggle button.active{background:var(--accent);color:var(--on-primary)}.add-session-btn{display:flex;align-items:center;gap:4px;background:var(--accent);color:var(--on-primary);border:none;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.add-session-btn:hover{opacity:.9}.day-view{flex:1;overflow:auto;padding:12px}.day-grid{display:flex;gap:0;min-width:100%;height:fit-content}.time-column{width:50px;min-width:50px;background:var(--card-bg);border-right:1px solid var(--border);flex-shrink:0}.time-header{height:50px;border-bottom:1px solid var(--border)}.time-slot{height:60px;display:flex;align-items:flex-start;justify-content:center;padding-top:4px;font-size:10px;color:var(--text-secondary);border-bottom:1px solid var(--border)}.master-column{flex:1;min-width:150px;background:var(--card-bg);border-right:1px solid var(--border)}.master-column:last-child{border-right:none}.master-header{height:50px;display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--bg);border-bottom:1px solid var(--border);border-top:3px solid var(--accent)}.master-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:12px;flex-shrink:0}.master-header .master-name{flex:1;font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.master-session-count{background:var(--accent);color:var(--on-primary);font-size:10px;font-weight:600;padding:2px 6px;border-radius:8px}.master-slots{position:relative;height:900px}.master-slots .slot{height:60px;border-bottom:1px solid var(--border);cursor:crosshair}.master-slots .slot:hover{background:rgba(var(--accent-rgb),.05)}.drag-preview{position:absolute;left:4px;right:4px;background:rgba(var(--accent-rgb),.3);border:2px dashed var(--accent);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:12px;font-weight:500;pointer-events:none}.session-block{position:absolute;left:4px;right:4px;border-radius:6px;padding:6px 8px;cursor:grab;overflow:hidden;transition:all .15s ease;border-left:none;box-shadow:0 2px 6px #0003;background:var(--surface)}.session-block:active{cursor:grabbing}.session-block:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000040;z-index:10}.session-block.dragging{opacity:.7;cursor:grabbing;transform:scale(1.05);box-shadow:0 12px 32px #00000059;z-index:100;border:2px dashed var(--accent)}.session-block.busy-slot{cursor:not-allowed}.session-block.busy-slot:hover{transform:none;box-shadow:0 2px 6px #0003}.slot.drop-target{transition:background .2s}.slot.drop-target:hover{background:rgba(var(--accent-rgb),.15);border:1px dashed var(--accent)}.session-block.status-completed,.session-block.status-cancelled{opacity:1}.session-block.busy-slot{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--stencil) 35%,transparent) 0 3px,transparent 3px 8px)!important;border:none;outline:1.4px dashed var(--stencil);outline-offset:-1.4px;color:var(--text-secondary)}.session-block.busy-slot:hover{transform:none;box-shadow:0 1px 3px #00000026}.session-block .session-busy-label{font-size:10px;font-weight:600;color:var(--primary);display:block;text-transform:uppercase;letter-spacing:.5px}.session-block .session-status-icon{position:absolute;top:4px;right:4px;color:#fff;opacity:.9}.session-block .session-time{font-size:10px;font-weight:600;color:#fffffff2;display:block}.session-block .session-client{font-size:12px;font-weight:500;color:#fff;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.session-block .session-price{font-size:10px;color:#ffffffd9;margin-top:2px}.session-master-badge{position:absolute;bottom:4px;right:4px;width:18px;height:18px;border-radius:50%;color:#fff;font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center}.week-view{flex:1;overflow:auto;padding:12px}.week-grid{display:flex;gap:0;min-width:100%}.day-column{flex:1;min-width:100px;background:var(--card-bg);border-right:1px solid var(--border)}.day-column:last-child{border-right:none}.day-column.today{background:rgba(var(--accent-rgb),.03)}.day-header{height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s}.day-header:hover{background:var(--bg)}.day-name{font-size:10px;color:var(--text-secondary);text-transform:uppercase}.day-number{font-size:16px;font-weight:600;color:var(--text);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}.day-number.today{background:var(--accent);color:var(--on-primary)}.day-slots{position:relative;height:900px}.day-slots .slot{height:60px;border-bottom:1px solid var(--border)}.month-view{flex:1;overflow:auto;padding:12px}.month-header{display:grid;grid-template-columns:repeat(7,1fr);background:var(--card-bg);border:1px solid var(--border);border-radius:8px 8px 0 0}.month-day-name{padding:10px;text-align:center;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;border-right:1px solid var(--border)}.month-day-name:last-child{border-right:none}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);background:var(--card-bg);border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px}.month-day{min-height:90px;padding:6px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s}.month-day:hover{background:var(--bg)}.month-day:nth-child(7n){border-right:none}.month-day.other-month{background:var(--bg);opacity:.5}.month-day.today{background:rgba(var(--accent-rgb),.05)}.month-day-number{font-size:12px;font-weight:500;color:var(--text);margin-bottom:4px}.month-day.today .month-day-number{background:var(--accent);color:var(--on-primary);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center}.month-day-sessions{display:flex;flex-direction:column;gap:2px}.month-session-dot{display:flex;align-items:center;gap:3px;padding:2px 4px;border-radius:3px;font-size:9px;color:#fff}.month-session-time{font-weight:500}.month-more{font-size:9px;color:var(--text-secondary);padding:2px 4px}.modal{background:var(--card-bg);border-radius:12px;width:90%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:11px;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.form-group input,.form-group select,.form-group textarea{padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:13px;transition:border-color .2s}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.status-buttons{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.status-buttons label{font-size:11px;font-weight:500;color:var(--text-secondary);margin-bottom:8px;display:block}.status-btn-group{display:flex;gap:6px;flex-wrap:wrap}.status-btn{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s;border:2px solid}.status-btn:hover{opacity:.8}.payment-type-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.payment-option{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px;border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s}.payment-option input{display:none}.payment-option:hover{background:var(--bg)}.payment-option.active{border-color:var(--accent);background:rgba(var(--accent-rgb),.1);color:var(--accent)}.payment-option span{font-size:10px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--border)}.cancel-btn{padding:8px 16px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.submit-btn,.complete-btn{padding:8px 16px;background:var(--accent);border:none;color:var(--on-primary);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:4px}.submit-btn:hover,.complete-btn:hover{opacity:.9}.delete-btn{padding:8px 16px;background:var(--danger);border:none;color:var(--on-danger);border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.delete-btn:hover{background:var(--danger)}.session-detail-content{padding:20px;display:flex;flex-direction:column;gap:10px}.detail-row{display:flex;align-items:center;gap:10px}.detail-label{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:4px;min-width:100px}.detail-value{font-size:13px;color:var(--text);font-weight:500}@media(min-width:1400px){.calendar-sidebar{width:220px}.master-column{min-width:180px}.session-block .session-client{font-size:13px}.session-block .session-time{font-size:11px}}@media(min-width:1800px){.calendar-sidebar{width:240px}.master-column{min-width:200px}.day-column{min-width:140px}}@media(max-width:1200px){.calendar-sidebar{width:180px;min-width:180px}.master-column{min-width:130px}}@media(max-width:768px){.calendar-layout{flex-direction:column}.calendar-sidebar{width:100%;flex-direction:row;overflow-x:auto;padding:10px;gap:10px}.mini-calendar{min-width:180px}.status-legend,.masters-legend{flex-direction:row;flex-wrap:wrap;align-items:center}.status-legend h4,.masters-legend h4{width:100%}.calendar-header{flex-wrap:wrap;padding:10px 12px;gap:8px}.current-period{min-width:auto;font-size:13px}.day-view,.week-view,.month-view{padding:8px}}.studio-calendar{color:var(--text)}.studio-calendar .calendar-sidebar,.studio-calendar .mini-calendar,.studio-calendar .status-legend,.studio-calendar .masters-legend{background:transparent;border:none;box-shadow:none}.studio-calendar .calendar-sidebar h4{color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.studio-calendar .mini-day{color:var(--text);border-radius:50%}.studio-calendar .mini-day.other-month{color:var(--text-muted);opacity:.6}.studio-calendar .mini-day.today{background:transparent;color:var(--text);font-weight:800;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.studio-calendar .mini-day.selected{background:var(--ink);color:var(--on-ink);text-decoration:none}.studio-calendar .mini-day.has-sessions:after{background:var(--ink)}.studio-calendar .mini-day.selected.has-sessions:after{background:var(--on-ink)}.studio-calendar .status-color{width:12px;height:12px;border-radius:3px;border:none}.studio-calendar .status-color.st-pending{background:transparent;outline:1.6px dashed var(--ink);outline-offset:-1.6px}.studio-calendar .status-color.st-confirmed{background:var(--ink)}.studio-calendar .status-color.st-arrived{background:#2f5da8}.studio-calendar .status-color.st-completed{background:var(--surface-secondary);box-shadow:inset 0 0 0 1px var(--border)}.studio-calendar .status-color.st-busy{background:repeating-linear-gradient(135deg,var(--stencil) 0 2px,transparent 2px 5px)}.studio-calendar .calendar-header{align-items:flex-end;padding-bottom:12px;border-bottom:var(--rule);background:transparent}.studio-calendar .header-left{flex-direction:column;align-items:flex-start;gap:6px}.studio-calendar .header-left h1{font-family:var(--font-display);font-size:28px;line-height:1.1;color:var(--text)}.sc-stepper{display:flex;align-items:center;gap:4px}.studio-calendar .nav-btn,.studio-calendar .today-btn{min-height:36px;border:none;border-radius:10px;background:transparent;color:var(--text)}.studio-calendar .nav-btn{width:36px}.studio-calendar .nav-btn:hover,.studio-calendar .today-btn:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.studio-calendar .today-btn{padding:0 10px;box-shadow:inset 0 0 0 1.6px var(--border);font-weight:600}.studio-calendar .view-mode-toggle{padding:2px;border:none;border-radius:10px;background:var(--surface-secondary)}.studio-calendar .view-mode-toggle button{min-height:34px;padding:0 14px;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:13px;font-weight:500}.studio-calendar .view-mode-toggle button.active{background:var(--primary);color:var(--on-primary);font-weight:600}.studio-calendar .add-session-btn{min-height:44px;padding:0 18px;border:none;border-radius:12px;background:var(--primary);color:var(--on-primary);font-weight:600;box-shadow:none}.studio-calendar .day-view,.studio-calendar .week-view,.studio-calendar .month-view{background:transparent;border:none;box-shadow:none}.studio-calendar .time-column{background:transparent;border-right:none}.studio-calendar .time-slot{color:var(--text-secondary);font-size:12px;border-bottom:none}.studio-calendar .master-column{border-left:1px solid var(--border)}.studio-calendar .master-header{border-top:none;border-bottom:1px solid var(--border);background:transparent}.studio-calendar .master-header .master-name{color:var(--text);font-weight:700}.studio-calendar .master-session-count{background:transparent;box-shadow:inset 0 0 0 1.4px var(--border);color:var(--text-secondary)}.studio-calendar .master-avatar{color:#fff;font-weight:700}.studio-calendar .master-slots .slot{border-bottom:1px solid var(--border)}.studio-calendar .master-slots .slot:hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.studio-calendar .session-block{left:4px;right:3px;border:none;border-radius:6px;background:var(--ink);color:var(--on-ink);box-shadow:none;animation:soak .65s cubic-bezier(.65,0,.35,1) both}.studio-calendar .session-block .session-time,.studio-calendar .session-block .session-client,.studio-calendar .session-block .session-price,.studio-calendar .session-block .session-status-icon,.studio-calendar .session-block .session-busy-label{color:inherit}.studio-calendar .session-block .session-client{font-weight:700}.studio-calendar .session-block.status-arrived{background:#2f5da8;color:#fff}.studio-calendar .session-block.status-pending{background:var(--bg);color:var(--text);outline:1.6px dashed var(--ink);outline-offset:-1.6px}.studio-calendar .session-block.status-completed{background:var(--surface-secondary);color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--border)}.studio-calendar .session-block.status-no_show{background:transparent;color:var(--danger);outline:1.6px solid var(--danger);outline-offset:-1.6px}.studio-calendar .session-block.status-no_show .session-client,.studio-calendar .session-block.status-cancelled .session-client{text-decoration:line-through}.studio-calendar .session-block.status-cancelled{background:transparent;color:var(--text-muted);outline:1.6px dashed var(--stencil);outline-offset:-1.6px}.studio-calendar .session-block.busy-slot{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--stencil) 35%,transparent) 0 3px,transparent 3px 8px);color:var(--text-secondary);outline:1.4px dashed var(--stencil);outline-offset:-1.4px}.studio-calendar .session-block:hover{transform:none;box-shadow:0 6px 16px #0000002e}.sc-now{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--pigment-red);z-index:30;pointer-events:none;transform-origin:left center;animation:sc-now-in .9s cubic-bezier(.65,0,.35,1) both}@keyframes sc-now-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.studio-calendar .master-column:first-of-type .sc-now:before,.studio-calendar .time-column+.master-column .sc-now:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:4px;background:var(--pigment-red)}.studio-calendar .month-day,.studio-calendar .month-cell{background:transparent;border-color:var(--border)}.studio-calendar .modal-overlay{align-items:flex-end;padding:0;background:#0d0c0b73;-webkit-backdrop-filter:none;backdrop-filter:none}.studio-calendar .modal-overlay>*{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border:none;border-radius:14px 14px 0 0;background:var(--bg);color:var(--text);padding-bottom:calc(20px + env(safe-area-inset-bottom));animation:sc-up .28s var(--ease-out) both}@media(min-width:769px){.studio-calendar .modal-overlay{align-items:center}.studio-calendar .modal-overlay>*{border-radius:14px}}@keyframes sc-up{0%{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}.studio-calendar .modal-overlay input,.studio-calendar .modal-overlay select,.studio-calendar .modal-overlay textarea{min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:17px}@media(prefers-reduced-motion:reduce){.studio-calendar .session-block,.sc-now,.studio-calendar .modal-overlay>*{animation:none;clip-path:none;transform:none}}.studio-calendar .time-slot{position:relative;padding-top:0}.studio-calendar .time-slot>span{position:absolute;top:0;left:0;right:8px;text-align:right;line-height:1;transform:translateY(-50%);font-variant-numeric:tabular-nums}.studio-calendar .session-block.short{display:flex;align-items:center;gap:6px;padding:0 6px;white-space:nowrap;font-size:11px}.studio-calendar .session-block.short .session-status-icon,.studio-calendar .session-block.short .session-price,.studio-calendar .session-block.short .session-master-badge{display:none}.studio-calendar .session-block.short .session-time,.studio-calendar .session-block.short .session-client{font-size:11px;line-height:1.1;overflow:hidden;text-overflow:ellipsis}.studio-calendar .session-block.shared{padding-left:5px;padding-right:4px}.studio-calendar .month-session{display:flex;align-items:center;gap:5px;min-width:0;padding:1px 2px;border-radius:4px;font-size:11px;line-height:1.35;color:var(--text);white-space:nowrap}.studio-calendar .month-session-dot{flex:0 0 8px;width:8px;height:8px;border-radius:50%;padding:0}.studio-calendar .month-session-time{flex:none;font-weight:700;font-variant-numeric:tabular-nums}.studio-calendar .month-session-client{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary)}.studio-calendar .month-session.status-completed{opacity:.6}.studio-calendar .month-session.status-cancelled .month-session-client,.studio-calendar .month-session.status-no_show .month-session-client{text-decoration:line-through}.studio-calendar .month-session.status-pending .month-session-time{font-weight:500}.studio-calendar .month-more{font-size:11px;font-weight:700;color:var(--text-secondary)}@media(min-width:769px){.studio-owner-layout .main-content:has(>.studio-calendar){height:100dvh;padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.studio-owner-layout .main-content>.studio-calendar{flex:1;min-height:0;width:100%;max-width:none}.studio-calendar .month-view{display:flex;flex-direction:column}.studio-calendar .month-grid{flex:1;grid-auto-rows:minmax(72px,1fr)}.studio-calendar .month-day{min-height:0;overflow:hidden}}.studio-masters-page{padding:1.5rem;max-width:900px;margin:0 auto}.invite-card{background:linear-gradient(135deg,var(--primary),var(--primary));border-radius:16px;padding:1.25rem;color:var(--on-primary);margin-bottom:1.5rem}.invite-header{display:flex;align-items:center;gap:.5rem;font-weight:500;margin-bottom:.75rem}.invite-code{flex:1;background:#fff3;padding:.75rem 1rem;border-radius:8px;font-family:monospace;font-size:1.1rem;letter-spacing:2px}.invite-card .icon-btn{background:#fff3;border:none;border-radius:8px;padding:.65rem;cursor:pointer;color:#fff;transition:all .2s}.invite-card .icon-btn:hover{background:#ffffff4d}.invite-hint{font-size:.8rem;opacity:.8;margin:.75rem 0 0}.masters-list{display:flex;flex-direction:column;gap:.75rem}.master-card{background:var(--surface-secondary);border:1px solid var(--border);border-radius:12px;padding:1rem;transition:all .2s}.master-card.editing{border-color:var(--primary)}.master-header{display:flex;align-items:center;gap:.75rem}.master-avatar{width:44px;height:44px;border-radius:12px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--on-primary);font-weight:600;font-size:1.1rem;overflow:hidden}.master-avatar img{width:100%;height:100%;object-fit:cover}.master-info{flex:1;display:flex;flex-direction:column}.master-name{font-weight:500;color:var(--text)}.master-email{font-size:.8rem;color:var(--text-secondary)}.badge{font-size:.7rem;padding:4px 10px;border-radius:20px;font-weight:500}.badge.owner{background:linear-gradient(135deg,var(--warning),var(--warning));color:var(--on-warning)}.master-percent{background:var(--success);color:var(--on-success);font-size:.85rem;font-weight:600;padding:4px 10px;border-radius:8px}.master-actions{display:flex;gap:.5rem}.master-actions button{background:none;border:1px solid var(--border);border-radius:8px;padding:.5rem;cursor:pointer;color:var(--text-secondary);transition:all .2s}.master-actions .edit-btn:hover{border-color:var(--primary);color:var(--primary)}.master-actions .delete-btn:hover{border-color:var(--danger);color:var(--danger)}.master-settings{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.setting-row{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.setting-row label{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-secondary);min-width:80px}.setting-row input{width:70px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.4rem .6rem;font-size:.9rem;color:var(--text);text-align:center}.setting-row span{color:var(--text-secondary)}.permissions-row label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.permission-chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{display:flex;align-items:center;gap:4px;padding:.35rem .65rem;border-radius:20px;font-size:.75rem;cursor:pointer;transition:all .2s;border:none}.chip.on{background:var(--success);color:var(--on-success)}.chip.off{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.add-admin-form{display:flex;gap:.5rem;margin-bottom:1rem}.add-admin-form input{flex:1;background:var(--surface-secondary);border:1px solid var(--border);border-radius:8px;padding:.65rem .85rem;font-size:.9rem;color:var(--text)}.add-admin-form button{background:var(--primary);color:var(--on-primary);border:none;border-radius:8px;padding:.65rem 1rem;cursor:pointer}.admins-list{display:flex;flex-direction:column;gap:.5rem}.admin-item{display:flex;align-items:center;justify-content:space-between;background:var(--surface-secondary);border-radius:8px;padding:.65rem .85rem}.admin-item button{background:none;border:none;color:var(--text-secondary);cursor:pointer}.admin-item button:hover{color:var(--danger)}.empty-text{color:var(--text-secondary);font-size:.9rem;text-align:center;padding:1rem}@media(max-width:600px){.master-header{flex-wrap:wrap}.master-percent{margin-left:auto}.master-actions{width:100%;margin-top:.5rem;justify-content:flex-end}}.studio-stats-page{padding:1.5rem;max-width:1000px;margin:0 auto}.studio-stats-page.loading{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--text-secondary)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.period-selector{display:flex;gap:.25rem;background:var(--surface-secondary);border-radius:10px;padding:4px}.period-selector button{background:none;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;cursor:pointer;color:var(--text-secondary);transition:all .2s}.period-selector button:hover{color:var(--text)}.period-selector button.active{background:var(--primary);color:var(--on-primary)}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.25rem;display:flex;align-items:center;gap:1rem}.stat-icon{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff}.stat-card.total .stat-icon{background:linear-gradient(135deg,var(--success),var(--success))}.stat-card.studio .stat-icon{background:linear-gradient(135deg,var(--primary),var(--primary))}.stat-card.masters .stat-icon{background:linear-gradient(135deg,var(--warning),var(--warning))}.stat-card.sessions .stat-icon{background:linear-gradient(135deg,var(--primary),var(--primary))}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text)}.stat-label{font-size:.85rem;color:var(--text-secondary)}.section{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.25rem}.masters-stats-list{display:flex;flex-direction:column;gap:.5rem}.master-stat-row{display:flex;align-items:center;justify-content:space-between;background:var(--surface-secondary);border-radius:10px;padding:.85rem 1rem}.master-stat-info{display:flex;flex-direction:column}.master-stat-name{font-weight:500;color:var(--text)}.master-stat-sessions{font-size:.8rem;color:var(--text-secondary)}.master-stat-values{display:flex;align-items:center;gap:.75rem}.master-stat-values .revenue{font-size:.9rem;color:var(--text-secondary)}.master-stat-values .share{font-weight:600;color:var(--success)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary)}.empty-state svg{opacity:.3;margin-bottom:1rem}@media(max-width:600px){.stats-cards{grid-template-columns:1fr 1fr}.stat-card{flex-direction:column;text-align:center;padding:1rem}.stat-icon{width:44px;height:44px}}.studio-settings-page{padding:1.5rem;max-width:700px;margin:0 auto}.page-header{margin-bottom:1.5rem}.page-header h1{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;margin:0}.page-header h1 svg{color:var(--primary)}.section{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.25rem;margin-bottom:1rem}.section h2{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;margin:0 0 1rem}.section-hint{font-size:.85rem;color:var(--text-secondary);margin:-.5rem 0 1rem;padding:.5rem .75rem;background:var(--surface-secondary);border-radius:6px}.info-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border)}.info-row:last-child{border-bottom:none}.info-row label{color:var(--text-secondary);font-size:.9rem}.info-value{font-weight:500;color:var(--text)}.info-code{background:var(--surface-secondary);padding:.4rem .75rem;border-radius:6px;font-family:monospace;font-size:.9rem;color:var(--primary)}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}.setting-row label{display:flex;align-items:center;gap:.5rem;color:var(--text);font-size:.95rem}.setting-row label svg{color:var(--text-secondary)}.setting-input{display:flex;align-items:center;gap:.5rem}.setting-input input{width:80px;background:var(--surface-secondary);border:1px solid var(--border);border-radius:8px;padding:.5rem .75rem;font-size:1rem;color:var(--text);text-align:center}.setting-input span{color:var(--text-secondary)}.save-btn{width:100%;margin-top:1rem;background:var(--primary);color:var(--on-primary);border:none;border-radius:10px;padding:.85rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:hover:not(:disabled){filter:brightness(1.1)}.save-btn:disabled{opacity:.7;cursor:not-allowed}.event-types-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.event-type-item{display:flex;align-items:center;gap:.75rem;background:var(--surface-secondary);border-radius:10px;padding:.75rem 1rem}.event-color{width:20px;height:20px;border-radius:6px}.event-name{flex:1;color:var(--text)}.default-badge{font-size:.7rem;background:var(--surface);color:var(--text-secondary);padding:3px 8px;border-radius:10px}.delete-type-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px}.delete-type-btn:hover{color:var(--danger)}.add-type-form{background:var(--surface-secondary);border-radius:12px;padding:1rem}.add-type-form h4{font-size:.9rem;margin:0 0 .75rem}.add-type-form .form-row{display:flex;gap:.5rem;margin-bottom:.5rem}.add-type-form input[type=text]{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.6rem .85rem;font-size:.9rem;color:var(--text)}.add-type-form input[type=color]{width:44px;height:38px;padding:0;border:none;border-radius:8px;cursor:pointer}.add-btn{display:flex;align-items:center;gap:.4rem;background:var(--primary);color:var(--on-primary);border:none;border-radius:8px;padding:.6rem 1rem;font-size:.9rem;cursor:pointer}.danger-section{border-color:var(--danger)}.danger-section h2{color:var(--danger)}.delete-studio-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:var(--danger);color:var(--on-danger);border:none;border-radius:10px;padding:.85rem;font-size:1rem;font-weight:500;cursor:pointer}.delete-studio-btn:hover{filter:brightness(1.1)}.studio-projects{padding:20px;height:100%;display:flex;flex-direction:column;gap:20px}.studio-projects.loading{display:flex;align-items:center;justify-content:center}.projects-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.header-left{display:flex;align-items:center;gap:12px}.header-left h1{font-size:20px;font-weight:600;color:var(--text);margin:0}.header-left svg{color:var(--accent)}.projects-count{background:var(--accent);color:var(--on-primary);font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px}.header-right{display:flex;align-items:center;gap:12px}.search-box{display:flex;align-items:center;gap:8px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:8px 12px}.search-box input{border:none;background:transparent;color:var(--text);font-size:14px;width:180px}.search-box input:focus{outline:none}.search-box svg{color:var(--text-secondary)}.add-btn{display:flex;align-items:center;gap:6px;background:var(--accent);color:var(--on-primary);border:none;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.add-btn:hover{opacity:.9}.stage-filters{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;cursor:pointer;transition:all .2s}.filter-btn:hover{background:var(--bg)}.filter-btn.active{border-color:var(--accent-color, var(--accent));background:rgba(var(--accent-rgb),.1)}.filter-dot{width:8px;height:8px;border-radius:50%}.filter-count{color:var(--text-secondary);font-size:12px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;flex:1;overflow-y:auto}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:12px}.project-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.card-header{display:flex;align-items:center;justify-content:space-between}.stage-badge{font-size:11px;font-weight:600;color:#fff;padding:4px 10px;border-radius:6px;text-transform:uppercase}.master-badge{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:600}.project-title{font-size:16px;font-weight:600;color:var(--text);margin:0}.project-meta{display:flex;flex-direction:column;gap:6px}.meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.meta-item svg{width:14px;height:14px}.meta-item.price{color:var(--accent);font-weight:500}.card-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.view-more{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--accent);font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:16px;color:var(--text-secondary)}.empty-state svg{opacity:.5}.empty-state h3{margin:0;color:var(--text)}.empty-state p{margin:0}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--card-bg);border-radius:12px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal.small{max-width:360px}.modal.large{max-width:600px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:16px;font-weight:600;color:var(--text);margin:0}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px}.close-btn:hover{background:var(--border);color:var(--text)}.modal form{padding:20px;display:flex;flex-direction:column;gap:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.client-select-row{display:flex;gap:8px}.client-select-row select{flex:1}.new-client-btn{background:var(--accent);color:var(--on-primary);border:none;padding:10px 12px;border-radius:8px;cursor:pointer}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding:16px 20px;border-top:1px solid var(--border)}.cancel-btn{padding:10px 18px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;font-size:14px;cursor:pointer}.cancel-btn:hover{background:var(--border)}.submit-btn{padding:10px 18px;background:var(--accent);border:none;color:var(--on-primary);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.submit-btn:hover{opacity:.9}.project-detail-content{padding:20px;display:flex;flex-direction:column;gap:20px}.detail-section{display:flex;flex-direction:column;gap:10px}.detail-section h4{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;margin:0}.detail-section p{margin:0;color:var(--text);font-size:14px;line-height:1.5}.stage-buttons{display:flex;gap:6px;flex-wrap:wrap}.stage-btn{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;border:2px solid}.stage-btn:hover{opacity:.8}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item label{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.detail-item span{font-size:14px;font-weight:500;color:var(--text)}.sessions-list{display:flex;flex-direction:column;gap:8px}.session-item{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg);border-radius:8px;font-size:13px;color:var(--text)}.session-item svg{color:var(--accent)}.session-price{margin-left:auto;color:var(--accent);font-weight:500}.no-sessions{color:var(--text-secondary);font-style:italic}@media(max-width:768px){.projects-header{flex-direction:column;align-items:stretch}.header-right{justify-content:space-between}.search-box input{width:120px}.projects-grid,.detail-grid{grid-template-columns:1fr}}.studio-clients-page{max-width:900px;padding-bottom:2rem;animation:fadeIn .4s ease-out}.studio-clients-page.loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-muted)}.studio-clients-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.studio-clients-page .page-title{font-size:1.5rem;font-weight:700;color:var(--text)}.studio-clients-page .add-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary),var(--purple));color:var(--on-primary);border:none;border-radius:12px;padding:.75rem 1.25rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.studio-clients-page .add-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}.studio-clients-page .search-box{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:2px solid var(--border);border-radius:14px;padding:.85rem 1rem;margin-bottom:1.5rem;transition:all .25s ease}.studio-clients-page .search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}.studio-clients-page .search-box input{flex:1;background:none;border:none;color:var(--text);font-size:1rem;outline:none}.studio-clients-page .search-box input::placeholder{color:var(--text-muted)}.studio-clients-page .search-box svg{color:var(--text-muted)}.studio-clients-page .clients-list{display:flex;flex-direction:column;gap:.75rem}.studio-clients-page .client-card{display:flex;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fadeInUp .5s ease-out both}.studio-clients-page .client-card:hover{border-color:var(--primary);transform:translate(4px);box-shadow:0 4px 20px #0000001a}.studio-clients-page .client-avatar{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--purple));display:flex;align-items:center;justify-content:center;color:var(--on-primary);flex-shrink:0}.studio-clients-page .client-info{flex:1;min-width:0}.studio-clients-page .client-name{font-weight:600;color:var(--text);margin-bottom:.35rem;font-size:1.05rem}.studio-clients-page .client-contact{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary);font-size:.85rem;margin-top:.2rem}.studio-clients-page .client-contact svg{color:var(--text-muted)}.studio-clients-page .client-actions{display:flex;gap:.5rem}.studio-clients-page .action-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.studio-clients-page .action-btn:hover{border-color:var(--primary);color:var(--primary);background:rgba(var(--accent-rgb),.1)}.studio-clients-page .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-muted);text-align:center}.studio-clients-page .empty-state svg{margin-bottom:1rem;opacity:.5}.studio-clients-page .empty-state p{font-size:1rem}.studio-clients-page .modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.25rem;animation:fadeIn .2s ease-out}.studio-clients-page .modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.5rem;width:100%;max-width:450px;animation:scaleIn .3s cubic-bezier(.16,1,.3,1);box-shadow:0 20px 60px #0000004d}.studio-clients-page .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.studio-clients-page .modal-header h2{color:var(--text);font-size:1.25rem;margin:0}.studio-clients-page .close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;transition:color .2s}.studio-clients-page .close-btn:hover{color:var(--text)}.studio-clients-page .form-group{margin-bottom:1rem}.studio-clients-page .form-group label{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.85rem;margin-bottom:.5rem}.studio-clients-page .form-group input,.studio-clients-page .form-group textarea{width:100%;background:var(--bg);border:2px solid var(--border);border-radius:12px;padding:.85rem 1rem;color:var(--text);font-size:1rem;transition:all .2s ease}.studio-clients-page .form-group input:focus,.studio-clients-page .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}.studio-clients-page .form-group input::placeholder,.studio-clients-page .form-group textarea::placeholder{color:var(--text-muted)}.studio-clients-page .form-group textarea{resize:vertical;min-height:80px}.studio-clients-page .modal-buttons{display:flex;gap:.75rem;margin-top:1.5rem}.studio-clients-page .btn-cancel{flex:1;background:var(--bg);border:2px solid var(--border);border-radius:12px;padding:.85rem;color:var(--text);font-weight:600;cursor:pointer;transition:all .2s ease}.studio-clients-page .btn-cancel:hover{border-color:var(--text-muted)}.studio-clients-page .btn-submit{flex:1;background:linear-gradient(135deg,var(--primary),var(--purple));border:none;border-radius:12px;padding:.85rem;color:var(--on-primary);font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.studio-clients-page .btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--accent-rgb),.4)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(max-width:600px){.studio-clients-page .page-header{flex-direction:column;gap:1rem;align-items:stretch}.studio-clients-page .page-title{font-size:1.3rem}.studio-clients-page .add-btn{justify-content:center}.studio-clients-page .client-card{padding:.85rem}.studio-clients-page .client-avatar{width:44px;height:44px}.studio-clients-page .client-name{font-size:.95rem}.studio-clients-page .modal{padding:1.25rem;margin:1rem}}.more-page{max-width:640px}.more-title{font-size:38px;line-height:1.05;margin:8px 4px 20px}.more-list{list-style:none;border-top:var(--rule)}.more-row{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:14px;min-height:56px;padding:0 4px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none;font-size:17px;font-weight:600}.more-row:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.more-chevron{color:var(--text-secondary)}.more-character{display:grid;grid-template-columns:64px minmax(0,1fr) 18px;gap:14px;align-items:center;margin:0 4px 18px;padding:8px 0 12px;color:var(--text);text-decoration:none}.more-character>span{display:flex;flex-direction:column}.more-character-title{font-size:17px;font-weight:700}.more-character-sub{font-size:13px;color:var(--text-secondary)}button.more-row{width:100%;border-top:none;border-left:none;border-right:none;background:transparent;font:inherit;font-size:17px;font-weight:600;text-align:left;cursor:pointer}.more-row-danger{color:var(--danger)}.sg .sg-title{margin:22px 0 10px;font-family:var(--font-display);font-size:20px;font-weight:400;color:var(--text)}.sg .studio-list{display:flex;flex-direction:column;gap:8px}.sg .sg-create{display:flex;flex-direction:column;gap:12px}.sg .sg-create .login-button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.sg .sg-hint{margin:0;font-size:14px;line-height:1.45;color:var(--text-secondary)}.sg .sg-foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;margin-top:26px;padding-top:14px;border-top:1px solid var(--border)}.sg .sg-who{flex:1 1 100%;font-size:14px;color:var(--text-secondary);overflow-wrap:anywhere}.sg .sg-foot .login-switch{margin:0;padding:8px 0}.sa{max-width:720px}.sa .sa-other{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.sa .sa-other .setting-info{flex:1 1 280px;align-items:flex-start;line-height:1.45}.profile-page{max-width:600px;padding:1rem;padding-bottom:100px;animation:fadeIn .4s ease-out}.page-title{font-size:1.5rem;color:var(--text);margin-bottom:1.5rem;animation:fadeInDown .5s ease-out}.section{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.25rem;margin-bottom:1rem;transition:all .3s ease;animation:fadeInUp .5s ease-out both}.section:nth-child(1){animation-delay:.05s}.section:nth-child(2){animation-delay:.1s}.section:nth-child(3){animation-delay:.15s}.section:nth-child(4){animation-delay:.2s}.section:nth-child(5){animation-delay:.25s}.section:hover{border-color:rgba(var(--accent-rgb),.3)}.section h2{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:1rem}.user-info{display:flex;align-items:center;gap:16px}.avatar-container{position:relative;cursor:pointer;transition:transform .2s ease}.avatar-container:hover{transform:scale(1.05)}.avatar-container:hover .avatar-overlay{opacity:1}.avatar{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--purple));display:flex;align-items:center;justify-content:center;color:var(--on-primary);font-size:24px;font-weight:700;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.avatar-image{width:60px;height:60px;border-radius:16px;object-fit:cover;box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.avatar-overlay{position:absolute;inset:0;background:#00000080;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .2s ease}.avatar-loading{position:absolute;inset:0;background:#0009;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.user-name{font-size:18px;font-weight:600;color:var(--text)}.user-email{color:var(--text-secondary)}.subscription-badge-profile{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.subscription-badge-profile .sub-type{padding:.25rem .6rem;border-radius:12px;color:#fff;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.subscription-badge-profile .sub-note{font-size:.7rem;color:var(--text-secondary);font-style:italic}.subscription-limits-card{background:linear-gradient(135deg,#6b72801a,#6b72800d);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-top:1rem}.subscription-limits-card h4{margin:0 0 .75rem;font-size:.9rem;color:var(--text)}.limits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.limit-item{text-align:center}.limit-label{display:block;font-size:.7rem;color:var(--text-secondary);margin-bottom:.25rem}.limit-value{font-size:.9rem;font-weight:600;color:var(--text)}.limits-note{margin:.75rem 0 0;font-size:.75rem;color:var(--text-secondary);text-align:center}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--border);transition:all .2s ease}.setting-row:hover{background:var(--bg);margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:8px}.setting-row:last-child{border-bottom:none}.setting-info{display:flex;align-items:center;gap:12px;color:var(--text)}.toggle-btn{background:var(--bg);border:2px solid var(--border);border-radius:10px;padding:.6rem 1rem;color:var(--text);cursor:pointer;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.toggle-btn:hover{border-color:var(--primary);transform:translateY(-1px)}.calc-settings-section{padding:0}.calc-settings-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px;background:transparent;border:none;cursor:pointer;color:var(--text)}.calc-settings-header:hover{background:var(--bg)}.calc-settings-content{padding:0 20px 20px;border-top:1px solid var(--border)}.settings-tabs{display:flex;gap:.5rem;padding:1rem 0;overflow-x:auto}.settings-tabs button{flex-shrink:0;padding:.5rem 1rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.settings-tabs button:hover{border-color:var(--primary)}.settings-tabs button.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.settings-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.form-row label{color:var(--text-secondary);font-size:.9rem}.form-row input{width:120px;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.5rem;color:var(--text);font-size:.9rem;text-align:right}.formula-hint{margin-top:.5rem;padding:.75rem;background:rgba(var(--accent-rgb),.1);border-radius:6px;font-size:.8rem;color:var(--text-secondary)}.coef-list{display:flex;flex-direction:column;gap:.5rem}.coef-list h4{margin:1rem 0 .5rem;color:var(--text);font-size:.9rem}.coef-list h4:first-child{margin-top:0}.coef-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:var(--bg);border-radius:6px}.coef-toggle{display:flex;align-items:center;gap:.75rem;cursor:pointer;color:var(--text);font-size:.9rem}.coef-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.coef-input{width:70px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:.4rem .5rem;color:var(--text);font-size:.85rem;text-align:center}.coef-input:disabled{opacity:.5;cursor:not-allowed}.reset-settings-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:1rem;padding:.75rem;background:transparent;border:1px solid var(--danger);border-radius:8px;color:var(--danger);font-size:.9rem;cursor:pointer;transition:all .2s}.reset-settings-btn:hover{background:var(--danger);color:var(--on-danger)}.editable-list{margin-bottom:1.5rem}.editable-list h4{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.editable-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--bg);border-radius:6px;margin-bottom:.5rem}.item-label{flex:1;font-size:.9rem;color:var(--text)}.delete-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s}.delete-btn:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.add-item-row{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border)}.new-item-input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.5rem;color:var(--text);font-size:.9rem}.add-btn{background:var(--primary);border:none;border-radius:6px;color:var(--on-primary);padding:.5rem .75rem;cursor:pointer;transition:opacity .2s}.add-btn:disabled{opacity:.5;cursor:not-allowed}.add-btn:hover:not(:disabled){opacity:.9}.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--danger);color:var(--on-danger);border:none;border-radius:12px;padding:14px;font-size:16px;font-weight:600;cursor:pointer}.logout-btn:hover{opacity:.9}.studio-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.studio-title{display:flex;align-items:center;gap:.75rem;font-size:1.1rem;color:var(--text);margin-bottom:1rem}.studio-title svg{color:var(--primary)}.studio-options{display:flex;flex-direction:column;gap:.75rem}.studio-option-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--primary);color:var(--on-primary);border:none;border-radius:8px;font-size:.95rem;cursor:pointer;transition:opacity .2s}.studio-option-btn.secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}.studio-option-btn:hover{opacity:.9}.studio-form{display:flex;flex-direction:column;gap:.75rem}.studio-form input{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;color:var(--text);font-size:.95rem}.studio-form input:focus{outline:none;border-color:var(--primary)}.studio-error{color:var(--danger);font-size:.85rem}.studio-form-btns{display:flex;gap:.75rem}.studio-form-btns button{flex:1;padding:.75rem;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;cursor:pointer;transition:all .2s}.studio-form-btns button.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.studio-members{margin-bottom:1rem}.members-label{font-size:.85rem;color:var(--text-secondary);display:block;margin-bottom:.5rem}.members-list{display:flex;flex-wrap:wrap;gap:.5rem}.member-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg);padding:.4rem .75rem;border-radius:20px;font-size:.85rem;color:var(--text)}.owner-badge{font-size:.65rem;background:var(--primary);color:var(--on-primary);padding:.1rem .4rem;border-radius:4px;text-transform:uppercase}.studio-invite{margin-bottom:1rem}.invite-label{font-size:.85rem;color:var(--text-secondary);display:block;margin-bottom:.5rem}.invite-code-row{display:flex;align-items:center;gap:.5rem}.invite-code{background:var(--bg);padding:.5rem .75rem;border-radius:6px;font-family:monospace;font-size:.95rem;color:var(--primary);letter-spacing:.5px}.invite-code-row .copy-btn,.invite-code-row .refresh-btn{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.5rem;color:var(--text-secondary);cursor:pointer;transition:all .2s}.invite-code-row .copy-btn:hover,.invite-code-row .refresh-btn:hover{color:var(--primary);border-color:var(--primary)}.studio-actions{padding-top:.75rem;border-top:1px solid var(--border)}.studio-action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.6rem;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s}.studio-action-btn:hover{border-color:var(--text-secondary);color:var(--text)}.studio-action-btn.danger:hover{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.achievements-profile-section{padding:0!important;overflow:hidden}.achievements-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.25rem;background:transparent;border:none;cursor:pointer;color:var(--text);transition:background .2s}.achievements-header:hover{background:var(--bg)}.achievements-header .setting-info{display:flex;align-items:center;gap:.75rem;font-weight:600}.achievements-header .setting-info svg{color:gold}.achievements-summary-badge{background:linear-gradient(135deg,gold,orange);color:#1a1a1a;padding:.25rem .6rem;border-radius:20px;font-size:.75rem;font-weight:700;margin-right:auto;margin-left:.75rem}.achievements-full-content{padding:0 1.25rem 1.25rem}.overall-progress{margin-bottom:1rem}.progress-label{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);margin-bottom:.4rem}.progress-bar{height:10px;background:var(--bg);border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#cd7f32,silver,gold,#e5e4e2,#b9f2ff,#1a1a1a);background-size:600% 100%;border-radius:10px;transition:width .5s ease}.level-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;padding:.75rem;background:var(--bg);border-radius:12px}.level-item{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:var(--text-secondary)}.level-icon{font-size:.9rem}.level-name{font-weight:500}.achievement-category{margin-bottom:1.25rem}.category-title{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:var(--text);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.category-achievements{display:flex;flex-direction:column;gap:.6rem}.achievement-card{display:flex;align-items:center;gap:.85rem;padding:.85rem;background:var(--bg);border:2px solid var(--border);border-radius:14px;transition:all .25s ease}.achievement-card:hover{transform:translate(4px)}.achievement-card.locked{opacity:.5}.achievement-card.level-bronze{border-color:#cd7f32;background:linear-gradient(135deg,var(--bg),rgba(205,127,50,.1))}.achievement-card.level-silver{border-color:silver;background:linear-gradient(135deg,var(--bg),rgba(192,192,192,.15))}.achievement-card.level-gold{border-color:gold;background:linear-gradient(135deg,var(--bg),rgba(255,215,0,.15))}.achievement-card.level-platinum{border-color:#e5e4e2;background:linear-gradient(135deg,var(--bg),rgba(229,228,226,.2))}.achievement-card.level-diamond{border-color:#b9f2ff;background:linear-gradient(135deg,var(--bg),rgba(185,242,255,.2))}.achievement-card.level-leather{border-color:#1a1a1a;background:linear-gradient(135deg,#1a1a1a,#333)}.achievement-card.level-leather .achievement-card-name,.achievement-card.level-leather .achievement-card-progress{color:#fff}.achievement-card-icon{font-size:1.75rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--surface);border-radius:12px;flex-shrink:0}.achievement-card-info{flex:1;min-width:0}.achievement-card-name{font-weight:600;color:var(--text);font-size:.95rem;margin-bottom:.2rem}.achievement-card-progress{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary);margin-bottom:.4rem}.achievement-level-badge{padding:.15rem .5rem;background:var(--surface);border-radius:6px;font-size:.65rem;font-weight:700;text-transform:uppercase}.achievement-progress-bar{height:6px;background:var(--surface);border-radius:6px;overflow:hidden}.achievement-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--purple));border-radius:6px;transition:width .5s ease}@media(max-width:600px){.achievements-full-content{padding:0 1rem 1rem}.level-legend{padding:.6rem;gap:.4rem}.level-item{font-size:.65rem}.achievement-card{padding:.75rem;border-radius:12px}.achievement-card-icon{width:44px;height:44px;font-size:1.5rem}.achievement-card-name{font-size:.9rem}}.profile-details{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.profile-details-title{display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600;color:var(--text);margin-bottom:1rem}.edit-profile-btn{background:var(--primary);color:var(--on-primary);border:none;border-radius:8px;padding:.4rem .8rem;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.edit-profile-btn:hover{background:var(--purple);transform:translateY(-1px)}.profile-fields{display:flex;flex-direction:column;gap:1rem}.profile-field{display:flex;gap:12px;align-items:flex-start}.profile-field-icon{width:36px;height:36px;background:var(--bg);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.profile-field-content{flex:1;display:flex;flex-direction:column;gap:4px}.profile-field-content label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-field-content input,.profile-field-content select{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.6rem .8rem;color:var(--text);font-size:.95rem;transition:all .2s ease}.profile-field-content input:focus,.profile-field-content select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}.profile-field-value{color:var(--text);font-size:.95rem;padding:.6rem 0}.profile-actions{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.profile-actions .cancel-btn{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.75rem;color:var(--text);font-weight:500;cursor:pointer;transition:all .2s ease}.profile-actions .cancel-btn:hover{background:var(--surface);border-color:var(--text-secondary)}.profile-actions .save-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--primary),var(--purple));border:none;border-radius:10px;padding:.75rem;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.profile-actions .save-btn .profile-field-auto{display:flex;align-items:center;gap:8px}.profile-actions .save-btn .auto-calc-hint{font-size:.75rem;color:var(--text-secondary);opacity:.7}.profile-actions .save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--accent-rgb),.3)}.profile-actions .save-btn:disabled{opacity:.7;cursor:not-allowed}.accent-color-row{flex-wrap:wrap}.accent-color-row .setting-info{gap:12px}.color-preview{width:20px;height:20px;border-radius:6px;border:2px solid var(--border)}.color-picker-group{display:flex;align-items:center;gap:8px}.color-picker-input{width:36px;height:36px;padding:0;border:2px solid var(--border);border-radius:8px;cursor:pointer;background:transparent}.color-picker-input::-webkit-color-swatch-wrapper{padding:2px}.color-picker-input::-webkit-color-swatch{border-radius:4px;border:none}.hex-input{width:90px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:monospace;font-size:.9rem;text-transform:uppercase}.hex-input:focus{outline:none;border-color:var(--primary)}.reset-color-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.reset-color-btn:hover{background:var(--surface-secondary);color:var(--text)}.currency-icon{font-size:1.2rem}.currency-select{padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.9rem;cursor:pointer;min-width:160px}.currency-select:focus{outline:none;border-color:var(--primary)}.studio-section{overflow:hidden}.studio-header-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;background:none;border:none;cursor:pointer;color:var(--text)}.studio-badge{font-size:.8rem;padding:4px 12px;border-radius:20px;background:var(--surface-secondary);color:var(--text-secondary);margin-right:auto;margin-left:1rem}.studio-badge.connected{background:var(--primary);color:var(--on-primary)}.studio-section-content{padding-top:1rem;border-top:1px solid var(--border);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.studio-switch-section{text-align:center}.studio-info-text{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.switch-mode-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:linear-gradient(135deg,var(--primary),var(--primary));color:var(--on-primary);border:none;border-radius:12px;padding:.85rem 1.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.switch-mode-btn:hover{filter:brightness(1.1);transform:translateY(-2px)}.leave-studio-btn{width:100%;margin-top:.75rem;background:none;border:1px solid var(--danger);color:var(--danger);border-radius:10px;padding:.65rem;font-size:.9rem;cursor:pointer}.leave-studio-btn:hover{background:var(--danger);color:var(--on-danger)}.studios-list{margin-bottom:1.5rem}.studios-list h4{color:var(--text-secondary);font-size:.85rem;margin-bottom:.75rem}.studio-item{background:var(--surface-secondary);border-radius:12px;padding:1rem;margin-bottom:.75rem}.studio-item-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.studio-item-header svg{color:var(--primary)}.studio-item-name{flex:1;font-weight:600;color:var(--text)}.studio-role{font-size:.75rem;padding:.25rem .6rem;border-radius:6px;background:var(--bg)}.studio-role.owner{background:rgba(var(--accent-rgb),.2);color:var(--primary)}.studio-role.member{background:rgba(var(--accent-rgb),.2);color:var(--purple)}.studio-visibility-toggle{margin-bottom:.75rem}.toggle-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer;font-size:.9rem;color:var(--text-secondary)}.toggle-label input[type=checkbox]{display:none}.toggle-switch{width:44px;height:24px;background:var(--border);border-radius:12px;position:relative;transition:background .25s ease;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .25s ease}.toggle-label input[type=checkbox]:checked+.toggle-switch{background:var(--primary)}.toggle-label input[type=checkbox]:checked+.toggle-switch:after{transform:translate(20px)}.manage-studio-btn{width:100%;background:linear-gradient(135deg,var(--primary),var(--purple));border:none;color:var(--on-primary);border-radius:10px;padding:.65rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .25s ease}.manage-studio-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--accent-rgb),.4)}.studio-item .leave-studio-btn{margin-top:.5rem;padding:.5rem;font-size:.85rem}.studio-actions-section{display:flex;flex-direction:column;gap:1rem}.studio-action-card{background:var(--surface-secondary);border-radius:12px;padding:1.25rem;text-align:center}.studio-action-card h4{margin:0 0 .5rem;font-size:1rem;color:var(--text)}.studio-action-card p{margin:0 0 1rem;font-size:.85rem;color:var(--text-secondary)}.studio-action-card form{display:flex;flex-direction:column;gap:.5rem}.studio-action-card input{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;font-size:.95rem;color:var(--text);text-align:center}.studio-action-card input:focus{outline:none;border-color:var(--primary)}.studio-action-card button{background:var(--primary);color:var(--on-primary);border:none;border-radius:8px;padding:.75rem;font-size:.95rem;font-weight:500;cursor:pointer}.studio-divider{display:flex;align-items:center;gap:1rem}.studio-divider:before,.studio-divider:after{content:"";flex:1;height:1px;background:var(--border)}.studio-divider span{color:var(--text-secondary);font-size:.85rem}.analytics-profile-section{animation-delay:.12s}.analytics-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 0;background:transparent;border:none;cursor:pointer;color:var(--text);transition:all .2s ease}.analytics-header:hover{opacity:.85}.analytics-summary-badge{background:linear-gradient(135deg,color-mix(in srgb,var(--success) 20%,transparent),color-mix(in srgb,var(--success) 10%,transparent));color:var(--success);padding:.35rem .85rem;border-radius:20px;font-size:.85rem;font-weight:600;margin-right:.5rem}.analytics-content{padding-top:1rem;animation:fadeIn .3s ease-out}.analytics-summary-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:1.5rem}.analytics-card{background:var(--surface-secondary);border-radius:12px;padding:1rem;text-align:center;display:flex;flex-direction:column;gap:.35rem}.analytics-card.income,.analytics-card.expected{border-left:none}.analytics-card-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.analytics-card-value{font-size:1.25rem;font-weight:700;color:var(--text)}.analytics-card.income .analytics-card-value{color:var(--success)}.analytics-card.expected .analytics-card-value{color:var(--warning)}.monthly-income-section-profile{background:var(--surface-secondary);border-radius:12px;padding:1rem}.monthly-income-title{display:flex;align-items:center;gap:8px;margin:0 0 1rem;font-size:.95rem;font-weight:600;color:var(--text)}.monthly-income-title svg{color:var(--primary)}.monthly-table-profile{display:flex;flex-direction:column;gap:8px}.monthly-row-profile{display:flex;justify-content:space-between;align-items:center;padding:.6rem .75rem;background:var(--surface);border-radius:8px;transition:all .2s ease}.monthly-row-profile:hover{background:linear-gradient(135deg,rgba(var(--accent-rgb),.1),rgba(var(--accent-rgb),.05))}.month-name-profile{font-size:.9rem;color:var(--text);font-weight:500}.month-amount-profile{font-size:.95rem;color:var(--success);font-weight:600}.no-analytics-data{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;color:var(--text-muted);text-align:center}.no-analytics-data svg{opacity:.3}.no-analytics-data p{margin:0;font-size:.9rem}@media(max-width:480px){.analytics-summary-cards{grid-template-columns:1fr}.analytics-card-value{font-size:1.1rem}}.delete-account-link{display:block;margin:16px auto 0;min-height:44px;padding:0 16px;background:none;border:none;color:var(--danger);font-size:14px;text-decoration:underline;cursor:pointer}.delete-account-modal{display:flex;flex-direction:column;gap:12px;max-width:420px}.delete-account-text{color:var(--text-secondary);font-size:14px;line-height:1.5}.delete-account-modal input{height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-secondary);color:var(--text);font-size:16px}.delete-account-modal .modal-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.delete-account-modal .btn-secondary,.delete-account-modal .btn-danger{min-height:44px;padding:0 18px;border-radius:12px;font-weight:600;cursor:pointer}.delete-account-modal .btn-secondary{background:transparent;border:1px solid var(--border);color:var(--text)}.delete-account-modal .btn-danger{background:var(--danger);border:none;color:var(--on-danger)}.delete-account-modal .btn-danger:disabled{opacity:.5;cursor:default}.profile-legal-links{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin-top:20px;font-size:13px}.profile-legal-links a{color:var(--text-secondary)}.pf.profile-page{max-width:680px;color:var(--text)}.pf .pf-title{margin:8px 4px 16px;font-size:38px;line-height:1.05;color:var(--text)}.pf .section,.pf .achievements-profile-section,.pf .analytics-profile-section,.pf .studio-section,.pf .monthly-income-section-profile{margin:0 0 22px;padding:12px 4px 0;border:none;border-top:var(--rule);border-radius:0;background:transparent;box-shadow:none}.pf .section:first-of-type{border-top:none;padding-top:0}.pf .user-info{display:flex;align-items:center;gap:16px;padding:0;background:transparent;border:none}.pf .avatar,.pf .avatar-image{width:76px;height:76px;border-radius:50%}.pf .avatar{background:var(--ink);color:var(--on-ink);font-family:var(--font-display);font-size:30px}.pf .avatar-overlay{background:#0d0c0b73}.pf .user-name{font-size:22px;font-weight:700;color:var(--text)}.pf .user-email{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf .user-info>:not(.avatar-container){flex:1;min-width:0}.pf .avatar-container{flex:0 0 auto}.pf .sub-type{border-radius:6px;color:#fff;font-weight:700;letter-spacing:.04em}.pf .sub-note,.pf .limits-note{color:var(--text-secondary)}.pf .subscription-limits-card{margin-top:14px;padding:12px 14px;border:1.6px dashed var(--stencil);border-radius:12px;background:transparent}.pf .progress-bar,.pf .achievement-progress-bar{height:6px;border-radius:3px;background:var(--border)}.pf .progress-fill,.pf .achievement-progress-fill{border-radius:3px;background:var(--ink)}.pf .profile-details{margin-top:18px;padding:0;border:none;background:transparent}.pf .profile-details-title,.pf .monthly-income-title,.pf .category-title{display:flex;align-items:center;gap:8px;color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pf .profile-fields{gap:0}.pf .profile-field,.pf .setting-row{min-height:54px;padding:8px 0;border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent}.pf .profile-field-icon{background:transparent;color:var(--text-secondary)}.pf .profile-field-value,.pf .setting-info{color:var(--text)}.pf .setting-info span{font-size:17px}.pf input,.pf select,.pf textarea{min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:16px}.pf .toggle-switch{background:var(--border);border:none}.pf .toggle-switch.active,.pf .toggle-switch.on,.pf .toggle-switch[aria-checked=true]{background:var(--ink)}.pf .color-preview{border:1px solid var(--border)}.pf .edit-profile-btn,.pf .btn-secondary,.pf .cancel-btn,.pf .manage-studio-btn,.pf .studio-header-btn,.pf .reset-color-btn{min-height:44px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 2px var(--text);color:var(--text);font-weight:600}.pf .save-btn{min-height:44px;border:none;border-radius:12px;background:var(--primary);color:var(--on-primary);font-weight:600;box-shadow:none}.pf .logout-btn,.pf .leave-studio-btn,.pf .btn-danger{min-height:48px;border:none;border-radius:12px;background:transparent;box-shadow:inset 0 0 0 2px var(--danger);color:var(--danger);font-weight:600}.pf .logout-btn:hover,.pf .leave-studio-btn:hover,.pf .btn-danger:hover{background:var(--danger);color:var(--on-danger);box-shadow:none}.pf .delete-account-link{color:var(--text-secondary);text-decoration:underline;text-underline-offset:3px}.pf .achievements-header,.pf .analytics-header{min-height:52px;padding:0;border:none;background:transparent}.pf .achievements-summary-badge,.pf .analytics-summary-badge,.pf .achievement-level-badge,.pf .studio-badge{border-radius:12px;background:transparent;box-shadow:inset 0 0 0 1.6px var(--border);color:var(--text)}.pf .achievement-card,.pf .analytics-card,.pf .studio-item,.pf .studio-action-card,.pf .level-item{border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.pf .analytics-summary-cards{gap:0}.pf .analytics-card-label{color:var(--text-secondary)}.pf .analytics-card-value{color:var(--text);font-family:var(--font-display);font-weight:400}.pf .analytics-card.income .analytics-card-value{color:var(--text)}.pf .analytics-card.expected .analytics-card-value{color:var(--text-secondary)}.pf .monthly-row-profile{border-bottom:1px solid var(--border);background:transparent}.pf .month-amount-profile{font-weight:700;color:var(--text)}.pf .profile-legal-links a{color:var(--text-secondary)}.pf .modal-overlay{align-items:flex-end;padding:0;background:#0d0c0b73;-webkit-backdrop-filter:none;backdrop-filter:none}.pf .modal-overlay>*{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border:none;border-radius:14px 14px 0 0;background:var(--bg);color:var(--text);padding-bottom:calc(20px + env(safe-area-inset-bottom));animation:pf-up .28s var(--ease-out) both}@media(min-width:769px){.pf .modal-overlay{align-items:center}.pf .modal-overlay>*{border-radius:14px}}@keyframes pf-up{0%{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.pf .modal-overlay>*{animation:none}}.pf-level-dot{display:inline-block;width:12px;height:12px;border-radius:6px;box-shadow:inset 0 0 0 1px #0000001f}.pf .achievement-card-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:16px;background:transparent;color:var(--text-secondary);font-size:0}.pf .achievement-card-icon .pf-level-dot{width:16px;height:16px;border-radius:8px}.pf .currency-icon{display:inline-flex;color:var(--text-secondary)}.pf .hex-input{width:104px;font-variant-numeric:tabular-nums}.pf .pf-me{display:flex;align-items:center;gap:12px;margin:0 4px 14px}.pf .pf-me-avatar{display:inline-flex;flex:none;align-items:center;justify-content:center;width:52px;height:52px;border-radius:47% 53% 50% 50%/55% 48% 52% 45%;background:var(--ink);color:var(--on-ink);font-family:var(--font-display);font-size:22px;object-fit:cover}.pf .pf-me-text{display:flex;flex-direction:column;min-width:0}.pf .pf-me-name{font-size:18px;font-weight:700}.pf .pf-me-email{overflow:hidden;color:var(--text-secondary);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.pf .pf-nav-list{margin:0;padding:0;list-style:none;border-top:var(--rule)}.pf .pf-nav-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto 16px;align-items:center;gap:12px;min-height:54px;padding:0 4px;border-bottom:1px solid var(--border);color:var(--text);font-size:17px;font-weight:500;text-decoration:none}.pf .pf-nav-row:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.pf .pf-nav-row:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.pf .pf-nav-meta{color:var(--text-secondary);font-size:15px;font-variant-numeric:tabular-nums}.pf .pf-nav-chevron{color:var(--text-muted)}.pf .pf-back{display:none}.pf .pf-pane-title{margin:0 0 14px;padding:0 4px 12px;border-bottom:var(--rule);font-family:var(--font-display);font-size:28px;font-weight:400;line-height:1.1}.pf .pf-pane>.section,.pf .pf-pane>.achievements-profile-section,.pf .pf-pane>.studio-section{border-top:none;padding-top:0}.pf .pf-account-who{margin:4px 0 14px;color:var(--text-secondary);font-size:15px}.pf .pf-account-who b{color:var(--text);font-weight:600}@media(max-width:1100px){.pf.pf-root .pf-pane,.pf.pf-in .pf-nav{display:none}.pf.pf-in .pf-back{display:inline-flex;align-items:center;gap:2px;min-height:44px;margin:0 0 4px -8px;padding:0 8px 0 0;border:none;background:transparent;color:var(--text);font-size:17px;cursor:pointer}}@media(min-width:1101px){.layout-main .pf.profile-page{display:grid;grid-template-columns:248px minmax(0,1fr);gap:0 56px;align-items:start;max-width:1080px}.pf .pf-nav{position:sticky;top:24px}.pf .pf-me{display:none}.pf .pf-nav-list{display:flex;flex-direction:column;gap:2px;border-top:none}.pf .pf-nav-row{grid-template-columns:20px minmax(0,1fr) auto;min-height:44px;padding:0 12px;border-bottom:none;border-radius:10px;font-size:15px}.pf .pf-nav-chevron{display:none}.pf .pf-nav-row.active{background:var(--primary);color:var(--on-primary);font-weight:600}.pf .pf-nav-row.active .pf-nav-meta{color:inherit;opacity:.75}.pf .pf-pane{max-width:720px;padding-top:6px}.pf .pf-title{margin-bottom:18px}}.layout-main .logo .logo-wordmark{display:none}@media(min-width:1101px){.layout-main .logo{padding:26px 22px 22px}.layout-main .logo .logo-icon{display:none}.layout-main .logo .logo-wordmark{display:inline-flex}.layout-main .main-content{width:calc(100% - 240px - env(safe-area-inset-left));max-width:none;padding:calc(32px + env(safe-area-inset-top)) clamp(32px,4vw,64px) 56px}.layout-main .main-content>*{margin-left:auto;margin-right:auto}.layout-main .today{max-width:1240px}.layout-main .today .today-head{min-height:140px}.layout-main .today .today-cols{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:0 56px;align-items:start}.layout-main .today .today-side{position:sticky;top:24px}.layout-main .today .today-side>.today-section:first-child{margin-top:0}.layout-main .pc{max-width:1440px}.layout-main .cl{max-width:1240px}.layout-main .cl .cl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));column-gap:40px}.layout-main .pj.projects-page{max-width:1240px}.layout-main .pj .pj-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));column-gap:40px}.layout-main .inv{max-width:1240px}.layout-main .inv .inv-list,.layout-main .inv .category-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));column-gap:40px;align-items:start}.layout-main .inv .category-section>.category-header{grid-column:1 / -1}.layout-main .pd{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-template-rows:auto auto auto 1fr;column-gap:48px;align-items:start;max-width:1240px}.layout-main .pd>*{grid-column:1}.layout-main .pd>.pd-nav{grid-column:1 / -1;grid-row:1}.layout-main .pd>.pd-head{grid-row:2}.layout-main .pd>.tabs{grid-row:3}.layout-main .pd>.tab-content{grid-row:4}.layout-main .pd>.pd-side{grid-column:2;grid-row:2 / 5;position:sticky;top:24px}.layout-main .cd{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-template-rows:auto auto auto 1fr;column-gap:48px;align-items:start;max-width:1180px}.layout-main .cd>*{grid-column:1;grid-row:4}.layout-main .cd>.cd-nav{grid-column:1 / -1;grid-row:1}.layout-main .cd>.cd-head{grid-row:2}.layout-main .cd>.cd-tabs{grid-row:3}.layout-main .cd>.cd-side{grid-column:2;grid-row:2 / 5;position:sticky;top:24px}}@font-face{font-family:Dela Gothic One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dela-gothic-one-cyrillic-400-normal-DJ9SKT-W.woff2) format("woff2"),url(/assets/dela-gothic-one-cyrillic-400-normal-CbgkSwdT.woff) format("woff")}@font-face{font-family:Dela Gothic One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dela-gothic-one-latin-400-normal-AgyGD05y.woff2) format("woff2"),url(/assets/dela-gothic-one-latin-400-normal-qxqiosUh.woff) format("woff")}:root{--font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "Segoe UI", Roboto, sans-serif;--font-display: "Dela Gothic One", var(--font-ui);--bg: #0D0C0B;--surface: #171614;--surface-secondary: #221F1C;--border: #2E2B27;--text: #F1EDE5;--text-secondary: #A8A398;--text-muted: #8A857C;--stencil: #5F5B54;--ink: #F1EDE5;--on-ink: #0D0C0B;--primary: var(--ink);--on-primary: var(--on-ink);--purple: var(--primary);--accent: var(--primary);--accent-rgb: 241, 237, 229;--primary-dark: color-mix(in srgb, var(--primary) 82%, var(--bg));--primary-hover: color-mix(in srgb, var(--primary) 88%, var(--bg));--danger: #EF5B4F;--warning: #E3A21A;--success: #4CB37A;--pigment-red: #D42A1F;--pigment-ochre: #E3A21A;--pigment-green: #1F7A47;--on-pigment: #FFF8F0;--info: #6E95D8;--on-success: #0D0C0B;--on-danger: #0D0C0B;--on-warning: #0D0C0B;--on-info: #0D0C0B;--card-bg: var(--surface);--rule: 3px solid var(--text);--ease-out: cubic-bezier(.2, .9, .25, 1)}.light{--bg: #F3F0EA;--surface: #FBF9F5;--surface-secondary: #ECE7DE;--border: #DAD5CC;--text: #121110;--text-secondary: #5E5B55;--text-muted: #6B6862;--stencil: #9C978D;--ink: #121110;--on-ink: #F3F0EA;--accent-rgb: 18, 17, 16;--danger: #C42318;--warning: #8C5B00;--success: #1F7A47;--info: #2F5DA8;--on-success: #FFFFFF;--on-danger: #FFFFFF;--on-warning: #FFFFFF;--on-info: #FFFFFF}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);min-height:100vh;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}h1{font-family:var(--font-display);font-weight:400;letter-spacing:0}::selection{background:var(--ink);color:var(--on-ink)}@keyframes blot-in{0%{transform:scale(.15) rotate(-10deg);opacity:0}55%{transform:scale(1.07) rotate(1.5deg);opacity:1}to{transform:scale(1) rotate(0)}}@keyframes needle{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes soak{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}@keyframes ink-fill{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.ink-blot{position:relative;display:inline-block;padding:2px 9px 4px;isolation:isolate;white-space:nowrap}.ink-blot>svg{position:absolute;inset:-3px;width:calc(100% + 6px);height:calc(100% + 8px);overflow:visible;z-index:-1;transform-origin:45% 55%;animation:blot-in .7s var(--ease-out) both}.ink-blot-text{position:relative;font-weight:700}.needle-line{stroke-dasharray:100;stroke-dashoffset:100;animation:needle 1.1s cubic-bezier(.65,0,.35,1) .3s both}.soak{animation:soak .65s cubic-bezier(.65,0,.35,1) both}.section-rule{border-top:var(--rule);padding-top:12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}@media(prefers-reduced-motion:reduce){.ink-blot>svg,.needle-line,.soak{animation:none;stroke-dashoffset:0;clip-path:none}}input,textarea,select,button{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .4s ease-out}.animate-fade-in-up{animation:fadeInUp .5s ease-out}.animate-fade-in-down{animation:fadeInDown .5s ease-out}.animate-slide-in-left{animation:slideInLeft .4s ease-out}.animate-slide-in-right{animation:slideInRight .4s ease-out}.animate-scale-in{animation:scaleIn .4s ease-out}.stagger-1{animation-delay:.05s;animation-fill-mode:both}.stagger-2{animation-delay:.1s;animation-fill-mode:both}.stagger-3{animation-delay:.15s;animation-fill-mode:both}.stagger-4{animation-delay:.2s;animation-fill-mode:both}.stagger-5{animation-delay:.25s;animation-fill-mode:both}.stagger-6{animation-delay:.3s;animation-fill-mode:both}.app-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.app-card:hover{border-color:var(--stencil)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:0 1.4rem;background:var(--primary);border:none;border-radius:12px;color:var(--on-primary);font-weight:600;font-size:16px;cursor:pointer;transition:background-color .15s ease,transform .1s ease}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:active{transform:scale(.98)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:0 1.4rem;background:transparent;border:none;box-shadow:inset 0 0 0 2px var(--text);border-radius:12px;color:var(--text);font-weight:600;font-size:16px;cursor:pointer;transition:background-color .15s ease,transform .1s ease}.btn-secondary:hover{background:var(--surface-secondary)}.btn-secondary:active{transform:scale(.98)}button,a,input,select,textarea{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--text);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}:focus-visible{outline:2px solid var(--text);outline-offset:2px}button,.nav-link,nav,[role=button],.btn{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}*{-webkit-tap-highlight-color:transparent}
