.layout{display:flex;flex-direction:column;min-height:100vh;padding-bottom:80px}.layout-content{flex:1;padding:var(--spacing-lg)}.layout-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background-color:var(--bg-color);border-top:1px solid var(--container-border);padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-md) var(--spacing-xs);z-index:1000;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.layout-nav::-webkit-scrollbar{display:none}.nav-item{flex:1;min-width:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xs);text-decoration:none;color:var(--text-secondary);transition:color .2s}.nav-item.active{color:var(--button-color)}.nav-icon{font-size:var(--font-size-h2);line-height:var(--line-height-normal);margin-bottom:2px}.nav-label{font-size:var(--font-size-caption-sm);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);white-space:nowrap}.home-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.home-header{text-align:left;display:flex;flex-direction:column;gap:var(--spacing-xs)}.home-brand-title{font-size:var(--font-size-number-lg);line-height:var(--line-height-tight);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);margin:0;color:var(--text-color)}.home-brand-subtitle{font-size:var(--font-size-body-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-normal);margin:0;color:var(--text-secondary)}.home-promo-slider{display:flex;flex-direction:column;gap:var(--spacing-lg)}.promo-slider-container{position:relative;overflow:hidden;border-radius:var(--radius-lg);user-select:none;-webkit-user-select:none;touch-action:pan-y;cursor:grab}.promo-slider-container:active{cursor:grabbing}.promo-slider-track{display:flex;gap:var(--spacing-lg);transition:transform .3s ease-in-out}.promo-slide-card{flex:0 0 100%;height:180px;padding:var(--spacing-lg);background-color:var(--container-bg);border:1px solid var(--container-border);border-radius:var(--radius-lg);box-shadow:var(--container-shadow);display:flex;flex-direction:column;gap:var(--spacing-lg)}.promo-slide-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color);margin:0;max-width:220px}.promo-slide-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);color:var(--text-color);text-decoration:none;transition:opacity .2s;margin-top:auto}.promo-slide-button:active{opacity:.7}.promo-button-icon{width:20px;height:20px}.promo-slider-dots{display:flex;gap:var(--spacing-sm);justify-content:center}.promo-dot{width:var(--spacing-sm);height:var(--spacing-sm);border-radius:var(--radius-circle);background-color:#d1d5dc;border:none;padding:0;cursor:pointer;transition:all .3s ease}.promo-dot.active{width:var(--spacing-8);border-radius:var(--radius-full);background-color:#99a1af}.home-section-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.home-community-sources{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.home-source-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background-color:var(--container-bg);border-radius:var(--radius-lg);border:1px solid var(--container-border);box-shadow:var(--shadow-md);text-decoration:none;color:var(--text-color);transition:transform .2s,opacity .2s,box-shadow .2s;min-height:100px}.home-source-card:hover{box-shadow:var(--shadow-lg)}.home-source-card:active{transform:scale(.98);opacity:.9;box-shadow:var(--shadow-md)}.resource-emoji-icon{font-size:32px;line-height:1}.external-link-icon{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:16px;height:16px;color:var(--text-secondary)}.home-source-title{font-size:var(--font-size-body-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-normal);margin:0;text-align:center}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px var(--spacing-lg)}.loading-spinner{width:40px;height:40px;border:4px solid var(--text-secondary);border-top-color:var(--button-color);border-radius:var(--radius-circle);animation:spin 1s linear infinite;margin-bottom:var(--spacing-lg)}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-loose)}.error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px var(--spacing-lg);text-align:center}.error-icon{font-size:48px;margin-bottom:var(--spacing-lg)}.error-message{color:var(--text-color);font-size:var(--font-size-body-lg);line-height:var(--line-height-loose);margin-bottom:20px}.error-retry{padding:var(--spacing-md) var(--spacing-2xl);background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:var(--radius-md);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .2s}.error-retry:hover{opacity:.9}.error-retry:active{opacity:.8}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:var(--spacing-md) var(--spacing-lg);background:#4caf50f2;color:#fff;border-radius:var(--radius-full);box-shadow:var(--shadow-lg);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);z-index:1000;animation:toast-in .3s ease,toast-out .3s ease 2.7s}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toast-out{0%{opacity:1}to{opacity:0}}.profile-header{background-color:var(--container-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--container-border);box-shadow:var(--container-shadow);display:flex;flex-direction:column;gap:var(--spacing-lg)}.profile-header-title{font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-color)}.profile-header-content{background:var(--nested-container-bg);border:1px solid var(--container-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.profile-header-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0}.profile-header-label{color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-loose)}.profile-header-value{color:var(--text-color);font-size:var(--font-size-body);line-height:var(--line-height-loose);font-weight:var(--font-weight-medium)}.referral-section{background-color:var(--container-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--container-border);box-shadow:var(--container-shadow);display:flex;flex-direction:column;gap:var(--spacing-lg)}.referral-section-title{font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-color)}.referral-section-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.referral-section-description{color:var(--text-color);font-size:var(--font-size-body);line-height:var(--line-height-loose)}.referral-section-stats{display:flex;justify-content:space-around;padding:var(--spacing-lg);background:var(--nested-container-bg);border:1px solid var(--container-border);border-radius:var(--radius-md)}.referral-section-stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.referral-section-stat-value{font-size:var(--font-size-number-md);font-weight:var(--font-weight-bold);color:var(--text-color);display:flex;align-items:center;gap:var(--spacing-xs)}.referral-section-stat-value:before{font-size:18px}.referral-section-stat-item:nth-child(1) .referral-section-stat-value:before{content:"👥"}.referral-section-stat-item:nth-child(2) .referral-section-stat-value:before{content:"🌀"}.referral-section-stat-label{font-size:var(--font-size-caption);color:var(--text-secondary)}.referral-section-buttons{display:flex;flex-direction:row;gap:var(--spacing-md)}.referral-section-button{flex:1;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:var(--radius-md);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:center}.referral-section-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.referral-section-list-title{font-size:var(--font-size-h3);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);color:var(--text-color);margin:0}.referral-section-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--nested-container-bg);border-radius:var(--radius-md);border:1px solid var(--container-border);transition:all .2s ease}.referral-section-item:hover{border-color:var(--button-color);box-shadow:var(--shadow-sm)}.referral-section-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.referral-section-item-name{color:var(--text-color);font-size:var(--font-size-body);line-height:var(--line-height-loose);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.referral-section-item-name:before{content:"👤";font-size:16px}.referral-section-item-username{color:var(--text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);padding-left:20px}.referral-section-item-parent{color:var(--button-color);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);padding-left:20px;font-style:italic}.referral-section-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs)}.referral-section-item-level{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--button-color);display:flex;align-items:center;gap:2px}.referral-section-item-level:before{content:"🌀";font-size:14px}.referral-section-item-date{color:var(--text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);white-space:nowrap}.referral-section-show-all{width:100%;padding:var(--spacing-md) var(--spacing-lg);background-color:transparent;color:var(--button-color);border:1px solid var(--button-color);border-radius:var(--radius-md);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.referral-section-show-all:hover{background-color:var(--button-color);color:var(--button-text-color)}.referral-section-empty{padding:var(--spacing-3xl);text-align:center;background:var(--nested-container-bg);border:1px dashed var(--container-border);border-radius:var(--radius-lg)}.referral-section-empty-icon{font-size:48px;margin-bottom:var(--spacing-lg)}.referral-section-empty-title{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--text-color);margin-bottom:var(--spacing-sm)}.referral-section-empty-text{font-size:var(--font-size-body);color:var(--text-secondary);line-height:var(--line-height-loose)}.profile-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.profile-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.page-header{position:relative;display:flex;align-items:center;height:40px}.back-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background-color:var(--container-bg);color:var(--text-color);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-number-md);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);border:1px solid var(--container-border);transition:opacity .2s;z-index:1;cursor:pointer}.back-button:active{opacity:.7}.page-title{position:absolute;left:50%;transform:translate(-50%);font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);margin:0;padding:0;color:var(--text-color);height:40px;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 100px)}.create-button{position:absolute;right:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background-color:var(--container-bg);color:var(--text-color);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-number-md);line-height:var(--line-height-snug);font-weight:var(--font-weight-medium);border:1px solid var(--container-border);transition:opacity .2s;cursor:pointer}.create-button:active{opacity:.7}.empty-state{text-align:center;padding:var(--spacing-4xl) var(--page-padding);color:var(--text-secondary)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-size:var(--font-size-label);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);color:var(--text-color)}.form-group input,.form-group textarea,.form-group select{padding:var(--spacing-md);border:1px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);color:var(--text-color);font-size:var(--font-size-input);line-height:var(--line-height-relaxed);font-family:inherit;box-sizing:border-box}.form-group select option{background-color:var(--input-background);color:var(--text-color)}.form-group textarea{resize:vertical;min-height:100px}.file-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.form-group input[type=file]{padding:var(--spacing-sm);background-color:var(--input-background);color:transparent;border:1px solid var(--container-border);border-radius:var(--radius-md);font-size:var(--font-size-body);line-height:var(--line-height-loose);font-family:inherit;cursor:pointer;width:100%;box-sizing:border-box;position:relative;z-index:1}.form-group input[type=file]:before{content:"";display:none}.form-group input[type=file]::file-selector-button{padding:6px var(--spacing-md);background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;margin-right:var(--spacing-md)}.form-group input[type=file]::file-selector-button:hover{opacity:.9}.form-group input[type=file]::-webkit-file-upload-button{padding:6px var(--spacing-md);background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;margin-right:var(--spacing-md)}.file-input-placeholder{position:absolute;left:0;top:50%;transform:translateY(-50%);padding-left:135px;color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-loose);pointer-events:none;z-index:0;white-space:nowrap}.photo-preview{margin-top:var(--spacing-md);border-radius:var(--radius-md);overflow:hidden;max-width:100%}.photo-preview img{width:100%;height:auto;display:block;max-height:300px;object-fit:contain}.form-actions{display:flex;gap:var(--spacing-lg)}.cancel-button,.submit-button{flex:1;padding:var(--spacing-md) var(--spacing-2xl);border:none;border-radius:var(--radius-md);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .2s}.cancel-button{background-color:var(--container-bg);color:var(--text-color);border:1px solid var(--container-border)}.cancel-button:active{opacity:.7}.submit-button{background-color:var(--button-color);color:var(--button-text-color)}.submit-button:active{opacity:.8}.detail-section{padding:var(--spacing-lg);background-color:var(--container-bg);border-radius:var(--radius-lg);border:1px solid var(--container-border)}.detail-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-h1);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.detail-row{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.detail-row:last-child{margin-bottom:0}.detail-label{font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);color:var(--text-secondary)}.detail-value{font-size:var(--font-size-body);line-height:var(--line-height-loose);color:var(--text-color);word-break:break-word}.detail-link{color:var(--button-color);text-decoration:none}.detail-link:active{opacity:.7}.referrals-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.referrals-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.referrals-stats-container{display:flex;justify-content:space-around;padding:var(--spacing-lg);background:var(--nested-container-bg);border:1px solid var(--container-border);border-radius:var(--radius-md)}.referrals-stat-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.referrals-stat-value{font-size:var(--font-size-number-md);font-weight:var(--font-weight-bold);color:var(--text-color);display:flex;align-items:center;gap:var(--spacing-xs)}.referrals-stat-value:before{font-size:18px}.referrals-stat-item:nth-child(1) .referrals-stat-value:before{content:"🌟"}.referrals-stat-item:nth-child(2) .referrals-stat-value:before{content:"⭐"}.referrals-stat-label{font-size:var(--font-size-caption);color:var(--text-secondary)}.empty-state{padding:var(--spacing-3xl);text-align:center;background:var(--container-bg);border:1px dashed var(--container-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.empty-state-icon{font-size:48px}.empty-state-title{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--text-color);margin:0}.empty-state-text{font-size:var(--font-size-body);color:var(--text-secondary);line-height:var(--line-height-loose)}.referral-level-section{margin-bottom:var(--spacing-lg)}.referral-level-title{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--text-color);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--nested-container-bg);border-radius:var(--radius-sm);border-left:3px solid var(--button-color)}.referral-group{margin-bottom:var(--spacing-lg)}.referral-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--nested-container-bg);border-radius:var(--radius-md);border:1px solid var(--container-border);transition:all .2s ease}.referral-item:hover{border-color:var(--button-color);box-shadow:var(--shadow-sm)}.referral-item-level-1{background:var(--nested-container-bg)}.referral-item-level-2{margin-left:var(--spacing-lg);opacity:.9}.referral-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.referral-item-name{color:var(--text-color);font-size:var(--font-size-body);line-height:var(--line-height-loose);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.referral-item-name:before{content:"👤";font-size:16px}.referral-item-username{color:var(--text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);padding-left:20px}.referral-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs)}.referral-item-level{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--button-color);display:flex;align-items:center;gap:2px}.referral-item-level:before{content:"🌀";font-size:14px}.referral-item-date{color:var(--text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);white-space:nowrap}.referral-children{margin-top:var(--spacing-sm);padding-left:var(--spacing-lg);border-left:2px dashed var(--container-border);margin-left:var(--spacing-md)}.referral-children-header{margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md)}.referral-children-count{font-size:var(--font-size-caption);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.products-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.products-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.products-filters{display:flex;gap:var(--spacing-sm);overflow-x:auto;overflow-y:hidden;padding-bottom:var(--spacing-md);scrollbar-width:thin;scrollbar-color:var(--text-secondary) transparent}.products-filters::-webkit-scrollbar{height:4px}.products-filters::-webkit-scrollbar-track{background:transparent}.products-filters::-webkit-scrollbar-thumb{background-color:var(--text-secondary);border-radius:2px}.filter-button{padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--container-bg);color:var(--text-color);border:none;border-radius:var(--radius-2xl);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;transition:all .2s;flex-shrink:0}.filter-button.active{background-color:var(--button-color);color:var(--button-text-color)}.filter-button:active{opacity:.8}.products-empty{text-align:center;padding:40px var(--spacing-lg);color:var(--text-secondary)}.products-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.product-card{background-color:var(--container-bg);border-radius:var(--radius-xl);padding:var(--spacing-lg);color:var(--text-color);border:1px solid var(--container-border);box-shadow:var(--shadow-md);transition:transform .2s,box-shadow .2s;text-decoration:none;display:flex;flex-direction:column;gap:var(--spacing-lg);cursor:pointer}.product-card:hover{box-shadow:var(--shadow-lg)}.product-card:active{transform:translateY(1px);box-shadow:var(--shadow-md)}.product-photo{width:100%;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-lg)}.product-badge-paid{position:absolute!important;top:var(--spacing-sm)!important;right:var(--spacing-sm)!important;background-color:#4caf5026!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#4caf50!important;padding:var(--spacing-xs) 10px!important;border-radius:var(--radius-sm)!important;font-size:var(--font-size-caption-sm)!important;line-height:var(--line-height-normal)!important;font-weight:var(--font-weight-semibold)!important;letter-spacing:var(--letter-spacing-wide)!important;text-transform:uppercase!important;box-shadow:var(--shadow-sm)!important;z-index:10!important}.product-title{font-size:var(--font-size-h1);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);margin:0;color:var(--text-color)}.product-description{font-size:var(--font-size-body-lg);line-height:var(--line-height-loose);color:var(--text-color);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.product-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:1px solid var(--container-border)}.product-card-price{font-size:var(--font-size-number-md);font-weight:var(--font-weight-semibold);color:var(--text-color);line-height:var(--line-height-snug)}.product-card-chevron{width:20px;height:20px;color:var(--text-secondary);font-size:20px;line-height:1}.product-page{box-sizing:border-box;width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.product-detail{background-color:var(--container-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--container-border);box-shadow:var(--container-shadow);display:flex;flex-direction:column;gap:var(--spacing-lg)}.product-detail-name{font-size:var(--font-size-h1);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-snug);margin:0;color:var(--text-color)}.product-photo-wrapper{position:relative}.product-photo{width:100%;border-radius:var(--radius-md);overflow:hidden}.product-photo img{width:100%;height:auto;aspect-ratio:3 / 2;display:block;max-height:400px;object-fit:cover;object-position:center}.product-detail .product-badge-paid{position:absolute!important;top:var(--spacing-sm)!important;right:var(--spacing-sm)!important;background-color:#4caf50d9!important;color:#fff!important;padding:var(--spacing-xs) 10px!important;border-radius:var(--radius-sm)!important;font-size:var(--font-size-caption-sm)!important;line-height:var(--line-height-normal)!important;font-weight:var(--font-weight-semibold)!important;letter-spacing:var(--letter-spacing-wide)!important;text-transform:uppercase!important;box-shadow:var(--shadow-md)!important;z-index:10!important}.product-detail-description{margin:0}.product-detail-divider,.purchase-section-divider{height:1px;background:var(--container-border);margin:0;border:none}.product-detail-description p{color:var(--text-color);font-size:var(--font-size-body-lg);line-height:var(--line-height-loose);margin:0}.product-access{padding:var(--spacing-lg);background:linear-gradient(135deg,#4caf5014,#4caf5005);border:1px solid rgba(76,175,80,.2);border-radius:var(--radius-lg);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-lg)}.access-message{font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);color:var(--text-color);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.access-channel-button{width:100%;min-height:56px;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--success-color) 0%,var(--success-color-light) 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-success);transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.access-channel-button:after{content:"→";font-size:20px;transition:transform .2s ease}.access-channel-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4caf5059,0 3px 8px #4caf5033}.access-channel-button:hover:after{transform:translate(4px)}.access-channel-button:active{transform:translateY(0);box-shadow:var(--shadow-success)}.access-channel-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.cancel-subscription-button{width:100%;min-height:56px;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--destructive-color) 0%,#f29d8e 100%);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-destructive);transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.cancel-subscription-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #e88b7a59,0 3px 8px #e88b7a33}.cancel-subscription-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-destructive)}.cancel-subscription-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.subscription-dates{color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-relaxed)}.subscription-dates p{margin:0}.product-purchase{display:flex;flex-direction:column;gap:var(--spacing-lg)}.purchase-price{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--nested-container-bg);border:1px solid var(--container-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.price-label{font-size:var(--font-size-body);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.price-value{font-size:var(--font-size-number-md);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.purchase-bonus{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--nested-container-bg);border:1px solid var(--container-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.bonus-label{font-size:var(--font-size-body);color:var(--text-color);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium)}.bonus-input{padding:var(--spacing-md);border:2px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);font-size:var(--font-size-input);line-height:var(--line-height-relaxed);color:var(--text-color);transition:border-color .2s ease,box-shadow .2s ease;min-height:48px;box-sizing:border-box}.bonus-input:focus{border-color:var(--button-color);box-shadow:var(--shadow-sm);outline:none}.bonus-info{font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);color:var(--text-secondary);display:flex;align-items:center;gap:var(--spacing-xs);margin:0}.bonus-info:before{content:"ℹ️";font-size:14px}.purchase-final{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--button-color);color:var(--button-text-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-primary);border:none}.final-label{font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold)}.final-value{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight)}.purchase-provider{display:flex;flex-direction:column;gap:var(--spacing-lg)}.provider-label{font-size:var(--font-size-body);color:var(--text-color);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium)}.provider-buttons{display:flex;gap:var(--spacing-md)}.provider-button{flex:1;padding:var(--spacing-md);background:var(--nested-container-bg);color:var(--text-color);border:2px solid var(--container-border);border-radius:var(--radius-md);font-size:var(--font-size-button);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);min-height:48px;transition:all .2s ease;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);box-sizing:border-box}.provider-button:hover{border-color:var(--button-color);background:var(--button-color);color:var(--button-text-color);box-shadow:var(--shadow-md)}.provider-button.active{background:var(--button-color);border-color:var(--button-color);color:var(--button-text-color);box-shadow:var(--shadow-md)}.provider-button:active{opacity:.8}.purchase-button{width:100%;padding:var(--spacing-lg);min-height:56px;background:var(--button-color);color:var(--button-text-color);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);box-sizing:border-box}.purchase-button:hover:not(:disabled){box-shadow:var(--shadow-primary);transform:translateY(-2px)}.purchase-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-md)}.purchase-button:disabled{opacity:.6;cursor:not-allowed}.purchase-button:after{content:"→";font-size:20px;transition:transform .2s ease}.purchase-button:hover:not(:disabled):after{transform:translate(4px)}.payment-success-page{max-width:600px;margin:0 auto;padding:var(--spacing-lg);min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding-top:60px}.success-card{width:100%;background-color:var(--container-bg);border-radius:var(--radius-xl);padding:var(--spacing-lg);border:1px solid var(--container-border);box-shadow:var(--container-shadow);text-align:left;display:flex;flex-direction:column;gap:var(--spacing-lg)}.success-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color);margin:0}.info-text{font-size:var(--font-size-body-lg);line-height:var(--line-height-loose);color:var(--text-color);margin:0}.access-button{width:100%;padding:var(--spacing-lg) var(--spacing-2xl);background-color:#4caf50;color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-semibold);cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;box-shadow:var(--shadow-success)}.access-button:active{opacity:.8;transform:scale(.98)}.access-button:disabled{opacity:.6;cursor:not-allowed}.back-button-link{width:100%;background:none;border:none;color:var(--button-color);font-size:var(--font-size-button-lg);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-medium);cursor:pointer;padding:var(--spacing-md);transition:opacity .2s;text-align:center}.back-button-link:active{opacity:.6}.admin-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-title{font-size:var(--font-size-display);line-height:var(--line-height-snug);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-snug);color:var(--text-color)}.admin-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-section-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--container-bg);border-radius:var(--radius-lg);border:1px solid var(--container-border);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--text-color);transition:transform .2s,opacity .2s,box-shadow .2s}.admin-section-card:hover{box-shadow:var(--shadow-lg)}.admin-section-card:active{transform:scale(.98);opacity:.9;box-shadow:var(--shadow-md)}.section-icon{font-size:32px}.section-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-section-card .section-title{font-size:var(--font-size-h2);line-height:1;font-weight:var(--font-weight-semibold);margin:0;padding:0}.admin-section-card .section-description{font-size:var(--font-size-body);line-height:1.2;color:var(--text-secondary);opacity:.9;margin:0;padding:0}.admin-users-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.users-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.user-card{padding:var(--spacing-lg);background-color:var(--container-bg);border-radius:var(--radius-lg);border:1px solid var(--container-border);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:var(--spacing-lg)}.user-info{display:flex;flex-direction:column;gap:var(--spacing-sm)}.user-name{font-size:var(--font-size-h2);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-color)}.user-details{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-body);line-height:var(--line-height-loose);color:var(--text-secondary)}.user-username-link{color:var(--button-color);cursor:pointer;transition:opacity .2s;-webkit-user-select:none;user-select:none}.user-username-link:hover{opacity:.8}.user-username-link:active{opacity:.6}.admin-badge{padding:var(--spacing-xs) var(--spacing-sm);background:#ff6b6b;color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-caption);line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide)}.user-meta{display:flex;justify-content:flex-start;font-size:var(--font-size-body);line-height:var(--line-height-loose);color:var(--text-secondary);padding-top:var(--spacing-lg);border-top:1px solid var(--container-border)}.card-container{background-color:var(--container-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .2s;border:1px solid var(--container-border)}.card-container:hover{box-shadow:var(--shadow-md)}.card-section,.card-section-sm{padding:var(--spacing-lg)}.border-b{border-bottom:1px solid var(--container-border)}.border-t{border-top:1px solid var(--container-border)}.border-tb{border-top:1px solid var(--container-border);border-bottom:1px solid var(--container-border)}.bg-nested{background-color:var(--nested-container-bg)}.flex-row{display:flex;align-items:center}.flex-row-start{display:flex;align-items:flex-start}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-between-start{display:flex;justify-content:space-between;align-items:flex-start}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.space-y-3>*+*{margin-top:12px}.card-title{font-size:var(--font-size-h2);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);color:var(--text-color);margin:0}.card-subtitle{font-size:13px;color:var(--text-secondary);line-height:var(--line-height-normal);margin:0}.card-text{font-size:var(--font-size-body);line-height:var(--line-height-relaxed);color:var(--text-color);margin:0}.card-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:var(--font-weight-medium);display:block;margin:0}.card-value{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--text-color);display:block;margin:0}.card-value-lg{font-size:var(--font-size-display);font-weight:var(--font-weight-bold);color:var(--button-color);display:block;margin:0}.badge{padding:4px 12px;border-radius:var(--radius-full);font-size:11px;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);white-space:nowrap;flex-shrink:0;display:inline-block}.badge-semibold{font-weight:var(--font-weight-semibold)}.badge-pill{display:inline-block;padding:4px 12px;border-radius:var(--radius-sm);font-size:13px;color:var(--text-secondary);background-color:var(--nested-container-bg)}.card-buttons{display:flex;align-items:center;gap:var(--spacing-sm)}.card-button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);border:none;cursor:pointer;transition:opacity .2s}.card-button:active{opacity:.7}.card-button-primary{background-color:var(--button-color);color:var(--button-text-color);font-weight:var(--font-weight-bold)}.card-button-secondary{background-color:var(--nested-container-bg);color:var(--text-color);border:1px solid var(--container-border)}.card-button-destructive{background-color:var(--destructive-color);color:#fff}.card-image{border-radius:var(--radius-md);overflow:hidden;max-height:300px}.card-image img{width:100%;height:100%;aspect-ratio:3 / 2;object-fit:cover;object-position:center;display:block}.page-container{min-height:100vh;background-color:var(--bg-color)}.page-content{max-width:672px;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-lg)}@media (min-width: 640px){.page-content{padding:var(--spacing-2xl) var(--spacing-2xl)}}.form-section{box-sizing:border-box;width:100%;max-width:100%;background-color:var(--container-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--container-border)}.section-header{padding:var(--spacing-lg);border-bottom:1px solid var(--container-border)}.section-header-title{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);color:var(--text-color);margin:0}.section-header-label{font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--text-secondary);margin:0}.section-content{padding:var(--spacing-lg);overflow-x:hidden}.section-content-nested{padding:var(--spacing-lg);background-color:var(--nested-container-bg);overflow-x:hidden}.form-field{box-sizing:border-box;width:100%;max-width:100%}.form-label{display:block;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--text-color);margin-bottom:var(--spacing-sm)}.form-label-required{color:var(--destructive-color);margin-left:2px}.form-input{width:100%;padding:10px var(--spacing-lg);border:1px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);color:var(--text-color);font-size:var(--font-size-input);font-family:inherit;box-sizing:border-box;min-height:calc(var(--spacing-6) + var(--spacing-5));transition:all .2s}.form-input:focus{outline:none;border-color:var(--button-color);box-shadow:0 0 0 2px #5555ff1a}.form-input::placeholder{color:var(--text-secondary)}input[type=datetime-local].form-input,input[type=date].form-input,input[type=time].form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;width:100%!important;min-width:0!important;max-width:100%!important;padding:10px var(--spacing-lg)!important;font-size:var(--font-size-input)!important;vertical-align:middle}input[type=datetime-local].form-input::-webkit-datetime-edit,input[type=date].form-input::-webkit-date-and-time-value,input[type=date].form-input::-webkit-datetime-edit,input[type=time].form-input::-webkit-datetime-edit{display:inline-block;padding:0!important;margin:0!important;line-height:inherit}input[type=datetime-local].form-input::-webkit-calendar-picker-indicator,input[type=date].form-input::-webkit-calendar-picker-indicator,input[type=time].form-input::-webkit-calendar-picker-indicator{margin:0!important;padding:0!important}.form-textarea{width:100%;padding:10px var(--spacing-lg);border:1px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);color:var(--text-color);font-size:var(--font-size-input);font-family:inherit;box-sizing:border-box;resize:none;transition:all .2s;min-height:100px}.form-textarea:focus{outline:none;border-color:var(--button-color);box-shadow:0 0 0 2px #5555ff1a}.form-select{width:100%;padding:10px var(--spacing-lg);padding-right:40px;border:1px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);color:var(--text-color);font-size:var(--font-size-input);font-family:inherit;box-sizing:border-box;min-height:calc(var(--spacing-6) + var(--spacing-5));cursor:pointer;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238B8681' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}.form-select:focus{outline:none;border-color:var(--button-color);box-shadow:0 0 0 2px #5555ff1a}[data-theme=dark] .form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23ABA9A7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E")}.input-with-symbol{position:relative}.input-symbol-right{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:var(--font-size-body);color:var(--text-secondary);pointer-events:none}.input-symbol-left{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:var(--font-size-input);color:var(--text-secondary);pointer-events:none}.input-with-symbol .form-input{padding-right:48px}.input-with-symbol.symbol-left .form-input{padding-left:36px}.form-file-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--container-border);border-radius:var(--radius-md);background-color:var(--input-background);font-size:var(--font-size-body);font-family:inherit;cursor:pointer;box-sizing:border-box}.form-file-input::file-selector-button{padding:6px var(--spacing-lg);margin-right:var(--spacing-lg);background-color:var(--nested-container-bg);color:var(--text-color);border:none;border-radius:var(--radius-md);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);cursor:pointer}.form-file-input::-webkit-file-upload-button{padding:6px var(--spacing-lg);margin-right:var(--spacing-lg);background-color:var(--nested-container-bg);color:var(--text-color);border:none;border-radius:var(--radius-md);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);cursor:pointer}.form-file-input::file-selector-button:hover,.form-file-input::-webkit-file-upload-button:hover{background-color:var(--accent)}.file-preview{margin-top:var(--spacing-md);border-radius:var(--radius-md);overflow:hidden;max-height:200px}.file-preview img{width:100%;height:auto;aspect-ratio:3 / 2;display:block;max-height:400px;object-fit:cover;object-position:center}.detail-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:var(--font-weight-medium);display:block;margin-bottom:4px}.detail-value{font-size:var(--font-size-body);line-height:var(--line-height-relaxed);color:var(--text-color);word-break:break-word}.detail-value-large{font-size:var(--font-size-display);font-weight:var(--font-weight-bold);color:var(--button-color)}.detail-link{color:var(--button-color);text-decoration:none;font-size:var(--font-size-body);line-height:var(--line-height-relaxed)}.detail-link:hover{text-decoration:underline}.detail-image{position:relative;border-radius:var(--radius-md);overflow:hidden;max-height:400px}.detail-image img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;object-position:center;display:block}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.space-y-4>*+*{margin-top:var(--spacing-lg)}.checkbox-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-input{width:16px;height:16px;border-radius:var(--radius-sm);border:1px solid var(--container-border);cursor:pointer}.checkbox-label{font-size:var(--font-size-body);color:var(--text-secondary);cursor:pointer}.toggle-buttons{display:flex;gap:var(--spacing-sm)}.toggle-button{flex:1;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;border:1px solid var(--container-border)}.toggle-button-active{background-color:var(--button-color);color:var(--button-text-color);border-color:var(--button-color)}.toggle-button-inactive{background-color:var(--container-bg);color:var(--text-color)}.toggle-button:hover{background-color:var(--accent)}.toggle-button-active:hover{background-color:var(--button-color);opacity:.9}.form-hint{margin-top:var(--spacing-sm);margin-bottom:0;font-size:var(--font-size-caption);color:var(--text-secondary);line-height:var(--line-height-relaxed)}input[type=number].form-input::-webkit-inner-spin-button,input[type=number].form-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number].form-input{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.admin-products-page{box-sizing:border-box;width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.products-list,.product-form,.product-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-mailings-page{box-sizing:border-box;width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.mailings-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-mailings-page .empty-state{font-size:var(--font-size-body-lg);line-height:var(--line-height-loose)}.mailing-form,.mailing-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-specialists-page{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-specialists-page .page-title{line-height:1}.specialists-list,.specialist-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}:root{--bg-color: #fdfcfb;--container-bg: #f5f3f0;--nested-container-bg: #faf8f6;--input-background: #ffffff;--accent: #f9f6f3;--switch-background: #ddd8d3;--container-border: rgba(139, 134, 129, .25);--text-color: oklch(.25 .01 60);--text-secondary: #8b8681;--button-color: oklch(.55 .12 250);--button-text-color: #ffffff;--button-color-transparent: rgba(85, 85, 255, .15);--button-color-solid: rgb(85, 85, 255);--destructive-color: #e88b7a;--success-color: #4CAF50;--success-color-light: #66BB6A;--success-color-dark: #388E3C;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgba(139, 134, 129, .08);--shadow-md: 0 2px 8px 0 rgba(139, 134, 129, .12), 0 1px 2px 0 rgba(139, 134, 129, .06);--shadow-lg: 0 4px 16px 0 rgba(139, 134, 129, .16), 0 2px 6px 0 rgba(139, 134, 129, .08);--shadow-xl: 0 8px 24px 0 rgba(139, 134, 129, .2), 0 4px 8px 0 rgba(139, 134, 129, .1);--shadow-2xl: 0 12px 32px 0 rgba(139, 134, 129, .24), 0 6px 12px 0 rgba(139, 134, 129, .12);--shadow-md-hover: 0 4px 12px 0 rgba(139, 134, 129, .16), 0 2px 4px 0 rgba(139, 134, 129, .08);--shadow-lg-active: 0 2px 8px 0 rgba(139, 134, 129, .12), 0 1px 3px 0 rgba(139, 134, 129, .06);--shadow-success: 0 4px 16px 0 rgba(76, 175, 80, .24), 0 2px 6px 0 rgba(76, 175, 80, .12);--shadow-primary: 0 4px 12px 0 rgba(85, 85, 255, .2), 0 2px 4px 0 rgba(85, 85, 255, .1);--shadow-destructive: 0 4px 12px 0 rgba(232, 139, 122, .2), 0 2px 4px 0 rgba(232, 139, 122, .1);--shadow-inset-sm: inset 0 1px 2px 0 rgba(139, 134, 129, .08);--shadow-nav-bottom: 0 -2px 8px 0 rgba(139, 134, 129, .12), 0 -1px 2px 0 rgba(139, 134, 129, .06);--shadow-sticky: 0 4px 12px 0 rgba(139, 134, 129, .16), 0 2px 4px 0 rgba(139, 134, 129, .08);--container-shadow: var(--shadow-md);--font-size-display: 24px;--font-size-h1: 20px;--font-size-h2: 18px;--font-size-h3: 16px;--font-size-body-lg: 16px;--font-size-body: 14px;--font-size-body-sm: 13px;--font-size-caption: 12px;--font-size-caption-sm: 11px;--font-size-number-lg: 28px;--font-size-number-md: 20px;--font-size-button-lg: 16px;--font-size-button: 14px;--font-size-input: 16px;--font-size-label: 14px;--line-height-tight: 1.2;--line-height-snug: 1.3;--line-height-normal: 1.4;--line-height-relaxed: 1.5;--line-height-loose: 1.6;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--letter-spacing-tight: -.02em;--letter-spacing-snug: -.01em;--letter-spacing-normal: 0;--letter-spacing-wide: .01em;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--spacing-12: 48px;--spacing-xs: var(--spacing-1);--spacing-sm: var(--spacing-2);--spacing-md: var(--spacing-3);--spacing-lg: var(--spacing-4);--spacing-xl: var(--spacing-5);--spacing-2xl: var(--spacing-6);--spacing-3xl: var(--spacing-8);--spacing-4xl: var(--spacing-12);--radius-none: 0;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--radius-circle: 50%;--page-padding: var(--spacing-lg);--card-padding: var(--spacing-lg);--card-gap: var(--spacing-md);--button-padding-y: var(--spacing-md);--button-padding-x: var(--spacing-6);--input-padding: var(--spacing-md);--form-field-gap: var(--spacing-lg);--section-gap: var(--spacing-6)}[data-theme=dark]{--bg-color: oklch(.18 .015 250);--container-bg: oklch(.3 .02 260);--nested-container-bg: oklch(.34 .022 260);--input-background: oklch(.25 .02 260);--accent: oklch(.32 .025 260);--container-border: oklch(.4 .02 260);--text-color: oklch(.95 .01 60);--text-secondary: oklch(.68 .015 250);--button-color: oklch(.92 .015 60);--button-text-color: oklch(.25 .015 250);--button-color-transparent: rgba(234, 232, 220, .15);--button-color-solid: rgb(234, 232, 220);--destructive-color: oklch(.55 .12 25);--success-color: #66BB6A;--success-color-light: #81C784;--success-color-dark: #4CAF50;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px 0 rgba(0, 0, 0, .4), 0 1px 2px 0 rgba(0, 0, 0, .2);--shadow-lg: 0 4px 16px 0 rgba(0, 0, 0, .5), 0 2px 6px 0 rgba(0, 0, 0, .3);--shadow-xl: 0 8px 24px 0 rgba(0, 0, 0, .6), 0 4px 8px 0 rgba(0, 0, 0, .4);--shadow-2xl: 0 12px 32px 0 rgba(0, 0, 0, .7), 0 6px 12px 0 rgba(0, 0, 0, .5);--shadow-md-hover: 0 4px 12px 0 rgba(0, 0, 0, .5), 0 2px 4px 0 rgba(0, 0, 0, .3);--shadow-lg-active: 0 2px 8px 0 rgba(0, 0, 0, .4), 0 1px 3px 0 rgba(0, 0, 0, .2);--shadow-success: 0 4px 16px 0 rgba(102, 187, 106, .32), 0 2px 6px 0 rgba(102, 187, 106, .16);--shadow-primary: 0 4px 12px 0 rgba(100, 149, 237, .28), 0 2px 4px 0 rgba(100, 149, 237, .14);--shadow-destructive: 0 4px 12px 0 rgba(232, 139, 122, .3), 0 2px 4px 0 rgba(232, 139, 122, .15);--shadow-inset-sm: inset 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-nav-bottom: 0 -2px 8px 0 rgba(0, 0, 0, .4), 0 -1px 2px 0 rgba(0, 0, 0, .2);--shadow-sticky: 0 4px 12px 0 rgba(0, 0, 0, .5), 0 2px 4px 0 rgba(0, 0, 0, .3);--container-shadow: var(--shadow-md)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}#root{min-height:100vh}
