:root{font-family:Plus Jakarta Sans,sans-serif;color:#f8f6ff;background:radial-gradient(circle at top left,rgba(93,63,211,.26),transparent 28%),radial-gradient(circle at 85% 10%,rgba(25,200,184,.16),transparent 24%),linear-gradient(180deg,#160f2f,#120d24 40%,#0b0917);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;font-weight:400;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}#root{min-height:100vh}.eyebrow{margin:0 0 12px;color:#b39cff;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.primary-button,.ghost-button,.text-button{border-radius:999px;transition:transform .16s ease,opacity .16s ease,border-color .16s ease,background-color .16s ease}.primary-button:hover,.ghost-button:hover,.text-button:hover{transform:translateY(-1px)}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.primary-button{min-height:48px;padding:0 20px;border:0;background:linear-gradient(135deg,#7e63ff,#5d3fd3);color:#fff;font-weight:700;box-shadow:0 14px 30px #5d3fd359}.ghost-button{min-height:46px;padding:0 18px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#f8f6ff}.compact-button{min-height:42px;padding:0 16px}.text-button{border:0;background:transparent;color:#b39cff;padding:0}.brand{display:flex;align-items:center;gap:12px;font-family:Outfit,sans-serif;font-weight:700;letter-spacing:.02em}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,#8d73ff,#5d3fd3);box-shadow:0 12px 26px #5d3fd357}.login-shell,.auth-status-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-shell{grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr);gap:32px}.login-hero,.login-card,.auth-status-card,.workspace-selection-card,.surface-card,.workspace-card,.profile-card{border:1px solid rgba(255,255,255,.1);background:#ffffff0d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #00000038}.login-hero,.login-card,.auth-status-card,.workspace-selection-card{width:min(100%,560px);border-radius:32px;padding:32px}.login-hero h1,.auth-status-card h1,.workspace-selection-card h1,.page-header h1,.surface-card h2,.workspace-card h2{margin:0;font-family:Outfit,sans-serif;line-height:1}.login-hero h1,.auth-status-card h1,.workspace-selection-card h1{font-size:clamp(2.8rem,5vw,4.8rem);max-width:10ch}.login-copy,.helper-text,.page-description,.workspace-card p,.profile-card,.surface-card p,.surface-card span,.field span,table{color:#f8f6ffcc}.login-card{display:grid;gap:18px}.auth-panel{display:grid;gap:18px;max-height:420px;opacity:1;overflow:hidden;transform:scale(1);transform-origin:top center;transition:max-height .22s ease,opacity .22s ease,transform .22s ease,margin .22s ease}.auth-panel.collapsed{max-height:0;opacity:0;transform:scale(.97);margin:-6px 0;pointer-events:none}.divider{display:flex;align-items:center;gap:12px;color:#f8f6ff99;font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;max-height:32px;opacity:1;overflow:hidden;transition:max-height .22s ease,opacity .22s ease,margin .22s ease}.divider.hidden{max-height:0;opacity:0;margin:-8px 0}.divider span{flex:1;height:1px;background:#ffffff14}.login-logo{width:min(260px,72%);margin:0 auto 6px}.field{display:grid;gap:8px}.field span{font-size:.92rem;font-weight:600}.field select,.field input{min-height:50px;width:100%;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:#0a0814b3;color:#f8f6ff;padding:0 16px;outline:none}.login-button{width:100%;margin-top:6px}.recaptcha-shell{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.helper-text,.error-text{margin:0;font-size:.92rem}.error-text{color:#ff9ec0}.app-shell{display:grid;grid-template-columns:290px minmax(0,1fr);height:100vh;overflow:hidden}.sidebar{height:100vh;padding:24px 20px;border-right:1px solid rgba(255,255,255,.08);background:#090714bd;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:hidden}.brand-sidebar{margin-bottom:22px}.brand-logo{width:180px}.workspace-card,.profile-card{border-radius:24px;padding:18px}.workspace-card h2{font-size:1.45rem;margin-bottom:8px}.workspace-meta,.profile-meta{display:block;margin-top:8px;color:#f8f6ffb3;font-size:.9rem}.workspace-label{margin:0 0 8px;color:#b39cff;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.sidebar-nav{display:grid;gap:10px;margin:20px 0}.sidebar-link{padding:13px 14px;border-radius:16px;color:#f8f6ffcc}.sidebar-link.active{background:#5d3fd33d;color:#fff}.sidebar-button{width:100%;margin-top:16px}.content-area{height:100vh;padding:28px;overflow:auto}.page-content{display:grid;gap:24px;max-width:1280px}.page-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.page-header h1{font-size:clamp(2.1rem,4vw,3.7rem);margin-bottom:12px;max-width:12ch}.page-description{margin:0;max-width:72ch}.stats-grid,.two-column-grid,.members-layout,.events-layout,.quick-actions,.button-row,.workspace-form,.toolbar-row,.workspace-type-grid{display:grid;gap:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.two-column-grid,.members-layout,.events-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.button-row{grid-template-columns:repeat(2,auto)}.workspace-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.toolbar-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-bottom:16px}.workspace-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0 0}.surface-card{border-radius:28px;padding:24px}.workspace-option{display:grid;gap:8px;text-align:left;padding:18px;border-radius:22px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#f8f6ff}.workspace-option.selected{border-color:#b39cff73;background:#5d3fd32e}.workspace-section{display:grid;gap:8px}.workspace-section+.workspace-section{margin-top:14px}.workspace-section-title{margin:8px 0 0;color:#f8f6ffa8;font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workspace-selection-card .button-row{margin-top:22px}.section-row{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.stat-card strong{display:block;margin:10px 0 6px;font-family:Outfit,sans-serif;font-size:2.2rem}.birthday-list,.family-list,.event-list{display:grid;gap:14px}.family-card-grid{display:grid;gap:16px;margin-top:18px}.family-card{padding:18px;border-radius:24px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.family-card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.family-card-label{margin:0 0 6px;color:#b39cff;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.family-card h3{margin:0 0 6px;font-family:Outfit,sans-serif;font-size:1.2rem}.family-card-header span,.family-member-row span{color:#f8f6ffb8}.family-member-stack{display:grid;gap:10px}.family-member-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:#0a081475}.member-role-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#ffffff0f;color:#efeaff;font-size:.8rem;white-space:nowrap}.member-role-pill.head{background:#5d3fd342;color:#d8ceff}.list-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}.list-row:first-child{border-top:0;padding-top:0}.list-row strong{display:block;margin-bottom:4px}.list-row span,.list-row time{color:#f8f6ffbd;font-size:.92rem}.upgrade-card{align-content:start}.bullet-list{display:grid;gap:10px;padding-left:18px;margin:16px 0 22px;color:#f8f6ffd1}.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-action{padding:18px;border-radius:22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.pill{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#5d3fd338;color:#d8ceff;font-size:.82rem;white-space:nowrap}.table-shell{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}thead th{color:#b39cff;border-top:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.calendar-cell{min-height:74px;display:grid;border-radius:18px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:10px}.calendar-header{min-height:42px;place-items:center;color:#b39cff;font-size:.82rem;font-weight:700}.event-day{background:linear-gradient(135deg,#5d3fd35c,#7e63ff47);border-color:#b39cff66}.calendar-date-cell{align-content:start}.calendar-muted{opacity:.35}.calendar-date-number{margin-bottom:8px;font-weight:700}.calendar-event-stack{display:grid;gap:6px}.calendar-event-chip{display:grid;gap:2px;padding:8px;border-radius:12px;background:#0a081473}.calendar-event-chip strong{font-size:.8rem}.calendar-event-chip span,.calendar-overflow{font-size:.72rem;color:#f8f6ffbd}.pricing-card{display:grid;gap:24px}.pricing-panel{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding:18px 20px;border-radius:24px;background:#5d3fd32e}.pricing-panel strong{font-family:Outfit,sans-serif;font-size:2rem}.empty-state,.success-text{margin:0;color:#f8f6ffbd}.success-text{color:#9ef1c7}.empty-table{color:#f8f6ffb3;padding:20px 0}.search-field{max-width:360px}@media (max-width: 1100px){.app-shell,.login-shell,.two-column-grid,.members-layout,.events-layout{grid-template-columns:1fr}.stats-grid,.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-form{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}}@media (max-width: 720px){.content-area,.sidebar,.login-shell,.auth-status-shell{padding:18px}.page-header,.section-row,.pricing-panel{align-items:flex-start;flex-direction:column}.stats-grid,.quick-actions,.button-row,.toolbar-row,.workspace-type-grid{grid-template-columns:1fr}.surface-card,.workspace-card,.profile-card,.login-card,.login-hero,.auth-status-card,.workspace-selection-card{border-radius:22px;padding:20px}.calendar-grid{gap:8px}.calendar-cell{min-height:54px}}
