@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,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;--ease-in-out:cubic-bezier(.4,0,.2,1);--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%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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{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]){appearance:button}::file-selector-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{.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.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}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.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)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);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,)}.filter{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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}:root{--color-brand-pink:#eb89ba;--color-brand-pink-hover:#d77fac;--color-brand-pink-light:#f5a8d0;--color-brand-purple:#525c9a;--color-bg-primary:#1a1a2e;--color-bg-secondary:#16213e;--color-bg-card:#1f2940;--color-bg-card-alt:#2a3550;--color-bg-input:#2a3550;--color-bg-standalone:#3d1f3d;--color-txt-primary:#fff;--color-txt-secondary:#ffffffb3;--color-txt-muted:#ffffff80;--color-bdr:#ffffff1a;--color-bdr-hover:#fff3;--color-bdr-focus:#eb89ba;--color-overlay:#000000b3;--color-overlay-light:#0000004d;--color-status-done:#22c55e;--color-status-done-bg:#22c55e26;--color-feedback-success:#4ade80;--color-feedback-success-dark:#22c55e;--color-feedback-success-bg:#22c55e26;--color-feedback-success-border:#22c55e4d;--color-feedback-error:#f87171;--color-feedback-error-bg:#ef44441a;--color-feedback-danger:#ef4444;--color-feedback-danger-hover:#dc2626;--color-accent-green:#a3b18a;--color-accent-pink-subtle:#eb89ba0d;--color-accent-pink-light:#eb89ba1a;--color-accent-pink-medium:#eb89ba26;--color-accent-white-subtle:#ffffff05;--color-accent-white-light:#ffffff08;--color-accent-white-medium:#ffffff0d;--color-accent-white-strong:#ffffff1a;--shadow-card:0 4px 12px #0000004d;--shadow-card-hover:0 4px 12px #eb89ba26;--shadow-version-card:0 4px 20px #eb89ba1a;--shadow-modal:0 25px 50px -12px #00000080;--shadow-dropdown:0 8px 24px #0006;--color-pink:var(--color-brand-pink);--color-purple:var(--color-brand-purple);--color-white:var(--color-txt-primary);--bg-primary:var(--color-bg-primary);--bg-secondary:var(--color-bg-secondary);--bg-card:var(--color-bg-card);--bg-input:var(--color-bg-input);--text-primary:var(--color-txt-primary);--text-secondary:var(--color-txt-secondary);--text-muted:var(--color-txt-muted);--border-color:var(--color-bdr);--border-focus:var(--color-bdr-focus);color:var(--color-txt-primary);background-color:var(--color-bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.6}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{background:var(--color-bg-primary);justify-content:center;align-items:center;display:flex}#root{width:100%;height:100%}html:has(.login-route),body:has(.login-route){height:auto;min-height:100%;overflow:hidden auto}body:has(.login-route){align-items:flex-start}#root:has(.login-route){height:auto;min-height:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@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}@property --tw-ease{syntax:"*";inherits:false}.standalone-dashboard{height:100%;display:flex;flex-direction:column;background:var(--color-bg-primary);font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--color-txt-primary)}.dashboard-header-standalone{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem .75rem 0rem;border-bottom:1px solid var(--color-bdr);flex-shrink:0}.header-logo{height:auto;width:160px;margin:-60px 0;clip-path:inset(30% 15% 30% 15%)}.header-nav{display:flex;align-items:center;gap:0}.nav-item{padding:.5rem 1.25rem;font-size:.9375rem;font-weight:500;color:var(--color-txt-secondary);text-decoration:none;cursor:pointer;transition:color .2s ease;border:none;background:none}.nav-item:hover{color:var(--color-txt-primary)}.nav-item.accent{background:var(--color-brand-pink);color:#fff;border-radius:8px;font-weight:600;padding-left:8px;padding-right:8px;margin-left:12px;margin-right:12px}.nav-item.accent:hover{background:var(--color-brand-pink-light);color:#fff}.nav-divider{width:1px;height:20px;background:var(--color-bdr-hover)}.user-section{display:flex;align-items:center;gap:.75rem;padding:0 0 0 20px;cursor:pointer;position:relative}.user-email{font-size:.875rem;color:var(--color-txt-secondary)}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-brand-pink-light),var(--color-brand-pink));display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:var(--color-bg-standalone)}.user-menu-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--color-bg-card-alt);border:1px solid var(--color-bdr);border-radius:8px;box-shadow:var(--shadow-dropdown);z-index:1000;min-width:140px;overflow:hidden;animation:fadeIn .15s ease}.user-menu-item{width:100%;padding:.75rem 1rem;display:flex;align-items:center;gap:.75rem;background:transparent;border:none;color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left}.user-menu-item:hover{background:var(--color-accent-white-medium);color:var(--color-txt-primary)}.user-menu-item.danger:hover{background:var(--color-feedback-error-bg);color:var(--color-feedback-danger)}.user-menu-item svg{opacity:.7}.credits-balance-pill{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;padding:.32rem .62rem;border-radius:9999px;color:var(--color-txt-secondary);background:var(--color-accent-white-light);border:1px solid var(--color-bdr);line-height:1;white-space:nowrap}.credits-balance-pill:hover{border-color:var(--color-bdr-hover);color:var(--color-txt-primary)}.header-credits-pill{margin:0 .6rem}.credits-modal-content{max-width:380px}.credits-quantity-row{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1rem 0 .75rem}.credits-quantity-btn{width:36px;height:36px;border:1px solid var(--color-bdr);border-radius:8px;background:var(--color-bg-card);color:var(--color-txt-primary);font-size:1.25rem;cursor:pointer}.credits-quantity-btn:disabled{cursor:not-allowed;opacity:.5}.credits-quantity-value{min-width:32px;text-align:center;font-size:1.25rem;font-weight:600;color:var(--color-txt-primary)}.credits-checkout-summary{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--color-bdr);border-radius:8px;padding:.65rem .8rem;color:var(--color-txt-primary);font-weight:600}.credits-checkout-error{margin-top:.75rem;font-size:.875rem;color:var(--color-feedback-danger)}.user-menu-item:hover svg{opacity:1}.dashboard-body-standalone{width:100%;flex:1;overflow-y:auto;max-width:1000px;margin:0 auto;padding:2.5rem 2rem}.dashboard-body-standalone.dashboard-body-split{max-width:none;margin:0;padding:0;overflow:hidden}.dashboard-body-split{max-width:none;display:flex;gap:0;padding:0}.projects-sidebar{width:260px;flex-shrink:0;background:var(--color-overlay-light);border-radius:0;padding:1.5rem 1rem;border:none;border-right:1px solid var(--color-bdr);height:100%;display:flex;flex-direction:column}.sidebar-feedback-btn{font-size:.75rem;font-weight:500;color:var(--color-txt-muted);text-decoration:none;padding:.25rem .5rem;margin:0 0 .75rem;align-self:flex-start;border-radius:4px;transition:color .15s,background .15s}.sidebar-feedback-btn:hover{color:var(--color-brand-pink);background:var(--color-overlay-light)}.sidebar-title{font-size:.8125rem;font-weight:600;color:var(--color-txt-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;padding:0 .5rem}.projects-list{display:flex;flex-direction:column;gap:.25rem;flex:1;overflow-y:auto}.project-item-wrapper{position:relative;display:flex;align-items:center}.project-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 2rem .75rem .75rem;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left;width:100%;transition:all .2s ease}.project-item:hover{background:var(--color-accent-white-medium)}.project-item.active{background:var(--color-accent-pink-medium)}.project-item.active .project-item-name{color:var(--color-brand-pink)}.project-menu-btn{position:absolute;right:.5rem;padding:.25rem;background:transparent;border:none;border-radius:4px;color:var(--color-txt-muted);cursor:pointer;opacity:0;transition:all .2s ease}.project-item-wrapper:hover .project-menu-btn{opacity:1}.project-menu-btn:hover{color:var(--color-txt-secondary);background:var(--color-accent-white-strong)}.project-menu-popup{position:absolute;top:100%;left:.5rem;z-index:100;min-width:200px;background:var(--color-bg-card-alt);border:1px solid var(--color-bdr);box-shadow:var(--shadow-dropdown);border-radius:8px;padding:.75rem;margin-top:.25rem}.project-menu-info{display:flex;flex-direction:column;gap:.5rem}.project-menu-row{display:flex;justify-content:space-between;align-items:center}.project-menu-label{font-size:.75rem;color:var(--color-txt-muted)}.project-menu-value{font-size:.8125rem;color:var(--color-txt-secondary);font-weight:500}.project-menu-divider{height:1px;background:var(--color-bdr);margin:.75rem 0}.project-menu-error{font-size:.75rem;color:var(--color-feedback-danger);background:var(--color-feedback-error-bg);padding:.5rem;border-radius:4px;margin-bottom:.5rem}.project-menu-delete{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem;background:transparent;border:none;border-radius:6px;color:var(--color-feedback-danger);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.project-menu-delete:hover{background:var(--color-feedback-error-bg)}.project-item-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.project-item-icon svg{width:20px;height:20px}.project-item-name{font-size:.9375rem;font-weight:500;color:var(--color-txt-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-loading,.sidebar-empty{font-size:.875rem;color:var(--color-txt-muted);padding:.5rem;text-align:center}.new-project-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-top:1rem;padding:.75rem;background:transparent;border:1px dashed var(--color-bdr-hover);border-radius:8px;color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.new-project-btn:hover{background:var(--color-accent-pink-light);border-color:var(--color-brand-pink);border-style:dashed;color:var(--color-brand-pink)}.requests-panel{flex:1;min-width:0;padding:2rem;max-width:900px;margin:0 auto;overflow-y:auto}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.panel-header-main{display:flex;align-items:center;gap:.75rem;min-width:0}.panel-title{font-size:1.5rem;font-weight:600;color:var(--color-txt-primary);margin:0}.panel-header-actions{display:flex;align-items:center;gap:.5rem}.panel-share-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:transparent;border:1px solid var(--color-bdr);border-radius:12px;color:var(--color-txt-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.panel-share-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.panel-chat-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.5rem;background:var(--color-brand-pink);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.panel-chat-btn:hover:not(.disabled){background:var(--color-brand-pink-light);transform:translateY(-1px)}.panel-chat-btn.disabled{background:var(--color-accent-white-strong);color:var(--color-txt-muted);cursor:not-allowed;opacity:.7}.panel-subtitle{font-size:.875rem;color:var(--color-txt-muted)}.panel-loading{color:var(--color-txt-secondary);text-align:center;padding:3rem}.panel-empty{background:var(--color-accent-white-light);border:1px dashed var(--color-bdr-hover);border-radius:12px;padding:3rem;text-align:center}.panel-empty p{color:var(--color-txt-muted);margin:0;font-size:.9375rem}.requests-container{display:flex;flex-direction:column;gap:1rem}.request-card-standalone{display:flex;justify-content:space-between;align-items:stretch;background:var(--color-bg-card-alt);border-radius:12px;padding:1rem 1.25rem;border:1px solid var(--color-bdr)}.card-body{display:flex;flex-direction:column;flex:1}.card-title-row{display:flex;align-items:center;gap:.5rem}.card-title{font-size:1rem;font-weight:400;color:var(--color-txt-primary);margin:0 0 1rem}.card-meta{display:flex;flex-direction:column;min-width:7.5rem;align-items:flex-end;gap:.375rem;margin-left:auto}.card-description{font-size:.75rem;color:var(--color-txt-secondary);line-height:1.6;margin:auto 16px 0 0}.standalone-modal-overlay{position:fixed;inset:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.standalone-modal-content{background:var(--color-bg-card-alt);border-radius:16px;padding:2rem;max-width:400px;width:90%;border:1px solid var(--color-bdr);box-shadow:var(--shadow-modal)}.standalone-modal-title{font-size:1.25rem;font-weight:600;color:var(--color-txt-primary);margin:0 0 .75rem;text-align:center}.standalone-modal-message{font-size:.9375rem;color:var(--color-txt-secondary);text-align:center;margin:0 0 1.5rem;line-height:1.5}.standalone-modal-actions{display:flex;gap:1rem;justify-content:center}.standalone-modal-btn{padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-brand-pink);color:var(--color-bg-standalone)}.standalone-modal-btn:hover{background:var(--color-brand-pink-light);transform:translateY(-1px)}.standalone-modal-btn-danger{background:var(--color-feedback-danger);color:#fff}.standalone-modal-btn-danger:hover{background:var(--color-feedback-danger-hover)}.standalone-modal-btn-secondary{background:var(--color-accent-white-strong);color:var(--color-txt-secondary)}.standalone-modal-btn-secondary:hover{background:var(--color-accent-white-medium)}.empty-state-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:60vh;padding:2rem}.empty-state-centered .submit-btn.empty-state-btn{width:auto;padding:.875rem 2.5rem;margin-top:1.5rem}.empty-state-title{font-size:2.5rem;font-weight:700;color:var(--color-txt-primary);margin-bottom:1rem}.empty-state-content{display:flex;align-items:center;justify-content:center;gap:.5rem}.game-preview-section{margin-bottom:2rem}.game-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.game-preview-title{font-size:1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-txt-secondary);margin:0}.game-preview-container{background:var(--color-bg-card-alt);border:1px solid var(--color-bdr);border-radius:12px;overflow:hidden;aspect-ratio:16 / 9;max-height:calc(100vh - 300px)}.game-preview-iframe{width:100%;height:100%;border:none;display:block}.versions-section{margin-top:1.5rem}.versions-subheader{font-size:1rem;font-weight:600;color:var(--color-txt-secondary);margin:0 0 .75rem}.versions-container{display:flex;flex-direction:column;gap:.75rem}.version-card{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-card-alt);border-radius:12px;padding:1rem 1.25rem;border:1px solid var(--color-bdr);box-shadow:var(--shadow-version-card);transition:border-color .2s ease;cursor:pointer}.version-card:hover:not(.selected){border-color:var(--color-brand-pink)}.version-card .card-body{display:flex;flex-direction:column;flex:1;min-width:0}.version-card .card-title{font-size:1rem;font-weight:400;color:var(--color-txt-primary);margin:0 0 .25rem;overflow-wrap:break-word}.version-card .card-description{font-size:.75rem;color:var(--color-txt-secondary);margin:0}.version-card .card-meta{flex-shrink:0;margin-left:1rem}.play-version-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-brand-pink);color:var(--color-txt-primary);border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.play-version-btn:hover:not(.selected){background:var(--color-brand-pink-light);transform:translateY(-1px)}.play-version-btn.selected{background:var(--color-status-done-bg);color:var(--color-status-done);cursor:default}.play-version-btn svg{flex-shrink:0}.version-card.selected{border-color:var(--color-brand-pink);background:var(--color-accent-pink-light);cursor:default}.version-card.status-implementing,.version-card.status-review{cursor:pointer}.play-version-btn.status-implementing,.play-version-btn.status-review{background:#ffffff14;color:var(--color-txt-secondary)}.play-version-btn.status-review:hover,.play-version-btn.status-implementing:hover{background:#ffffff1f;transform:none}.dashboard-status-spinner{animation:dashboard-spin 1s linear infinite}.dashboard-sidebar-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--color-bdr);border-radius:10px;background:var(--color-bg-card-alt);color:var(--color-txt-secondary);cursor:pointer}.dashboard-sidebar-backdrop{display:none}@keyframes dashboard-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(pointer:coarse)and (not (any-pointer:fine)),(hover:none)and (not (any-pointer:fine)){.user-email{display:none}.dashboard-header-standalone{padding:0 1rem}.dashboard-body-split{position:relative}.projects-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:30;width:min(280px,80vw);padding:1rem .85rem;background:#131422fa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-dropdown)}.projects-sidebar.mobile-open{transform:translate(0)}.dashboard-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:20;border:none;background:#060812d1;cursor:pointer}.dashboard-sidebar-toggle{display:inline-flex;flex-shrink:0}.requests-panel{width:100%;max-width:none;margin:0;padding:.875rem}.panel-header{align-items:flex-start;gap:1rem;flex-direction:column;margin-bottom:1rem}.panel-header-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex-wrap:wrap;gap:.625rem}.panel-title{font-size:1.25rem;line-height:1.2}.panel-share-btn,.panel-chat-btn{width:100%;justify-content:center}.game-preview-section{display:none}.versions-section{margin-top:1rem}.versions-subheader{margin-bottom:.625rem;font-size:.9375rem}.version-card{flex-direction:column;align-items:stretch;gap:.625rem;padding:.875rem .95rem;border-radius:14px}.version-card .card-body{width:100%}.version-card .card-title{margin-bottom:.375rem;font-size:.9375rem;line-height:1.35}.version-card .card-description{font-size:.75rem;line-height:1.4}.version-card.status-done .card-description{margin-bottom:0}.version-card .card-meta{margin-left:0;width:100%;margin-top:0}.play-version-btn{width:100%;justify-content:center;min-height:40px}.panel-empty{padding:1.5rem 1rem}}@media(max-width:720px)and (pointer:fine){.dashboard-body-split{position:relative}.projects-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:30;width:min(280px,80vw);padding:1rem .85rem;background:#131422fa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-dropdown)}.projects-sidebar.narrow-open{transform:translate(0)}.dashboard-sidebar-backdrop.narrow-backdrop{display:block;position:fixed;inset:0;z-index:20;border:none;background:#060812d1;cursor:pointer}.dashboard-sidebar-toggle.narrow-toggle{display:inline-flex;flex-shrink:0}.requests-panel{width:100%;max-width:none;margin:0;padding:1.25rem}.panel-header{align-items:flex-start;gap:1rem;flex-direction:column;margin-bottom:1rem}.panel-header-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.panel-share-btn,.panel-chat-btn{width:100%;justify-content:center}.versions-section{margin-top:1rem}.version-card{flex-direction:column;align-items:stretch;gap:.625rem}.version-card .card-meta{margin-left:0;width:100%}.play-version-btn{width:100%;justify-content:center}}.profile-page{min-height:100%;display:flex;flex-direction:column;background:var(--color-bg-primary)}.profile-page-body{width:100%;max-width:760px;margin:0 auto;padding:2rem 1.25rem 3rem;display:grid;gap:1rem}.profile-card{background:var(--color-bg-card);border:1px solid var(--color-bdr);border-radius:14px;padding:1.25rem}.profile-title{margin:0;font-size:1.35rem;color:var(--color-txt-primary)}.profile-section-title{margin:0;font-size:1.1rem;color:var(--color-txt-primary)}.profile-subtitle{margin:.4rem 0 1rem;color:var(--color-txt-muted);font-size:.9rem}.profile-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.6rem 0;border-top:1px solid var(--color-bdr)}.profile-label{font-size:.85rem;color:var(--color-txt-muted)}.profile-value{font-size:.9rem;color:var(--color-txt-primary);font-weight:500;text-align:right}.profile-balance-row{margin:.5rem 0 .9rem;padding:.65rem 0;border-top:1px solid var(--color-bdr)}.profile-balance-pill{margin:0;color:var(--color-txt-primary);border-color:var(--color-bdr-hover);background:var(--color-bg-card-alt)}.profile-checkout-summary{margin-top:.9rem}.profile-checkout-notice{margin:.75rem 0 0;font-size:.85rem;color:var(--color-feedback-success)}.profile-actions{margin-top:1rem}.dev-dashboard{height:100%;display:flex;flex-direction:column;background:var(--color-bg-primary)}.dev-dashboard-body{flex:1;overflow-y:auto;padding:2rem}.dev-dashboard-content{max-width:1400px;margin:0 auto}.dev-dashboard-title{font-size:1.5rem;font-weight:600;color:var(--color-txt-primary);margin:0 0 1.5rem}.dev-filter-bar{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:center}.dev-filter-input{padding:.5rem .75rem;border:1px solid var(--color-bdr);border-radius:8px;background:var(--color-bg-card);color:var(--color-txt-primary);font-size:.875rem;font-family:inherit}.dev-filter-input:focus{outline:none;border-color:var(--color-brand-pink)}.dev-filter-input{flex:1;max-width:300px}.dev-table{width:100%;border-collapse:collapse;font-size:.875rem}.dev-table th{text-align:left;padding:.75rem 1rem;color:var(--color-txt-muted);font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-bdr);white-space:nowrap}.dev-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-bdr);color:var(--color-txt-secondary);vertical-align:middle}.dev-table tr:hover td{background:var(--color-accent-white-subtle)}.dev-table-user{font-weight:500;color:var(--color-txt-primary)}.dev-table-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dev-inline-input{width:100%;padding:.25rem .5rem;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--color-txt-secondary);font-size:.875rem;font-family:inherit}.dev-inline-input:hover{border-color:var(--color-bdr)}.dev-inline-input:focus{outline:none;border-color:var(--color-brand-pink);background:var(--color-bg-card)}.dev-inline-input::placeholder{color:var(--color-txt-muted);font-style:italic}.dev-due-on-time{color:var(--color-feedback-success)}.dev-due-overdue{color:var(--color-feedback-error)}.dev-due-no-estimate{color:var(--color-txt-muted);font-style:italic}.dev-hours{white-space:nowrap}.dev-game-link-cell{min-width:140px}.dev-section-title{font-size:1.25rem;font-weight:600;color:var(--color-txt-primary);margin:2.5rem 0 1rem;padding-top:1.5rem;border-top:1px solid var(--color-bdr)}.dev-save-indicator{display:inline-block;font-size:.75rem;color:var(--color-feedback-success);margin-left:.5rem;animation:fadeIn .2s ease}.dev-comp-section{background:var(--color-bg-card);border-radius:10px;padding:1.25rem}.dev-comp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.dev-comp-btn{padding:.5rem 1rem;border:none;border-radius:6px;background:var(--color-brand-pink);color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s}.dev-comp-btn:hover:not(:disabled){opacity:.9}.dev-comp-btn:disabled{opacity:.5;cursor:not-allowed}.dev-comp-btn-danger{background:var(--color-feedback-danger)}.build-page{display:flex;height:100vh;width:100%;background:var(--color-bg-primary)}.build-chat-panel{min-width:360px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--color-bdr);background:var(--color-bg-primary)}.build-chat-header{display:flex;align-items:center;gap:.75rem;height:68px;padding:0 1.25rem;border-bottom:1px solid var(--color-bdr);box-sizing:border-box}.build-back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);cursor:pointer;transition:all .2s ease}.build-back-btn:hover{border-color:var(--color-feedback-danger);color:var(--color-feedback-danger);background:var(--color-feedback-error-bg)}.build-chat-title{font-size:1rem;font-weight:600;color:var(--color-txt-primary)}.build-chat-header-right{margin-left:auto;display:flex;align-items:center;gap:.75rem}.build-credits-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.8125rem;font-weight:500;color:var(--color-txt-secondary);background:var(--color-bg-secondary);border:1px solid var(--color-bdr);white-space:nowrap}.build-credits-badge.warning{color:#fbbf24;background:#fbbf2426;border-color:#fbbf244d}.build-credits-badge.danger{color:var(--color-feedback-danger);background:var(--color-feedback-error-bg);border-color:var(--color-feedback-danger)}.build-finish-btn{padding:.5rem 1.25rem;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.build-finish-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-chat-messages{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.build-chat-footer{padding:1rem 1.25rem;border-top:1px solid var(--color-bdr)}.build-compose-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--color-txt-muted);text-align:center;padding:2rem}.build-compose-placeholder p{font-size:.9375rem}.build-compose-placeholder .build-compose-hint{font-size:.8125rem;opacity:.7}.build-input-form{display:flex;gap:.75rem;align-items:flex-end}.build-compose-input{flex:1;padding:.75rem 1rem;border-radius:8px;border:1px solid var(--color-bdr);background:var(--color-bg-input);color:var(--color-txt-primary);font-size:.875rem;font-family:inherit;resize:none;line-height:1.4;transition:border-color .2s ease}.build-compose-input::placeholder{color:var(--color-txt-muted)}.build-compose-input:focus{outline:none;border-color:var(--color-brand-pink)}.build-send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;border:none;background:var(--color-brand-pink);color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.build-send-btn:hover:not(:disabled){background:#d4739e}.build-send-btn:disabled{opacity:.4;cursor:default}.build-preview-panel{flex:1;display:flex;flex-direction:column;background:var(--color-bg-secondary)}.build-preview-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--color-txt-muted);font-size:.9375rem}.build-draft-tabs{display:flex;gap:.5rem;align-items:center;min-height:68px;padding:0 1.25rem;border-bottom:1px solid var(--color-bdr);box-sizing:border-box}.build-draft-tab{display:inline-flex;align-items:center;gap:6px;padding:.5rem 1.25rem;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.build-draft-tab:hover:not(.pending):not(.failed){border-color:var(--color-brand-pink)}.build-draft-tab.active{border-color:var(--color-brand-pink);background:var(--color-accent-pink-light);color:var(--color-brand-pink)}.build-draft-tab.prev{border-style:dashed}.build-share-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.build-share-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-draft-tab.pending{opacity:.4;cursor:default}.build-draft-tab.failed{opacity:.4;border-color:var(--color-feedback-danger);color:var(--color-feedback-danger);cursor:default}.build-select-draft-btn{margin-left:auto;padding:.5rem 1.25rem;border-radius:8px;border:1px solid var(--color-brand-pink);background:var(--color-brand-pink);color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.build-select-draft-btn:hover:not(:disabled){background:#d4739e;border-color:#d4739e}.build-select-draft-btn:disabled{opacity:.4;cursor:default}.build-retry-drafts-btn{margin-left:auto;padding:.5rem 1.25rem;border-radius:8px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.build-retry-drafts-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-game-container{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem;min-height:0;overflow:hidden}.build-game-frame-wrapper{background:var(--color-bg-card-alt);border:1px solid var(--color-brand-pink);border-radius:12px;overflow:hidden;aspect-ratio:16 / 9;width:min(100%,calc((100vh - 68px - 3rem) * 16 / 9));max-height:100%;box-shadow:0 4px 20px #eb89ba1a}.build-game-frame-wrapper iframe{width:100%;height:100%;border:none;display:block}.build-draft-tab.running{opacity:.7;cursor:pointer}.build-draft-tab.running:hover{border-color:var(--color-brand-pink);opacity:1}.draft-spinner{animation:spin 1s linear infinite;flex-shrink:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.build-draft-tab.done{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-draft-status-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.draft-status-pulse{display:flex;gap:6px}.draft-status-pulse span{width:8px;height:8px;border-radius:50%;background:var(--color-brand-pink);animation:draft-pulse 1.4s ease-in-out infinite}.draft-status-pulse span:nth-child(2){animation-delay:.2s}.draft-status-pulse span:nth-child(3){animation-delay:.4s}@keyframes draft-pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.draft-status-text{color:var(--color-txt-secondary);font-size:.9375rem;text-align:center;max-width:300px;line-height:1.4}.credits-checkout-error{margin:.5rem 0 0;color:var(--color-feedback-danger);font-size:.85rem}.build-attach-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);cursor:pointer;transition:all .2s ease;flex-shrink:0}.build-attach-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-attach-preview{display:flex;align-items:center;gap:.5rem;padding:.5rem;margin-bottom:.5rem;border-radius:8px;background:var(--color-bg-secondary);border:1px solid var(--color-bdr)}.build-attach-thumb{width:40px;height:40px;object-fit:cover;border-radius:4px}.build-attach-name{flex:1;font-size:.8125rem;color:var(--color-txt-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.build-attach-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;border:none;background:transparent;color:var(--color-txt-muted);cursor:pointer;transition:color .2s ease;flex-shrink:0}.build-attach-remove:hover{color:var(--color-feedback-danger)}.build-input-actions{display:flex;flex-direction:column;gap:.375rem;flex-shrink:0}.message-attachment{display:flex;flex-direction:column;gap:.375rem}.message-attachment-img{max-width:160px;max-height:120px;object-fit:cover;border-radius:6px;border:1px solid var(--color-bdr)}.message-attachment-name{font-size:.75rem;color:var(--color-txt-muted)}.question-asset-preview{margin-bottom:12px;text-align:center}.asset-preview-image{max-width:256px;max-height:256px;image-rendering:pixelated;border-radius:8px;border:1px solid var(--color-bdr)}.asset-preview-clickable{cursor:pointer;transition:opacity .15s ease}.asset-preview-clickable:hover{opacity:.8}.lightbox-overlay{cursor:zoom-out}.lightbox-image{transform:scale(5);max-width:18vw;max-height:18vh;image-rendering:pixelated;border-radius:2px;border:1px solid var(--color-bdr)}.generating-asset-status{display:flex;flex-direction:column;gap:8px}.asset-progress-bar{width:100%;max-width:240px;height:6px;background:var(--color-bg-secondary, #e5e5e5);border-radius:3px;overflow:hidden}.asset-progress-fill{height:100%;border-radius:3px;background:var(--color-brand-pink);animation:asset-progress 45s ease-out forwards}.asset-progress-fill-determinate{animation:none}.animation-preview-strip{margin-top:8px}.animation-preview-viewport{display:flex;align-items:center;justify-content:center;min-height:120px}.animation-preview-frame{image-rendering:pixelated;max-width:min(100%,320px);max-height:min(40vh,320px);object-fit:contain}.animation-preview-meta{font-size:.75rem;color:var(--color-txt-muted);margin-top:4px}@keyframes asset-progress{0%{width:0%}20%{width:25%}50%{width:55%}75%{width:75%}90%{width:88%}to{width:95%}}.skip-question-btn{align-self:flex-start;padding:.25rem 0;border:none;background:transparent;color:var(--color-txt-muted);font-size:.8125rem;font-weight:500;cursor:pointer;transition:color .2s ease}.skip-question-btn:hover{color:var(--color-txt-secondary)}.skip-question-btn:disabled{opacity:.5;cursor:not-allowed}.build-resize-handle{width:6px;margin-left:-3px;margin-right:-3px;cursor:col-resize;background:transparent;flex-shrink:0;position:relative;z-index:1;transition:background .15s ease}.build-resize-handle:hover,.build-resize-handle.active{background:color-mix(in srgb,var(--color-brand-pink) 40%,transparent)}.build-drag-overlay{position:fixed;inset:0;z-index:9999;cursor:col-resize}@media(pointer:coarse)and (not (any-pointer:fine)),(hover:none)and (not (any-pointer:fine)){.build-page{height:100dvh}.build-chat-panel{width:100%!important;min-width:0;border-right:none}.build-preview-panel,.build-resize-handle,.build-drag-overlay{display:none}.build-chat-header,.build-chat-messages,.build-chat-footer{padding-left:1rem;padding-right:1rem}.build-chat-header{position:sticky;top:0;z-index:3;height:60px;min-height:60px;padding-top:.5rem;padding-bottom:.5rem;background:var(--color-bg-primary)}.build-chat-footer{position:sticky;bottom:0;z-index:3;padding-top:.75rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));background:var(--color-bg-primary)}.build-chat-messages{padding-top:.875rem;padding-bottom:.875rem}.build-input-form{gap:.5rem}.build-compose-input{min-height:44px;font-size:16px}.build-input-actions{flex-direction:row;gap:.5rem;align-items:center}.build-attach-btn,.build-send-btn{width:44px;height:44px}.build-page.mobile-keyboard-open .build-chat-header{height:52px;min-height:52px;gap:.5rem;padding-top:.25rem;padding-bottom:.25rem}.build-page.mobile-keyboard-open .build-chat-title{font-size:.9375rem}.build-page.mobile-keyboard-open .build-chat-messages{gap:.5rem;padding-top:.625rem;padding-bottom:.5rem}.build-page.mobile-keyboard-open .build-chat-footer{padding-top:.5rem;padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0px))}.build-page.mobile-keyboard-open .build-compose-input{min-height:40px;padding:.625rem .875rem}.build-page.mobile-keyboard-open .build-attach-btn,.build-page.mobile-keyboard-open .build-send-btn{width:40px;height:40px}}@media(max-width:720px)and (pointer:fine){.build-page{position:relative}.build-chat-panel{width:100%!important;min-width:0;border-right:none}.build-resize-handle,.build-drag-overlay{display:none}.build-preview-panel{position:absolute;inset:0;z-index:2}}.narrow-hidden{display:none}.build-preview-toggle{display:inline-flex;align-items:center;gap:6px;padding:.375rem .75rem;border-radius:8px;border:1px solid var(--color-bdr);background:transparent;color:var(--color-txt-secondary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap}.build-preview-toggle:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.build-preview-toggle.active{border-color:var(--color-brand-pink);background:var(--color-accent-pink-light);color:var(--color-brand-pink)}.build-narrow-preview-header{display:flex;align-items:center;justify-content:flex-end;padding:.75rem 1.25rem;border-bottom:1px solid var(--color-bdr)}.gallery-page{min-height:100vh;height:100vh;overflow-y:auto;background:var(--color-bg-primary);color:var(--color-txt-primary)}.gallery-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--color-bdr)}.gallery-header-nav{display:flex;align-items:center;gap:.75rem}.gallery-header-login{padding:.5rem 1.25rem;border:1px solid var(--color-bdr);border-radius:6px;background:transparent;color:var(--color-txt-primary);font-size:.875rem;cursor:pointer;transition:border-color .15s,background .15s}.gallery-header-login:hover{border-color:var(--color-txt-secondary);background:#ffffff0a}.gallery-container{max-width:900px;margin:0 auto;padding:2rem 1.5rem 4rem}.gallery-banner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:2rem 2.5rem;border-radius:12px;background:linear-gradient(135deg,var(--color-bg-card) 0%,rgba(82,92,154,.15) 100%);border:1px solid var(--color-bdr);margin-bottom:2rem}.gallery-banner-empty{flex-direction:column;text-align:center;padding:3rem 2rem}.gallery-banner-empty h2{margin:0;font-size:1.25rem}.gallery-banner-empty p{margin:.5rem 0 0;color:var(--color-txt-muted)}.gallery-banner-title{margin:0;font-size:2rem;font-weight:700}.gallery-banner-meta{margin:.25rem 0 0;font-size:.875rem;color:var(--color-txt-muted)}.gallery-banner-prizes{margin:.5rem 0 0;font-size:1rem}.gallery-banner-cta{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.prize-gold{color:gold;font-weight:600}.prize-silver{color:silver;font-weight:600}.prize-bronze{color:#cd7f32;font-weight:600}.gallery-cta-btn{padding:.625rem 1.5rem;border:none;border-radius:8px;background:var(--color-brand-pink);color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s}.gallery-cta-btn:hover:not(:disabled){opacity:.9}.gallery-cta-btn:disabled{opacity:.6;cursor:default}.gallery-explainer{margin-bottom:2rem;padding:1.5rem 2rem;border-radius:10px;background:#ffffff08;border:1px solid var(--color-bdr)}.gallery-explainer-title{margin:0 0 1rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-txt-muted)}.gallery-explainer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.gallery-explainer-step{display:flex;gap:.75rem;align-items:flex-start}.gallery-explainer-num{width:28px;height:28px;border-radius:50%;background:var(--color-brand-pink);color:#fff;font-size:.8125rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.gallery-explainer-step strong{display:block;font-size:.9375rem;margin-bottom:.125rem}.gallery-explainer-step p{margin:0;font-size:.8125rem;color:var(--color-txt-muted);line-height:1.4}.gallery-section-title{font-size:1rem;font-weight:600;color:var(--color-txt-secondary);margin:0 0 1rem}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.gallery-card{background:var(--color-bg-card);border-radius:10px;padding:1.25rem 1.5rem;border:1px solid var(--color-bdr);transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column;gap:.5rem}.gallery-card:hover{border-color:var(--color-txt-secondary);box-shadow:var(--shadow-card-hover)}.gallery-card-own{border-color:var(--color-bdr)}.gallery-card-header{display:flex;flex-direction:column;gap:.125rem}.gallery-card-title{margin:0;font-size:1.125rem;font-weight:700;color:var(--color-txt-primary)}.gallery-card-creator{font-size:.8125rem;color:var(--color-txt-secondary)}.gallery-card-description{margin:0;font-size:.8125rem;color:var(--color-txt-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.gallery-card-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.5rem}.gallery-btn{padding:.4375rem .875rem;border:none;border-radius:6px;font-size:.8125rem;cursor:pointer;transition:opacity .15s,border-color .15s,color .15s;display:inline-flex;align-items:center;gap:.375rem}.gallery-btn:disabled{opacity:.5;cursor:not-allowed}.gallery-btn-play{background:var(--color-brand-pink);color:#fff;font-weight:600}.gallery-btn-play:hover:not(:disabled){opacity:.9}.gallery-btn-share{background:transparent;color:var(--color-txt-secondary);border:1px solid var(--color-bdr)}.gallery-btn-share:hover:not(:disabled){color:var(--color-txt-primary);border-color:var(--color-txt-secondary)}.gallery-btn-withdraw{background:transparent;color:var(--color-feedback-danger);border:1px solid rgba(239,68,68,.3);margin-left:auto}.gallery-btn-withdraw:hover:not(:disabled){border-color:var(--color-feedback-danger)}.rank-badge{font-weight:700;font-size:.875rem}.gallery-empty-state{text-align:center;padding:3rem 1rem;color:var(--color-txt-muted)}.gallery-empty-state p{margin:0 0 1rem;font-size:1rem}.gallery-history{border-top:1px solid var(--color-bdr);padding-top:2rem;margin-top:2rem}.gallery-history-round{display:flex;flex-direction:column;gap:.75rem;padding:1rem 0;border-bottom:1px solid var(--color-bdr)}.gallery-history-round:last-child{border-bottom:none}.gallery-history-round-label{font-weight:600;font-size:1rem;color:var(--color-txt-primary);margin:0}.gallery-history-creator{color:var(--color-txt-muted)}.gallery-modal{max-width:460px;padding:2rem}.gallery-modal-title{margin:0 0 1.5rem;font-size:1.25rem;font-weight:700}.gallery-form-group{margin-bottom:1.25rem}.gallery-form-label{display:block;font-size:.8125rem;font-weight:600;color:var(--color-txt-secondary);margin-bottom:.375rem}.gallery-form-hint{font-weight:400;opacity:.5}.gallery-form-input{width:100%;padding:.625rem .75rem;border:1px solid var(--color-bdr);border-radius:6px;background:var(--color-bg-primary);color:var(--color-txt-primary);font-size:.875rem;font-family:inherit;box-sizing:border-box;transition:border-color .15s}.gallery-form-input:focus{outline:none;border-color:var(--color-brand-pink)}.gallery-form-input::placeholder{color:var(--color-txt-muted)}textarea.gallery-form-input{resize:vertical;min-height:72px}select.gallery-form-input{cursor:pointer;appearance:auto}.gallery-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.gallery-success{text-align:center;padding:3rem 2rem;animation:slideUp .3s ease-out}.gallery-success-icon{width:56px;height:56px;border-radius:50%;background:var(--color-status-done);color:#fff;font-size:1.75rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.gallery-success h3{margin:0;font-size:1.25rem}.gallery-error-text{color:var(--color-feedback-danger);font-size:.8125rem;margin:0 0 .5rem}.gallery-modal-wizard{max-width:520px}.gallery-wizard-step{padding:.5rem 0 .75rem;display:flex;flex-direction:column;gap:1.25rem}.gallery-wizard-checkbox{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:.25rem;margin-bottom:1.25rem}.gallery-wizard-checkbox input[type=checkbox]{width:18px;height:18px;min-width:18px;margin-top:2px;accent-color:var(--color-brand-pink);cursor:pointer}.gallery-wizard-checkbox label{font-size:.875rem;color:var(--color-txt-secondary);line-height:1.5}.gallery-wizard-checkbox label a{color:var(--color-brand-pink);text-decoration:underline}.gallery-wizard-checkbox label a:hover{opacity:.85}.gallery-wizard-contact-label{font-size:.875rem;font-weight:500;color:var(--color-txt-secondary);margin:0 0 .75rem}.gallery-wizard-contact{display:grid;grid-template-columns:1fr;gap:.75rem}.gallery-wizard-contact .gallery-form-group{margin-bottom:0}.gallery-history-winners{display:flex;flex-direction:column;gap:.75rem}.gallery-history-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--color-bg-card);border:1px solid var(--color-bdr);border-radius:10px}.gallery-history-card-info{flex:1;min-width:0}.gallery-history-card-info strong{font-size:.9375rem}.gallery-history-card-info .gallery-history-creator{font-size:.8125rem}.gallery-history-desc{font-size:.8125rem;color:var(--color-txt-muted);margin:.25rem 0 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-skeleton-banner{height:140px;border-radius:12px;background:var(--color-bg-card);margin-bottom:2rem;animation:pulse 1.5s ease-in-out infinite}.gallery-skeleton-card{height:160px;border-radius:10px;background:var(--color-bg-card);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:720px){.gallery-container{padding:1.5rem 1rem 3rem}.gallery-banner{flex-direction:column;text-align:center;padding:1.5rem}.gallery-banner-cta{align-items:center}.gallery-banner-title{font-size:1.5rem}.gallery-explainer-steps{grid-template-columns:1fr;gap:1rem}.gallery-grid{grid-template-columns:1fr}.gallery-modal{margin:1rem;padding:1.5rem}.gallery-modal-wizard{max-width:none}.gallery-history-card{flex-wrap:wrap}}.page-wrapper{max-width:520px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.logo{display:block;height:auto;width:280px;margin:-95px auto;clip-path:inset(25% 0 25% 0)}.tagline{color:var(--color-txt-muted);font-size:.85rem;font-weight:400;margin:0;padding:0;line-height:1}.form-container{width:100%;background:var(--color-bg-card);border-radius:16px;padding:1.5rem;border:1px solid var(--color-bdr)}.form-title{font-size:1.125rem;font-weight:600;margin-bottom:1.25rem;color:var(--color-txt-primary)}.form-group{margin-bottom:1rem;position:relative}.form-label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-txt-secondary);font-size:.875rem}.form-group:has(.form-input) .form-label{position:absolute;left:.75rem;top:-.5rem;font-size:.75rem;background:var(--color-bg-card);padding:0 .375rem;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:1;margin-bottom:0}.form-label-hidden{opacity:0;transform:translateY(.875rem) scale(1);pointer-events:none}.form-hint{display:block;font-size:.75rem;color:var(--color-txt-muted);margin-top:.25rem;font-weight:400}.form-input{width:100%;padding:.875rem 1rem;border:1px solid var(--color-bdr);border-radius:10px;background:transparent;color:var(--color-txt-primary);font-size:.9375rem;transition:border-color .2s ease}.form-input::placeholder{color:var(--color-txt-muted)}.form-input:focus{outline:none;border-color:var(--color-brand-pink)}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input-error{border-color:var(--color-feedback-danger)}.form-input-error:focus{border-color:var(--color-feedback-danger)}.form-error-text{color:var(--color-feedback-danger);font-size:.8125rem;margin-top:.375rem}.input-with-tooltip{position:relative;display:flex;align-items:center;gap:.5rem}.input-with-tooltip .form-input{flex:1}.input-tooltip-icon{flex-shrink:0}.form-header{margin-bottom:1.5rem}.form-subtitle{color:var(--color-txt-muted);font-size:.875rem;margin-top:.25rem}.form-error{color:var(--color-feedback-error);font-size:.8125rem;margin:.5rem 0 0}.folder-upload{border:1px dashed var(--color-bdr);border-radius:10px;padding:1.25rem;text-align:center;cursor:pointer;transition:all .2s ease;background:transparent}.folder-upload:hover{border-color:var(--color-brand-pink);background:var(--color-accent-pink-subtle)}.folder-upload.has-folder{border-color:var(--color-brand-pink);border-style:solid;background:var(--color-accent-pink-subtle)}.folder-upload-icon{margin-bottom:.5rem;color:var(--color-txt-muted);display:flex;justify-content:center;align-items:center}.folder-upload.has-folder .folder-upload-icon{color:var(--color-brand-pink)}.folder-upload-text{color:var(--color-txt-secondary);font-size:.875rem}.folder-upload-text strong{color:var(--color-brand-pink);font-weight:500}.folder-name{margin-top:.75rem;padding:.375rem .75rem;background:var(--color-accent-pink-light);border-radius:6px;display:inline-block;color:var(--color-brand-pink);font-size:.8125rem}.selector-wrapper{position:relative;border:1px solid var(--color-bdr);border-radius:10px;padding:.875rem;transition:border-color .2s ease;min-height:60px}.selector-wrapper:has(.selected){border-color:var(--color-brand-pink)}.selector-wrapper .form-label{top:-.5rem;left:.75rem}.engine-selector{display:flex;gap:.75rem}.engine-option{flex:1;padding:.875rem;border:1px solid var(--color-bdr);border-radius:10px;background:transparent;cursor:pointer;transition:all .2s ease;text-align:center}.engine-option:hover{border-color:var(--color-txt-muted)}.engine-option.selected{border-color:var(--color-brand-pink);background:var(--color-accent-pink-subtle)}.engine-icon{margin-bottom:.375rem;color:var(--color-txt-muted);display:flex;justify-content:center;align-items:center}.engine-option.selected .engine-icon{color:var(--color-brand-pink)}.engine-name{font-weight:500;font-size:.875rem;color:var(--color-txt-primary)}.mode-selector{display:flex;position:relative;border:1px solid var(--color-bdr);border-radius:10px;background:var(--color-bg-input);padding:3px;margin-bottom:1rem}.mode-indicator{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);border-radius:8px;background:var(--color-brand-pink);box-shadow:0 2px 8px #eb89ba4d;transition:transform .25s cubic-bezier(.4,0,.2,1)}.mode-indicator.right{transform:translate(100%)}.mode-option{flex:1;position:relative;z-index:1;padding:.5rem 1rem;border:none;border-radius:8px;background:transparent;color:var(--color-txt-muted);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .2s ease;text-align:center}.mode-option:hover:not(.selected){color:var(--color-txt-secondary)}.mode-option.selected{color:#fff;font-weight:600}.form-textarea{width:100%;min-height:80px;padding:.875rem;border:1px solid var(--color-bdr);border-radius:10px;background:transparent;color:var(--color-txt-primary);font-family:inherit;font-size:.875rem;resize:vertical;transition:border-color .2s ease}.form-textarea::placeholder{color:var(--color-txt-muted)}.form-textarea:focus{outline:none;border-color:var(--color-brand-pink)}.submit-btn{width:100%;padding:.875rem 1.5rem;border:none;border-radius:10px;background:var(--color-brand-pink);color:var(--color-txt-primary);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.submit-btn:hover:not(:disabled){background:var(--color-brand-pink-hover)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.back-btn{width:100%;padding:.875rem 1.5rem;border-radius:10px;background:transparent;border:1px solid var(--color-bdr);color:var(--color-txt-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:.75rem}.back-btn:hover{border-color:var(--color-txt-muted);color:var(--color-txt-primary);background:var(--color-accent-white-medium)}.modal-overlay{position:fixed;inset:0;background:var(--color-overlay);display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease}.modal-content{background:var(--color-bg-card);border-radius:16px;padding:2rem;max-width:380px;width:90%;border:1px solid var(--color-bdr);text-align:center;animation:slideUp .25s ease}.modal-large{max-width:600px;width:90%;text-align:left}.modal-refinement{max-width:700px;padding:0;overflow:hidden}.modal-icon{margin-bottom:1rem;display:flex;justify-content:center}.modal-icon-success{color:var(--color-feedback-success)}.modal-icon-demo{color:var(--color-brand-pink)}.modal-icon-error{color:var(--color-feedback-error)}.modal-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--color-txt-primary)}.modal-message{color:var(--color-txt-secondary);font-size:.875rem;margin-bottom:1rem;line-height:1.5}.modal-details{background:var(--color-accent-white-light);border:1px solid var(--color-bdr);border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem}.modal-detail-row{display:flex;justify-content:space-between;padding:.375rem 0;font-size:.8125rem}.modal-detail-row:not(:last-child){border-bottom:1px solid var(--color-bdr)}.modal-detail-label{color:var(--color-txt-muted)}.modal-detail-value{color:var(--color-txt-primary);font-weight:500}.modal-note{font-size:.75rem;color:var(--color-txt-muted);margin-bottom:1rem;font-style:italic}.modal-btn{width:100%;padding:.75rem 1.25rem;border-radius:10px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;font-size:.875rem}.modal-btn-confirm{background:var(--color-brand-pink);color:var(--color-txt-primary)}.modal-btn-confirm:hover{background:var(--color-brand-pink-hover)}.modal-actions{display:flex;gap:.75rem;margin-top:1.5rem}.modal-content .modal-actions{margin-top:1.5rem}.modal-btn-secondary{flex:1;background:transparent;color:var(--color-txt-primary);border:1px solid var(--color-bdr)}.modal-btn-secondary:hover{background:var(--color-accent-white-medium)}.modal-btn-danger{flex:1;background:var(--color-feedback-danger);color:#fff}.modal-btn-danger:hover{background:var(--color-feedback-danger-hover)}.delete-btn{padding:.375rem;border-radius:6px;background:transparent;border:1px solid var(--color-bdr);color:var(--color-txt-muted);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.delete-btn:hover{border-color:var(--color-feedback-danger);color:var(--color-feedback-danger);background:var(--color-feedback-error-bg)}.delete-btn-project{position:absolute;top:.75rem;right:.75rem;z-index:10}.template-selector{display:flex;gap:.75rem;margin-top:0;overflow-x:auto;padding-bottom:.5rem;scroll-behavior:smooth}.template-selector.centered{justify-content:center}.template-selector.centered .template-option{flex:1;width:auto}.template-selector::-webkit-scrollbar{height:6px}.template-selector::-webkit-scrollbar-track{background:transparent}.template-selector::-webkit-scrollbar-thumb{background:var(--color-bdr);border-radius:3px}.template-selector::-webkit-scrollbar-thumb:hover{background:var(--color-txt-muted)}.template-option{flex-shrink:0;width:200px;padding:.875rem;border:1px solid var(--color-bdr);border-radius:10px;background:transparent;cursor:pointer;transition:all .2s ease;text-align:center;display:flex;flex-direction:column;align-items:center}.template-option:hover{border-color:var(--color-txt-muted)}.template-option.selected{border-color:var(--color-brand-pink);background:var(--color-accent-pink-subtle)}.template-image{margin-bottom:.5rem;width:100%;height:120px;display:flex;justify-content:center;align-items:center;overflow:hidden;border-radius:8px;background:var(--color-bg-input)}.template-image img{width:100%;height:100%;object-fit:cover}.template-name{font-weight:500;font-size:.875rem;color:var(--color-txt-primary)}.view-template-btn{width:100%;margin-top:.75rem;padding:.625rem 1rem;border-radius:8px;background:transparent;border:1px solid var(--color-bdr);color:var(--color-txt-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.view-template-btn:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink);background:var(--color-accent-pink-subtle)}.hidden-input{display:none}.page-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 1rem}.header-actions{display:flex;align-items:center;gap:1rem}.user-email{font-size:.8125rem;color:var(--color-txt-muted)}.header-btn{padding:.5rem 1rem;border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:var(--color-brand-pink);color:var(--color-txt-primary);border:none}.header-btn:hover{background:var(--color-brand-pink-hover)}.header-btn.secondary{background:transparent;border:1px solid var(--color-bdr);color:var(--color-txt-secondary)}.header-btn.secondary:hover{border-color:var(--color-txt-muted);color:var(--color-txt-primary)}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px;gap:1rem;color:var(--color-txt-muted)}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-bdr);border-top-color:var(--color-brand-pink);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-elapsed{font-size:.875rem;color:var(--text-muted);opacity:.7}.login-page .page-header{position:absolute;top:0;left:0;right:0}.page-wrapper.login-page{max-width:900px}.login-hero{display:flex;gap:2.5rem;align-items:center;width:100%}.login-hero-main{flex:1}.login-hero-title{font-size:2rem;font-weight:700;margin-bottom:.75rem;color:var(--color-txt-primary)}.login-hero-subtitle{font-size:1rem;color:var(--color-txt-secondary);max-width:380px;margin-bottom:2rem}.login-steps{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.login-step{display:flex;gap:.75rem;align-items:center}.login-step-num{width:28px;height:28px;background:#eb89ba26;color:var(--color-brand-pink);font-weight:600;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.8125rem}.login-step strong{color:var(--color-txt-secondary);font-size:.875rem;font-weight:500}.login-step p{color:var(--color-txt-muted);font-size:.8125rem;margin:.125rem 0 0}.google-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.875rem 1.5rem;border:1px solid var(--color-bdr);border-radius:10px;background:transparent;color:var(--color-txt-primary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.google-btn:hover{border-color:var(--color-txt-muted);background:var(--color-accent-white-subtle)}.legal-notice{font-size:.75rem;color:var(--color-txt-muted);text-align:center;margin-top:1rem}.legal-notice a{color:var(--color-brand-pink)}.legal-notice a:hover{text-decoration:underline}.login-hero-promo{flex:0 0 300px}.login-competition-card{background:var(--color-bg-card);border:1px solid rgba(235,137,186,.25);border-radius:16px;padding:1.75rem;text-align:center;box-shadow:0 0 24px #eb89ba14}.login-competition-badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-txt-muted);margin-bottom:.75rem;display:block}.login-competition-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.login-competition-prizes{font-size:1.75rem;font-weight:700;margin-bottom:.75rem;letter-spacing:-.01em}.login-competition-prizes .prize-gold{color:gold}.login-competition-prizes .prize-silver{color:silver}.login-competition-prizes .prize-bronze{color:#cd7f32}.login-competition-desc{font-size:.875rem;color:var(--color-txt-secondary);margin-bottom:1.25rem}.login-competition-link{color:var(--color-brand-pink);font-weight:500;font-size:.9375rem;text-decoration:none;display:inline-block}.login-competition-link:hover{text-decoration:underline}@media(max-width:720px){.login-hero{flex-direction:column}.login-hero-promo{flex:none;width:100%;order:-1}}.dashboard-wrapper{max-width:1200px}.dashboard-container{width:100%;max-width:1200px;padding:0 1rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-title{font-size:1.25rem;font-weight:600;color:var(--color-txt-primary)}.new-request-btn{padding:.625rem 1.25rem;border-radius:8px;background:var(--color-brand-pink);color:var(--color-txt-primary);font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease;border:none}.new-request-btn:hover{background:var(--color-brand-pink-hover)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--color-txt-muted)}.empty-state p{margin-bottom:1.5rem}.requests-list{display:flex;flex-direction:column;gap:1rem}.request-card{background:var(--color-bg-card);border:1px solid var(--color-bdr);border-radius:12px;padding:1.25rem}.request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.request-engine{font-size:.75rem;font-weight:500;color:var(--color-txt-muted);text-transform:uppercase;letter-spacing:.5px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.project-card{background:var(--color-bg-card);border:1px solid var(--color-bdr);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;transition:all .2s ease;cursor:pointer;position:relative}.project-card:hover{border-color:var(--color-brand-pink);transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.project-header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.project-engine{font-size:.75rem;font-weight:500;color:var(--color-txt-muted);text-transform:uppercase;letter-spacing:.5px;text-align:center}.project-name{font-size:1rem;font-weight:600;color:var(--color-txt-primary);margin-bottom:.5rem;text-align:center;word-break:break-word}.project-footer{display:flex;justify-content:center;align-items:center;margin-top:auto;padding-top:.75rem}.request-folder{font-size:1rem;font-weight:600;color:var(--color-txt-primary);margin-bottom:.5rem}.request-description{font-size:.875rem;color:var(--color-txt-secondary);line-height:1.5;margin-bottom:.75rem}.request-footer{display:flex;justify-content:space-between;align-items:center}.request-date{font-size:.75rem;color:var(--color-txt-muted)}.view-game-btn{padding:.375rem .875rem;border-radius:6px;background:transparent;border:1px solid var(--color-brand-pink);color:var(--color-brand-pink);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s ease}.view-game-btn:hover{background:var(--color-accent-pink-light)}.refinement-wrapper{max-width:600px}.refinement-container{width:100%;background:var(--color-bg-card);border-radius:16px;border:1px solid var(--color-bdr);display:flex;flex-direction:column;min-height:500px;max-height:calc(70vh + 40px)}.refinement-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-bdr)}.refinement-header h2{font-size:1.125rem;font-weight:600;color:var(--color-txt-primary);margin-bottom:.25rem}.refinement-subtitle{font-size:.875rem;color:var(--color-txt-muted)}.refinement-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--color-txt-secondary)}.chat-messages{flex:1;overflow-y:auto;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.chat-message{display:flex;max-width:85%}.chat-message.user{align-self:flex-end}.chat-message.assistant,.chat-message.system{align-self:flex-start}.message-content{padding:.75rem 1rem;border-radius:12px;font-size:.875rem;line-height:1.5;white-space:pre-wrap}.chat-message.user .message-content{background:var(--color-brand-pink);color:var(--color-txt-primary)}.chat-message.assistant .message-content{background:var(--color-bg-input);color:var(--color-txt-primary)}.chat-message.system .message-content{background:var(--color-feedback-success-bg);color:#fff;border:1px solid var(--color-feedback-success-border)}.chat-message.system.error .message-content{background:var(--color-feedback-error-bg);border-color:var(--color-feedback-error)}.chat-message.draft-ready{cursor:pointer}.chat-message.draft-ready:hover .message-content{filter:brightness(1.15)}.message-content.typing{display:flex;gap:4px;padding:.875rem 1rem}.message-content.typing span{width:8px;height:8px;background:var(--color-txt-muted);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.message-content.typing span:nth-child(1){animation-delay:-.32s}.message-content.typing span:nth-child(2){animation-delay:-.16s}.chat-input-form{padding:1rem 1.5rem;border-top:1px solid var(--color-bdr)}.chat-input-wrapper{position:relative;border:1px solid var(--color-bdr);border-radius:8px;transition:border-color .2s ease}.chat-input-wrapper:focus-within{border-color:var(--color-brand-pink)}.chat-input{width:100%;padding:.75rem 1rem 2.5rem;border:none;border-radius:8px;background:transparent;color:var(--color-txt-primary);font-family:inherit;font-size:.875rem;resize:none;min-height:40px;max-height:80px;overflow-y:auto}.chat-input::placeholder{color:var(--color-txt-muted)}.chat-input:focus{outline:none}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-send-btn{position:absolute;bottom:.5rem;right:.5rem;padding:.375rem .75rem;border:none;border-radius:6px;background:var(--color-brand-pink);color:var(--color-txt-primary);font-weight:600;font-size:.8125rem;cursor:pointer;transition:background .2s ease}.chat-send-btn:hover:not(:disabled){background:var(--color-brand-pink-hover)}.chat-send-btn:disabled{opacity:.6;cursor:not-allowed}.question-container{display:flex;flex-direction:column;gap:1.5rem}.question-item{display:flex;flex-direction:column;gap:.75rem}.question-text{font-size:.875rem;color:var(--color-txt-primary);font-weight:500;line-height:1.5}.choice-buttons-container{display:flex;flex-direction:column;gap:.5rem}.choice-btn{padding:.75rem 1rem;border:1px solid var(--color-bdr);border-radius:8px;background:transparent;color:var(--color-txt-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left}.choice-btn:hover{border-color:var(--color-brand-pink)}.choice-btn.selected{border-color:var(--color-brand-pink);background:var(--color-accent-pink-light);color:var(--color-brand-pink)}.choice-btn-other{font-style:italic;color:var(--color-txt-muted)}.choice-btn-other:hover{border-color:var(--color-brand-pink);color:var(--color-txt-primary)}.choice-btn-other.selected{border-color:var(--color-brand-pink);background:var(--color-accent-pink-light);color:var(--color-brand-pink);font-style:normal}.free-text-input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-bdr);border-radius:8px;background:transparent;color:var(--color-txt-primary);font-family:inherit;font-size:.875rem;resize:vertical;min-height:60px;transition:border-color .2s ease}.free-text-input::placeholder{color:var(--color-txt-muted)}.free-text-input:focus{outline:none;border-color:var(--color-brand-pink)}@media(pointer:coarse)and (not (any-pointer:fine)),(hover:none)and (not (any-pointer:fine)){.free-text-input{font-size:16px}}.submit-responses-btn{width:100%;padding:.875rem 1.5rem;border:none;border-radius:10px;background:var(--color-brand-pink);color:var(--color-txt-primary);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1rem}.submit-responses-btn:hover:not(:disabled){background:var(--color-brand-pink-hover)}.submit-responses-btn:disabled{opacity:.6;cursor:not-allowed}.tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.tooltip-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--color-txt-muted);color:var(--color-txt-muted);font-size:11px;font-weight:600;cursor:help;transition:all .2s ease}.tooltip-icon:hover{border-color:var(--color-brand-pink);color:var(--color-brand-pink)}.tooltip-content{position:absolute;left:50%;transform:translate(-50%);max-width:240px;width:max-content;padding:.75rem;background:var(--color-bg-card-alt);border:1px solid var(--color-bdr);border-radius:8px;font-size:.8125rem;color:var(--color-txt-secondary);line-height:1.5;box-shadow:var(--shadow-card);z-index:100;opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;text-align:left}.tooltip-content.above{bottom:calc(100% + 10px)}.tooltip-content.below{top:calc(100% + 10px)}.tooltip-content.align-right{left:auto;right:0;transform:none}.tooltip-content.align-right:after{left:auto;right:var(--arrow-offset, 25px);transform:translate(50%)}.tooltip-content:after{content:"";position:absolute;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent}.tooltip-content.above:after{top:100%;border-top:6px solid var(--color-bdr)}.tooltip-content.below:after{bottom:100%;border-bottom:6px solid var(--color-bdr)}.tooltip-wrapper:not(.tooltip-delayed):hover .tooltip-content.above{opacity:1;visibility:visible;bottom:calc(100% + 8px)}.tooltip-wrapper:not(.tooltip-delayed):hover .tooltip-content.below{opacity:1;visibility:visible;top:calc(100% + 8px)}.tooltip-wrapper.tooltip-visible .tooltip-content.above{opacity:1;visibility:visible;bottom:calc(100% + 8px)}.tooltip-wrapper.tooltip-visible .tooltip-content.below{opacity:1;visibility:visible;top:calc(100% + 8px)}
