.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);background-color:var(--background)}.auth-card{width:100%;max-width:400px;background-color:var(--card-background);border-radius:var(--radius-lg);padding:var(--space-2xl);box-shadow:var(--shadow-md)}.auth-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center;margin-bottom:var(--space-xs)}.auth-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);text-align:center;margin-bottom:var(--space-xl);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:var(--space-md)}.auth-input{width:100%;padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--input-background);outline:none;box-sizing:border-box;transition:border-color .2s ease}.auth-input:focus{border-color:var(--text-secondary)}.auth-button{width:100%;padding:var(--space-md);border:none;border-radius:var(--radius-md);background-color:#4a4a4a;color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .2s ease}[data-theme=dark] .auth-button{background-color:#e8e8e8;color:#1a1a1a}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button:hover:not(:disabled){opacity:.85}.auth-button-google{background-color:#fff;color:#4a4a4a;border:1px solid #E5E5E5}[data-theme=dark] .auth-button-google{background-color:#3a3a3a;color:#f0f0f0;border-color:#555}.auth-button-google:hover:not(:disabled){opacity:.85}.auth-divider{display:flex;align-items:center;gap:var(--space-md);margin:var(--space-sm) 0;color:var(--text-secondary);font-size:var(--font-size-sm)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background-color:#e5e5e5}.auth-error{font-size:var(--font-size-sm);color:#c0392b;text-align:center}.auth-link-text{text-align:center;font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-lg)}.auth-link{color:var(--text-primary);font-weight:var(--font-weight-medium);text-decoration:none}.auth-link:hover{text-decoration:underline}.onboarding-label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.color-palette{display:flex;gap:var(--space-sm);flex-wrap:wrap}.color-swatch{width:40px;height:40px;border-radius:50%;border:3px solid transparent;cursor:pointer;outline:none;transition:transform .15s ease,border-color .15s ease}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:var(--text-primary);transform:scale(1.15)}@supports (padding: max(0px)){.auth-container{padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom))}}.home-container{min-height:100vh;padding:var(--space-lg);background-color:var(--background)}.home-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center;margin-bottom:var(--space-2xl);margin-top:var(--space-xl)}.invite-button{display:block;margin:0 auto var(--space-lg);padding:var(--space-sm) var(--space-lg);border:1px dashed #C0C0C0;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease}.invite-button:hover{border-color:var(--text-secondary);color:var(--text-primary)}.home-cards{display:flex;flex-direction:column;gap:var(--space-md);max-width:600px;margin:0 auto}.home-card{position:relative;width:100%;padding:var(--space-2xl) var(--space-lg);border-radius:var(--radius-lg);border:none;background-color:var(--card-background);box-shadow:var(--shadow-md);cursor:pointer;transition:all .2s ease;text-align:left}.home-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.home-card:active{transform:translateY(0);box-shadow:var(--shadow-md)}.home-card-content{display:flex;align-items:center;justify-content:space-between;width:100%}.home-card-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);letter-spacing:-.01em}.home-card-streak{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0}.home-card-streak-flame{font-size:22px;line-height:1}.home-card-streak-count{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:1}.home-card-status{display:flex;align-items:center;gap:var(--space-sm)}.home-card-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.home-card-status-text{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);opacity:.9}@media (max-width: 480px){.home-container{padding:var(--space-md)}.home-title{font-size:var(--font-size-xl);margin-top:var(--space-lg)}.home-card{padding:var(--space-xl) var(--space-md)}.home-card-name{font-size:var(--font-size-lg)}.home-card-status-text{font-size:var(--font-size-sm)}}.circle-dashboard{max-width:600px;margin:var(--space-xl) auto 0;padding:var(--space-lg);background:var(--card-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.circle-dashboard-header{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-md)}.circle-dashboard-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-sm)}.circle-dashboard-row:last-child{margin-bottom:0}.circle-dashboard-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-width:70px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.circle-dashboard-dots{display:flex;gap:4px;align-items:center}.circle-dashboard-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}@media (max-width: 480px){.circle-dashboard{padding:var(--space-md)}.circle-dashboard-dot{width:9px;height:9px}}@supports (padding: max(0px)){.home-container{padding-top:max(var(--space-lg),env(safe-area-inset-top));padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom))}}.profile-container{min-height:100vh;padding:var(--space-lg);background-color:var(--background);padding-bottom:var(--space-2xl)}.profile-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.profile-header{text-align:center;margin-bottom:var(--space-lg);padding-top:var(--space-xl)}.profile-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-xs)}.profile-days-left{font-size:var(--font-size-base);color:var(--text-secondary);font-weight:var(--font-weight-normal)}.profile-header-row{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap}.profile-month-badge{display:inline-block;padding:5px 12px;border:1px solid;border-radius:20px;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.profile-manage-button{display:inline-block;padding:6px 16px;background:transparent;border:1px solid var(--border-color);border-radius:20px;font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer}.profile-manage-button:hover{color:var(--text-primary);border-color:var(--text-secondary)}.goal-pills-container{display:flex;gap:var(--space-sm);overflow-x:auto;padding-bottom:var(--space-sm);margin-bottom:var(--space-lg);-webkit-overflow-scrolling:touch;scrollbar-width:none}.goal-pills-container::-webkit-scrollbar{display:none}.goal-pill{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;border:1px solid var(--border-color);background-color:var(--card-background);color:var(--text-secondary);font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer;flex-shrink:0;transition:all .15s ease}.goal-pill.selected{color:#fff}.goal-pill-emoji{font-size:16px}.goal-pill-name{max-width:120px;overflow:hidden;text-overflow:ellipsis}.goal-cards{display:flex;flex-direction:column;gap:var(--space-lg);max-width:600px;margin:0 auto}.goal-card{background-color:var(--card-background);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-md);border-left:4px solid transparent;transition:border-color .2s ease}.goal-card.logged-today{border-left-color:#27ae60}.goal-card-main{display:flex;align-items:center;gap:var(--space-md)}.goal-card-emoji{font-size:36px;flex-shrink:0}.goal-card-info{flex:1;min-width:0}.goal-card-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.goal-done-check{color:#27ae60;font-weight:var(--font-weight-semibold)}.goal-stats{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-normal)}.goal-stats-month{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);margin-top:2px;opacity:.85}.goal-card-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.session-btn{width:40px;height:40px;border-radius:var(--radius-md);border:none;background-color:var(--background);color:var(--text-primary);font-size:22px;font-weight:var(--font-weight-semibold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease;line-height:1}.session-btn:disabled{opacity:.25;cursor:not-allowed}.session-btn:hover:not(:disabled){opacity:.7}.profile-empty{text-align:center;padding:var(--space-2xl);color:var(--text-secondary)}.profile-empty p:first-child{font-size:var(--font-size-lg);margin-bottom:var(--space-sm)}.profile-empty-hint{font-size:var(--font-size-sm);opacity:.7}@media (max-width: 480px){.profile-container{padding:var(--space-md)}.profile-header{padding-top:var(--space-lg)}.profile-name{font-size:var(--font-size-xl)}.goal-card{padding:var(--space-md)}.goal-card-emoji{font-size:30px}}@supports (padding: max(0px)){.profile-container{padding-top:max(var(--space-lg),env(safe-area-inset-top));padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom))}}.goal-management-container{min-height:100vh;padding:var(--space-lg);background-color:var(--background);padding-bottom:var(--space-2xl)}.goal-management-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.goal-management-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center;margin-bottom:var(--space-xl);margin-top:var(--space-xl)}.goal-management-search{display:flex;gap:var(--space-sm);margin-bottom:var(--space-xl);max-width:600px;margin-left:auto;margin-right:auto}.search-input-wrapper{flex:1;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--space-md);color:var(--text-light);pointer-events:none}.search-input{width:100%;padding:var(--space-md) var(--space-md) var(--space-md) 44px;border:1px solid var(--border-color, #E5E5E5);border-radius:var(--radius-md);font-size:var(--font-size-base);background-color:var(--card-background);color:var(--text-primary);font-family:inherit}.search-input::placeholder{color:var(--text-light)}.search-input:focus{outline:none;border-color:var(--text-secondary)}.settings-button{width:48px;height:48px;border-radius:var(--radius-md);border:1px solid var(--border-color, #E5E5E5);background-color:var(--card-background);color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.settings-button:hover{background-color:var(--input-background, #F5F5F5);color:var(--text-secondary)}.goal-lists{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-xl)}.user-section{background-color:var(--card-background);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.user-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.user-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);flex-shrink:0}.user-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary)}.goal-rows{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-md)}.goal-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-radius:var(--radius-md);background-color:var(--input-background, #FAFAFA);transition:background-color .2s ease}.goal-row:hover{background-color:var(--border-color, #F5F5F5)}.goal-row-content{display:flex;align-items:center;gap:var(--space-md);flex:1;min-width:0}.goal-emoji{font-size:40px;flex-shrink:0;line-height:1}.goal-info{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;flex:1}.goal-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary)}.goal-stats-text{font-size:var(--font-size-sm);color:var(--text-secondary)}.goal-edit-button{width:32px;height:32px;border-radius:50%;border:none;background-color:transparent;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.goal-edit-button:hover{background-color:var(--background);color:var(--text-secondary)}.add-goal-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);border:none;background-color:transparent;color:var(--text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;border-radius:var(--radius-md);transition:background-color .2s ease;width:100%;justify-content:flex-start}.add-goal-button:hover{background-color:var(--input-background, #FAFAFA)}.add-goal-button svg{flex-shrink:0}.manage-archived-button{display:block;margin:var(--space-xl) auto 0;padding:var(--space-md) var(--space-xl);border:1px solid var(--border-color, #E5E5E5);background-color:var(--card-background);color:var(--text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);cursor:pointer;border-radius:var(--radius-md);transition:all .2s ease;max-width:600px;width:100%}.manage-archived-button:hover{background-color:var(--input-background, #FAFAFA);border-color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);z-index:1000}.modal-content{background-color:var(--card-background);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-lg)}.modal-field{margin-bottom:var(--space-lg)}.modal-field label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);margin-bottom:var(--space-sm)}.modal-field input{width:100%;padding:var(--space-md);border:1px solid var(--border-color, #E5E5E5);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--text-primary);background-color:var(--input-background, #FFFFFF)}.modal-field input:focus{outline:none;border-color:var(--text-secondary)}.modal-hint{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:var(--space-xs)}.modal-actions{display:flex;gap:var(--space-md);margin-top:var(--space-xl)}.modal-button-primary,.modal-button-secondary,.modal-button-warning,.modal-button-danger{flex:1;padding:var(--space-md) var(--space-lg);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease}.modal-button-primary{background-color:var(--text-primary);color:var(--card-background)}.modal-button-primary:hover{opacity:.9}.modal-button-secondary{background-color:var(--input-background, #F5F5F5);color:var(--text-primary)}.modal-button-secondary:hover{background-color:var(--border-color, #EBEBEB)}.modal-danger-zone{margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--border-color, #E5E5E5);display:flex;flex-direction:column;gap:var(--space-sm)}.modal-button-warning{background-color:#fff3e0;color:#e65100}.modal-button-warning:hover{background-color:#ffe0b2}.modal-button-danger{background-color:#ffebee;color:#c62828}.modal-button-danger:hover{background-color:#ffcdd2}@media (max-width: 480px){.goal-management-container{padding:var(--space-md)}.goal-management-title{font-size:var(--font-size-xl)}.goal-emoji{font-size:20px}.modal-actions{flex-direction:column}}@supports (padding: max(0px)){.goal-management-container{padding-top:max(var(--space-lg),env(safe-area-inset-top));padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom))}}.overview-container{min-height:100vh;padding:var(--space-lg);background-color:var(--background);padding-bottom:var(--space-2xl)}.overview-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.overview-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center;margin-bottom:var(--space-2xl);margin-top:var(--space-xl);max-width:800px;margin-left:auto;margin-right:auto}.overview-sections{max-width:600px;margin:0 auto;background-color:var(--card-background);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md)}.overview-section{margin-bottom:var(--space-2xl)}.overview-section:last-child{margin-bottom:0}.overview-user-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.overview-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);flex-shrink:0}.overview-user-name{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--text-primary)}.overview-goal-list{display:flex;flex-direction:column;gap:var(--space-md);padding-left:62px}.overview-goal-item{display:flex;align-items:center;gap:var(--space-sm)}.overview-goal-emoji{font-size:24px;flex-shrink:0}.overview-goal-text{font-size:var(--font-size-base);color:var(--text-secondary);font-weight:var(--font-weight-normal);line-height:1.5}.overview-empty{text-align:center;padding:var(--space-2xl);color:var(--text-secondary);background-color:var(--card-background);border-radius:var(--radius-lg);max-width:600px;margin:0 auto;box-shadow:var(--shadow-md)}.overview-empty p:first-child{font-size:var(--font-size-lg);margin-bottom:var(--space-sm)}.overview-empty-hint{font-size:var(--font-size-sm);opacity:.7}@media (max-width: 480px){.overview-container{padding:var(--space-md)}.overview-title{font-size:var(--font-size-xl);margin-top:var(--space-lg)}.overview-sections{padding:var(--space-lg)}.overview-avatar{width:40px;height:40px;font-size:var(--font-size-lg)}.overview-user-name{font-size:var(--font-size-lg)}.overview-goal-list{padding-left:54px}.overview-goal-text{font-size:var(--font-size-sm)}}@supports (padding: max(0px)){.overview-container{padding-top:max(var(--space-lg),env(safe-area-inset-top));padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom))}}.nudge-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--card-background);z-index:1100}.nudge-sheet{position:absolute;top:0;left:0;right:0;bottom:0;max-width:600px;margin:0 auto;background-color:var(--card-background);padding:var(--space-lg);padding-top:max(var(--space-xl),env(safe-area-inset-top));padding-bottom:max(48px,env(safe-area-inset-bottom,16px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@keyframes nudge-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.nudge-close{position:absolute;top:var(--space-sm);left:50%;transform:translate(-50%);background:none;border:none;padding:var(--space-sm);cursor:pointer;z-index:1}.nudge-close-handle{width:40px;height:4px;background-color:var(--text-light);border-radius:2px}.nudge-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.nudge-header-left{display:flex;align-items:center;gap:var(--space-sm)}.nudge-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);flex-shrink:0}.nudge-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--text-primary)}.nudge-send-button-inline{padding:var(--space-sm) var(--space-lg);border:none;border-radius:var(--radius-full);background-color:var(--text-primary);color:var(--card-background);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer}.nudge-send-button-inline:disabled{opacity:.4;cursor:not-allowed}.nudge-habits-loading{font-size:var(--font-size-xs);color:var(--text-secondary);text-align:center;padding:var(--space-sm) 0 var(--space-md)}.nudge-habits{margin-bottom:var(--space-md)}.nudge-habits-label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium);margin-bottom:var(--space-sm)}.nudge-habit-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--input-background);border-radius:var(--radius-md);margin-bottom:var(--space-xs)}.nudge-habit-name{font-size:var(--font-size-sm);color:var(--text-primary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nudge-habit-done{color:#4caf50;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);flex-shrink:0;margin-left:var(--space-sm)}.nudge-habit-btn{flex-shrink:0;margin-left:var(--space-sm);padding:4px 12px;border:1px solid var(--border-color);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:var(--font-size-xs);font-family:inherit;cursor:pointer;transition:all .15s ease}.nudge-habit-btn:hover:not(:disabled){background:var(--text-primary);color:var(--card-background);border-color:var(--text-primary)}.nudge-habit-btn:disabled{opacity:.4;cursor:not-allowed}.nudge-presets{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.nudge-preset-button{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color, #E5E5E5);border-radius:var(--radius-md);background-color:var(--input-background, #FAFAFA);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;transition:all .2s ease;text-align:left;font-family:inherit}.nudge-preset-button:hover{background-color:var(--border-color, #F5F5F5)}.nudge-preset-button:active,.nudge-preset-button.active{background-color:var(--text-primary);color:var(--card-background);border-color:var(--text-primary)}.nudge-preset-button:disabled{opacity:.5;cursor:not-allowed}.nudge-custom{margin-bottom:var(--space-sm)}.nudge-custom-label{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:var(--space-xs)}.nudge-custom-input{width:100%;padding:var(--space-sm);border:1px solid var(--border-color, #E5E5E5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;color:var(--text-primary);background-color:var(--input-background, #FFFFFF);resize:none;min-height:50px}.nudge-custom-input:focus{outline:none;border-color:var(--text-secondary)}.nudge-custom-input:disabled{opacity:.5;cursor:not-allowed}.nudge-custom-input::placeholder{color:var(--text-light)}.nudge-notification-toggle{margin-bottom:var(--space-sm)}.notification-checkbox{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--text-secondary)}.notification-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--text-primary);cursor:pointer}.checkbox-label{-webkit-user-select:none;user-select:none}.enable-notifications-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px dashed var(--text-light);border-radius:var(--radius-md);background:none;color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease;width:100%;justify-content:center}.enable-notifications-button:hover{border-color:var(--text-secondary);color:var(--text-primary)}.enable-notifications-button svg{flex-shrink:0}.nudge-feedback{padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-md);text-align:center}.nudge-feedback-success{background-color:#e8f5e9;color:#2e7d32}.nudge-feedback-cooldown{background-color:#fff3e0;color:#e65100}.nudge-feedback-error{background-color:#ffebee;color:#c62828}.nudge-send-button{width:100%;padding:var(--space-md) var(--space-lg);border:none;border-radius:var(--radius-md);background-color:var(--text-primary);color:var(--card-background);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;font-family:inherit}.nudge-send-button:hover:not(:disabled){opacity:.9}.nudge-send-button:active:not(:disabled){transform:scale(.98)}.nudge-send-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.nudge-sheet{padding:var(--space-lg)}.nudge-avatar{width:40px;height:40px;font-size:var(--font-size-lg)}.nudge-name{font-size:var(--font-size-lg)}.nudge-preset-button{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm)}.nudge-custom-input{min-height:60px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background-color:var(--card-background);border-top:1px solid var(--border-color, #E5E5E0);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom));z-index:1000}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 16px;background:none;border:none;cursor:pointer;transition:all .2s ease;min-width:64px}.bottom-nav-item:active{transform:scale(.95)}.bottom-nav-label{font-size:12px;font-weight:500;color:#9ca3af}.bottom-nav-item.active .bottom-nav-label{color:#6b7280;font-weight:600}.tutorial-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9990;pointer-events:all}.tutorial-ring{position:fixed;border-radius:10px;box-shadow:0 0 0 3px var(--text-primary);z-index:9995;pointer-events:none;animation:tutorial-pulse 1.4s ease-in-out infinite}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 3px var(--text-primary);opacity:1}50%{box-shadow:0 0 0 7px var(--text-primary);opacity:.5}}.tutorial-card{position:fixed;width:280px;background:var(--card-background);border-radius:16px;padding:20px 20px 16px;box-shadow:0 8px 32px #0000002e,0 2px 8px #0000001a;z-index:9999}.tutorial-arrow{position:absolute;width:0;height:0}.tutorial-arrow-down{bottom:-10px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--card-background)}.tutorial-arrow-up{top:-10px;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid var(--card-background)}.tutorial-card-title{font-size:16px;font-weight:700;color:var(--text-primary);margin:0 0 6px}.tutorial-card-text{font-size:14px;color:var(--text-secondary);margin:0 0 16px;line-height:1.5}.tutorial-dots{display:flex;gap:6px;justify-content:center;margin-bottom:14px}.tutorial-dot{width:7px;height:7px;border-radius:50%;background:var(--border-color);transition:background .2s}.tutorial-dot.active{background:var(--text-primary)}.tutorial-actions{display:flex;align-items:center;justify-content:space-between}.tutorial-skip{background:none;border:none;color:var(--text-secondary);font-size:14px;cursor:pointer;padding:8px 4px;font-family:inherit}.tutorial-next{background:var(--text-primary);color:var(--card-background);border:none;border-radius:10px;padding:10px 24px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}:root{--roman-primary: #D88C5A;--roman-light: #F5E8DC;--roman-text: #D88C5A;--regina-primary: #8BA888;--regina-light: #E8F0E7;--regina-text: #8BA888;--dimitri-primary: #7DA5C1;--dimitri-light: #E3EDF4;--dimitri-text: #7DA5C1;--background: #F5F1E8;--card-background: #FFFFFF;--text-primary: #4A4A4A;--text-secondary: #9B9B9B;--text-light: #C4C4C4;--border-color: #E5E5E5;--input-background: #FFFFFF;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .1);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-2xl: 32px;--font-size-3xl: 40px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600}[data-theme=dark]{--background: #1A1A1A;--card-background: #2A2A2A;--text-primary: #F0F0F0;--text-secondary: #A0A0A0;--text-light: #666666;--border-color: #3A3A3A;--input-background: #333333;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .4)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow-x:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--background);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;width:100%}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:1.2}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:0;font-size:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}*{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}
