/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@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-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-outline-style:solid;--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}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--color-primary-50:#f5f1ff;--color-primary-100:#ebe3ff;--color-primary-200:#d9c9ff;--color-primary-300:#bea4ff;--color-primary-400:#9d79f2;--color-primary-500:#7b55d9;--color-primary-600:#6941c6;--color-primary-700:#5532a4;--color-primary-800:#432c7a;--color-primary-900:#302050;--color-rose-50:#fff1f6;--color-rose-100:#ffe0eb;--color-rose-200:#ffc2d7;--color-rose-300:#ff98bc;--color-rose-400:#f46f9f;--color-rose-500:#ec4c86;--color-rose-600:#d83b73;--color-rose-700:#be2f68;--color-rose-800:#8f2851;--color-secondary:#ec4c86;--color-secondary-dark:#be2f68;--color-background:#f7f2fa;--color-background-dark:#21142f;--color-surface:#fff;--color-surface-warm:#fffafc;--color-surface-glass:#ffffffc7;--color-text:#30223b;--color-text-muted:#74687a;--color-text-light:#fff;--color-border:#e5dcea;--color-border-strong:#cfc0d8;--color-success:#2ea682;--color-success-dark:#18755c;--color-danger:#d94c67;--color-danger-dark:#a72f49;--color-warning:#d88732;--color-info:#4268c7}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--color-background);color:var(--color-text);margin:0;padding:0;font-family:Nunito Sans,Inter,system-ui,-apple-system,sans-serif;line-height:1.5}*{box-sizing:border-box}.app-shell{min-height:100dvh;display:flex}.desktop-sidebar{display:none}.app-main{flex:1;min-width:0;padding-bottom:80px}.mobile-nav{background:var(--color-surface);border-top:1px solid var(--color-border);height:72px;padding:0 8px;padding-bottom:env(safe-area-inset-bottom,0px);z-index:100;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav-link{color:var(--color-text-muted);border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:56px;padding:8px 12px;text-decoration:none;transition:color .15s;display:flex}.mobile-nav-link-active{color:var(--color-rose-500)}.mobile-nav-icon-wrapper{display:flex;position:relative}.mobile-nav-badge{background:var(--color-rose-500);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-4px;right:-8px}.mobile-nav-label{font-size:11px;font-weight:600}@media(min-width:1024px){.app-main{padding-bottom:0}.mobile-nav{display:none}.desktop-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:240px;min-height:100dvh;padding:24px 16px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:10px;margin-bottom:32px;padding:0 8px;display:flex}.sidebar-logo{color:var(--color-rose-500)}.sidebar-wordmark{color:var(--color-text);font-size:18px;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:4px;display:flex}.sidebar-link{color:var(--color-text-muted);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-link:hover{background:var(--color-primary-50);color:var(--color-text)}.sidebar-link-active{background:var(--color-primary-50);color:var(--color-primary-700);font-weight:600}.sidebar-badge{background:var(--color-rose-500);color:#fff;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.sidebar-footer{border-top:1px solid var(--color-border);margin-top:12px;padding-top:12px}.sidebar-signout{color:var(--color-text-muted);font-size:14px}.sidebar-signout:hover{color:var(--color-danger);background:#fef2f2}}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.splash-screen{background:radial-gradient(circle at 75% 20%,#f46f9f6b,#0000 34%),radial-gradient(circle at 20% 70%,#9d79f261,#0000 38%),linear-gradient(155deg,#302050,#5532a4 43%,#be2f68);justify-content:center;align-items:center;min-height:100dvh;display:flex}.splash-content{flex-direction:column;align-items:center;gap:24px;display:flex}.splash-heart{color:#fff;animation:2s ease-in-out infinite splash-pulse}@keyframes splash-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}.splash-text{color:#ffffffe6;margin:0;font-size:17px;font-weight:600}.splash-progress-bar{background:#fff3;border-radius:999px;width:196px;height:6px;overflow:hidden}.splash-progress-fill{background:#fffc;border-radius:999px;width:60%;height:100%;animation:2s ease-in-out infinite splash-progress}@keyframes splash-progress{0%{transform:translate(-60%)}to{transform:translate(160%)}}.welcome-screen{background:radial-gradient(circle at 75% 20%,#f46f9f6b,#0000 34%),radial-gradient(circle at 20% 70%,#9d79f261,#0000 38%),linear-gradient(155deg,#302050,#5532a4 43%,#be2f68);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.welcome-content{text-align:center;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:430px;display:flex}.welcome-phones{align-items:center;gap:16px;display:flex}.welcome-phone{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff26;border:1px solid #ffffff40;border-radius:18px;justify-content:center;align-items:center;width:80px;height:140px;display:flex}.welcome-heading{color:#fff;margin:0;font-size:38px;font-weight:700;line-height:1.2}.welcome-brand{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#ffc2d7,#fff);-webkit-background-clip:text;background-clip:text}.welcome-copy{color:#ffffffd9;max-width:320px;margin:0;font-size:17px;line-height:1.6}.welcome-actions{flex-direction:column;gap:12px;width:100%;max-width:320px;display:flex}.welcome-privacy{color:#ffffff8c;max-width:280px;margin:0;font-size:12px}.welcome-invite-link{margin:0}.link-button{color:#ffffffbf;cursor:pointer;background:0 0;border:none;padding:8px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:underline}.link-button:hover{color:#fff}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ec4c86,#be2f68);border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;height:48px;padding:0 24px;font-size:15px;font-weight:700;transition:transform .1s,box-shadow .15s;display:inline-flex;box-shadow:0 10px 24px #be2f6847}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}.btn-secondary{color:#fff;cursor:pointer;background:0 0;border:2px solid #ffffff59;border-radius:12px;justify-content:center;align-items:center;width:100%;height:48px;padding:0 24px;font-size:15px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.btn-secondary:hover{background:#ffffff1a;border-color:#ffffff8c}.btn-secondary:active{transform:translateY(1px)}.auth-screen{background:radial-gradient(circle at 85% 10%,#ec4c861f,#0000 30%),linear-gradient(#fffafd,#f7f2fa);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.auth-card{background:var(--color-surface);border-radius:24px;width:100%;max-width:480px;padding:32px 24px;position:relative;box-shadow:0 18px 40px #30205029,0 4px 12px #30205014}.auth-back{width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.auth-back:hover{background:var(--color-primary-50);color:var(--color-primary-600)}.auth-title{color:var(--color-text);margin:0 0 8px;font-size:28px;font-weight:700;line-height:1.25}.auth-subtitle{color:var(--color-text-muted);margin:0 0 24px;font-size:15px;line-height:1.5}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-footer{text-align:center;color:var(--color-text-muted);margin:20px 0 0;font-size:14px}.auth-link{color:var(--color-primary-600);font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-forgot-link{color:var(--color-primary-600);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:-8px;padding:0;font-size:14px;font-weight:500}.auth-forgot-link:hover{text-decoration:underline}.form-field{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--color-text);font-size:14px;font-weight:600}.form-input{border:2px solid var(--color-border);height:48px;color:var(--color-text);background:var(--color-surface);border-radius:12px;width:100%;padding:0 14px;font-family:inherit;font-size:15px;transition:border-color .15s}.form-input:focus{border-color:var(--color-primary-400);outline:none;box-shadow:0 0 0 3px #9d79f226}.form-input::placeholder{color:var(--color-border-strong)}.form-input-error{border-color:var(--color-danger)}.form-error{color:var(--color-danger);margin:0;font-size:13px}.form-success{color:var(--color-success,#15803d);margin:0;font-size:13px}.auth-forgot-box{background:var(--color-surface-warm);border:1px solid var(--color-border);border-radius:12px;margin:-4px 0 4px;padding:12px}.auth-forgot-box .auth-form{gap:8px;margin-top:0}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper .form-input{padding-right:44px}.password-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover{color:var(--color-text)}.form-checkboxes{flex-direction:column;gap:10px;display:flex}.checkbox-row{color:var(--color-text);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary-600)}.alert{border-radius:12px;margin-bottom:20px;padding:14px 16px;font-size:14px;line-height:1.5}.alert p{margin:0}.alert-error{color:var(--color-danger-dark);background:#fef2f2;border:1px solid #fecaca}.content-screen{background:0 0;max-width:720px;margin:0 auto;padding:24px 16px}.page-title{color:var(--color-text);margin:0 0 6px;font-size:28px;font-weight:700}.page-subtitle{color:var(--color-text-muted);margin:0 0 24px;font-size:16px;line-height:1.5}.glass-card{background:var(--color-surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #ffffff80;border-radius:20px;padding:24px;box-shadow:0 18px 40px #3020501a,0 4px 12px #3020500d}.pairing-illustration{justify-content:center;margin-bottom:24px;display:flex}.pairing-envelope{background:linear-gradient(135deg,var(--color-primary-100),var(--color-rose-100));width:100px;height:100px;color:var(--color-primary-600);border-radius:24px;justify-content:center;align-items:center;display:flex}.pairing-status-card{text-align:center;margin-top:32px}.pairing-success-icon{background:linear-gradient(135deg,var(--color-success),var(--color-success-dark));color:#fff;border-radius:999px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:16px;display:inline-flex}.pairing-pending-card{text-align:center}.pairing-form-card{flex-direction:column;gap:16px;display:flex}.invitation-ready-card{text-align:center;position:relative}.invitation-check-badge{background:var(--color-success);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:-16px;right:-16px}.invited-email-label{color:var(--color-text-muted);margin:4px 0 0;font-size:14px}.invited-email-value{color:var(--color-text);margin:4px 0 8px;font-size:18px;font-weight:700}.invited-expiry{color:var(--color-text-muted);justify-content:center;align-items:center;gap:6px;margin:0 0 16px;font-size:13px;display:flex}.invitation-url-field{margin-bottom:12px}.invitation-url-field input{text-align:center;font-size:12px}.invitation-actions{flex-direction:column;gap:10px;display:flex}.copy-confirmation{color:var(--color-success-dark);margin:8px 0 0;font-size:13px}.invite-code-block{background:var(--color-primary-50);border:1px dashed var(--color-primary-200);border-radius:16px;margin-bottom:14px;padding:16px}.invite-code-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:12px;font-weight:600}.invite-code-display{letter-spacing:.14em;color:var(--color-primary-800);background:var(--color-surface);-webkit-user-select:all;user-select:all;border:1px solid var(--color-border);border-radius:12px;margin-bottom:12px;padding:10px 12px;font-family:ui-monospace,SF Mono,Cascadia Code,Menlo,monospace;font-size:30px;font-weight:800}.invite-code-entry-icon{background:var(--color-primary-50);width:64px;height:64px;color:var(--color-primary-600);border-radius:20px;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.invite-code-entry-form{flex-direction:column;gap:12px;margin-top:20px;display:flex}.invite-code-input{letter-spacing:.18em;text-align:center;text-transform:uppercase;font-family:ui-monospace,SF Mono,Cascadia Code,Menlo,monospace;font-size:22px;font-weight:700}.pairing-notes{color:var(--color-text-muted);text-align:center;margin:0;font-size:12px;line-height:1.5}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon .input-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;left:14px}.input-with-icon .form-input{padding-left:42px}.btn-secondary-outline{height:48px;color:var(--color-primary-600);border:2px solid var(--color-primary-300);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:0 24px;font-size:15px;font-weight:700;transition:background .15s;display:inline-flex}.loading-skeleton{flex-direction:column;gap:16px;padding:24px 0;display:flex}.skeleton-block{background:linear-gradient(90deg,var(--color-border) 25%,transparent 50%,var(--color-border) 75%);background-size:200% 100%;border-radius:16px;animation:1.5s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.consent-header{margin-bottom:24px}.consent-header .text-primary{color:var(--color-primary-600);margin-bottom:8px}.consent-sections{flex-direction:column;gap:16px;display:flex}.section-title{color:var(--color-text);margin:0 0 4px;font-size:18px;font-weight:700}.section-desc{color:var(--color-text-muted);margin:0 0 12px;font-size:14px;line-height:1.4}.intensity-options{flex-direction:column;gap:10px;display:flex}.intensity-card{border:2px solid var(--color-border);cursor:pointer;border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.intensity-card:hover{border-color:var(--color-primary-300)}.intensity-card-active{border-color:var(--color-primary-500);background:var(--color-primary-50)}.intensity-label{color:var(--color-text);font-size:16px;font-weight:700}.intensity-desc{color:var(--color-text-muted);font-size:13px}.category-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:999px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s}.chip:hover{border-color:var(--color-primary-300)}.chip-active-danger{border-color:var(--color-danger);color:var(--color-danger-dark);background:#fef2f2}.consent-textarea{resize:vertical;height:auto;padding:12px 14px;font-family:inherit}.toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.toggle-row+.toggle-row{border-top:1px solid var(--color-border)}.toggle-info{flex-direction:column;gap:2px;display:flex}.toggle-label{color:var(--color-text);font-size:15px;font-weight:600}.toggle-desc{color:var(--color-text-muted);font-size:13px}.toggle-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-border);cursor:pointer;border-radius:999px;flex-shrink:0;width:48px;height:28px;transition:background .2s;position:relative}.toggle-input:after{content:"";background:#fff;border-radius:999px;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.toggle-input:checked{background:var(--color-primary-500)}.toggle-input:checked:after{transform:translate(20px)}.consent-save-area{text-align:center;margin-top:24px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scenario-sets-grid{flex-direction:column;gap:12px;display:flex}.scenario-set-card{cursor:pointer;text-align:left;color:#fff;border:none;border-radius:20px;align-items:center;gap:16px;padding:20px;transition:transform .15s,box-shadow .15s;display:flex}.set-card-icon{background:#fff3;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.set-card-content{flex:1}.set-card-title{margin:0 0 4px;font-size:18px;font-weight:700}.set-card-desc{opacity:.9;margin:0;font-size:14px}.set-card-count{opacity:.7;margin-top:4px;font-size:12px;display:block}.set-card-arrow{opacity:.7;flex-shrink:0}.hero-card{background:var(--color-surface);border-radius:24px;margin-bottom:20px;padding:24px;box-shadow:0 18px 40px #3020501f,0 4px 12px #3020500f}.scenario-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.scenario-intensity{text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:700}.scenario-mood{color:var(--color-text-muted);font-size:13px}.scenario-card-title{color:var(--color-text);margin:0 0 8px;font-size:24px;font-weight:700}.scenario-summary{color:var(--color-text-muted);margin:0 0 16px;font-size:16px;line-height:1.6}.scenario-metadata{color:var(--color-text-muted);gap:8px;margin-bottom:12px;font-size:13px;display:flex}.scenario-tags{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.tag-pill{background:var(--color-rose-50);color:var(--color-rose-700);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500}.scenario-safety{color:#7a6910;background:#fef9e7;border-radius:12px;align-items:flex-start;gap:8px;padding:10px 14px;font-size:13px;line-height:1.4;display:flex}.scenario-safety svg{flex-shrink:0;margin-top:1px}.scenario-nav{justify-content:center;align-items:center;gap:16px;margin-bottom:12px;display:flex}.scenario-nav-btn{border:1px solid var(--color-border);background:var(--color-surface);width:44px;height:44px;color:var(--color-text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:all .15s;display:flex}.scenario-nav-btn:hover:not(:disabled){background:var(--color-primary-50);border-color:var(--color-primary-300);color:var(--color-primary-600)}.scenario-nav-btn:disabled{opacity:.3;cursor:default}.scenario-actions{justify-content:center;align-items:center;gap:16px;margin-bottom:12px;display:flex}.action-btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;transition:transform .1s,box-shadow .15s;display:flex}.action-btn:active{transform:scale(.94)}.action-pass{background:var(--color-surface);width:60px;height:60px;color:var(--color-danger);box-shadow:0 4px 16px #d94c6726}.action-pass:hover{box-shadow:0 6px 20px #d94c6740}.action-save{background:var(--color-surface);width:50px;height:50px;color:var(--color-primary-600);box-shadow:0 4px 12px #30205014}.action-send{color:#fff;background:linear-gradient(135deg,#42bd98,#2a8c72);width:60px;height:60px;box-shadow:0 4px 16px #2ea68240}.action-send:hover{box-shadow:0 6px 20px #2ea68259}.scenario-progress{text-align:center;color:var(--color-text-muted);font-size:13px}.home-cards{flex-direction:column;gap:12px;max-width:640px;margin:0 auto;display:flex}.home-card{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;text-align:left;color:var(--color-text);font-family:inherit;font-size:inherit;border-radius:16px;align-items:center;gap:14px;width:100%;padding:16px;transition:box-shadow .15s,transform .15s;display:flex}.home-card-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative}.pairing-icon{background:var(--color-rose-50);color:var(--color-rose-500)}.discover-icon{background:var(--color-primary-50);color:var(--color-primary-600)}.inbox-icon{color:var(--color-success);background:#ecfdf5}.shield-icon{color:var(--color-warning);background:#fffbeb}.success-icon{color:var(--color-success);background:#ecfdf5}.home-badge{background:var(--color-rose-500);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.home-card-content{flex:1}.home-card-content h3{margin:0 0 2px;font-size:16px;font-weight:700}.home-card-content p{margin:0;font-size:14px}.paired-card{cursor:default;border-color:var(--color-success);background:#f9fdfb}.onboarding-screen{background:radial-gradient(circle at 75% 20%,#f46f9f6b,#0000 34%),radial-gradient(circle at 20% 70%,#9d79f261,#0000 38%),linear-gradient(155deg,#302050,#5532a4 43%,#be2f68);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.onboarding-content{text-align:center;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:380px;display:flex}.onboarding-skip{color:#ffffffb3;cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:8px;font-size:15px;font-weight:500}.onboarding-skip:hover{color:#fff}.onboarding-icon{color:#fff;margin-bottom:8px}.onboarding-title{color:#fff;margin:0;font-size:28px;font-weight:700}.onboarding-text{color:#ffffffd9;margin:0;font-size:16px;line-height:1.6}.onboarding-dots{gap:8px;display:flex}.onboarding-dot{cursor:pointer;background:#ffffff4d;border:none;border-radius:999px;width:10px;height:10px;padding:0}.onboarding-actions{gap:12px;width:100%;display:flex}.onboarding-actions .btn-primary,.onboarding-actions .btn-secondary-outline{flex:1}.onboarding-actions .btn-secondary-outline{color:#fff;border-color:#ffffff59}.onboarding-actions .btn-secondary-outline:hover{background:#ffffff1a}.inbox-tabs{background:var(--color-border);border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.inbox-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:8px 0;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.inbox-tab-active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px #00000014}.inbox-list{flex-direction:column;gap:10px;display:flex}.inbox-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex;box-shadow:0 2px 8px #3020500a}.inbox-item-unread{border-left:3px solid var(--color-rose-500)}.inbox-item-content{flex:1;min-width:0}.inbox-item-content h4{margin:0 0 2px;font-size:15px;font-weight:700}.inbox-item-meta{color:var(--color-text-muted);align-items:center;gap:4px;margin:0 0 4px;font-size:12px;display:flex}.inbox-item-msg{color:var(--color-text-muted);margin:0 0 4px;font-size:13px;font-style:italic}.status-badge{text-transform:capitalize;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.status-sent{color:#92400e;background:#fef3c7}.status-accepted{color:#065f46;background:#d1fae5}.status-declined{color:#991b1b;background:#fee2e2}.status-saved{color:#5b21b6;background:#ede9fe}.status-changed{color:#1e40af;background:#dbeafe}.inbox-item-actions{flex-shrink:0;gap:6px;display:flex}.action-btn-mini{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.action-btn-mini.accept{color:#065f46;background:#d1fae5}.action-btn-mini.decline{color:#991b1b;background:#fee2e2}.action-btn-mini.save{color:#5b21b6;background:#ede9fe}.settings-section{margin-bottom:20px}.settings-section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;padding-left:4px;font-size:13px;font-weight:700}.settings-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;flex-direction:column;gap:4px;display:flex;overflow:hidden;box-shadow:0 2px 8px #3020500a}.settings-row{background:var(--color-surface);text-align:left;width:100%;font-family:inherit;font-size:inherit;color:var(--color-text);border:none;align-items:center;gap:12px;padding:14px 16px;display:flex}.settings-row+.settings-row{border-top:1px solid var(--color-border)}.settings-row-clickable{cursor:pointer;transition:background .15s}.settings-row-clickable:hover{background:var(--color-primary-50)}.settings-row-icon{background:var(--color-primary-50);width:40px;height:40px;color:var(--color-primary-600);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-row-content{flex:1;min-width:0}.settings-row-label{color:var(--color-text);font-size:15px;font-weight:600;display:block}.settings-row-sub{color:var(--color-text-muted);margin-top:1px;font-size:13px;display:block}.settings-row-actions{flex-shrink:0;gap:6px;display:flex}.icon-btn{border:1px solid var(--color-border);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:flex}.icon-btn:hover{background:var(--color-primary-50);color:var(--color-primary-600);border-color:var(--color-primary-300)}.icon-btn.danger:hover{color:var(--color-danger);background:#fef2f2;border-color:#fecaca}.danger-row:hover{background:#fef2f2}.settings-invite-url{background:var(--color-primary-50);border-top:1px solid var(--color-border);gap:8px;padding:10px 16px 14px;display:flex}.invite-url-input{flex:1;cursor:text!important;height:40px!important;font-size:12px!important}.btn-sm{background:var(--color-primary-600);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;align-items:center;gap:6px;height:40px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.btn-sm:hover{background:var(--color-primary-700)}.paired-info{cursor:default}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal-dialog{background:var(--color-surface);text-align:center;border-radius:16px;width:100%;max-width:380px;padding:32px 24px 24px;animation:.2s slideUp;box-shadow:0 20px 60px #0000004d}.modal-icon{color:var(--color-danger);margin-bottom:12px}.modal-title{color:var(--color-text);margin:0 0 8px;font-size:18px;font-weight:600}.modal-text{color:var(--color-text-muted);margin:0 0 24px;font-size:14px;line-height:1.5}.modal-actions{justify-content:center;gap:12px;display:flex}.modal-actions .btn-secondary{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);width:auto;height:42px;padding:0 20px;font-weight:500}.edit-modal{text-align:left;max-width:480px}.edit-textarea{resize:vertical;width:100%;min-height:120px;font-size:14px;line-height:1.6}.btn-danger{background:var(--color-danger);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 24px;font-size:15px;font-weight:500;transition:opacity .15s}.btn-danger:hover{opacity:.85}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 16% 8%,#ec4c8629,#0000 26%),radial-gradient(circle at 84% 12%,#6941c62e,#0000 28%),radial-gradient(circle at 24% 86%,#ec4c861a,#0000 30%),radial-gradient(circle at 78% 82%,#6941c624,#0000 32%),linear-gradient(#fcf4ff,#f3e9fa 45%,#ebddf6);position:relative}body:before,body:after{content:"";filter:blur(24px);pointer-events:none;z-index:0;border-radius:999px;position:fixed;inset:auto}body:before{background:#ec4c861f;width:280px;height:280px;top:-120px;left:-90px}body:after{background:#6941c61f;width:320px;height:320px;bottom:5vh;right:-120px}.app-shell{isolation:isolate;min-height:100dvh;position:relative}.app-shell:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 0,#fff3,#0000 30%),radial-gradient(circle at 100% 0,#ffffff1f,#0000 24%);position:fixed;top:0;right:0;bottom:0;left:0}.app-main{z-index:1;width:100%;padding:18px 16px 96px;position:relative}@media(max-width:1023px){.app-main{flex:none;align-self:flex-start;padding-bottom:96px}}.app-main>*{width:100%}.desktop-sidebar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#fffc;border-right:1px solid #e5dceacc;box-shadow:24px 0 48px #30223b0f}.sidebar-brand{background:linear-gradient(135deg,#6941c61f,#ec4c861f);border-radius:22px;padding:14px;box-shadow:inset 0 1px #ffffff73}.sidebar-logo{color:#fff;background:linear-gradient(135deg,var(--color-primary-600),var(--color-secondary));border-radius:999px;width:38px;height:38px;padding:8px;box-shadow:0 10px 24px #be2f6838}.sidebar-wordmark{letter-spacing:-.02em;font-size:17px}.sidebar-link{border:1px solid #0000}.sidebar-link:hover,.sidebar-link-active{background:linear-gradient(135deg,#6941c614,#ec4c8614);border-color:#6941c61f}.sidebar-link-active{box-shadow:0 10px 24px #6941c614}.mobile-nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);height:80px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 8px);background:#ffffffd6;border-top:1px solid #e5dceacc;box-shadow:0 -16px 32px #30223b14}.mobile-nav-link{border-radius:18px;flex:1;max-width:96px}.mobile-nav-link-active{color:var(--color-primary-700);background:linear-gradient(#6941c61a,#ec4c8614);box-shadow:0 8px 20px #6941c61f}.mobile-nav-label{letter-spacing:-.01em}@media(min-width:1024px){.app-main{justify-content:center;padding:24px 28px 40px;display:flex}.app-main>*{width:min(100%,1120px)}.desktop-sidebar{width:288px;padding:24px 18px}}.welcome-screen,.onboarding-screen,.splash-screen{isolation:isolate;background:radial-gradient(circle at 15% 20%,#ffffff2e,#0000 20%),radial-gradient(circle at 80% 12%,#ffd2e52e,#0000 24%),radial-gradient(circle at 20% 80%,#a487ff2e,#0000 26%),linear-gradient(160deg,#35215f,#6a46c8 45%,#c34a84);position:relative;overflow:hidden}.auth-screen{isolation:isolate;background:radial-gradient(circle at 15% 20%,#ffffffb8,#0000 18%),radial-gradient(circle at 80% 12%,#ec4c861f,#0000 24%),linear-gradient(#fff7fb,#f7f2fa);position:relative;overflow:hidden}.welcome-content,.onboarding-content,.auth-card,.glass-card{z-index:1;position:relative}.welcome-content{gap:18px;max-width:430px;padding:6px 4px 20px}.welcome-illustration{width:100%;margin-bottom:4px}.welcome-phones{justify-content:center;gap:14px;padding:18px 0 8px}.welcome-phone{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(#ffffff38,#ffffff14);border:1px solid #ffffff38;border-radius:24px;width:88px;height:156px;box-shadow:0 16px 32px #1c0c3333,inset 0 1px #ffffff3d}.welcome-heading{text-shadow:0 10px 28px #1c0c3347;font-size:clamp(2.6rem,7vw,3.6rem);line-height:1.04}.welcome-copy,.welcome-privacy{max-width:340px}.welcome-copy{color:#ffffffe6;font-size:17px}.welcome-privacy{color:#ffffffad}.welcome-actions{max-width:340px}.auth-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffd6;border:1px solid #ffffff94;border-radius:30px;max-width:500px;box-shadow:0 28px 64px #30223b24,0 2px 8px #30223b0a}.auth-card:before{content:"";background:linear-gradient(90deg,var(--color-primary-600),var(--color-secondary));border-radius:30px 30px 0 0;height:8px;position:absolute;inset:0 0 auto}.auth-title{letter-spacing:-.03em;font-size:clamp(2rem,5vw,2.5rem)}.auth-subtitle{font-size:16px}.auth-back{z-index:2;position:relative}.form-input{background:#fffffffa;border-color:#cfc0d8f2;border-radius:16px;height:52px;box-shadow:inset 0 1px #ffffffb8}.form-input:focus{box-shadow:0 0 0 3px #6941c624,inset 0 1px #ffffffb8}.form-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:13px}.btn-primary,.btn-sm,.btn-danger{border-radius:16px}.btn-primary{background:linear-gradient(135deg,#ff5a96,#c23f76);min-height:52px;box-shadow:0 14px 28px #be2f6842}.btn-primary:hover{box-shadow:0 18px 32px #be2f684d}.btn-secondary,.btn-secondary-outline{border-radius:16px;min-height:52px}.btn-secondary{color:#fff;background:#ffffff14;border-color:#ffffff42}.btn-secondary-outline{color:var(--color-primary-700);background:#ffffffeb;border-color:#6941c633}.btn-secondary-outline:hover{background:#6941c60f}.onboarding-content{max-width:420px;padding:8px 6px 24px}.onboarding-skip{color:#ffffffd6;align-self:flex-end}.onboarding-title{text-shadow:0 10px 28px #1c0c3340;font-size:clamp(2rem,5vw,2.5rem);line-height:1.08}.onboarding-text{max-width:320px;font-size:17px}.onboarding-dot{background:#ffffff57;width:10px;height:10px}.onboarding-dot-active{background:#fff;width:28px}.content-screen{width:min(100%,1120px);max-width:1120px;margin:0 auto;padding:20px 16px 24px}.page-title{letter-spacing:-.03em;font-size:clamp(2rem,4.5vw,2.75rem)}.page-subtitle{max-width:42rem;font-size:16px}.glass-card,.hero-card,.home-card,.settings-menu,.inbox-item,.pairing-form-card,.invitation-ready-card,.pairing-pending-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd6;border:1px solid #ffffff8a;box-shadow:0 18px 40px #30223b1a,0 2px 8px #30223b0a}.glass-card{border-radius:28px}.home-cards{gap:14px}.home-card{text-align:left;border-radius:22px;min-height:92px;padding:18px}.home-card:hover{transform:translateY(-2px);box-shadow:0 22px 44px #30223b1f,0 2px 8px #30223b0d}.home-card-icon{border-radius:18px;width:52px;height:52px}.home-card-content h3{letter-spacing:-.02em;font-size:17px}.home-card-content p{font-size:14px}.home-card-pending{background:linear-gradient(135deg,#6941c61f,#ec4c861a)}.scenario-sets-grid{flex-direction:column;gap:14px;max-width:640px;margin:0 auto;display:flex}.scenario-set-card{border-radius:24px;min-height:122px;padding:18px;position:relative;overflow:hidden;box-shadow:0 18px 32px #30223b1f}.scenario-set-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff3d,#0000 62%);width:180px;height:180px;position:absolute;inset:auto -20% -30% auto}.scenario-set-card:hover{transform:translateY(-3px)scale(1.01);box-shadow:0 22px 38px #30223b2e}.set-card-title{font-size:17px}.set-card-desc{font-size:14px}.set-card-count{color:#ffffffd1}.hero-card{border-radius:28px;padding:22px}.scenario-card-header{margin-bottom:10px}.scenario-card-title{font-size:clamp(1.6rem,4vw,2rem)}.scenario-summary{font-size:16px}.scenario-metadata{flex-wrap:wrap;row-gap:6px}.tag-pill{color:var(--color-primary-800);background:#6941c614}.scenario-safety{background:#ffefd9b8;border:1px solid #d8873224;border-radius:16px}.scenario-nav{margin-top:2px}.scenario-actions{gap:14px}.action-btn{box-shadow:0 10px 24px #30223b14}.inbox-tabs{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #e5dceae0;border-radius:18px;padding:5px}.inbox-tab{border-radius:14px}.inbox-tab-active{background:linear-gradient(135deg,#6941c61f,#ec4c861f);box-shadow:0 8px 18px #6941c61f}.inbox-item{border-radius:20px;padding:16px 18px}.status-badge{letter-spacing:.02em}.settings-section-title{color:#74687ad6}.settings-menu{border-radius:24px;overflow:hidden}.settings-row{padding:16px 18px}.settings-row-icon{background:linear-gradient(135deg,#6941c61f,#ec4c861f)}.settings-invite-url{background:#6941c60d}.pairing-illustration{margin-bottom:18px}.pairing-envelope{background:linear-gradient(135deg,#6941c629,#ec4c8629);border-radius:30px;width:112px;height:112px;box-shadow:0 18px 34px #30223b1f}.pairing-success-icon{width:72px;height:72px;box-shadow:0 16px 30px #2ea68238}.pairing-form-card,.invitation-ready-card,.pairing-pending-card{border-radius:28px;padding:22px}.invitation-ready-card{position:relative}.invitation-check-badge{box-shadow:0 12px 26px #2ea68238}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-dialog{background:#fffffff0;border-radius:22px}.modal-actions .btn-secondary{color:var(--color-text);background:#ffffffb8}.loading-skeleton .skeleton-block{border-radius:24px}:root[data-theme=dark]{color-scheme:dark;--color-background:#16101f;--color-background-dark:#0d0913;--color-surface:#221a2d;--color-surface-warm:#271e33;--color-surface-glass:#221a2dd6;--color-text:#f1ebf6;--color-text-muted:#a99cba;--color-text-light:#fff;--color-border:#372a49;--color-border-strong:#4b3b60;--color-primary-50:#2b2040;--color-primary-100:#35284f;--color-primary-200:#473467;--color-rose-50:#3b2030;--color-rose-100:#482539;--color-rose-200:#5d2f49}[data-theme=dark] body{background:radial-gradient(circle at 18% 10%,#ffffff0d,#0000 22%),radial-gradient(circle at 82% 16%,#ec4c861f,#0000 24%),radial-gradient(circle at 22% 82%,#6941c629,#0000 28%),linear-gradient(#1b1226,#16101f 42%,#120c19)}[data-theme=dark] body:before{background:#ec4c861a}[data-theme=dark] body:after{background:#6941c61f}[data-theme=dark] .app-shell:before{background:radial-gradient(circle at 50% 0,#ffffff0d,#0000 28%),radial-gradient(circle at 100% 0,#ffffff08,#0000 20%)}[data-theme=dark] .desktop-sidebar{background:#16101fd1;border-right-color:#372a49cc;box-shadow:24px 0 48px #00000040}[data-theme=dark] .sidebar-brand{background:linear-gradient(135deg,#6941c62e,#ec4c8629);box-shadow:inset 0 1px #ffffff0f}[data-theme=dark] .sidebar-link:hover,[data-theme=dark] .sidebar-link-active{background:linear-gradient(135deg,#9d79f224,#ec4c861f);border-color:#9d79f233}[data-theme=dark] .sidebar-link-active{color:var(--color-primary-300)}[data-theme=dark] .mobile-nav{background:#16101fd6;border-top-color:#372a49cc;box-shadow:0 -16px 32px #0000004d}[data-theme=dark] .mobile-nav-link-active{color:var(--color-primary-300);background:linear-gradient(#9d79f229,#ec4c861f)}[data-theme=dark] .glass-card,[data-theme=dark] .hero-card,[data-theme=dark] .home-card,[data-theme=dark] .settings-menu,[data-theme=dark] .inbox-item,[data-theme=dark] .pairing-form-card,[data-theme=dark] .invitation-ready-card,[data-theme=dark] .pairing-pending-card{background:#221a2ddb;border-color:#4b3b608c;box-shadow:0 18px 40px #00000059,0 2px 8px #0003}[data-theme=dark] .home-card:hover{box-shadow:0 22px 44px #0006}[data-theme=dark] .invite-code-display{color:var(--color-primary-200);background:#30205099;border-color:#bea4ff4d}[data-theme=dark] .invite-code-block{background:#6941c629;border-color:#bea4ff4d}[data-theme=dark] .auth-screen{background:radial-gradient(circle at 15% 20%,#ffffff0d,#0000 18%),radial-gradient(circle at 80% 12%,#ec4c861a,#0000 24%),linear-gradient(#1c1326,#16101f)}[data-theme=dark] .auth-card{background:#221a2de6;border-color:#4b3b6099;box-shadow:0 28px 64px #0006,0 2px 8px #0003}[data-theme=dark] .auth-link,[data-theme=dark] .auth-forgot-link{color:var(--color-primary-300)}[data-theme=dark] .btn-secondary-outline{color:var(--color-primary-300);background:#221a2d99;border-color:#9d79f266}[data-theme=dark] .btn-secondary-outline:hover{background:#9d79f21f}[data-theme=dark] .form-input{border-color:var(--color-border-strong);color:var(--color-text);background:#16101f99;box-shadow:inset 0 1px #ffffff0a}[data-theme=dark] .form-input::placeholder{color:var(--color-text-muted);opacity:.6}[data-theme=dark] .form-label{color:var(--color-text-muted)}[data-theme=dark] .inbox-tabs{border-color:var(--color-border);background:#16101f99}[data-theme=dark] .inbox-tab{color:var(--color-text-muted)}[data-theme=dark] .inbox-tab-active{color:var(--color-text);background:linear-gradient(135deg,#9d79f229,#ec4c8624)}[data-theme=dark] .status-sent{color:#fbbf24;background:#3a2f14}[data-theme=dark] .status-accepted{color:#34d399;background:#10332a}[data-theme=dark] .status-declined{color:#fda4af;background:#3f1522}[data-theme=dark] .status-saved{color:#c4b5fd;background:#2b2140}[data-theme=dark] .status-changed{color:#93c5fd;background:#142c45}[data-theme=dark] .action-btn-mini.accept{color:#34d399;background:#10332a}[data-theme=dark] .action-btn-mini.decline{color:#fda4af;background:#3f1522}[data-theme=dark] .action-btn-mini.save{color:#c4b5fd;background:#2b2140}[data-theme=dark] .scenario-safety{color:#fcd34d;background:#3c2e108c;border-color:#d8873240}[data-theme=dark] .tag-pill{background:var(--color-rose-100);color:var(--color-rose-300)}[data-theme=dark] .alert-error{color:#fca5a5;background:#7f1d1d40;border-color:#f871714d}[data-theme=dark] .chip-active-danger{border-color:var(--color-danger);color:#fda4af;background:#7f1d1d4d}[data-theme=dark] .inbox-icon{background:#10332a66}[data-theme=dark] .shield-icon{background:#3c2e1073}[data-theme=dark] .success-icon{background:#10332a66}[data-theme=dark] .paired-card{border-color:var(--color-success);background:#10332a59}[data-theme=dark] .settings-row-icon{background:linear-gradient(135deg,#6941c633,#ec4c862e)}[data-theme=dark] .settings-invite-url{background:#6941c61f}[data-theme=dark] .modal-overlay{background:#000000a6}[data-theme=dark] .modal-dialog{background:#221a2df5}[data-theme=dark] .modal-actions .btn-secondary{color:var(--color-text);background:#16101fb3}.theme-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;color:var(--color-text-muted);border-radius:999px;align-items:center;gap:8px;padding:6px 10px;transition:border-color .15s,background .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--color-primary-400)}.theme-toggle-icon{display:inline-flex}.theme-toggle-sun{color:#d88732}.theme-toggle-moon{color:var(--color-primary-400)}.theme-toggle-track{background:var(--color-border);border-radius:999px;width:36px;height:20px;transition:background .2s;position:relative}.theme-toggle-thumb{background:#fff;border-radius:999px;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}[data-theme=dark] .theme-toggle-track{background:var(--color-primary-500)}[data-theme=dark] .theme-toggle-thumb{transform:translate(16px)}.theme-toggle-compact{width:56px;height:48px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;display:flex}.theme-toggle-compact:hover{background:var(--color-primary-50);color:var(--color-text)}[data-theme=dark] .theme-toggle-compact{color:var(--color-primary-300)}.sidebar-theme-row{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:flex}.admin-tabs{border-bottom:1px solid var(--color-border);gap:8px;margin:20px 0;padding-bottom:12px;display:flex}.admin-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,color .15s;display:flex}.admin-tab:hover{background:var(--color-primary-50);color:var(--color-text)}.admin-tab-active,.admin-tab-active:hover{background:var(--color-primary-500);color:#fff}.admin-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.admin-search{flex:1;align-items:center;gap:8px;max-width:480px;display:flex}.admin-search .form-input{flex:1}.admin-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-set-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.admin-set-card{flex-direction:column;gap:10px;padding:0 0 20px;display:flex;overflow:hidden}.admin-set-card h3,.admin-set-card p{margin:0;padding:0 20px}.admin-set-card .admin-actions{padding:0 20px}.admin-set-card-top{color:#fff;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex}.admin-set-count{color:var(--color-text-muted);font-size:13px}.admin-set-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;display:flex}.admin-set-name{margin:0 0 4px;font-size:22px;font-weight:700}.admin-scenario-list{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.admin-scenario-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.admin-row-main h4{margin:0 0 4px;font-size:16px}.admin-row-main p{margin:0 0 8px}.admin-row-inactive{opacity:.55}.admin-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tag-pill-warn{color:#b45309;background:#dc822826}[data-theme=dark] .tag-pill-warn{color:#fbbf24}.admin-tag{align-items:center;gap:6px;display:inline-flex}.admin-tag-remove{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-tag-remove:hover{color:var(--color-danger)}.admin-tags-card{margin-top:20px}.admin-section-title{align-items:center;gap:8px;margin:0 0 12px;font-size:16px;display:flex}.admin-tag-create{gap:8px;max-width:420px;display:flex}.admin-tag-create .form-input{flex:1}.admin-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:14px 16px;font-size:12px}.admin-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:12px 16px}.admin-table tr:last-child td{border-bottom:none}.admin-table-actions-col{min-width:220px}.admin-user-cell{align-items:center;gap:12px;display:flex}.admin-avatar{background:var(--color-primary-500);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.admin-user-name{align-items:center;gap:6px;font-weight:600;display:flex}.admin-badge{background:var(--color-border);color:var(--color-text-muted);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.admin-badge-admin{background:var(--color-primary-500);color:#fff}.admin-badge-active{color:#059669;background:#10b98126}[data-theme=dark] .admin-badge-active{color:#34d399}.admin-badge-inactive{color:#dc2626;background:#ef44441f}[data-theme=dark] .admin-badge-inactive{color:#f87171}.btn-danger-ghost{color:var(--color-danger);border-color:var(--color-danger)}.admin-checkbox{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.admin-checkbox input{accent-color:var(--color-primary-500)}.modal-dialog--wide{width:100%;max-width:620px}.modal-dialog--scroll{max-height:90vh;overflow-y:auto}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media(max-width:560px){.form-grid{grid-template-columns:1fr}}.welcome-fade{animation:.8s cubic-bezier(.22,1,.36,1) both welcomeFadeIn}.welcome-fade-1{animation-delay:80ms}.welcome-fade-2{animation-delay:.16s}.welcome-fade-3{animation-delay:.24s}.welcome-fade-4{animation-delay:.32s}.welcome-fade-5{animation-delay:.4s}.welcome-fade-6{animation-delay:.48s}@keyframes welcomeFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.welcome-eyebrow{color:#fff9;letter-spacing:.32em;text-transform:uppercase;margin:0 0 14px;font-size:12px}.welcome-illustration{margin-bottom:34px}.welcome-door{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff12;border:1px solid #ffffff38;border-radius:56px 56px 12px 12px;justify-content:center;align-items:center;width:112px;height:172px;display:flex;position:relative;box-shadow:0 24px 60px #30205066,inset 0 1px #ffffff1f}.welcome-door:after{content:"";background:#ffffff24;width:1px;position:absolute;top:16px;bottom:16px;left:50%}.welcome-door-panel{z-index:1;background:#0003;border:1px solid #ffffff2e;border-radius:16px;justify-content:center;align-items:center;width:56px;height:76px;display:flex;position:relative}.welcome-keyhole{color:#ffc2d7;filter:drop-shadow(0 0 14px #f46f9fe6);animation:2.6s ease-in-out infinite keyholePulse}@keyframes keyholePulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.welcome-door-hint{text-align:center;color:#ffffff73;letter-spacing:.14em;font-size:11px;font-style:italic;position:absolute;bottom:12px;left:0;right:0}.welcome-comic-strip{width:100%;max-width:1080px;margin:28px auto 0;padding-top:8px}.welcome-comic-strip-header{margin-bottom:16px}.welcome-comic-eyebrow{color:#ffffff9e;letter-spacing:.3em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.welcome-comic-title{color:#fff;margin:0 0 8px;font-size:22px;line-height:1.2}.welcome-comic-copy{color:#ffffffb8;max-width:680px;margin:0;font-size:14px;line-height:1.6}.welcome-comic-panels{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.welcome-comic-panel{min-height:240px;color:var(--color-text);background:#ffffffe8;border:1px solid #ffffff8c;border-radius:24px;flex-direction:column;gap:12px;padding:16px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px #30205029,0 4px 12px #30205014}.welcome-comic-panel:before{content:"";opacity:.85;width:100%;height:8px;position:absolute;inset:0 auto auto 0}.welcome-comic-panel-door:before{background:linear-gradient(135deg,#ec4c86,#be2f68)}.welcome-comic-panel-phone:before{background:linear-gradient(135deg,#7b55d9,#5532a4)}.welcome-comic-panel-sets:before{background:linear-gradient(135deg,#42bd98,#2a8c72)}.welcome-comic-panel-card:before{background:linear-gradient(135deg,#d88732,#b76a22)}.welcome-comic-badge{z-index:1;width:30px;height:30px;color:var(--color-primary-700);background:#ffffffe6;border:1px solid #cfc0d8b3;border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex;position:relative;box-shadow:0 6px 16px #30205014}.welcome-comic-art{flex:1;justify-content:center;align-items:center;display:flex}.welcome-comic-door-art{background:radial-gradient(circle at 50% 30%,#ec4c8626,#0000 40%),linear-gradient(#7b55d914,#ec4c860a);border-radius:20px}.welcome-comic-door-frame{color:#ffc2d7;filter:drop-shadow(0 0 14px #f46f9fb8);background:linear-gradient(#3c275af0,#2c1b44fa);border:1px solid #ffffff1f;border-radius:54px 54px 14px 14px;justify-content:center;align-items:center;width:108px;height:154px;display:flex;box-shadow:0 18px 28px #3020503d,inset 0 1px #ffffff14}.welcome-comic-phone{background:linear-gradient(#f5efff,#e8dbff);border-radius:28px;width:124px;height:162px;padding:12px;box-shadow:0 16px 28px #7b55d92e}.welcome-comic-phone-bar{background:#7b55d933;border-radius:999px;width:42px;height:5px;margin:0 auto 10px}.welcome-comic-phone-screen{background:#fffffffa;border-radius:20px;flex-direction:column;gap:9px;height:calc(100% - 15px);padding:12px 10px;display:flex}.welcome-comic-line{background:#e5d8fb;border-radius:999px;height:10px}.welcome-comic-line-short{width:52%}.welcome-comic-line-wide{width:84%}.welcome-comic-phone-button{color:#fff;letter-spacing:.08em;text-align:center;text-transform:uppercase;background:linear-gradient(135deg,#ec4c86,#be2f68);border-radius:999px;margin-top:auto;padding:6px 0;font-size:11px;font-weight:800}.welcome-comic-set-stack{flex-direction:column;gap:10px;width:100%;display:flex}.welcome-comic-set-card{color:#fff;border-radius:16px;align-items:center;gap:8px;height:40px;padding:0 12px;font-size:13px;font-weight:700;display:flex;box-shadow:0 12px 22px #30205024}.welcome-comic-set-card-rose{background:linear-gradient(135deg,#ec4c86,#be2f68)}.welcome-comic-set-card-violet{background:linear-gradient(135deg,#7b55d9,#5532a4)}.welcome-comic-set-card-gold{background:linear-gradient(135deg,#d88732,#b76a22)}.welcome-comic-scenario-card{border:1px solid var(--color-border);background:#fff;border-radius:22px;width:min(220px,100%);padding:14px;box-shadow:0 16px 28px #3020501f,0 4px 10px #3020500f}.welcome-comic-scenario-top{color:var(--color-primary-600);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:12px;font-size:11px;font-weight:800;display:flex}.welcome-comic-scenario-title{color:var(--color-text);margin-top:18px;font-size:17px;font-weight:800;line-height:1.15}.welcome-comic-scenario-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.welcome-comic-scenario-chips span{color:var(--color-primary-700);background:#f3edff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.welcome-comic-scenario-actions{justify-content:space-between;gap:8px;margin-top:16px;display:flex}.welcome-comic-dot-btn{border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;font-size:22px;font-weight:800;display:inline-flex}.welcome-comic-dot-btn.is-pass{color:var(--color-danger);background:#d94c671f}.welcome-comic-dot-btn.is-save{color:var(--color-primary-600);background:#7b55d91f}.welcome-comic-dot-btn.is-send{color:var(--color-success);background:#42b89829}.welcome-comic-panel h3{color:var(--color-text);margin:0;font-size:17px;line-height:1.2}.welcome-comic-panel p{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}@media(max-width:980px){.welcome-comic-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.welcome-comic-strip{margin-top:20px;padding-top:0}.welcome-comic-title{font-size:20px}.welcome-comic-panels{grid-template-columns:1fr}.welcome-comic-panel{min-height:220px}}.set-card-premium{position:relative}.premium-badge{z-index:2;color:#ffd98a;letter-spacing:.08em;text-transform:uppercase;background:#0006;border:1px solid #ffd78273;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:12px;right:12px}.set-card-icon-premium{color:#ffd98a;background:#ffd98a2e;border:1px solid #ffd78259}.invite-code-entry-hint{text-align:center;margin:0;font-size:12px}.welcome-invite-entry{border-top:1px solid #ffffff26;width:100%;max-width:320px;margin-top:24px;padding-top:20px}.welcome-invite-label{color:#ffffffbf;text-align:center;margin:0 0 4px;font-size:14px;font-weight:600}.welcome-invite-entry .invite-code-input{color:#fff;letter-spacing:.22em;background:#ffffff1a;border-color:#ffffff40;height:48px;font-size:19px}.welcome-invite-entry .invite-code-input::placeholder{color:#ffffff73}.welcome-invite-entry .form-error{color:#ffb4b4;text-align:center}.welcome-invite-entry .invite-code-entry-hint{color:#ffffff80}.auth-invite-entry{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px}.auth-invite-toggle{text-align:center;margin:0}.auth-invite-link{border:1px dashed var(--color-border-strong);width:100%;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:12px;margin-top:16px;padding:10px;font-family:inherit;font-size:14px;font-weight:600;transition:color .15s,border-color .15s;display:block}.auth-invite-link:hover{color:var(--color-primary-500);border-color:var(--color-primary-400)}.legal-card{max-width:640px;max-height:92dvh;overflow-y:auto}.legal-body{margin-top:8px}.legal-section{margin-bottom:20px}.legal-section h2{color:var(--color-text);margin:0 0 6px;font-size:15px;font-weight:700}.legal-section p{color:var(--color-text-muted);margin:0 0 8px;font-size:14px;line-height:1.65}.legal-note{color:var(--color-text-muted);border-top:1px solid var(--color-border);padding-top:12px;font-size:12px}.legal-link{color:var(--color-primary-500);text-underline-offset:2px;text-decoration:underline}.legal-link:hover{color:var(--color-primary-600)}[data-theme=dark] .legal-link{color:var(--color-primary-300)}.welcome-legal{justify-content:center;align-items:center;gap:10px;margin:12px 0 0;display:flex}.welcome-legal .link-button{color:#ffffff80;padding:4px;font-size:12px}.welcome-legal .link-button:hover{color:#fff}.welcome-legal span{color:#fff6;font-size:12px}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
