.auth-page{min-height:100dvh;padding:var(--ds-space-large);background:var(--ds-color-libraryPage);color:var(--ds-color-text);justify-content:center;align-items:center;display:flex}.auth-form{width:100%;max-width:var(--ds-size-u480)}.auth-form form{gap:var(--ds-space-medium);flex-direction:column;display:flex}.auth-form input{width:100%;padding:var(--ds-space-medium);border:var(--ds-size-u1) solid var(--ds-color-panelBorder);border-radius:var(--ds-radius-field);background:var(--ds-color-field);color:var(--ds-color-text)}.auth-form button{min-height:var(--ds-size-u44)}.session-bar{height:var(--ds-size-u44);align-items:center;gap:var(--ds-space-medium);padding:0 var(--ds-space-medium);background:var(--ds-color-surface);color:var(--ds-color-text);border-bottom:var(--ds-size-u1) solid var(--ds-color-panelBorder);font-size:var(--ds-fontSize-control);display:flex}.session-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-bar button{min-height:var(--ds-size-u40);flex-shrink:0}.session-workspace{height:calc(100dvh - var(--ds-size-u44));overflow:auto}.session-workspace .hub-shell,.session-workspace .studio-shell{height:100%;min-height:100%}@media (width<=640px){.session-bar>[role=status]{display:none}.session-email{flex:1}}.session-workspace .hub-sidebar{top:var(--ds-size-u44)}.session-bar+.auth-page{min-height:calc(100dvh - var(--ds-size-u44))}.auth-screen{background:var(--ds-color-libraryPage);min-height:100dvh;color:var(--ds-color-text);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.auth-visual{isolation:isolate;background:var(--ds-color-brandMark);height:100dvh;color:var(--ds-color-surface);position:sticky;top:0;overflow:hidden}.auth-visual>img,.auth-visual:after{width:100%;height:100%;position:absolute;inset:0}.auth-visual>img{object-fit:cover;object-position:58% center;z-index:-2}.auth-visual:after{content:"";background:var(--ds-gradient-authImage);z-index:-1}.auth-visual-copy{position:absolute;bottom:17%;left:10%;right:10%}.auth-visual h2{font-size:clamp(2.5rem, 3.7vw, var(--ds-fontSize-authVisualTitle));font-weight:var(--ds-fontWeight-medium);line-height:var(--ds-lineHeight-u1_25);letter-spacing:-.03em;text-wrap:balance}.auth-visual-copy p{margin-top:var(--ds-space-section);font-size:var(--ds-fontSize-u16);line-height:var(--ds-lineHeight-u1_7)}.auth-image-caption{left:10%;bottom:var(--ds-space-u36);font-size:var(--ds-fontSize-control);position:absolute}.auth-content{min-width:0;padding:var(--ds-space-u42) var(--ds-space-u48) var(--ds-space-u30);flex-direction:column;align-items:center;display:flex}.auth-brand,.auth-footer{align-self:stretch}.auth-entry{width:100%;max-width:var(--ds-size-recoveryMeasure);padding-block:var(--ds-space-u56);margin-block:auto}.auth-intro h1{font-size:var(--ds-fontSize-authTitle);line-height:var(--ds-lineHeight-u1_25);font-weight:var(--ds-fontWeight-mediumStrong);letter-spacing:-.03em;text-wrap:balance}.auth-intro h1:focus{outline:none}.auth-intro p{margin-top:var(--ds-space-gutter);color:var(--ds-color-muted);font-size:var(--ds-fontSize-u15);line-height:var(--ds-lineHeight-u1_7);max-width:42ch}.auth-entry form{gap:var(--ds-space-section);margin-top:var(--ds-space-u36);flex-direction:column;display:flex}.auth-field{gap:var(--ds-space-small);flex-direction:column;display:flex}.auth-field label{font-size:var(--ds-fontSize-title);font-weight:var(--ds-fontWeight-mediumStrong)}.auth-field input{width:100%;min-width:0;height:var(--ds-size-u52);border:var(--ds-size-u1) solid var(--ds-color-topbarAppbarActionBorder);border-radius:var(--ds-radius-control);background:var(--ds-color-surface);color:var(--ds-color-text);padding:0 var(--ds-space-medium);font-size:var(--ds-fontSize-u16);-webkit-user-select:text;user-select:text}.auth-field input::placeholder{color:var(--ds-color-muted)}.auth-field input:hover:not(:disabled){border-color:var(--ds-color-muted)}.auth-label-row{justify-content:space-between;align-items:center;gap:var(--ds-space-small);display:flex}.auth-link{color:var(--ds-color-libraryAction);font-size:var(--ds-fontSize-title);font-weight:var(--ds-fontWeight-semibold);text-underline-offset:.25em;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.auth-link:hover:not(:disabled){text-decoration-color:currentColor}.auth-label-row .auth-link{font-size:var(--ds-fontSize-body);min-height:var(--ds-size-u24)}.auth-password{position:relative}.auth-password input{padding-right:var(--ds-space-u56)}.auth-reveal{right:var(--ds-space-compact);top:var(--ds-space-compact);width:var(--ds-size-u44);height:var(--ds-size-u44);color:var(--ds-color-muted);border-radius:var(--ds-radius-field);place-items:center;display:grid;position:absolute}.auth-reveal:hover:not(:disabled){background:var(--ds-color-field)}.auth-entry svg{width:var(--ds-size-u18);height:var(--ds-size-u18);stroke-width:var(--ds-stroke-icon)}.auth-hint,.auth-footer{color:var(--ds-color-muted);font-size:var(--ds-fontSize-body);line-height:var(--ds-lineHeight-u1_6)}.auth-entry .auth-submit{margin-top:var(--ds-space-compact);min-height:var(--ds-size-u52);padding:var(--ds-space-medium);font-size:var(--ds-fontSize-u15);font-weight:var(--ds-fontWeight-mediumStrong);justify-content:space-between}.auth-feedback{padding:var(--ds-space-medium);background:var(--ds-color-hover);border-radius:var(--ds-radius-control);font-size:var(--ds-fontSize-title);line-height:var(--ds-lineHeight-u1_6);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.auth-error{color:var(--ds-color-danger);background:var(--ds-color-navigationSelected)}.auth-switch{margin-top:var(--ds-space-u30);font-size:var(--ds-fontSize-title);text-align:center;color:var(--ds-color-muted)}.auth-switch .auth-link{min-height:var(--ds-size-u44)}.auth-back{align-items:center;gap:var(--ds-space-small);display:inline-flex}.auth-footer{text-align:center}.auth-spinner{animation:auth-spin var(--ds-duration-ms1000) linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (width<=980px){.auth-content{padding-inline:var(--ds-space-u30)}.auth-visual h2{font-size:var(--ds-fontSize-authTitle)}}@media (width<=760px){.auth-screen{grid-template-columns:minmax(0,1fr)}.auth-visual{display:none}.auth-content{min-height:100dvh;padding:var(--ds-space-u30) var(--ds-space-section);padding-bottom:max(var(--ds-space-section), env(safe-area-inset-bottom))}.auth-entry{padding-block:var(--ds-space-u48)}}@media (width<=380px){.auth-intro h1{font-size:var(--ds-fontSize-page)}}@media (prefers-reduced-motion:reduce){.auth-spinner{animation:none}}.auth-welcome{isolation:isolate;background:var(--ds-color-brandMark);min-height:100svh;color:var(--ds-color-surface);padding:max(var(--ds-space-u30), env(safe-area-inset-top)) var(--ds-space-section) max(var(--ds-space-section), env(safe-area-inset-bottom));flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.auth-welcome-scene{z-index:-1;touch-action:pan-y;position:absolute;inset:0}.auth-welcome-scene img{width:calc(100% + var(--ds-size-u64));max-width:none;height:100%;margin-left:calc(-1 * var(--ds-space-u32));object-fit:cover;object-position:center 47%;pointer-events:none}.auth-welcome:after{content:"";z-index:-1;background:var(--ds-gradient-authWelcome);pointer-events:none;position:absolute;inset:0}.auth-welcome-brand{pointer-events:none}.auth-welcome-brand .brand{color:var(--ds-color-surface)}.auth-welcome-brand .brand-symbol span{background:var(--ds-color-surface)}.auth-welcome-brand .brand-ai{background:var(--ds-color-brandAiSurface);color:var(--ds-color-brandText)}.auth-welcome-actions{margin-top:max(var(--ds-space-u210), 38svh);width:100%;max-width:var(--ds-size-recoveryMeasure);align-self:center}.auth-welcome-actions h1{font-size:var(--ds-fontSize-authTitle);line-height:var(--ds-lineHeight-u1_25);letter-spacing:-.03em;font-weight:var(--ds-fontWeight-mediumStrong)}.auth-welcome-actions>p{margin-top:var(--ds-space-gutter);font-size:var(--ds-fontSize-u15);line-height:var(--ds-lineHeight-u1_6)}.auth-welcome-create{justify-content:space-between;align-items:center;gap:var(--ds-space-small);width:100%;min-height:var(--ds-size-u52);margin-top:var(--ds-space-section);padding:var(--ds-space-medium);border-radius:var(--ds-radius-control);background:var(--ds-color-libraryPage);color:var(--ds-color-libraryAction);font-size:var(--ds-fontSize-u15);font-weight:var(--ds-fontWeight-semibold);display:flex}.auth-welcome-create:hover{background:var(--ds-color-hover)}.auth-welcome-create svg{width:var(--ds-size-u18);height:var(--ds-size-u18)}.auth-welcome-signin{margin-top:var(--ds-space-gutter);text-align:center;font-size:var(--ds-fontSize-title)}.auth-welcome-signin button{min-height:var(--ds-size-u44);padding:0 var(--ds-space-compact);font-weight:var(--ds-fontWeight-semibold);text-underline-offset:.25em;text-decoration:underline}.auth-welcome-signin button:hover{color:var(--ds-color-selection)}.auth-mobile-sheet .sheet-overlay{padding:max(var(--ds-space-gutter), env(safe-area-inset-top)) 0 0}.auth-mobile-sheet .sheet-overlay[open]{align-items:flex-end}.auth-mobile-sheet .sheet-surface{background:var(--ds-color-libraryPage);-webkit-backdrop-filter:none;border-radius:var(--ds-radius-sheet) var(--ds-radius-sheet) 0 0;width:100%;max-height:100%;padding-bottom:env(safe-area-inset-bottom);border:0}.auth-mobile-sheet .sheet-header{padding:var(--ds-space-large) var(--ds-space-section) var(--ds-space-gutter)}.auth-mobile-sheet .sheet-header h2{font-size:var(--ds-fontSize-page);line-height:var(--ds-lineHeight-u1_25);letter-spacing:-.03em}.auth-mobile-sheet .sheet-body{padding-inline:var(--ds-space-section)}.auth-mobile-sheet .auth-entry{max-width:none;padding-block:0 var(--ds-space-small);margin:0}.auth-mobile-sheet .auth-intro p{font-size:var(--ds-fontSize-title);margin-top:0}.auth-mobile-sheet .auth-entry form{margin-top:var(--ds-space-section);gap:var(--ds-space-large)}.auth-mobile-sheet .auth-switch{margin-top:var(--ds-space-medium)}@media (width<=640px){.auth-mobile-sheet .sheet-header{padding-top:0}}@media (prefers-reduced-motion:reduce){.auth-welcome-scene img{transition:none;transform:none}}@media (width<=380px){.auth-welcome-actions h1{font-size:var(--ds-fontSize-u29)}.auth-welcome-scene img{object-position:center 80%}}.auth-welcome-scene canvas{opacity:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.auth-welcome-scene[data-renderer=three] canvas{opacity:1}.auth-welcome-scene[data-renderer=three] .auth-scene-fallback{opacity:0}.auth-bunny-target{border-radius:var(--ds-radius-panel);touch-action:manipulation;padding:0;position:absolute}.auth-bunny-target[hidden]{display:none}.auth-bunny-target:focus-visible{outline:var(--ds-size-u2) solid var(--ds-color-accent);outline-offset:var(--ds-space-small)}._ff-163417665{font-family:var(--f-family)}._us-601593343{-webkit-user-select:auto;user-select:auto}._c-1996280471{color:var(--color)}._ws-974065937{white-space:normal}._fs-1530165158{font-size:var(--f-size-sm)}._fw-1746873748{font-weight:var(--f-weight-sm)}._ls-1762602605{letter-spacing:var(--f-letterSpacing-sm)}._lh-1535282283{line-height:var(--f-lineHeight-sm)}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 750;font-display:swap;src:url(/fonts/dm-sans.woff2)format("woff2")}:root{font-family:var(--ds-font-body);color:var(--ds-color-text);background:var(--ds-color-studioPage);font-synthesis:none;font-size:var(--ds-fontSize-body);--floating-surface:var(--ds-color-floatingSurface);--floating-blur:blur(var(--ds-size-u22)) saturate(110%)}*{box-sizing:border-box;-webkit-user-select:none;user-select:none}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:var(--ds-opacity-u0_35)}button,input,textarea,select{-webkit-tap-highlight-color:var(--ds-color-clearSurface)}button{background:0 0;border:0}:is(button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline:var(--ds-size-u2) solid var(--ds-color-accent);outline-offset:var(--ds-space-u3)}button{transition:background var(--ds-duration-ms160), color var(--ds-duration-ms160), box-shadow var(--ds-duration-ms160)}::selection{background:var(--ds-color-selection);color:var(--ds-color-selectionText)}input,textarea{caret-color:var(--ds-color-accent)}::-webkit-scrollbar{width:var(--ds-size-u4);height:var(--ds-size-u4)}::-webkit-scrollbar-thumb{background:var(--ds-color-scrollbarThumb);border-radius:var(--ds-radius-u5)}h1,h2,h3,p{margin:0}button svg{flex-shrink:0}.brand{align-items:center;gap:var(--ds-space-u9);font-size:var(--ds-fontSize-brand);letter-spacing:var(--ds-tracking-negative1_5);font-weight:var(--ds-fontWeight-brand);color:var(--ds-color-brandText);display:flex}.brand-ai{font-size:var(--ds-fontSize-field);font-weight:var(--ds-fontWeight-mediumStrong);letter-spacing:var(--ds-tracking-negative0_2);vertical-align:top;margin:var(--ds-space-compact) 0 0 var(--ds-space-u3);background:var(--ds-color-brandAiSurface);padding:var(--ds-space-u1) var(--ds-space-compact);border-radius:var(--ds-radius-u4);display:inline-block}.brand-symbol{width:var(--ds-size-u27);height:var(--ds-size-u29);position:relative;transform:rotate(-10deg)}.brand-symbol span{width:var(--ds-size-u11);height:var(--ds-size-u14);background:var(--ds-color-brandMark);border-radius:var(--ds-radius-u3);position:absolute;transform:skewY(-24deg)}.brand-symbol span:first-child{left:0;top:var(--ds-space-u1)}.brand-symbol span:nth-child(2){left:var(--ds-space-u14);top:0;transform:skewY(24deg)}.brand-symbol span:nth-child(3){bottom:0;left:0;transform:skewY(24deg)}.brand-symbol span:nth-child(4){left:var(--ds-space-u14);bottom:var(--ds-space-u1)}.avatar{width:var(--ds-size-u31);height:var(--ds-size-u31);background:var(--ds-color-avatarSurface);border:var(--ds-size-u2) solid var(--ds-color-surface);font-size:var(--ds-fontSize-control);font-weight:var(--ds-fontWeight-semibold);color:var(--ds-color-avatarText);border-radius:50%;place-items:center;display:grid}.icon-button{width:var(--ds-size-u30);height:var(--ds-size-u30);border-radius:var(--ds-radius-field);color:var(--ds-color-iconButtonText);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--ds-color-iconButtonSurface);color:var(--ds-color-iconButtonText2)}.segmented{background:var(--ds-color-segmentedSurface);border:var(--ds-size-u1) solid var(--ds-color-segmentedBorder);padding:var(--ds-space-u3);border-radius:var(--ds-radius-control);gap:var(--ds-space-u2);display:flex}.segmented button{padding:var(--ds-space-u7) var(--ds-space-u3);font-size:var(--ds-fontSize-field);color:var(--ds-color-segmentedButtonText);white-space:nowrap;flex:1}.segmented .selected{background:var(--ds-color-surface);color:var(--ds-color-segmentedSelectedText);box-shadow:var(--ds-shadow-segmentedSelected);border-radius:var(--ds-radius-u5);font-weight:var(--ds-fontWeight-mediumStrong)}.full-button{justify-content:center;align-items:center;gap:var(--ds-space-u7);background:var(--ds-color-fullButtonSurface);border:var(--ds-size-u1) solid var(--ds-color-fullButtonBorder);width:100%;font-size:var(--ds-fontSize-field);color:var(--ds-color-fullButtonText);padding:var(--ds-space-u11);border-radius:var(--ds-radius-field);margin-top:var(--ds-space-u14);display:flex}.toast{left:50%;bottom:var(--ds-space-u35);z-index:var(--ds-zIndex-u100);align-items:center;gap:var(--ds-space-medium);max-width:min(var(--ds-size-u600), 92vw);background:var(--ds-color-toastSurface);width:max-content;color:var(--ds-color-toastText);border-radius:var(--ds-radius-u11);padding:var(--ds-space-u10) var(--ds-space-u10) var(--ds-space-u10) var(--ds-space-u17);box-shadow:var(--ds-shadow-toast);font-size:var(--ds-fontSize-control);line-height:var(--ds-lineHeight-u1_6);display:flex;position:fixed;transform:translate(-50%)}.toast .icon-button{color:var(--ds-color-toastIconButtonText)}.export-option{align-items:center;gap:var(--ds-space-u14);width:100%;padding:var(--ds-space-u17) var(--ds-space-gutter);border-bottom:var(--ds-size-u1) solid var(--ds-color-exportOptionborderBottom);text-align:left;color:var(--ds-color-exportOptionText);display:flex}.export-option:hover{background:var(--ds-color-exportOptionSurface)}.export-option>span{gap:var(--ds-space-u5);flex-direction:column;display:flex}.export-option strong{font-size:var(--ds-fontSize-control);font-weight:var(--ds-fontWeight-mediumStrong);color:var(--ds-color-exportOptionStrongText)}.export-option small{font-size:var(--ds-fontSize-label);color:var(--ds-color-exportOptionSmallText)}.export-option>svg:last-child{margin-left:auto}.primary-button{justify-content:center;align-items:center;gap:var(--ds-space-small);background:var(--ds-color-action);color:var(--ds-color-surface);border-radius:var(--ds-radius-control);padding:var(--ds-space-gutter);width:100%;margin-top:var(--ds-space-large);font-size:var(--ds-fontSize-control);display:flex}.primary-button:hover{background:var(--ds-color-actionHover)}.pwa-status{bottom:var(--ds-space-u32);right:var(--ds-space-u18);z-index:var(--ds-zIndex-u100);max-width:calc(100vw - var(--ds-size-u36));align-items:center;gap:var(--ds-space-small);padding:var(--ds-space-small) var(--ds-space-gutter);background:var(--ds-color-libraryPage);color:var(--ds-color-libraryAction);border:var(--ds-size-u1) solid var(--ds-color-commentModeHintBorder);border-radius:var(--ds-radius-control);box-shadow:var(--ds-shadow-pwaStatus);font:var(--ds-fontSize-control) var(--ds-font-body);flex-wrap:wrap;display:flex;position:fixed}.pwa-status span,.pwa-status button{align-items:center;gap:var(--ds-space-u7);display:flex}.pwa-status button{color:inherit;background:var(--ds-color-clearSurface);font:inherit;cursor:pointer;min-height:var(--ds-size-u28);border:0}.pwa-status button:focus-visible{outline:var(--ds-size-u2) solid var(--ds-color-accent);outline-offset:var(--ds-space-u3)}
