:root{color:#17181c;background:#f5f5f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(30,81,219,.3);outline-offset:2px}.auth-shell{display:grid;min-height:100dvh;grid-template-columns:minmax(0,50%) minmax(480px,50%);background:#fff}.auth-context{position:relative;min-height:100dvh;overflow:hidden;background:#e7e3e6}.auth-artwork{display:block;width:100%;height:100dvh}.auth-workspace{display:grid;min-height:100dvh;place-items:center;padding:48px clamp(32px,6vw,96px);background:#fff}.auth-card{width:min(100%,500px);padding:clamp(32px,5vw,52px);border-radius:16px;background:#fff;box-shadow:0 18px 52px #19191f1f,0 2px 8px #19191f0d}.auth-card-header{margin-bottom:30px;text-align:center}.auth-logo{display:block;margin:0 auto 18px}.product-name{margin:0 0 10px;color:#5e5f66;font-size:13px;font-weight:650}.auth-card h1,.projects-header h1{margin:0;font-size:clamp(2rem,4vw,2.7rem);letter-spacing:-.035em;line-height:1.05}.auth-hint{margin:12px 0 0;color:#696a72;font-size:13px}.auth-methods{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:24px;padding:4px;border-radius:14px;background:#f0f0f2}.auth-methods button{min-height:42px;border:0;border-radius:10px;background:transparent;color:#6d6e75;cursor:pointer;font-size:13px;font-weight:650}.auth-methods button[aria-pressed=true]{background:#fff;color:#17181c;box-shadow:0 2px 7px #19191f17}.auth-form,.project-create,.signup-sent{display:grid;gap:18px}.field{position:relative;display:grid;gap:7px}.field>span{color:#55565e;font-size:12px;font-weight:650}.field input,.field textarea{width:100%;border:1px solid #d7d7dc;border-radius:12px;background:#f8f8f9;color:#17181c;outline:0;transition:border-color .16s ease-out,background-color .16s ease-out}.field input{min-height:52px;padding:0 15px}.field textarea{padding:13px 15px;resize:vertical}.field input:focus,.field textarea:focus{border-color:#73747b;background:#fff}.password-field input{padding-right:54px}.password-eye{position:absolute;right:5px;bottom:5px;display:grid;width:42px;height:42px;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.password-eye:hover{background:#ededf0}.password-eye canvas,.password-eye-fallback{position:absolute;width:25px;height:25px}.password-eye canvas{opacity:0}.password-eye[data-rive-ready=true] canvas{opacity:1}.password-eye[data-rive-ready=true] .password-eye-fallback{opacity:0}.primary-action,.primary-small{border:0;border-radius:12px;background:#17181c;color:#fff;cursor:pointer;font-weight:680}.primary-action{min-height:52px;padding:12px 18px}.primary-small{min-height:42px;padding:9px 16px}.primary-action:hover:not(:disabled),.primary-small:hover:not(:disabled){background:#303138}.primary-action:active:not(:disabled),.primary-small:active:not(:disabled){transform:translateY(1px)}.primary-action:disabled,.primary-small:disabled{background:#d8d8dc;color:#85868d;cursor:wait}.text-action,.auth-secondary button,.verification-actions button,.account-actions button,.back-action,.conversation-error button,.sync-warning button,.turn-error button,.form-actions>button:not(.primary-action){display:inline-flex;min-width:24px;min-height:24px;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:pointer;font-size:13px;font-weight:650;text-decoration:underline;text-underline-offset:3px}.auth-secondary{margin:30px 0 0;color:#6d6e75;font-size:13px;text-align:center}.verification-actions{display:flex;justify-content:space-between;margin-top:22px}.verification-actions button:disabled{color:#9a9ba1;cursor:default;text-decoration:none}.form-error{margin:0;color:#9a2521;font-size:13px;line-height:1.45}.signup-sent{text-align:center}.signup-sent p{margin:0 0 10px;font-size:18px;font-weight:650}.status-page{display:grid;min-height:100dvh;place-items:center;background:#fff;color:#65666d}.status-content{display:grid;justify-items:center;gap:16px}.status-content p{margin:0}.projects-page{min-height:100dvh;background:#f5f5f6}.projects-header{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:42px clamp(24px,6vw,88px) 28px;background:#fff}.account-actions{min-width:0;display:flex;align-items:center;gap:18px;color:#62636a;font-size:13px}.account-actions span{min-width:0;overflow-wrap:anywhere}.account-actions .account-error{max-width:min(32ch,42vw);color:#9a2521;line-height:1.35}.projects-content{width:min(100% - 40px,920px);margin:0 auto;padding:42px 0 80px}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.projects-toolbar p{margin:0;color:#65666d;font-size:14px}.project-create{width:min(100%,620px);padding:clamp(26px,5vw,42px);border-radius:16px;background:#fff;box-shadow:0 14px 40px #19191f17}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px}.form-actions .primary-action{width:140px}.project-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.project-list li{border-radius:14px;background:#fff}.project-entry{display:flex;width:100%;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:0;border-radius:14px;background:transparent;cursor:pointer;text-align:left}.project-entry:hover{background:#ececef}.project-entry>span{display:grid;min-width:0;gap:6px}.project-entry-name{font-size:17px;font-weight:680;letter-spacing:-.01em;overflow-wrap:anywhere}.project-entry-description{color:#676870;font-size:13px;line-height:1.45}.project-list time{color:#777880;font-size:12px;white-space:nowrap}.discussion-page{height:100dvh;min-height:0;display:flex;overflow:hidden;flex-direction:column;background:#f5f5f6}.discussion-header{display:flex;min-width:0;flex:0 0 auto;align-items:center;justify-content:space-between;gap:32px;padding:24px clamp(24px,6vw,88px);background:#fff}.discussion-heading{min-width:0;display:flex;align-items:center;gap:24px}.discussion-heading>div{min-width:0}.discussion-heading .product-name{overflow-wrap:anywhere}.discussion-heading h1{margin:0;font-size:clamp(1.7rem,3vw,2.2rem);letter-spacing:-.03em;line-height:1.08}.back-action{color:#55565e;white-space:nowrap}.discussion-workspace{display:grid;width:min(100% - 40px,960px);min-height:0;flex:1 1 auto;grid-template-rows:minmax(0,1fr) auto;margin:28px auto 40px;overflow:hidden;border-radius:16px;background:#fff;box-shadow:0 14px 40px #19191f14}.conversation-region{min-height:0;overflow-y:auto;padding:clamp(24px,5vw,44px)}.conversation-state{margin:0;color:#65666d;font-size:13px}.conversation-error,.turn-error{display:flex;align-items:center;gap:14px}.conversation-error{justify-content:center;min-height:100%;color:#65666d}.conversation-error p,.sync-warning p,.turn-error p,.turn-state>p{margin:0}.sync-warning{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:18px;color:#65666d;font-size:13px}.sync-warning button:disabled{color:#85868d;cursor:wait;text-decoration:none}.sync-warning [role=status]:focus-visible{outline:3px solid rgba(30,81,219,.3);outline-offset:2px;border-radius:4px}.turn-processing:focus-visible{outline:3px solid rgba(30,81,219,.3);outline-offset:2px;border-radius:4px}.conversation-list{display:grid;min-height:0;gap:24px;margin:0;padding:0;list-style:none}.conversation-end{height:1px}.message{display:flex}.message article{max-width:min(78%,72ch)}.message-user{justify-content:flex-end}.message-user article{padding:14px 16px;border-radius:14px;background:#ececef}.message-assistant article{padding:4px 0}.message-author{margin:0 0 6px;color:#686970;font-size:12px;font-weight:680}.message-text{margin:0;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.discussion-composer{display:grid;min-width:0;flex:0 0 auto;gap:12px;padding:18px clamp(20px,4vw,32px) 22px;border-top:1px solid #e2e2e6;background:#fff}.discussion-composer-field textarea{display:block;width:100%;min-height:92px;padding:14px 15px;border:1px solid #d7d7dc;border-radius:12px;background:#f8f8f9;color:#17181c;line-height:1.55;outline:0;resize:vertical;transition:border-color .16s ease-out,background-color .16s ease-out}.discussion-composer-field textarea:focus{border-color:#73747b;background:#fff}.discussion-composer-field textarea:disabled{color:#777880;cursor:not-allowed}.discussion-composer-actions{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:18px}.turn-state{color:#65666d;font-size:13px}.turn-error,.turn-state [role=alert]{color:#9a2521}.turn-error button{color:#17181c}.discussion-composer-actions>.primary-small{min-width:92px}.back-action,.account-actions button,.discussion-composer-actions>.primary-small{flex-shrink:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:900px){.auth-shell{display:block}.auth-context{display:none}.auth-workspace{padding:24px;background:#f5f5f6}.auth-card{padding:34px 26px}.projects-header{align-items:flex-start;padding-top:28px}.account-actions{align-items:flex-end;flex-direction:column;gap:8px}.discussion-header{align-items:flex-start}}@media(max-width:560px){.auth-workspace{align-items:start;padding-top:max(22px,env(safe-area-inset-top))}.auth-card{box-shadow:0 10px 30px #19191f14}.projects-header{flex-direction:column;gap:18px}.account-actions{align-items:flex-start}.projects-content{width:min(100% - 28px,920px);padding-top:28px}.project-entry{align-items:flex-start;flex-direction:column;gap:12px;padding:20px}.discussion-header{flex-direction:column;gap:16px;padding:18px 16px}.discussion-heading{width:100%;gap:16px}.discussion-header .account-actions{width:100%;align-items:center;justify-content:space-between;flex-direction:row}.discussion-workspace{width:100%;min-height:0;margin:0;border-radius:0;box-shadow:none}.conversation-region{padding:24px 16px}.message article{max-width:88%}.discussion-composer{padding:14px 14px max(16px,env(safe-area-inset-bottom))}.discussion-composer-actions{align-items:flex-end}.turn-error{align-items:flex-start;flex-direction:column;gap:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
