@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&display=swap";.google-sign-in{display:flex;justify-content:center;width:100%;min-height:44px;color-scheme:light}.account-page{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding-bottom:24px;font-family:DM Sans,sans-serif}.account-header{width:100%;height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;border-bottom:1px solid var(--s-line)}.account-brand{display:flex;align-items:center;gap:8px;font:750 20px/1 Manrope,sans-serif;letter-spacing:-1px}.account-brand img{width:26px;height:38px;object-fit:contain}.account-back{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;color:var(--s-muted);font-size:13px;transition:background .16s ease,color .16s ease}.account-back:hover{background:var(--s-hover);color:var(--s-text)}.account-card{width:min(calc(100% - 32px),420px);margin:auto;padding:32px 28px 24px;border:1px solid var(--s-line-strong);border-radius:20px;background:var(--s-surface);box-shadow:0 24px 64px #00000073}.account-card-signed-in{width:min(calc(100% - 32px),600px);margin-block:40px auto}.account-eyebrow{display:block;margin-bottom:20px;color:var(--s-accent-text);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.account-symbol{display:grid;place-items:center;width:48px;height:48px;margin-bottom:18px;border:1px solid var(--s-line);border-radius:14px;background:var(--s-surface-3);color:var(--s-accent-text)}.account-card h1{margin-bottom:8px;font:700 28px/1.15 Manrope,sans-serif;letter-spacing:-.8px}.account-intro{margin-bottom:24px;color:var(--s-muted);font-size:15px;line-height:1.5}.account-google,.account-primary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:48px;border-radius:999px;font-size:15px;font-weight:600;transition:background .16s ease}.account-google{background:#fff;color:#1f1f1f}.account-google:hover:not(:disabled){background:#eef1ef}.account-primary{background:var(--s-accent);color:var(--s-accent-ink)}.account-primary:hover:not(:disabled){background:var(--s-accent-hover)}.account-secondary,.account-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:32px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:500;white-space:nowrap;transition:background .16s ease,color .16s ease}.account-secondary{border:1px solid var(--s-line-strong);color:var(--s-text)}.account-ghost{color:var(--s-muted)}.account-secondary:hover:not(:disabled),.account-ghost:hover:not(:disabled){background:var(--s-hover);color:var(--s-text)}.account-page :is(button,a):focus-visible{outline:2px solid var(--s-accent);outline-offset:2px}.account-page button:disabled{opacity:.5}.account-profile{margin-bottom:16px;padding:14px 16px;border:1px solid var(--s-line);border-radius:14px;background:var(--s-surface-2)}.account-identity{display:flex;align-items:center;gap:12px}.account-identity>img,.account-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:50%;object-fit:cover}.account-avatar{display:grid;place-items:center;background:var(--s-surface-3);color:var(--s-muted)}.account-identity>div{min-width:0}.account-identity strong,.account-identity span:not(.account-avatar){display:block;overflow-wrap:anywhere}.account-identity strong{font-size:15px;font-weight:650;line-height:1.4}.account-identity span:not(.account-avatar){color:var(--s-muted);font-size:13px;line-height:1.5}.account-edit-profile{margin-left:auto;flex:0 0 auto}.account-form{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--s-line)}.account-form label{color:var(--s-muted);font-size:12px;font-weight:500}.account-form input{height:44px;padding:0 14px;border:1px solid var(--s-line-strong);border-radius:10px;background:var(--s-surface);color:var(--s-text);font-size:14px}.account-form input:focus{border-color:var(--s-accent);box-shadow:0 0 0 3px #1fd1a540}.account-form-actions{display:flex;align-items:center;gap:8px;margin-top:6px}.account-form-actions .account-primary{width:auto;height:36px;padding:0 16px;font-size:13px}.account-signout{display:flex;height:36px;margin:16px auto 0}.account-loading{min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--s-muted);font-size:14px}.account-loading svg,.account-spinner{animation:account-spin 1.3s linear infinite}.account-error{margin-top:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--s-danger) 35%,transparent);border-radius:12px;background:color-mix(in srgb,var(--s-danger) 10%,transparent);color:var(--s-danger);font-size:13px;line-height:1.5}.account-error button{margin-top:6px;padding:0;color:var(--s-text);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.account-notice{margin-top:16px;color:var(--s-accent-text);font-size:13px}.account-beta{margin-top:24px;padding-top:20px;border-top:1px solid var(--s-line);color:var(--s-muted);font-size:13px;line-height:1.55}.account-footer{padding-top:28px;color:var(--s-subtle);font-size:12px}@keyframes account-spin{to{transform:rotate(360deg)}}@media(max-width:520px){.account-header{padding:0 16px}.account-brand{font-size:18px}.account-brand img{width:22px;height:32px}.account-card{padding:28px 20px 20px}.account-card-signed-in{margin-top:20px}.account-identity{flex-wrap:wrap}.account-edit-profile{margin-left:56px}}@media(prefers-reduced-motion:reduce){.account-loading svg,.account-spinner{animation:none}.account-page *{transition:none}}:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#252b28;background:#fafbf8;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #fafbf8;--paper: #fff;--line: #e5e8e1;--muted: #92988e;--ink: #24382f;--green: #daf58b;--green-dark: #344b34;--soft: #f4f6f0}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button,a,input,textarea,select{outline-offset:3px}button:focus-visible,a:focus-visible{outline:2px solid #85ad3e}input:focus,textarea:focus,select:focus{outline:0;border-color:#93ad78;box-shadow:0 0 0 3px #b7d49925}button{border:0;background:transparent}a{color:inherit;text-decoration:none}input,textarea,select{background:#fff;border:1px solid #e2e6dc;border-radius:7px;color:#303c34;padding:10px 11px;min-width:0;font-size:12px;width:100%;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:#a1a69c}textarea{resize:vertical;line-height:1.7}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:27px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23758070' stroke-width='1.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}input[type=range]{padding:0;accent-color:#46623b;box-shadow:none}h1,h2,h3,p{margin:0}h1,h2,h3,.brand{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;font-weight:800;font-size:23px;letter-spacing:-1.1px;color:#28392d}.fairytale-studio-logo{width:32px;height:44px;object-fit:contain;flex-shrink:0}.header-divider{height:24px;width:1px;background:var(--line);margin:0 4px}.project-switch{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:550;min-width:0}.project-switch>span{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-switch>svg{color:#86927f}.header-spacer{flex:1}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;flex-shrink:0;border-radius:6px;color:#77816f;transition:background .15s}.icon-button:hover:not(:disabled){background:#eef2e8;color:#35422e}.icon-button.small{width:26px;height:26px}.button{border:1px solid #e0e5d8;border-radius:7px;background:#fff;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:650;white-space:nowrap;transition:background .15s,transform .1s}.button:hover:not(:disabled){background:#f3f6ed}.button:active:not(:disabled){transform:translateY(1px)}.button.dark{background:#2b402f;border-color:#2b402f;color:#fff}.button.dark:hover:not(:disabled){background:#38503c}.button.primary{background:var(--green);border-color:var(--green);color:#283e26}.button.primary:hover:not(:disabled){background:#cfe87f}.button.subtle{background:#f5f7f1}.button.full{width:100%;margin-top:8px}.library{border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;min-height:0}.muted{color:#99a38e;font-size:10px}.text-button{display:inline-flex;gap:5px;align-items:center;font-size:10px;color:#748166;padding:0;white-space:nowrap}.text-button:hover:not(:disabled){color:#2b4424}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;min-width:0}.field-label{font-size:10px;font-weight:550;color:#6a7f54;display:flex;align-items:center;gap:5px}.field>small{color:#a0ad90;font-size:9px;line-height:1.6;letter-spacing:0}.references{margin-bottom:20px}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#1d2a2266;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;animation:fade-in .15s ease}.modal{background:#fcfdf9;border:1px solid #ffffffaa;box-shadow:0 25px 100px #15231a33;border-radius:14px;padding:24px;width:470px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:23px}.modal-heading h2{font-size:20px;letter-spacing:-.6px;color:#365132;font-weight:650}.modal-heading p{font-size:10px;color:#95a586;line-height:1.7;margin-top:6px}.modal-heading .icon-button{margin:-5px -7px 0 0}.modal .field-label{font-size:11px;color:#7d9268}.modal .field>small{font-size:9px}.modal input,.modal select{font-size:11px}.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #e5ecda}.modal-actions .button{font-size:11px}.project-list{display:flex;flex-direction:column;gap:7px;margin-bottom:23px;max-height:300px;overflow:auto}.project-list-item{border:1px solid #e5ecd9;background:#fff;border-radius:7px;padding:11px;text-align:left;display:flex;align-items:center;gap:12px}.project-list-item.active{border-color:#b9cc9d;background:#f2f8e7}.project-icon{height:36px;width:36px;border-radius:7px;display:flex;align-items:center;justify-content:center;background:#edf4e1;color:#95ad73;flex-shrink:0}.project-list-item>div:nth-child(2){flex:1;min-width:0}.project-list-item strong{font-size:11px;font-weight:550;color:#758f59;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.project-list-item span{font-size:9px;color:#a9b996;display:block;margin-top:5px}.project-list-item>svg{color:#a1b782;flex-shrink:0}.project-management{display:flex;gap:20px}.project-management .text-button{font-size:9px}.loading-page{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#82966b}.loading-page h1{font-size:30px;color:#3c5836;letter-spacing:-1px}.loading-page p{font-size:12px;max-width:400px;text-align:center;line-height:1.8}.spin{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#dbe4cc;border-radius:5px}::-webkit-scrollbar-track{background:transparent}@media(max-width:1000px){.brand{font-size:21px}.project-switch>span{max-width:160px}.project-switch>svg:first-child{display:none}}@media(max-width:800px){.app-shell{height:auto;min-height:100dvh}.brand{font-size:19px;gap:7px}.header-divider{margin:0;height:20px}.project-switch{font-size:10px;gap:5px}.project-switch>span{max-width:160px}.library{grid-row:1/3;position:sticky;top:62px;height:calc(100dvh - 62px)}.field-label{font-size:11px}}@media(max-width:600px){.brand>span{font-size:0}.header-divider{display:none}.project-switch{max-width:calc(100vw - 210px)}.project-switch>span{max-width:100%;font-size:10px}.header-spacer{min-width:0}.library{position:static;width:100%;height:auto;min-height:0;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.modal-scrim{padding:12px;align-items:center}.modal{padding:21px 18px;max-height:calc(100dvh - 24px);border-radius:12px}.modal-heading h2{font-size:19px}.modal .field input,.modal .field select{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:600px){.modal-actions .button{font-size:10px;padding:9px}}.app-shell,.loading-page,.studio-gate,.account-page{--s-bg: #0c0e0f;--s-surface: #141718;--s-surface-2: #1b1f21;--s-surface-3: #252a2c;--s-raised: #2b3033;--s-text: #eef1ef;--s-muted: #9aa3a0;--s-subtle: #7d8683;--s-line: rgba(238, 241, 239, .09);--s-line-strong: rgba(238, 241, 239, .18);--s-hover: rgba(238, 241, 239, .07);--s-accent: #1fd1a5;--s-accent-hover: oklch(.82 .145 170);--s-accent-ink: #03241b;--s-accent-text: #3fdcb3;--s-magic: #f5be2e;--s-magic-hover: oklch(.87 .15 86);--s-magic-ink: #2a1c00;--s-magic-text: #f7ca55;--s-danger: #ff6b5e;--s-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--bg: var(--s-bg);--paper: var(--s-surface);--line: var(--s-line);--muted: var(--s-muted);--ink: var(--s-text);--green: var(--s-accent);--green-dark: var(--s-accent);--soft: var(--s-surface-2);color:var(--s-text);background:var(--s-bg);color-scheme:dark;accent-color:var(--s-accent)}.app-shell .header-divider{background:var(--s-line-strong)}.app-shell :is(.brand,.project-switch,.g-heading h1,.g-section-head h2){color:var(--s-text)}.app-shell :is(.project-switch>svg,.g-heading p,.g-saved){color:var(--s-muted)}.app-shell .g-eyebrow{color:var(--s-accent-text)}.app-shell .project-switch{font-size:14px}.app-shell :is(.library,.g-content,.g-library-card,.modal,.character-dialog){background:var(--s-surface);border-color:var(--s-line)}.app-shell :is(.project-icon,.character-upload-icon){color:var(--s-text);background:var(--s-surface-3);border-color:var(--s-line)}.app-shell :is(.g-categories,.g-empty,.g-prompt,.g-card-media,.g-packet-preview,.g-job video,.character-sheet-wrap,.character-upload,.character-clothes){background:var(--s-surface-2);border-color:var(--s-line)}.app-shell :is(.character-close){background:var(--s-surface-3);color:var(--s-muted);border-color:var(--s-line);font-size:12px;letter-spacing:0}.app-shell :is(.g-binding,.g-job,.project-list-item,.character-clothing-grid button){background:var(--s-surface);border-color:var(--s-line)}.app-shell :is(.modal-actions,.character-clothing-tabs){border-color:var(--s-line)}.app-shell :is(.muted,.text-button,.field>small,.modal-heading p,.project-list-item span,.project-list-item>svg,.g-section-head p,.g-field small,.g-steps button,.g-subtle,.g-categories button,.g-card-body p,.g-card-body small,.g-empty,.g-prompt,.g-binding,.g-job-head small,.g-list,.character-eyebrow,.character-clothes-heading button,.character-clothes>p,.character-clothing-tabs button,.character-clothing-grid button,.character-custom-clothes,.character-custom-clothes small,.character-clothing-footer>small,.character-dialog-footer>p,.character-back){color:var(--s-muted)}.app-shell .character-upload-button>span:not(.character-upload-icon):not(.character-upload-label){color:var(--s-muted)}.app-shell :is(.field-label,.g-field>span,.g-details>summary,.g-empty h3,.g-binding strong,.modal-heading h2,.project-list-item strong,.g-card-body strong,.character-upload-label,.character-choice-check){color:var(--s-text)}.app-shell :is(input,textarea,select){color:var(--s-text);background-color:var(--s-surface-2);border-color:var(--s-line-strong)}.app-shell :is(input,textarea)::placeholder{color:var(--s-subtle)}.app-shell select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239aa3a0' stroke-width='1.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.app-shell :is(input[type=range],input[type=checkbox],input[type=radio]){accent-color:var(--s-accent)}.app-shell :is(button,a):focus-visible{outline:2px solid var(--s-accent);outline-offset:2px}.app-shell :is(input,textarea,select):focus{border-color:var(--s-accent);box-shadow:0 0 0 3px #1fd1a540}.app-shell :is(.button,.character-clothes-toggle){background:transparent;border-color:var(--s-line-strong);color:var(--s-text)}.app-shell :is(.button.subtle){background:var(--s-surface-3);border-color:transparent}.app-shell :is(.button,.icon-button,.character-close):hover:not(:disabled),.app-shell :is(.character-clothes-toggle:hover,.character-clothes-toggle.active,.character-upload-button:hover .character-upload-label){background:var(--s-hover);color:var(--s-text)}.app-shell .icon-button{color:var(--s-muted)}.app-shell :is(.button.dark,.button.primary,.character-primary){background:var(--s-accent);border-color:var(--s-accent);color:var(--s-accent-ink)}.app-shell :is(.button.dark,.button.primary,.character-primary):hover:not(:disabled){background:var(--s-accent-hover);border-color:var(--s-accent-hover);color:var(--s-accent-ink)}.app-shell :is(.text-button:hover:not(:disabled)){color:var(--s-text)}.app-shell :is(.g-categories button.active,.character-upload-label,.character-clothing-grid button.active,.project-list-item.active){background:var(--s-raised);border-color:var(--s-accent);color:var(--s-text);box-shadow:0 1px 2px #0006}.app-shell :is(.g-card-media .g-chosen){background:var(--s-accent);color:var(--s-accent-ink)}.app-shell :is(.g-library-card.chosen){border-color:var(--s-accent);box-shadow:0 0 0 1px var(--s-accent)}.app-shell .g-library-card.chosen{background:color-mix(in srgb,var(--s-accent) 8%,var(--s-surface))}.app-shell :is(.g-library-card:hover,.character-clothing-grid button:hover){border-color:var(--s-line-strong)}.app-shell .character-clothing-tabs button:hover{background:var(--s-hover)}.app-shell .character-clothing-tabs button.active{color:var(--s-text);border-color:var(--s-accent);background:var(--s-raised)}.app-shell .character-clothing-tabs button>span{background:var(--s-accent)}.app-shell .g-steps{gap:10px;padding:0;border:0;background:transparent}.app-shell .g-steps button{flex:0 0 auto;gap:10px;padding:6px 4px;background:transparent;color:var(--s-muted);font-size:14px;font-weight:500}.app-shell .g-steps button+button:before{content:"";width:32px;height:1px;margin-right:6px;background:var(--s-line-strong)}.app-shell .g-steps button>span{width:26px;height:26px;border:0;box-shadow:inset 0 0 0 1.5px var(--s-line-strong);font:500 12px/1 var(--s-mono)}.app-shell .g-steps button.active{background:transparent;color:var(--s-text);box-shadow:none}.app-shell .g-steps button.active>span{background:var(--s-accent);color:var(--s-accent-ink);box-shadow:none}.app-shell .g-card-body{display:grid;gap:8px;padding:12px 14px 14px}.app-shell .g-card-body strong{margin:0;font-size:16px;font-weight:650;letter-spacing:-.3px}.app-shell .g-card-body p{height:auto;font-size:13px}.app-shell .g-card-body small{margin:0;font-size:12px}.app-shell .g-eyebrow{font-size:12px;letter-spacing:.06em}.app-shell .g-heading h1{font-size:36px;letter-spacing:-1.4px}.app-shell .g-heading p{font-size:16px;line-height:1.55}.app-shell .g-saved{font-size:12px}.app-shell .g-section-head h2{font-size:22px}.app-shell .g-section-head p{font-size:15px;line-height:1.55}.app-shell .g-categories button{font-size:13px}.app-shell .g-library-toolbar .button{padding:8px 14px;border-radius:999px;font-size:13px}.app-shell .g-subtle{font-size:13px}.app-shell :is(.field>small){font-size:12px}.app-shell :is(.field-label){color:var(--s-muted);font-size:12px;font-weight:500}.app-shell .modal-heading p{font-size:13px;line-height:1.5}.app-shell .muted{font-size:12px}.app-shell .modal-scrim{background:#0405069e}.app-shell .character-dialog::backdrop{background:#040506b8}.app-shell :is(.modal,.character-dialog){box-shadow:0 24px 64px #0009}.app-shell :is(.g-error,.character-error){color:var(--s-danger)}.app-shell :is(.g-section-head>svg){color:var(--s-muted)}.app-shell *::-webkit-scrollbar-thumb{background:var(--s-surface-3)}.app-shell .g-layout.g-layout-references{grid-template-columns:minmax(0,1fr) 360px}.app-shell .g-layout-references .g-library-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}.app-shell .g-card-media{aspect-ratio:3 / 4}.app-shell .project-switch>span{max-width:180px}.app-shell .header-spacer{min-width:0}.app-shell .references{margin-bottom:18px}.app-shell .g-field :is(input,textarea,select),.app-shell :is(.g-field>span,.g-field small,.g-list,.g-job-head small,.g-binding){font-size:12px}@media(max-width:1250px){.app-shell .header-spacer{display:none}}@media(max-width:800px){.app-shell .header-divider{display:none}.app-shell .library{position:sticky;top:0;height:100dvh}}@media(max-width:600px){.app-shell .library{position:static;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr);height:auto;width:100%;max-height:420px;border-right:0;border-bottom:1px solid var(--s-line)}}
