:root{--color-primary: #8b6f47;--color-primary-hover: #755c3a;--color-primary-dark: #5c4a2e;--color-primary-light: #f5ede3;--color-primary-50: #f5ede3;--color-accent: #6b8f5e;--color-accent-light: #edf3eb;--color-danger: #b85c3a;--color-danger-hover: #8f4429;--color-danger-light: #faf0ec;--color-danger-dark: #8f4429;--color-danger-border: #edc9bb;--color-success: #6b8f5e;--color-success-light: #edf3eb;--color-success-dark: #3d5434;--color-success-vivid: #6b8f5e;--color-warning: #c17f4e;--color-warning-light: #f9efe6;--color-warning-dark: #7d4e2c;--color-warning-medium: #a5683c;--color-warning-border: #ebd3c0;--color-rating: #c17f4e;--color-verified: #8b6f47;--color-bg: #f5ebe0;--color-bg-warm: #f5ebe0;--color-surface: #fdfaf6;--color-surface-hover: #f5ede3;--color-border: #e6d5c3;--color-border-light: #f5ede3;--color-text: #3c2a14;--color-text-secondary: #5c4a32;--color-text-muted: #8b7355;--color-text-inverse: #ffffff;--shadow-xs: 0 1px 2px rgba(60, 42, 20, .04);--shadow-sm: 0 2px 8px rgba(60, 42, 20, .06);--shadow-md: 0 4px 16px rgba(60, 42, 20, .08);--shadow-lg: 0 8px 24px rgba(60, 42, 20, .1);--shadow-xl: 0 12px 40px rgba(60, 42, 20, .12);--shadow-color: 0 2px 8px rgba(139, 111, 71, .2);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px;--radius-2xl: 14px;--radius-full: 999px;--sidebar-width: 280px;--sidebar-collapsed: 48px;--navbar-height: 60px;--max-width: 1360px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif: Georgia, "Times New Roman", serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .12s;--duration-normal: .2s;--duration-slow: .35s;--glass-bg: rgba(253, 250, 246, .55);--glass-bg-strong: #fdfaf6;--glass-bg-subtle: rgba(253, 250, 246, .35);--glass-border: #e6d5c3;--glass-border-light: rgba(230, 213, 195, .5);--glass-blur: blur(0px);--glass-blur-light: blur(0px);--glass-shadow: 0 2px 8px rgba(60, 42, 20, .06);--glass-shadow-lg: 0 4px 16px rgba(60, 42, 20, .08);--glass-glow: 0 0 0 3px rgba(139, 111, 71, .1);--bg-mesh: #f5ebe0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);background:var(--bg-mesh);background-attachment:fixed;line-height:1.6;min-height:100vh;position:relative}body:before,body:after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:-1;opacity:.5}body:before{top:-120px;right:-80px;width:480px;height:480px;background:radial-gradient(circle,rgba(139,111,71,.06) 0%,transparent 70%)}body:after{bottom:-100px;left:-60px;width:400px;height:400px;background:radial-gradient(circle,rgba(107,143,94,.05) 0%,transparent 70%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}input,select,textarea{font:inherit;color:inherit;border:none;background:none}select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b7355' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px!important}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glassReveal{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transform:translateY(10px)}to{opacity:1;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transform:translateY(0)}}@keyframes subtleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 18px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;transition:all var(--duration-fast) ease;white-space:nowrap;position:relative;overflow:hidden}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 2px 8px #8b6f4733}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 4px 16px #8b6f4740;transform:translateY(-1px)}.btn-primary:active{transform:scale(.98);background:var(--color-primary-dark);box-shadow:0 1px 2px #8b6f4733}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:var(--color-danger-hover);transform:translateY(-1px)}.btn-ghost{color:var(--color-text-secondary);background:transparent}.btn-ghost:hover{background:#8b6f4714;color:var(--color-text)}.btn-outline{border:1.5px solid var(--color-border);color:var(--color-text-secondary);background:var(--color-surface)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light);box-shadow:var(--glass-shadow)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-sm{padding:8px 14px;font-size:.8125rem;border-radius:var(--radius-sm)}.btn-lg{padding:13px 28px;font-size:.9375rem;border-radius:var(--radius-lg)}.btn-block{width:100%}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:all var(--duration-fast) ease}.btn-icon:hover{background:var(--color-surface-hover);color:var(--color-text)}.expense-linked-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--radius-full);background:var(--color-success-light);color:var(--color-success-dark);font-size:.6875rem;font-weight:600}.track-expense-btn{font-size:.6875rem}@media(max-width:768px){.track-expense-btn{width:100%;justify-content:center;margin-top:8px}}.main-content{max-width:var(--max-width);margin:0 auto;padding:32px 28px}.main-content.no-padding{max-width:none;padding:0;height:100vh;overflow:hidden}.page-loading{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--navbar-height) - 64px)}.page-error{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:80px}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--color-accent)}.loading-spinner p{font-size:.875rem;font-weight:500}.error-message{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--color-danger-light);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);color:var(--color-danger);font-size:.875rem;font-weight:500;margin-bottom:16px;animation:fadeInUp var(--duration-normal) var(--ease-out)}.error-dismiss{margin-left:auto;opacity:.5;transition:opacity var(--duration-fast) ease}.error-dismiss:hover{opacity:1}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:72px 24px;gap:10px}.empty-state-icon{color:var(--color-text-muted);margin-bottom:12px;opacity:.5}.empty-state h3{font-size:1.125rem;font-weight:700;color:var(--color-text)}.empty-state p{color:var(--color-text-secondary);font-size:.9rem;max-width:380px;line-height:1.6}.empty-state-action{margin-top:20px}.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-full);font-size:.6875rem;font-weight:600;white-space:nowrap;letter-spacing:.01em}.status-badge{display:inline-block;position:absolute;top:12px;left:12px;padding:4px 12px;border-radius:var(--radius-full);font-size:.6875rem;font-weight:700;letter-spacing:.02em;z-index:2}.status-planning{background:#8b6f471a;color:#8b6f47}.status-upcoming{background:#6b8f5e1f;color:#6b8f5e}.status-ongoing{background:#c17f4e1f;color:#c17f4e}.status-completed{background:#3c2a1414;color:#3c2a14}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{display:flex;align-items:center;gap:7px;font-size:.8125rem;font-weight:600;color:var(--color-text-secondary)}.form-group label .optional{font-weight:400;color:var(--color-text-muted)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);font-size:.875rem;transition:all var(--duration-fast) ease;outline:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #8b6f471a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted)}.form-row{display:flex;gap:14px}.form-row>*{flex:1}.form-field{display:flex;flex-direction:column;gap:4px}.form-field-label{font-size:.6875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.form-time-row{align-items:flex-end}.form-time-field{display:flex;flex-direction:column;gap:4px}.form-time-label{font-size:.6875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.form-time-arrow{flex:0!important;color:var(--color-text-muted);font-size:.875rem;padding-bottom:10px}.form-actions{display:flex;align-items:center;gap:8px;margin-top:4px}.checkbox-label{display:flex;align-items:center;gap:7px;font-size:.8125rem;color:var(--color-text-secondary);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent)}.add-activity-form,.add-budget-form,.add-note-form{display:flex;flex-direction:column;gap:12px;padding:18px;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);animation:fadeInUp .3s var(--ease-out) both;z-index:1;position:relative}.add-activity-form input,.add-activity-form select,.add-activity-form textarea,.add-budget-form input,.add-budget-form select,.add-note-form input,.add-note-form textarea,.add-expense-form input,.add-expense-form select,.note-edit input,.note-edit textarea,.member-add-form input{width:100%;padding:9px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font-size:.8125rem;outline:none;transition:all var(--duration-fast) ease}.add-activity-form input:focus,.add-activity-form select:focus,.add-activity-form textarea:focus,.add-budget-form input:focus,.add-budget-form select:focus,.add-note-form input:focus,.add-note-form textarea:focus,.add-expense-form input:focus,.add-expense-form select:focus,.note-edit input:focus,.note-edit textarea:focus,.member-add-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #8b6f471a}.add-activity-form input::placeholder,.add-activity-form textarea::placeholder,.add-budget-form input::placeholder,.add-note-form input::placeholder,.add-note-form textarea::placeholder,.add-expense-form input::placeholder,.note-edit input::placeholder,.note-edit textarea::placeholder,.member-add-form input::placeholder{color:var(--color-text-muted)}::selection{background:var(--color-primary-light);color:var(--color-primary)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00000040}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media(pointer:coarse){.btn-icon{width:44px;height:44px}.btn-sm{min-height:44px}.error-dismiss{opacity:.8}.btn-primary:hover,.btn-danger:hover{transform:none}}@media(hover:none){.btn-primary:hover,.btn-danger:hover{transform:none}}@media(prefers-contrast:more){:root{--glass-bg: rgba(253, 250, 246, .85);--glass-bg-strong: rgba(253, 250, 246, .95);--glass-bg-subtle: rgba(253, 250, 246, .7);--glass-border: #b8a088;--glass-border-light: #d4c0a8;--color-border: #b8a088;--color-border-light: #d4c0a8;--color-text-muted: #5c4a34}}@media(max-width:768px){.main-content{padding:20px 16px 76px}.main-content.no-padding{padding-bottom:0}.form-row{flex-direction:column}.form-row.form-time-row{flex-direction:row}}@media(max-width:480px){.main-content{padding:16px 12px 80px}.empty-state{padding:48px 16px}.empty-state h3{font-size:1rem}.empty-state p{font-size:.8125rem}.btn-lg{padding:12px 20px;font-size:.875rem}.filter-tab{padding:6px 12px;font-size:.75rem}}@media(max-width:768px)and (orientation:landscape){.main-content{padding:12px 16px 64px}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);font-size:.8375rem;font-weight:500;box-shadow:var(--shadow-lg);animation:toastIn .3s var(--ease-out);min-width:260px;max-width:400px}.toast-success{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid rgba(107,143,94,.3)}.toast-error{background:var(--color-danger-light);color:var(--color-danger-dark);border:1px solid rgba(184,92,58,.3)}.toast-info{background:var(--color-primary-light);color:var(--color-primary-dark);border:1px solid rgba(139,111,71,.3)}.toast-icon{flex-shrink:0;display:flex}.toast-message{flex:1;line-height:1.4}.toast-close{flex-shrink:0;background:none;border:none;cursor:pointer;opacity:.5;padding:2px;display:flex;border-radius:var(--radius-xs);transition:opacity var(--duration-fast) ease;color:inherit}.toast-close:hover{opacity:1}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.toast-container{bottom:72px}}@media(max-width:480px){.toast-container{right:16px;left:16px}.toast{min-width:0;max-width:100%}}@media(pointer:coarse){.toast-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}.modal-overlay{position:fixed;inset:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;animation:fadeIn var(--duration-fast) ease}.modal-content{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--color-border);width:100%;max-width:520px;max-height:85vh;overflow:auto;animation:glassReveal .3s var(--ease-out) both}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border)}.modal-header h2{font-size:1.0625rem;font-weight:700}.modal-close{color:var(--color-text-muted);transition:color var(--duration-fast) ease}.modal-close:hover{color:var(--color-text)}.modal-body{padding:24px}@media(max-width:768px){.modal-overlay{padding:12px}.modal-content{max-height:90vh}.modal-header,.modal-body{padding:16px}}@media(max-width:480px){.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100vw;max-height:95vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:480px)and (orientation:landscape){.modal-overlay{align-items:center;padding:8px}.modal-content{max-height:100vh;max-height:100dvh;border-radius:var(--radius-lg);padding-bottom:0}.modal-header{padding:10px 16px}.modal-body{padding:12px 16px}}.save-account-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;background:var(--color-primary-light);border-bottom:1px solid rgba(139,111,71,.15);animation:fadeInUp .3s var(--ease-out)}.save-account-banner-content{display:flex;align-items:center;gap:10px;font-size:.8125rem;font-weight:500;color:var(--color-primary-dark)}.save-account-banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.save-account-dismiss{display:flex;padding:4px;border-radius:var(--radius-sm);color:var(--color-primary-dark);opacity:.5;transition:opacity var(--duration-fast) ease}.save-account-dismiss:hover{opacity:1}.save-modal{display:flex;flex-direction:column;gap:20px}.save-modal-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding-bottom:4px}.save-modal-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-lg);background:var(--color-primary-light);color:var(--color-primary);box-shadow:0 4px 12px #8b6f4726}.save-modal-desc{font-size:.85rem;color:var(--color-text-secondary);line-height:1.55;max-width:340px}.save-modal-features{display:flex;flex-direction:column;gap:10px;padding:14px 18px;background:var(--color-surface-hover);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.save-modal-feature{display:flex;align-items:center;gap:10px;font-size:.8125rem;color:var(--color-text-secondary)}.save-modal-feature-dot{width:6px;height:6px;border-radius:50%;background:var(--color-primary);flex-shrink:0}.save-modal .btn-social{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.875rem;font-weight:500;transition:all var(--duration-fast) ease}.save-modal .btn-social:hover{background:var(--color-surface-hover);border-color:var(--color-text-muted)}.save-modal .btn-social:disabled{opacity:.6;cursor:not-allowed}.save-modal .btn-google:hover{border-color:#4285f480;background:#4285f40f}.save-modal .btn-apple:hover{border-color:#0003;background:var(--color-surface-hover)}.save-modal-options{display:flex;flex-direction:column;gap:10px}.save-modal-email-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:.875rem;font-weight:500;transition:all var(--duration-fast) ease}.save-modal-email-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.save-modal-back{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;font-weight:500;color:var(--color-text-muted);transition:color var(--duration-fast) ease;align-self:flex-start;margin-bottom:-8px}.save-modal-back:hover{color:var(--color-primary)}.save-modal .auth-form{gap:14px}.save-modal .auth-form .btn-primary{margin-top:8px}.save-modal .auth-form .form-group{display:flex;flex-direction:column;gap:5px}.save-modal .auth-form label{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary)}.save-modal .auth-form input{width:100%;padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:.8125rem;outline:none;transition:all var(--duration-fast) ease}.save-modal .auth-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #8b6f471a}.save-modal .auth-divider{display:flex;align-items:center;gap:12px;margin:2px 0}.save-modal .auth-divider:before,.save-modal .auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.save-modal .auth-divider span{font-size:.75rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.save-account-item{color:var(--color-primary)!important}.save-account-item:hover{background:var(--color-primary-light)!important;color:var(--color-primary-dark)!important}.guest-label{color:var(--color-warning)!important;font-weight:600;font-size:.7rem!important}@media(max-width:480px){.save-account-banner{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 16px}.save-account-banner-actions{width:100%;justify-content:space-between}}.mobile-tab-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -2px 8px #3c2a140f;padding-bottom:env(safe-area-inset-bottom,0)}@media(max-width:768px){.mobile-tab-bar{display:flex;align-items:center;justify-content:space-around;height:calc(56px + env(safe-area-inset-bottom,0))}}.mobile-tab-bar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;padding:6px 0;min-height:48px;color:var(--color-text-muted);font-size:.625rem;font-weight:600;letter-spacing:.02em;transition:color var(--duration-fast) ease;-webkit-tap-highlight-color:transparent;background:none;border:none;cursor:pointer}.mobile-tab-bar-item.active{color:var(--color-primary)}.mobile-tab-bar-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm)}.mobile-tab-bar-add svg{width:40px;height:40px;padding:9px;background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-full);box-shadow:0 2px 8px #8b6f4740}.mobile-account-overlay{display:none;position:fixed;inset:0;z-index:101;background:#00000059;animation:fadeIn var(--duration-fast) ease}@media(max-width:768px){.mobile-account-overlay{display:block}}.mobile-account-sheet{position:absolute;bottom:calc(56px + env(safe-area-inset-bottom,0));left:0;right:0;background:var(--color-surface);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);box-shadow:0 -4px 24px #3c2a141f;padding:20px;animation:slideUp var(--duration-normal) var(--ease-out)}.mobile-account-header{display:flex;align-items:center;gap:14px;padding-bottom:16px}.mobile-account-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;flex-shrink:0}.mobile-account-info{display:flex;flex-direction:column;min-width:0}.mobile-account-name{font-size:.9375rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-account-email{font-size:.8125rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guest-label{color:var(--color-warning-medium);font-weight:500}.mobile-account-divider{height:1px;background:var(--color-border-light);margin-bottom:8px}.mobile-account-action{display:flex;align-items:center;gap:12px;width:100%;padding:14px 8px;font-size:.9375rem;font-weight:500;color:var(--color-text-secondary);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) ease;-webkit-tap-highlight-color:transparent;min-height:48px}.mobile-account-action:active{background:var(--color-surface-hover)}.mobile-account-signout{color:var(--color-danger)}.navbar{position:sticky;top:0;z-index:100;background:var(--color-surface);border-bottom:1px solid var(--color-border);height:var(--navbar-height);box-shadow:0 4px 20px #8b6f470f}.navbar-inner{max-width:var(--max-width);margin:0 auto;padding:0 28px;height:100%;display:flex;align-items:center;gap:28px}.navbar-brand{display:flex;align-items:center;gap:10px;font-size:1.2rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,var(--color-primary),#8b6f47);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0}.navbar-brand svg{color:var(--color-primary);-webkit-text-fill-color:initial}.navbar-links{display:flex;align-items:center;gap:4px;flex:1}.navbar-links a{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);transition:all var(--duration-fast) ease}.navbar-links a:hover{color:var(--color-primary);background:var(--color-primary-light)}.navbar-links a.active{color:var(--color-primary);background:var(--color-primary-light);font-weight:600;box-shadow:0 0 0 1px #8b6f4726}.navbar-actions{display:flex;align-items:center;gap:10px}.signout-confirm{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.signout-confirm-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#f9efe6,#f0dcc8);color:var(--color-warning-medium);box-shadow:0 4px 12px #a5683c26}.signout-confirm-msg{font-size:.9rem;color:var(--color-text);line-height:1.55;max-width:360px}.signout-confirm-hint{font-size:.8125rem;color:var(--color-text-muted);line-height:1.5}.signout-confirm-actions{display:flex;gap:10px;width:100%;margin-top:4px}.signout-confirm-actions .btn{flex:1}@media(max-width:768px){.navbar{height:48px}.navbar-inner{padding:0 16px;justify-content:center}.navbar-links,.navbar-actions{display:none}.signout-confirm-actions{flex-direction:column}}.user-dropdown-wrapper{position:relative;margin-left:8px;padding-left:12px;border-left:1px solid var(--color-border)}.user-dropdown-trigger{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:var(--radius-md);transition:background var(--duration-fast) ease}.user-dropdown-trigger:hover{background:var(--color-surface-hover)}.user-avatar-sm{width:30px;height:30px;border-radius:var(--radius-full);background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.user-avatar-lg{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;flex-shrink:0}.chevron-rotated{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#fdfaf6;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:scaleIn .15s var(--ease-out);overflow:hidden;z-index:100}.user-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px}.user-dropdown-info{display:flex;flex-direction:column;min-width:0}.user-dropdown-name{font-size:.875rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dropdown-email{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dropdown-divider{height:1px;background:var(--color-border-light)}.user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;transition:all var(--duration-fast) ease}.user-dropdown-item:hover{background:var(--color-surface-hover);color:var(--color-danger)}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;text-align:center;padding:40px;color:var(--color-text-secondary)}.error-boundary h2{font-size:1.25rem;font-weight:700;color:var(--color-text)}.error-boundary p{font-size:.875rem;max-width:400px}
