@import"https://fonts.googleapis.com/css2?family=Kalam:wght@300;400;700&display=swap";.maintenance-banner{background:var(--warning);color:#78350f;padding:var(--spacing-md) var(--page-padding);text-align:center;border-bottom:2px solid #d97706;position:sticky;top:60px;z-index:999;box-shadow:var(--shadow-sm)}.maintenance-content{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);max-width:var(--max-width);margin:0 auto}.maintenance-icon{font-size:var(--font-size-lg)}.maintenance-message{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.landing-page{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);padding:0;width:100%;overflow-x:hidden;flex:1;box-sizing:border-box;margin:0;min-height:0}.app-main>.home-main{margin:0;padding-top:0;padding-bottom:0}.landing-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);width:min(920px,92vw);max-width:920px;padding:var(--spacing-3xl);text-align:center;overflow:visible;box-sizing:border-box;margin:0}.landing-header{margin-bottom:var(--spacing-3xl)}.landing-header h1{font-size:var(--font-size-2xl);color:var(--text);margin:0 0 var(--spacing-md) 0;font-weight:var(--font-weight-semibold)}.landing-subtitle{font-size:var(--font-size-md);color:var(--text-muted);margin:0;line-height:var(--line-height-relaxed)}.landing-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);width:100%}.action-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);cursor:pointer;transition:all .2s ease;text-align:center}.action-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-icon{font-size:3rem;margin-bottom:var(--spacing-lg)}.action-card h2{font-size:var(--font-size-lg);color:var(--text);margin:0 0 var(--spacing-md) 0;font-weight:var(--font-weight-semibold)}.action-card p{font-size:var(--font-size-base);color:var(--text-muted);margin:0;line-height:var(--line-height-relaxed)}@media(max-width:640px){.landing-page{padding:0;justify-content:center;align-items:center}.landing-container{padding:var(--spacing-lg) var(--spacing-md);border-radius:var(--border-radius);width:min(920px,92vw);max-width:100%;margin:0}.landing-header{margin-bottom:var(--spacing-lg)}.landing-header h1{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}.landing-subtitle{font-size:var(--font-size-sm)}.landing-actions{grid-template-columns:1fr;gap:var(--spacing-md)}.action-card{padding:var(--spacing-lg);min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center}.action-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.action-card h2{font-size:var(--font-size-md);margin-bottom:var(--spacing-xs)}.action-card p{font-size:var(--font-size-sm)}}.step-navigation{display:flex;justify-content:center;align-items:center;gap:16px;padding:16px}.step-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;min-height:36px;width:auto;flex:none;border-radius:9999px;font-size:14px;font-weight:500;background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;transition:background .15s ease,border-color .15s ease;white-space:nowrap}[data-theme=light] .step-button{background:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.step-button:hover:not(:disabled){background:var(--border-light);border-color:var(--border)}[data-theme=light] .step-button:hover:not(:disabled){background:var(--accent-pink-hover);border-color:#00000014}.step-button:active:not(:disabled){background:var(--accent-pink-pressed)}[data-theme=light] .step-button:active:not(:disabled){background:var(--accent-pink-pressed)}.step-button:focus{outline:none}.step-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .step-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.step-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.step-navigation{gap:12px;padding:12px}.step-button{font-size:var(--font-size-sm);padding:8px 14px}}.setup-wizard{padding-bottom:60px;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--page-padding);padding-top:var(--spacing-md);background:var(--bg);position:relative}.wizard-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);max-width:600px;width:100%;padding:var(--spacing-2xl)}.wizard-header{margin-bottom:var(--spacing-2xl)}.wizard-header h1{margin:0 0 var(--spacing-xl) 0;color:var(--text);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);text-align:center}.step-indicator{display:flex;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.step{width:40px;height:40px;border-radius:50%;background-color:var(--border-light);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:all .2s ease}[data-theme=light] .step{background-color:var(--accent-pink);color:#0b0b0d}.step.active{background-color:var(--primary);color:#fff}[data-theme=light] .step.active{background-color:var(--accent-pink-pressed);color:#0b0b0d;box-shadow:0 2px 4px #0000001a}.wizard-content{min-height:300px}.wizard-step{animation:fadeIn .3s}.wizard-step>.step-navigation{margin-top:var(--spacing-2xl)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.wizard-step h2{margin:0 0 var(--spacing-md) 0;color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.wizard-step p{margin:0 0 var(--spacing-xl) 0;color:var(--text-muted);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.wizard-input{width:100%;padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);height:var(--input-height);margin-bottom:var(--spacing-xl);box-sizing:border-box;background:var(--surface);color:var(--text);transition:border-color .2s ease}.wizard-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.wizard-button{padding:var(--button-padding-y) var(--button-padding-x);background-color:var(--primary);color:#fff;border:none;border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height);transition:background-color .2s ease}[data-theme=light] .wizard-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.wizard-button:hover:not(:disabled){background-color:var(--primary-hover)}[data-theme=light] .wizard-button:hover:not(:disabled){background-color:var(--accent-pink-hover)}.wizard-button:active:not(:disabled){background-color:var(--primary-pressed)}[data-theme=light] .wizard-button:active:not(:disabled){background-color:var(--accent-pink-pressed)}.wizard-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .wizard-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.wizard-button:disabled{opacity:.5;cursor:not-allowed}.wizard-button.secondary{background-color:var(--border-light);color:var(--text);border:1px solid var(--border)}.wizard-button.secondary:hover{background-color:var(--border)}.wizard-button.primary{background-color:var(--primary)}[data-theme=light] .wizard-button.primary{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.wizard-button.primary:hover:not(:disabled){background-color:var(--primary-hover)}[data-theme=light] .wizard-button.primary:hover:not(:disabled){background-color:var(--accent-pink-hover)}.wizard-actions{display:flex;gap:var(--spacing-lg);justify-content:flex-end;margin-top:var(--spacing-2xl)}.wizard-actions.step-5-actions{justify-content:center}.task-input-group{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.add-task-button{padding:var(--button-padding-y) var(--spacing-xl);background-color:var(--primary);color:#fff;border:none;border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height);white-space:nowrap;transition:background-color .15s ease}[data-theme=light] .add-task-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.add-task-button:hover{background-color:var(--primary-hover)}[data-theme=light] .add-task-button:hover{background-color:var(--accent-pink-hover)}.add-task-button:active{background-color:var(--primary-pressed)}[data-theme=light] .add-task-button:active{background-color:var(--accent-pink-pressed)}.add-task-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .add-task-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.task-section{margin-bottom:var(--spacing-2xl)}.task-section h3{margin:0 0 var(--spacing-md) 0;color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.tasks-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);min-height:40px}.task-tag{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--border-light);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-sm);color:var(--text)}.task-tag.sole-responsibility{background-color:var(--warning-light);border-color:var(--warning);color:var(--text)}[data-theme=dark] .task-tag.sole-responsibility{background-color:var(--warning-yellow-bg);border-color:var(--warning-yellow-border);color:var(--text)}[data-theme=dark] .task-tag.sole-responsibility:hover{background-color:var(--warning-yellow-hover);border-color:var(--warning-yellow)}.remove-task-button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--font-size-lg);line-height:1;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.remove-task-button:hover{background-color:var(--border-light);color:var(--text)}.members-section,.assignments-section{margin-bottom:var(--spacing-2xl)}.members-section h3,.assignments-section h3{margin:0 0 var(--spacing-lg) 0;color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.members-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.member-input{display:flex;align-items:center;gap:var(--spacing-lg)}.member-input label{min-width:80px;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.member-name-input{flex:1;padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);height:var(--input-height);background:var(--surface);color:var(--text)}.member-name-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.assignments-list{display:flex;flex-direction:column;gap:var(--spacing-md);background-color:var(--border-light);padding:var(--spacing-lg);border-radius:var(--border-radius);border:1px solid var(--border)}.assignment-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background-color:var(--surface);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.assignment-item.sole-responsibility{background-color:var(--warning-light);border-color:var(--warning)}[data-theme=dark] .assignment-item.sole-responsibility{background-color:var(--warning-yellow-bg);border-color:var(--warning-yellow-border)}.schedule-assignments{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.task-schedule-item{background-color:var(--border-light);padding:var(--spacing-lg);border-radius:var(--border-radius);border:1px solid var(--border)}.task-schedule-header{margin-bottom:var(--spacing-lg)}.task-schedule-header .task-name{font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-md)}.week-assignments{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.week-assignment{display:flex;flex-direction:column;gap:.25rem}.week-assignment label{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:var(--font-weight-medium)}.member-select{padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);height:var(--input-height);background-color:var(--surface);color:var(--text);cursor:pointer;transition:border-color .2s ease}.member-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.sole-assignments{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.sole-assignment-item{display:flex;flex-direction:column;padding:var(--spacing-lg);background-color:var(--warning-light);border:1px solid var(--warning);border-radius:var(--border-radius);gap:var(--spacing-lg);position:relative}[data-theme=dark] .sole-assignment-item{background-color:var(--warning-yellow-bg);border:1px solid var(--warning-yellow-border);box-shadow:0 10px 24px #00000059}.sole-assignment-item .task-name{font-weight:var(--font-weight-medium);color:var(--text);flex:1}.sole-assignment-item .member-select{min-width:150px}.sole-task-header{margin-bottom:var(--spacing-lg)}.sole-task-header .task-name{font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-md)}.member-selection{margin-bottom:var(--spacing-lg)}.member-selection label{display:block;font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium)}.member-checkboxes{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.member-checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius);transition:background-color .2s ease}.member-checkbox-label:hover{background-color:var(--border-light)}.member-checkbox{width:18px;height:18px;cursor:pointer}.weekly-preview{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border)}.weekly-preview label{display:block;font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium)}.week-assignments-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin-top:.5rem}.week-preview-item{padding:var(--spacing-sm);background-color:var(--border-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:var(--text)}.assigned-member-name{font-weight:var(--font-weight-medium);color:var(--primary);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--primary-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm)}.task-name{font-weight:var(--font-weight-medium);color:var(--text)}.assigned-to{color:var(--primary);font-weight:var(--font-weight-semibold)}.share-screen{margin:var(--spacing-2xl) 0}.creator-name-section{margin:var(--spacing-2xl) 0;padding:var(--spacing-xl);background-color:var(--border-light);border-radius:var(--border-radius);border:1px solid var(--border)}.creator-name-section h3{margin:0 0 var(--spacing-sm) 0;color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.creator-name-section .help-text{margin:0 0 var(--spacing-lg) 0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.creator-name-input-wrapper{display:flex;gap:var(--spacing-lg);align-items:center}.creator-name-input-wrapper .member-name-input{flex:1;max-width:300px}.skip-button{padding:var(--button-padding-y) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);height:var(--button-height);white-space:nowrap}.share-info{display:flex;flex-direction:column;gap:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-sm)}.info-item label{font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-sm)}.info-value{font-size:var(--font-size-md);color:var(--text);font-weight:var(--font-weight-medium)}.house-code-display,.share-link-display{display:grid;grid-template-columns:1fr 150px;gap:var(--spacing-md);align-items:center}.code-value{padding:var(--spacing-md);background-color:var(--primary-light);border:1px solid var(--primary);border-radius:var(--border-radius);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:2px;text-align:center;color:var(--primary);height:48px;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-link-input{padding:var(--spacing-md);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-sm);background-color:var(--border-light);height:48px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-button{padding:var(--button-padding-y) var(--spacing-xl);background-color:var(--primary);color:#fff;border:none;border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;height:48px;width:150px;white-space:nowrap;transition:background-color .2s ease;flex-shrink:0}[data-theme=light] .copy-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.copy-button:hover{background-color:var(--primary-hover)}[data-theme=light] .copy-button:hover{background-color:var(--accent-pink-hover)}.copy-button:active{background-color:var(--primary-pressed)}[data-theme=light] .copy-button:active{background-color:var(--accent-pink-pressed)}.copy-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .copy-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.bundle-chores-preview{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-muted);padding-left:var(--spacing-lg)}.bundle-includes{font-style:italic}@media(max-width:768px){.wizard-container{padding:var(--spacing-xl)}.wizard-header h1{font-size:var(--font-size-lg)}.step{width:35px;height:35px;font-size:var(--font-size-sm)}.task-input-group{flex-direction:column}.add-task-button{width:100%}.member-input{flex-direction:column;align-items:flex-start}.member-input label{min-width:auto}.assignment-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.house-code-display,.share-link-display{grid-template-columns:1fr;gap:var(--spacing-sm)}.copy-button{width:100%;height:48px}.code-value,.share-link-input{height:48px}}.join-house-page{padding-bottom:60px;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:var(--page-padding)}.join-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);max-width:500px;width:100%;padding:var(--spacing-2xl)}.join-header{margin-bottom:var(--spacing-2xl)}.back-button{background:none;border:none;color:var(--primary);font-size:var(--font-size-sm);cursor:pointer;padding:0;margin-bottom:var(--spacing-lg);text-decoration:underline}.join-header h1{font-size:var(--font-size-xl);color:var(--text);margin:0 0 var(--spacing-md) 0;font-weight:var(--font-weight-semibold)}.join-header p{color:var(--text-muted);margin:0;font-size:var(--font-size-base)}.join-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-sm)}.house-code-input{padding:var(--input-padding-y) var(--spacing-lg);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:2px;text-align:center;text-transform:uppercase;height:var(--input-height);background:var(--surface);color:var(--text);transition:border-color .2s ease}.house-code-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.house-code-input:disabled{background-color:var(--border-light);cursor:not-allowed}.help-text{font-size:var(--font-size-xs);color:var(--text-muted);margin:0}.error-message{background-color:var(--error-light);border:1px solid var(--error);color:var(--error);padding:var(--spacing-md);border-radius:var(--border-radius);font-size:var(--font-size-sm)}.join-button{background-color:var(--primary);color:#fff;padding:var(--button-padding-y) var(--spacing-xl);border:none;border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height);transition:background-color .2s ease}[data-theme=light] .join-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.join-button:hover:not(:disabled){background-color:var(--primary-hover)}[data-theme=light] .join-button:hover:not(:disabled){background-color:var(--accent-pink-hover)}.join-button:active:not(:disabled){background-color:var(--primary-pressed)}[data-theme=light] .join-button:active:not(:disabled){background-color:var(--accent-pink-pressed)}.join-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .join-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.join-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.join-container{padding:var(--spacing-2xl) var(--spacing-lg)}.join-header h1{font-size:var(--font-size-lg)}}.house-header{background:var(--brand);padding:var(--spacing-lg) var(--page-padding);margin-bottom:var(--spacing-xl);margin-top:0;position:relative;z-index:10;width:100%}[data-theme=dark] .house-header{background:var(--surface)}.house-header .header-left h1{color:#fff}[data-theme=dark] .house-header .header-left h1{color:var(--text)}.house-header .house-code{color:#ffffffe6}[data-theme=dark] .house-header .house-code{color:var(--text-muted)}.header-content{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-lg)}.header-left{display:flex;flex-direction:column;gap:var(--spacing-xs)}.header-left h1{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text);margin:0}.house-code{font-size:var(--font-size-sm);color:var(--text-muted);font-family:Courier New,monospace}.header-right{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.share-button,.admin-button{background-color:var(--primary);color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);border:none;border-radius:var(--border-radius);padding:var(--button-padding-y) var(--button-padding-x);height:var(--button-height);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);cursor:pointer;transition:background-color .15s ease}[data-theme=light] .share-button,[data-theme=light] .admin-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.share-button:hover,.admin-button:hover{background-color:var(--primary-hover)}[data-theme=light] .share-button:hover,[data-theme=light] .admin-button:hover{background-color:var(--accent-pink-hover)}.share-button:active,.admin-button:active{background-color:var(--primary-pressed)}[data-theme=light] .share-button:active,[data-theme=light] .admin-button:active{background-color:var(--accent-pink-pressed)}.share-button:focus-visible,.admin-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .share-button:focus-visible,[data-theme=light] .admin-button:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}@media(max-width:768px){.house-header{padding:var(--spacing-md) var(--spacing-lg)}.header-content{flex-direction:column;align-items:flex-start}.header-left h1{font-size:var(--font-size-lg)}.header-right{width:100%;justify-content:space-between}.share-button,.admin-button{font-size:var(--font-size-sm);padding:var(--spacing-sm) var(--spacing-md);height:36px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--surface);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.modal-content h2{margin-bottom:var(--spacing-xl);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text)}.form-field{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.form-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted)}.form-field input{padding:var(--input-padding-y) var(--input-padding-x);font-size:var(--font-size-base);width:100%;height:var(--input-height);border:1px solid var(--border);border-radius:var(--border-radius);background:var(--surface);color:var(--text)}.form-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.modal-actions button{padding:var(--button-padding-y) var(--spacing-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);height:var(--button-height);border-radius:var(--border-radius)}.cancel-button{background-color:var(--border-light);color:var(--text);border:1px solid var(--border)}.cancel-button:hover{background-color:var(--border)}.submit-button{background-color:var(--primary);color:#fff}.submit-button:hover{background-color:var(--primary-hover)}.submit-button:disabled{background-color:var(--text-light);cursor:not-allowed}@media(max-width:768px){.modal-content{padding:var(--spacing-xl);width:95%}.form-field input{font-size:16px;padding:var(--spacing-md)}.modal-actions{flex-direction:column}.modal-actions button{width:100%;padding:var(--spacing-md)}}.chore-table-container{width:100%;max-width:var(--max-width);margin:0 auto;padding:var(--page-padding);padding-bottom:120px;overflow:visible}.chore-table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);overflow:visible}.chore-table-header{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-xl)}.chore-table-header-left{display:flex;align-items:center;justify-content:flex-start}.chore-table-header-center{display:flex;align-items:center;justify-content:center}.chore-table-header-right{display:flex;align-items:center;justify-content:flex-end}.chore-table-week-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.chore-table-week-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted);white-space:nowrap}.chore-table-date-range{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--text-muted);white-space:nowrap}.chore-table-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text);margin:0;text-align:center}.chore-table-add-button{background-color:var(--primary);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:none;border-radius:var(--border-radius);padding:var(--spacing-xs) var(--spacing-md);height:var(--button-height);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}[data-theme=light] .chore-table-add-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.chore-table-add-button:hover{background-color:var(--primary-hover)}[data-theme=light] .chore-table-add-button:hover{background-color:var(--accent-pink-hover)}.chore-table-add-button:active{background-color:var(--primary-pressed)}[data-theme=light] .chore-table-add-button:active{background-color:var(--accent-pink-pressed)}.chore-table-date-badge{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted);background:var(--bg-light);border:1px solid var(--border);border-radius:var(--border-radius);padding:var(--spacing-xs) var(--spacing-md);white-space:nowrap}.chore-table-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl);color:var(--text-muted);font-size:var(--font-size-md)}.chore-table-wrapper{overflow-x:auto;overflow-y:visible;max-height:none;-webkit-overflow-scrolling:touch;position:relative;background:var(--surface)}@media(min-width:1024px){.chore-table-container{overflow:visible}.chore-table-card{overflow:visible;max-height:none;height:auto}.chore-table-wrapper{overflow-x:auto;overflow-y:visible;max-height:none;height:auto}}.chore-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-base);table-layout:fixed;border:1px solid var(--border);border-radius:var(--border-radius);overflow:hidden;background:var(--surface)}.chore-table thead{background:var(--bg)}.chore-table th{padding:var(--spacing-md) var(--spacing-lg);text-align:left;font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-sm);text-transform:none;letter-spacing:0;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--bg)!important}.chore-table td{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);vertical-align:middle;background:var(--surface)!important}.chore-table tbody tr:last-child td{border-bottom:none}.chore-table tbody tr:hover{background:var(--border-light)}.chore-table tbody tr.row-completed{opacity:.7}.col-done{width:60px;text-align:center}.col-task{min-width:260px}.col-category{width:180px;color:var(--text-muted)}.col-status{width:160px}.col-due-date{width:160px;text-align:right;color:var(--text-muted)}.col-actions{width:80px;text-align:center}.chore-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.chore-checkbox:disabled{cursor:not-allowed;opacity:.5}.task-name{font-weight:var(--font-weight-medium);color:var(--text);margin-bottom:var(--spacing-xs)}.task-assigned{font-size:var(--font-size-xs);color:var(--text-muted)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.status-completed{background:var(--success-light);color:var(--success)}.status-in-progress,.status-due-soon{background:var(--warning-light);color:var(--warning)}.status-due-today,.status-overdue{background:var(--error-light);color:var(--error)}.status-pending{background:var(--border-light);color:var(--text-muted)}.action-menu-wrapper{position:relative;display:inline-block}.action-menu-trigger{background:transparent;border:none;font-size:20px;color:var(--text-muted);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);transition:background .2s}.action-menu-trigger:hover{background:var(--border-light)}.action-menu-overlay{position:fixed;inset:0;z-index:998}.action-menu{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:9999;min-width:120px;margin-top:0}.action-menu-flip-up{margin-top:-4px}.action-menu-item{display:block;width:100%;padding:var(--spacing-md) var(--spacing-lg);text-align:left;background:none;border:none;color:var(--text);font-size:var(--font-size-base);cursor:pointer;transition:background .2s}.action-menu-item:first-child{border-radius:var(--border-radius) var(--border-radius) 0 0}.action-menu-item:last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}.action-menu-item:hover{background:var(--border-light)}.action-menu-item-danger{color:var(--error)}.action-menu-item-danger:hover{background:var(--error-light)}.edit-form-inline{display:flex;gap:var(--spacing-sm);align-items:center;margin-top:var(--spacing-sm);flex-wrap:wrap}.edit-label{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:var(--font-weight-medium);white-space:nowrap}.edit-input,.edit-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);width:100%;height:var(--input-height);background:var(--surface);color:var(--text)}.edit-select{min-width:150px;cursor:pointer}.edit-input:focus,.edit-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.action-buttons-inline{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.btn-save{background:var(--primary);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;height:32px}.btn-save:hover{background:var(--primary-hover)}.btn-save:disabled{background:var(--text-light);cursor:not-allowed}.btn-cancel{background:var(--border-light);color:var(--text);border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;height:32px}.btn-cancel:hover{background:var(--border)}@media(max-width:768px){.chore-table-container{padding:var(--spacing-md);padding-bottom:100px}.chore-table-card{padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-md)}.chore-table-title{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.chore-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--spacing-md));padding:0 var(--spacing-md);position:relative;background:var(--surface)}.chore-table-wrapper:after,.chore-table-wrapper:before{content:none!important;display:none!important}.chore-table{font-size:var(--font-size-sm);min-width:800px;width:-moz-max-content;width:max-content;background:var(--surface)!important}.chore-table th,.chore-table td{padding:var(--spacing-sm) var(--spacing-xs);background:inherit!important}.chore-table thead th{background:var(--bg)!important}.chore-table tbody td{background:var(--surface)!important}.chore-table th,.chore-table td{position:static!important;box-shadow:none!important}.col-done{width:50px}.col-task{min-width:200px}.col-category{width:120px}.col-status{width:100px}.col-due-date{width:120px;font-size:var(--font-size-xs)}.col-actions{width:60px}.chore-checkbox{width:16px;height:16px}.task-name{font-size:var(--font-size-sm);margin-bottom:2px}.task-assigned{font-size:var(--font-size-xs)}.status-badge{font-size:var(--font-size-xs);padding:3px var(--spacing-sm);white-space:nowrap}.action-buttons-inline{flex-direction:column;gap:var(--spacing-xs)}.btn-save,.btn-cancel{width:100%;padding:var(--spacing-sm);font-size:var(--font-size-xs)}.action-menu-trigger{font-size:18px;padding:2px var(--spacing-xs)}}.chore-list-container{width:100%;padding:20px 20px 100px}.chore-list{display:flex;flex-direction:column;gap:12px}.chore-list-empty{text-align:center;padding:40px 20px;color:#999;font-size:16px}.house-page{min-height:100vh;background-color:var(--bg);overflow-y:auto;overflow-x:hidden;padding-bottom:60px}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--text-muted)}.error-container{text-align:center;padding:var(--spacing-2xl)}.error-message{font-size:var(--font-size-md);color:var(--error);margin-bottom:var(--spacing-xl)}.back-button{background-color:var(--primary);color:#fff;padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--border-radius);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height)}.back-button:hover{background-color:var(--primary-hover)}.schedule-overview-page{min-height:100vh;background-color:var(--bg);padding:0 var(--page-padding) 80px var(--page-padding)}.schedule-overview-container{max-width:var(--max-width);margin:0 auto;padding-bottom:var(--spacing-xl)}.schedule-overview-header{margin-bottom:var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-sm)}.schedule-overview-header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.back-button{background:none;border:none;color:var(--primary);font-size:var(--font-size-sm);cursor:pointer;padding:0;text-decoration:underline;align-self:flex-start}[data-theme=light] .back-button{color:#0b0b0d}[data-theme=light] .back-button:hover{color:#0b0b0db3}.schedule-overview-header h1{font-size:var(--font-size-xl);color:var(--text);margin:0;font-weight:var(--font-weight-semibold)}.house-name{font-size:var(--font-size-base);color:var(--text-muted);margin:0}.month-selector{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-2xl);padding:var(--spacing-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius)}.month-display{display:flex;align-items:center;gap:var(--spacing-lg)}.month-display h2{font-size:var(--font-size-lg);color:var(--text);margin:0;min-width:200px;text-align:center;font-weight:var(--font-weight-semibold)}.month-nav-button{background-color:var(--primary);color:#fff;border:none;border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height);transition:background-color .2s ease}[data-theme=light] .month-nav-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.month-nav-button:hover{background-color:var(--primary-hover)}[data-theme=light] .month-nav-button:hover{background-color:var(--accent-pink-hover)}.month-nav-button:active{background-color:var(--primary-pressed)}[data-theme=light] .month-nav-button:active{background-color:var(--accent-pink-pressed)}.today-button{background-color:var(--primary);color:#fff;border:none;border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;height:var(--button-height);transition:background-color .2s ease}[data-theme=light] .today-button{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid rgba(0,0,0,.08)}.today-button:hover{background-color:var(--primary-hover)}[data-theme=light] .today-button:hover{background-color:var(--accent-pink-hover)}.today-button:active{background-color:var(--primary-pressed)}[data-theme=light] .today-button:active{background-color:var(--accent-pink-pressed)}.schedule-table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.schedule-table-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text);margin:0 0 var(--spacing-xl) 0}.schedule-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;position:relative;background:var(--surface);overflow-y:visible}.schedule-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-base);table-layout:fixed;border:1px solid var(--border);border-radius:var(--border-radius);overflow:hidden;background:var(--surface)}@media(max-width:900px){.schedule-table{table-layout:auto;width:-moz-max-content;width:max-content}}.schedule-table thead{background:var(--bg)}.schedule-table th{padding:var(--spacing-md) var(--spacing-lg);text-align:left;font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-sm);text-transform:none;letter-spacing:0;border:1px solid var(--border);border-bottom:1px solid var(--border);white-space:normal;word-break:break-word;line-height:1.2;background:var(--bg)!important}.schedule-table td{padding:var(--spacing-lg);border:1px solid var(--border);border-top:none;vertical-align:middle;background:var(--surface)!important}.schedule-table tbody tr:last-child td{border-bottom:none}.schedule-table tbody tr:hover{background:var(--border-light)}.col-week-range{width:200px;min-width:200px;font-weight:var(--font-weight-medium);color:var(--text)}.week-range-dates{font-weight:var(--font-weight-medium);color:var(--text);white-space:nowrap}.rotation-debug{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:var(--font-weight-normal);font-style:italic;margin-top:var(--spacing-xs);white-space:nowrap}.col-task-assignment{min-width:160px;text-align:center}.member-name{color:var(--primary);font-weight:var(--font-weight-medium);word-break:break-word}[data-theme=light] .member-name{color:#0b0b0d}.unassigned-badge{background-color:var(--warning-light);color:var(--warning);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);display:inline-block}.no-assignment{color:var(--text-light);font-style:italic}.loading-container{min-height:400px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--text-muted)}@media(max-width:900px){.schedule-overview-page{padding:var(--spacing-md);padding-bottom:80px}.schedule-overview-container{padding:0;max-width:100%}.schedule-overview-header{margin-bottom:var(--spacing-lg)}.schedule-overview-header h1{font-size:var(--font-size-lg)}.house-name{font-size:var(--font-size-sm)}.month-selector{flex-direction:row;gap:var(--spacing-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.month-nav-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);min-width:44px;min-height:44px}.month-display{flex:1;flex-direction:column;gap:var(--spacing-sm);align-items:center}.month-display h2{font-size:var(--font-size-md);min-width:auto;margin:0}.today-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);min-width:44px;min-height:44px}.schedule-table-card{padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-md)}.schedule-table-title{font-size:var(--font-size-md);margin-bottom:var(--spacing-md)}.schedule-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;overflow-y:visible;margin:0 calc(-1 * var(--spacing-md));padding:0 var(--spacing-md);position:relative;background:var(--surface)!important;-webkit-mask-image:none!important;mask-image:none!important}.schedule-table-wrapper:after,.schedule-table-wrapper:before{content:none!important;display:none!important}.schedule-table{font-size:var(--font-size-sm);min-width:600px;width:-moz-max-content;width:max-content;background:var(--surface)!important}.schedule-table th,.schedule-table td{padding:var(--spacing-sm) var(--spacing-md);vertical-align:middle;background:inherit!important;position:static!important;box-shadow:none!important}.schedule-table thead th{background:var(--bg)!important}.schedule-table tbody td{background:var(--surface)!important}.schedule-table th.sticky,.schedule-table td.sticky,.schedule-table th.pinned,.schedule-table td.pinned,.schedule-table th.frozen,.schedule-table td.frozen{position:static!important;box-shadow:none!important}.schedule-table th.sticky:before,.schedule-table th.sticky:after,.schedule-table td.sticky:before,.schedule-table td.sticky:after,.schedule-table th.pinned:before,.schedule-table th.pinned:after,.schedule-table td.pinned:before,.schedule-table td.pinned:after{content:none!important}.col-week-range{width:auto;min-width:140px}.col-task-assignment{min-width:120px;font-size:var(--font-size-xs);width:auto}.week-range-dates{font-size:var(--font-size-sm)}.rotation-debug{font-size:11px}.member-name{font-size:var(--font-size-sm)}.unassigned-badge{font-size:11px;padding:2px var(--spacing-sm)}.no-assignment{font-size:var(--font-size-xs)}}.access-denied{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f5f5;padding:20px}.access-denied-container{background:#fff;border-radius:8px;padding:40px;text-align:center;box-shadow:0 2px 4px #0000001a}.access-denied-container h1{color:#333;margin-bottom:20px;font-size:24px}.access-denied-container code{display:block;background:#f8f9fa;padding:12px 16px;border-radius:4px;font-family:Courier New,monospace;font-size:14px;color:#333;word-break:break-all}.admin-dashboard{min-height:100vh;background:var(--bg);padding:24px 16px;max-width:980px;width:min(980px,92vw);margin:24px auto}.admin-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);padding:20px 24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.admin-header h1{margin:0 0 20px;color:var(--text);font-size:20px;font-weight:var(--font-weight-semibold)}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap}.admin-tabs button{padding:10px 20px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:var(--border-radius);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all .2s;height:40px;display:inline-flex;align-items:center;justify-content:center}.admin-tabs button:hover{background:var(--border-light);color:var(--text)}.admin-tabs button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.admin-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);padding:24px;box-shadow:var(--shadow-sm);overflow:visible;min-width:0;min-height:520px;display:flex;flex-direction:column}.houses-section{min-width:0;overflow:visible;display:flex;flex-direction:column;flex:1;min-height:0}.loading{text-align:center;padding:40px;color:#666}.overview-section,.houses-section,.settings-section{display:flex;flex-direction:column;flex:1;min-height:0}.overview-section h2,.houses-section h2,.settings-section h2{margin-top:0;margin-bottom:24px;color:var(--text);font-size:18px;font-weight:var(--font-weight-semibold)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.stat-card{background:var(--primary);color:#fff;padding:var(--spacing-2xl);border-radius:var(--border-radius);text-align:center}.stat-value{font-size:36px;font-weight:700;margin-bottom:8px}.stat-label{font-size:14px;opacity:.9}.search-bar{margin-bottom:20px}.search-input{width:100%;max-width:400px;padding:12px;border:1px solid #dee2e6;border-radius:6px;font-size:14px}.houses-table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius);padding:16px;margin-top:16px;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.housesTableScroll{width:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;min-width:0;position:relative;max-height:clamp(320px,45vh,520px);background:var(--surface);flex:1}.housesTable{width:-moz-max-content;width:max-content;min-width:820px;border-collapse:separate;border-spacing:0;table-layout:auto;background:var(--surface)}.housesTable th{background:var(--bg)!important;padding:12px;text-align:left;font-weight:600;color:var(--text);border-bottom:2px solid var(--border);white-space:nowrap;position:static!important}.housesTable td{padding:12px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface)!important;position:static!important}.housesTable code{background:var(--bg);padding:4px 8px;border-radius:4px;font-size:12px;color:var(--text-muted)}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.active{background:#d4edda;color:#155724}.status-badge.disabled{background:#f8d7da;color:#721c24}.toggle-btn{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s}.toggle-btn.disable{background:#dc3545;color:#fff}.toggle-btn.disable:hover{background:#c82333}.toggle-btn.enable{background:#28a745;color:#fff}.toggle-btn.enable:hover{background:#218838}.no-data{text-align:center;color:#999;padding:40px}.settings-form{margin-top:0}.setting-item{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border)}.setting-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.setting-item.setting-checkbox{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.setting-checkbox-left{display:flex;align-items:flex-start;gap:12px;flex:1}.setting-checkbox-left input[type=checkbox]{margin-top:2px;width:18px;height:18px;cursor:pointer;accent-color:var(--primary);flex-shrink:0}.setting-checkbox-label-group{display:flex;flex-direction:column;gap:6px}.setting-checkbox-label-group label{font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-base);margin:0;cursor:pointer}.setting-description{color:var(--text-muted);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-normal)}.setting-item.setting-input-group{display:flex;flex-direction:column;gap:6px}.setting-item label:not(.setting-checkbox-label-group){font-weight:var(--font-weight-semibold);color:var(--text);font-size:var(--font-size-base);margin-bottom:6px;display:block}.setting-input{width:100%;max-width:260px;padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);font-family:inherit;height:var(--input-height);background:var(--surface);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.setting-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.setting-textarea{width:100%;max-width:600px;min-height:90px;padding:var(--input-padding-y) var(--input-padding-x);border:1px solid var(--border);border-radius:var(--border-radius);font-size:var(--font-size-base);font-family:inherit;resize:vertical;background:var(--surface);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.setting-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.setting-radio-group{display:flex;flex-direction:column;gap:12px;margin-top:6px}.setting-radio-option{display:flex;align-items:center;gap:8px;cursor:pointer}.setting-radio-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary);flex-shrink:0}.setting-radio-option label{font-weight:var(--font-weight-normal);color:var(--text);font-size:var(--font-size-base);margin:0;cursor:pointer}@media(max-width:768px){.admin-dashboard{padding:16px;margin:16px auto;width:min(980px,92vw)}.admin-header{padding:16px}.admin-content{padding:20px 16px;min-height:60vh;overflow:visible}.houses-section{overflow:visible;display:flex;flex-direction:column;flex:1;min-height:0}.houses-table-container{flex:1;min-height:0;overflow:hidden}.housesTableScroll{max-height:clamp(320px,45vh,520px);overflow-x:auto;overflow-y:auto}.search-input{max-width:100%}.setting-item.setting-checkbox{flex-direction:column;align-items:flex-start;gap:12px}.setting-input,.setting-textarea{max-width:100%}.housesTable{min-width:820px}}.save-message{padding:12px;border-radius:6px;margin-bottom:20px;font-weight:500}.save-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.save-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.site-admin-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.site-admin-page .loading{color:#666;font-size:16px}.back-button{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius);color:var(--text);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;height:var(--button-height);margin-bottom:var(--spacing-lg);overflow:visible;text-decoration:none;min-width:0}.back-button:hover{background:var(--border-light);border-color:var(--border);color:var(--text)}.back-button:hover .back-button-icon,.back-button:hover .back-button-text{color:var(--text);opacity:1}.back-button:focus{outline:none}.back-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;background:var(--surface);color:var(--text)}.back-button:focus-visible .back-button-icon,.back-button:focus-visible .back-button-text{color:var(--text);opacity:1}.back-button:active{background:var(--border);color:var(--text)}.back-button:active .back-button-icon,.back-button:active .back-button-text{color:var(--text);opacity:1}.back-button-icon,.back-button-text{display:inline-block;color:var(--text);opacity:1;position:relative;z-index:1;transition:color .15s ease,opacity .15s ease;pointer-events:none}.back-button-icon{font-size:var(--font-size-base);line-height:1;flex-shrink:0}.back-button-text{white-space:nowrap;flex-shrink:0}.about-page{min-height:100vh;background-color:var(--bg);padding:var(--page-padding);padding-bottom:80px}.about-container{max-width:var(--max-width);margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-2xl)}.about-content{color:var(--text)}.about-content h1{font-size:var(--font-size-xl);color:var(--text);margin:0 0 var(--spacing-xl) 0;font-weight:var(--font-weight-semibold)}.about-intro{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--text-muted);margin-bottom:var(--spacing-2xl)}.about-features{margin-bottom:var(--spacing-2xl)}.about-features h2{font-size:var(--font-size-md);color:var(--text);margin:0 0 var(--spacing-lg) 0;font-weight:var(--font-weight-semibold)}.about-features ul{list-style:none;padding:0;margin:0}.about-features li{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-muted);margin-bottom:var(--spacing-lg);padding-left:var(--spacing-xl);position:relative}.about-features li:before{content:"•";position:absolute;left:0;color:var(--primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}.about-features li strong{color:var(--text)}.about-privacy{margin-bottom:var(--spacing-2xl)}.about-privacy h2{font-size:var(--font-size-md);color:var(--text);margin:0 0 var(--spacing-lg) 0;font-weight:var(--font-weight-semibold)}.about-privacy p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-muted);margin:0}.about-disclaimer{padding:var(--spacing-lg);background:var(--border-light);border-radius:var(--border-radius);border-left:4px solid var(--primary)}.about-disclaimer p{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--text-muted);margin:0}.about-disclaimer strong{color:var(--text)}@media(max-width:768px){.about-page{padding:var(--spacing-md);padding-bottom:80px}.about-container{padding:var(--spacing-xl)}.about-content h1{font-size:var(--font-size-lg)}.about-features h2,.about-privacy h2,.about-intro{font-size:var(--font-size-base)}.about-features li{font-size:var(--font-size-sm)}}.terms-page{min-height:100vh;background-color:var(--bg);padding:var(--page-padding);padding-bottom:80px}.terms-container{max-width:var(--max-width);margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-2xl)}.back-button{background:none;border:none;color:var(--primary);font-size:var(--font-size-sm);cursor:pointer;padding:0;text-decoration:underline;margin-bottom:var(--spacing-xl)}.back-button:hover{color:var(--primary-hover)}.terms-content{color:var(--text)}.terms-content h1{font-size:var(--font-size-xl);color:var(--text);margin:0 0 var(--spacing-2xl) 0;font-weight:var(--font-weight-semibold)}.terms-section{margin-bottom:var(--spacing-2xl)}.terms-section h2{font-size:var(--font-size-md);color:var(--text);margin:0 0 var(--spacing-md) 0;font-weight:var(--font-weight-semibold)}.terms-section p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-muted);margin:0 0 var(--spacing-lg) 0}.terms-section ul{list-style:none;padding:0;margin:0 0 var(--spacing-lg) 0}.terms-section li{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-muted);margin-bottom:var(--spacing-sm);padding-left:var(--spacing-xl);position:relative}.terms-section li:before{content:"•";position:absolute;left:0;color:var(--primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}@media(max-width:768px){.terms-page{padding:var(--spacing-md);padding-bottom:80px}.terms-container{padding:var(--spacing-xl)}.terms-content h1{font-size:var(--font-size-lg)}.terms-section h2{font-size:var(--font-size-base)}.terms-section p,.terms-section li{font-size:var(--font-size-sm)}}.global-header{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--surface);padding:0 var(--page-padding);padding-top:env(safe-area-inset-top,0);height:var(--header-h);display:flex;align-items:center}[data-theme=light] .global-header{background-color:var(--brand)}.global-header:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:14px;background-image:url("data:image/svg+xml,%3Csvg width='100%25' height='14' viewBox='0 0 400 14' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,8 Q18,4 35,8 Q52,12 70,8 Q88,4 105,8 Q122,12 140,8 Q158,4 175,8 Q192,12 210,8 Q228,4 245,8 Q262,12 280,8 Q298,4 315,8 Q332,12 350,8 Q368,4 385,8 Q400,12 400,8' stroke='%230B0B0D' stroke-width='2.8' fill='none' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M0,8 Q22,5 45,8 Q67,11 90,8 Q112,5 135,8 Q157,11 180,8 Q202,5 225,8 Q247,11 270,8 Q292,5 315,8 Q337,11 360,8 Q382,5 400,8' stroke='%230B0B0D' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round' opacity='0.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:center;background-size:auto 14px;pointer-events:none;z-index:1001}[data-theme=dark] .global-header:after{opacity:.4;filter:brightness(0) invert(1)}[data-theme=light] .global-header-title{color:#0b0b0d}[data-theme=light] .global-header-subtitle{color:#0b0b0db3}[data-theme=light] .global-header-icon{filter:brightness(0)}.global-header-content{max-width:var(--max-width);width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg)}.global-header-left{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer;transition:opacity .2s ease}.global-header-left:hover{opacity:.8}.global-header-icon{font-size:20px;line-height:1}.global-header-title-group{display:flex;flex-direction:column;gap:2px}.global-header-title{font-size:20px;font-weight:var(--font-weight-semibold);color:var(--text);margin:0;line-height:1.2}[data-theme=light] .global-header-title{font-family:Kalam,cursive}.global-header-subtitle{font-size:11px;color:var(--text-muted);line-height:1;font-weight:var(--font-weight-normal)}.global-header-right{display:flex;align-items:center;gap:var(--spacing-md)}@media(max-width:768px){.global-header{height:56px;padding:0 var(--spacing-lg)}.global-header-title{font-size:18px}.global-header-subtitle{font-size:10px}.global-header-icon{font-size:18px}}.app-footer{position:fixed;bottom:0;left:0;right:0;width:100%;height:var(--footer-h);background-color:var(--surface);padding:0 var(--page-padding);padding-bottom:calc(env(safe-area-inset-bottom,0) + 0px);text-align:center;z-index:1000;box-shadow:var(--shadow-sm);overflow:visible;display:flex;align-items:center;justify-content:center}[data-theme=light] .app-footer{background-color:var(--brand)}[data-theme=dark] .app-footer{background-color:var(--surface)}.app-footer:before{content:"";position:absolute;left:0;right:0;top:-7px;height:14px;background-image:url("data:image/svg+xml,%3Csvg width='100%25' height='14' viewBox='0 0 400 14' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,8 Q18,4 35,8 Q52,12 70,8 Q88,4 105,8 Q122,12 140,8 Q158,4 175,8 Q192,12 210,8 Q228,4 245,8 Q262,12 280,8 Q298,4 315,8 Q332,12 350,8 Q368,4 385,8 Q400,12 400,8' stroke='%230B0B0D' stroke-width='2.8' fill='none' stroke-linecap='round' stroke-linejoin='round' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M0,8 Q22,5 45,8 Q67,11 90,8 Q112,5 135,8 Q157,11 180,8 Q202,5 225,8 Q247,11 270,8 Q292,5 315,8 Q337,11 360,8 Q382,5 400,8' stroke='%230B0B0D' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round' opacity='0.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:center;background-size:auto 14px;pointer-events:none;z-index:2;width:100%}[data-theme=dark] .app-footer:before{opacity:.4;filter:brightness(0) invert(1)}.footer-links{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.footer-links a{color:var(--primary);text-decoration:none;transition:color .2s ease}[data-theme=light] .footer-links a{color:var(--text)}[data-theme=light] .footer-links a:hover{color:#0b0b0db3}.footer-links a:hover{color:var(--primary-hover);text-decoration:underline}.footer-separator{color:var(--border);margin:0 var(--spacing-xs)}[data-theme=light] .footer-separator{color:#0b0b0d4d}@media(max-width:768px){.admin-shell .site-footer{display:none!important}.app-footer{padding:var(--spacing-md) var(--spacing-lg)}.footer-links{font-size:var(--font-size-xs)}}.app-main{overflow-x:hidden;overflow-y:auto;width:100%;display:flex;flex-direction:column;flex:1;box-sizing:border-box;height:100dvh;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.app-main>.home-main{height:calc(100dvh - var(--header-h) - var(--footer-h) - env(safe-area-inset-top,0) - env(safe-area-inset-bottom,0));margin-top:var(--header-h);overflow-y:auto;overflow-x:hidden;display:flex;align-items:center;justify-content:center;padding:12px 16px;box-sizing:border-box}.app-main>*:not(.home-main){padding-top:var(--header-h);padding-bottom:var(--footer-h);min-height:calc(100vh - var(--header-h) - var(--footer-h))}:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 22px;--font-size-2xl: 24px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 48px;--max-width: 1100px;--page-padding: 24px;--card-padding: 16px;--border-radius: 12px;--border-radius-sm: 8px;--border-radius-lg: 14px;--header-h: 60px;--footer-h: 64px;--house-header-h: 80px;--shadow-sm: 0 1px 1px 0 rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px 0 rgba(0, 0, 0, .08);--shadow-lg: 0 2px 6px 0 rgba(0, 0, 0, .1);--button-height: 40px;--button-height-lg: 44px;--button-padding-x: 16px;--button-padding-y: 10px;--input-height: 40px;--input-padding-x: 12px;--input-padding-y: 10px}@media(max-width:768px){:root{--header-h: 56px;--footer-h: 64px;--house-header-h: 100px}}:root,[data-theme=dark]{--bg: #1a1a1a;--surface: #242424;--border: #3a3a3a;--border-light: #2d2d2d;--text: #e5e5e5;--text-muted: #a0a0a0;--text-light: #707070;--primary: #3b82f6;--primary-hover: #2563eb;--primary-pressed: #1e40af;--primary-text: white;--primary-light: #1e3a8a;--link: #60a5fa;--link-hover: #3b82f6;--brand: var(--primary);--brand-2: #60a5fa;--line: #3a3a3a;--accent-pink: var(--primary);--accent-pink-hover: var(--primary-hover);--accent-pink-pressed: var(--primary-pressed);--success: #10b981;--success-light: #064e3b;--warning: #f59e0b;--warning-light: #78350f;--error: #ef4444;--error-light: #7f1d1d;--danger: var(--error);--shadow: 0 8px 24px rgba(0, 0, 0, .3);--warning-yellow: #FACC15;--warning-yellow-bg: rgba(250, 204, 21, .18);--warning-yellow-border: rgba(250, 204, 21, .55);--warning-yellow-hover: rgba(250, 204, 21, .25)}[data-theme=light]{--bg: #F6EFE6;--surface: #FFFFFF;--border: #D8D1C7;--border-light: #E8E1D7;--text: #0B0B0D;--text-muted: #5B5B66;--text-light: #8B8B95;--primary: #FFB6B6;--primary-hover: #FFA7A7;--primary-pressed: #FF9A9A;--primary-text: #0B0B0D;--primary-light: #FFE6E6;--link: #2563eb;--link-hover: #1d4ed8;--brand: #2FB6FF;--brand-2: #7AD6FF;--line: #0B0B0D;--accent-pink: #FFB6B6;--accent-pink-hover: #FFA7A7;--accent-pink-pressed: #FF9A9A;--success: #059669;--success-light: #d1fae5;--warning: #d97706;--warning-light: #fef3c7;--error: #dc2626;--error-light: #fee2e2;--danger: var(--error);--shadow: 0 8px 24px rgba(0, 0, 0, .08)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--page-padding)}@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}:root{--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:24px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--spacing-2xl:32px;--spacing-3xl:48px;--max-width:1100px;--page-padding:24px;--card-padding:16px;--border-radius:12px;--border-radius-sm:8px;--border-radius-lg:14px;--header-h:60px;--footer-h:64px;--house-header-h:80px}@media(max-width:768px){:root{--header-h:56px;--footer-h:64px;--house-header-h:100px}}:root{--shadow-sm:0 1px 1px 0 #0000000d;--shadow-md:0 1px 3px 0 #00000014;--shadow-lg:0 2px 6px 0 #0000001a;--button-height:40px;--button-height-lg:44px;--button-padding-x:16px;--button-padding-y:10px;--input-height:40px;--input-padding-x:12px;--input-padding-y:10px}:root,[data-theme=dark]{--bg:#1a1a1a;--surface:#242424;--border:#3a3a3a;--border-light:#2d2d2d;--text:#e5e5e5;--text-muted:#a0a0a0;--text-light:#707070;--primary:#3b82f6;--primary-hover:#2563eb;--primary-pressed:#1e40af;--primary-text:white;--primary-light:#1e3a8a;--link:#60a5fa;--link-hover:#3b82f6;--brand:var(--primary);--brand-2:#60a5fa;--line:#3a3a3a;--accent-pink:var(--primary);--accent-pink-hover:var(--primary-hover);--accent-pink-pressed:var(--primary-pressed);--success:#10b981;--success-light:#064e3b;--warning:#f59e0b;--warning-light:#78350f;--error:#ef4444;--error-light:#7f1d1d;--danger:var(--error);--shadow:0 8px 24px #0000004d;--warning-yellow:#facc15;--warning-yellow-bg:#facc152e;--warning-yellow-border:#facc158c;--warning-yellow-hover:#facc1540}[data-theme=light]{--bg:#f6efe6;--surface:#fff;--border:#d8d1c7;--border-light:#e8e1d7;--text:#0b0b0d;--text-muted:#5b5b66;--text-light:#8b8b95;--primary:#ffb6b6;--primary-hover:#ffa7a7;--primary-pressed:#ff9a9a;--primary-text:#0b0b0d;--primary-light:#ffe6e6;--link:#2563eb;--link-hover:#1d4ed8;--brand:#2fb6ff;--brand-2:#7ad6ff;--line:#0b0b0d;--accent-pink:#ffb6b6;--accent-pink-hover:#ffa7a7;--accent-pink-pressed:#ff9a9a;--success:#059669;--success-light:#d1fae5;--warning:#d97706;--warning-light:#fef3c7;--error:#dc2626;--error-light:#fee2e2;--danger:var(--error);--shadow:0 8px 24px #00000014}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text);margin:0}h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text);margin:0}h3{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text);margin:0}.text-muted{color:var(--text-muted);font-size:var(--font-size-sm)}.text-light{color:var(--text-light);font-size:var(--font-size-xs)}.container{max-width:var(--max-width);padding:0 var(--page-padding);margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-lg);padding:var(--card-padding);box-shadow:var(--shadow-sm)}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}.block{display:block}.flex{display:flex}.inline{display:inline}.aspect-square{aspect-ratio:1}.h-full{height:100%}.max-h-\[50vh\]{max-height:50vh}.w-full{width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.opacity-60{opacity:.6}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@layer base{:root{--background:0 0% 100%;--foreground:222.2 84% 4.9%;--card:0 0% 100%;--card-foreground:222.2 84% 4.9%;--popover:0 0% 100%;--popover-foreground:222.2 84% 4.9%;--primary:222.2 47.4% 11.2%;--primary-foreground:210 40% 98%;--secondary:210 40% 96.1%;--secondary-foreground:222.2 47.4% 11.2%;--muted:210 40% 96.1%;--muted-foreground:215.4 16.3% 46.9%;--accent:210 40% 96.1%;--accent-foreground:222.2 47.4% 11.2%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 40% 98%;--border:214.3 31.8% 91.4%;--input:214.3 31.8% 91.4%;--ring:222.2 84% 4.9%;--radius:.5rem}.dark{--background:222.2 84% 4.9%;--foreground:210 40% 98%;--card:222.2 84% 4.9%;--card-foreground:210 40% 98%;--popover:222.2 84% 4.9%;--popover-foreground:210 40% 98%;--primary:210 40% 98%;--primary-foreground:222.2 47.4% 11.2%;--secondary:217.2 32.6% 17.5%;--secondary-foreground:210 40% 98%;--muted:217.2 32.6% 17.5%;--muted-foreground:215 20.2% 65.1%;--accent:217.2 32.6% 17.5%;--accent-foreground:210 40% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 40% 98%;--border:217.2 32.6% 17.5%;--input:217.2 32.6% 17.5%;--ring:212.7 26.8% 83.9%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}}*{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;margin:0;overflow-x:hidden}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg);color:var(--text);width:100%;height:100%;margin:0;overflow:hidden}#root{width:100%;height:100%;overflow:hidden}button{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--border-radius);padding:var(--button-padding-y)var(--button-padding-x);height:var(--button-height);border:none;justify-content:center;align-items:center;line-height:1;transition:all .2s;display:inline-flex}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff;border:none}[data-theme=light] .btn-primary{background-color:var(--accent-pink);color:#0b0b0d;border:1px solid #00000014}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}[data-theme=light] .btn-primary:hover:not(:disabled){background-color:var(--accent-pink-hover)}.btn-primary:active:not(:disabled){background-color:var(--primary-pressed)}[data-theme=light] .btn-primary:active:not(:disabled){background-color:var(--accent-pink-pressed)}.btn-primary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=light] .btn-primary:focus-visible{outline:2px solid var(--accent-pink-hover);outline-offset:2px}.btn-secondary{background-color:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background-color:var(--border-light);border-color:var(--border)}input,textarea,select{font-family:var(--font-family);font-size:var(--font-size-base);border:1px solid var(--border);border-radius:var(--border-radius);padding:var(--input-padding-y)var(--input-padding-x);height:var(--input-height);background-color:var(--surface);color:var(--text);transition:border-color .2s}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
