:root{--cc-bg:#0b0d10;--cc-sidebar:#08090c;--cc-surface:#11141a;--cc-surface-muted:#0e1014;--cc-spec-panel:#0d0f13;--cc-text:#e7eaee;--cc-text-soft:#ffffffa6;--cc-text-muted:#ffffff80;--cc-text-faint:#ffffff61;--cc-border:#ffffff17;--cc-border-strong:#ffffff24;--cc-accent:#5eead4;--cc-accent-soft:#8ff3e3;--cc-link:#8fd6c9;--cc-link-hover:#bdeee4;--cc-primary-text:#08221d;--cc-ai:#a78bfa;--cc-ai-text:#c4b5fd;--cc-ai-surface:#14131d;--cc-radius-control:9px;--cc-radius-card:13px;--cc-font:"Golos Text", system-ui, sans-serif;--cc-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body,#app{min-height:100%}body{background:var(--cc-bg);color:var(--cc-text);font-family:var(--cc-font);margin:0;font-size:14px}*{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:#ffffff2e;background-clip:content-box;border:3px solid #0000;border-radius:99px}::-webkit-scrollbar-thumb:hover{background-color:#ffffff52}button,input,textarea{font:inherit}button{border:0}a{color:var(--cc-link);text-decoration:none}a:hover{color:var(--cc-link-hover)}::placeholder{color:#e7eaee52}@keyframes cc-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes cc-spin{to{transform:rotate(360deg)}}@keyframes cc-pulse{0%,to{box-shadow:0 0 #a78bfa59}50%{box-shadow:0 0 0 7px #a78bfa00}}@keyframes cc-rise{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}@keyframes cc-float{0%{opacity:0;transform:translate(0,0)}10%{opacity:var(--particle-opacity,.5)}85%{opacity:var(--particle-opacity,.5)}to{opacity:0;transform:translate3d(var(--drift,0px), calc(-100vh - 60px), 0)}}@keyframes cc-breathe{0%,to{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@property --cc-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes cc-rotate{to{--cc-angle:360deg}}.route-fade-enter-active,.route-fade-leave-active{transition:opacity .18s}.route-fade-enter-from,.route-fade-leave-to{opacity:0}.mono{font-family:var(--cc-mono)}.app-link{color:var(--cc-link);font-size:12.5px}.brand-logo{color:var(--cc-text);align-items:baseline;gap:2px;display:inline-flex}.brand-logo--small{--brand-size:16px;--brand-suffix-size:10px}.brand-logo--large{--brand-size:22px;--brand-suffix-size:12px}.brand-logo__mark{width:calc(var(--brand-size,16px) * 1.35);filter:drop-shadow(0 0 6px #5eead440);align-self:center;height:auto;margin-right:6px}.brand-logo__name{font-size:var(--brand-size,16px);letter-spacing:-.02em;font-weight:700}.brand-logo__suffix{color:var(--cc-accent);font-family:var(--cc-mono);font-size:var(--brand-suffix-size,10px)}.brand-logo__cursor{background:var(--cc-accent);align-self:center;width:8px;height:16px;margin-left:3px;animation:1.1s step-end infinite cc-blink}.auth-screen{min-height:100dvh;color:var(--cc-text);background:radial-gradient(130% 100% at 50% 38%,#161b23,#0f1218 72%);justify-content:center;align-items:center;padding:24px;display:flex;position:relative;overflow:hidden}.auth-screen:before{content:"";background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 80% at 50% 45%,#000000e6,#0000 80%);mask-image:radial-gradient(90% 80% at 50% 45%,#000000e6,#0000 80%)}.auth-backdrop{pointer-events:none;position:absolute;inset:0;overflow:hidden}.auth-particle{will-change:transform, opacity;border-radius:50%;animation:linear infinite cc-float;position:absolute;top:100%}.auth-particle--teal{--particle-opacity:.45;background:var(--cc-accent);box-shadow:0 0 8px #5eead4b3}.auth-particle--violet{--particle-opacity:.4;background:var(--cc-ai);box-shadow:0 0 8px #a78bfab3}.auth-screen:after{content:"";filter:blur(70px);background:conic-gradient(#5eead447,#0000 30% 55%,#a78bfa2e 70%,#0000 85%,#5eead447);border-radius:50%;width:620px;height:620px;margin:-310px 0 0 -310px;animation:11s linear infinite cc-spin;position:absolute;top:50%;left:50%}.auth-screen--register:after{background:conic-gradient(from 180deg,#5eead447,#0000 30% 55%,#a78bfa2e 70%,#0000 85%,#5eead447)}.auth-screen--calm:after{background:conic-gradient(from 90deg,#5eead438,#0000 35% 65%,#5eead438);animation-duration:14s}.auth-card{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d0f13eb;border:1px solid #0000;border-radius:16px;flex-direction:column;gap:24px;width:min(400px,100%);padding:40px 38px 34px;animation:.5s cubic-bezier(.2,.7,.3,1) both cc-rise;display:flex;position:relative;box-shadow:0 24px 80px #0000008c,0 0 60px #5eead40f}.auth-card:before{z-index:-1;content:"";background:conic-gradient(from var(--cc-angle), #5eead473, #a78bfa2e 25%, #ffffff14 50%, #a78bfa38 72%, #5eead473);border-radius:17px;animation:7s linear infinite cc-rotate;position:absolute;inset:-1px}.auth-card:after{content:"";border-radius:inherit;background:radial-gradient(220px circle at var(--mx,50%) var(--my,50%), #5eead412, transparent 65%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.auth-card:hover:after{opacity:1}.auth-card>*{animation:.48s cubic-bezier(.2,.7,.3,1) both cc-rise}.auth-card>:first-child{animation-delay:.1s}.auth-card>:nth-child(2){animation-delay:.19s}.auth-card>:nth-child(3){animation-delay:.28s}.auth-card--large-gap{gap:26px}.auth-header{flex-direction:column;align-items:center;gap:10px;display:flex}.auth-mark{justify-content:center;align-items:center;width:62px;height:62px;margin-bottom:2px;display:flex;position:relative}.auth-mark:before{content:"";background:radial-gradient(circle,#5eead429,#0000 70%);border-radius:50%;animation:4.5s ease-in-out infinite cc-breathe;position:absolute;inset:-20px}.auth-mark__img{filter:drop-shadow(0 0 14px #5eead459);width:100%;height:100%}.auth-header__subtitle{color:var(--cc-text-muted);font-size:13px}.auth-title-block{flex-direction:column;gap:8px;display:flex}.auth-title-block h1{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:700}.auth-title-block p{color:var(--cc-text-muted);margin:0;font-size:13px;line-height:1.55}.auth-form{flex-direction:column;gap:13px;display:flex}.auth-form .field__control{background:#ffffff0f;border-color:#ffffff21}.auth-form .field__control:hover:not(:focus){border-color:#fff3}.auth-form .field__control:focus{background:#ffffff16;border-color:#5eead48c}.auth-form .field__control:-webkit-autofill{-webkit-text-fill-color:var(--cc-text);caret-color:var(--cc-text);-webkit-box-shadow:inset 0 0 0 1000px #131820}.auth-links{justify-content:space-between;font-size:12.5px;display:flex}.auth-note{color:var(--cc-text-muted);text-align:center;margin:0;font-size:12.5px}.auth-footer{z-index:1;color:#ffffff40;font-family:var(--cc-mono);letter-spacing:.14em;font-size:10px;position:absolute;bottom:30px}.field{flex-direction:column;gap:7px;display:flex}.field__wrap{display:flex;position:relative}.field__wrap .field__control{flex:1}.field__control--trailing{padding-right:46px}.field__trailing{align-items:center;display:flex;position:absolute;top:0;bottom:0;right:7px}.password-toggle{color:#fff6;cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:flex}.password-toggle:hover{color:var(--cc-text);background:#ffffff0f}.password-toggle svg{width:18px;height:18px}.field__label{color:var(--cc-text-soft);font-size:12.5px;font-weight:500}.field__optional{color:#ffffff59;font-weight:400}.field__control{border-radius:var(--cc-radius-control);background:var(--field-bg,var(--cc-bg));width:100%;color:var(--cc-text);border:1px solid #ffffff1f;outline:none;padding:12px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.field__control--dark{--field-bg:var(--cc-surface)}.field__control:focus{border-color:#5eead499;box-shadow:0 0 0 3px #5eead41f}.field__control--textarea{resize:vertical;min-height:132px}.field__control--autogrow{resize:none;min-height:47px;max-height:220px;line-height:1.5;overflow-y:auto}.btn{border-radius:var(--cc-radius-control);cursor:pointer;justify-content:center;align-items:center;min-height:38px;padding:10px 18px;font-size:13.5px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s,color .15s,opacity .15s;display:inline-flex}.btn:disabled{cursor:default;opacity:.55}.btn--loading{opacity:.85}.btn__spinner{border:2px solid;border-color:currentColor currentColor #0000 #0000;border-radius:50%;flex:none;width:14px;height:14px;margin-right:8px;animation:.7s linear infinite cc-spin}.btn--primary{background:var(--cc-accent);color:var(--cc-primary-text);position:relative;overflow:hidden}.btn--primary:after{content:"";background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:45%;height:100%;transition:left .6s;position:absolute;top:0;left:-80%;transform:skew(-16deg)}.btn--primary:hover:not(:disabled){background:var(--cc-accent-soft);color:var(--cc-primary-text);box-shadow:0 0 28px #5eead44d}.btn--primary:hover:not(:disabled):after{left:130%}.btn--ghost{color:#ffffffad;background:0 0;border:1px solid #ffffff24;font-weight:500}.btn--ghost:hover:not(:disabled){color:var(--cc-text);border-color:#ffffff4d}.btn--outline{color:var(--cc-accent-soft);background:0 0;border:1px solid #5eead459;font-weight:600}.btn--outline:hover:not(:disabled){background:#5eead414}.btn--full{width:100%;min-height:43px;padding:13px;font-size:14.5px}.work-shell{background:var(--cc-bg);height:100dvh;color:var(--cc-text);display:flex;overflow:hidden}.sidebar{background:var(--cc-sidebar);border-right:1px solid #ffffff12;flex-direction:column;flex:none;width:236px;display:flex}.sidebar__brand{padding:22px 20px 18px;display:flex}.sidebar__section-link{color:#ffffff61;font-family:var(--cc-mono);letter-spacing:.14em;align-items:center;padding:6px 20px 8px;font-size:10px;display:flex}.sidebar__section-link:hover{color:var(--cc-accent)}.sidebar__section-arrow{letter-spacing:0;margin-left:auto}.sidebar__nav{flex-direction:column;gap:2px;padding:0 10px;display:flex}.sidebar__project{color:#ffffffb8;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:flex}.sidebar__project:hover{background:#ffffff0d}.sidebar__project.router-link-active,.sidebar__project--active{color:#eafffa;background:#5eead417}.sidebar__project-dot{border:1px solid #ffffff59;border-radius:50%;flex:none;width:6px;height:6px}.sidebar__project.router-link-active .sidebar__project-dot,.sidebar__project--active .sidebar__project-dot{border-color:var(--cc-accent);background:var(--cc-accent)}.sidebar__project-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;overflow:hidden}.sidebar__project.router-link-active .sidebar__project-name,.sidebar__project--active .sidebar__project-name{font-weight:600}.sidebar__project-count{color:#ffffff61;font-family:var(--cc-mono);font-size:10px}.sidebar__create{color:#ffffff8c;border:1px dashed #ffffff29;border-radius:8px;align-items:center;gap:10px;margin-top:6px;padding:9px 10px;font-size:13px;display:flex}.sidebar__create:hover{color:var(--cc-accent);border-color:#5eead480}.sidebar__account{border-top:1px solid #ffffff12;align-items:center;gap:10px;margin-top:auto;padding:16px 20px;display:flex}.sidebar__avatar{width:32px;height:32px;color:var(--cc-accent);background:#1c2b28;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.sidebar__identity{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sidebar__name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.sidebar__role{color:#fff6;font-size:11px}.sidebar__logout{color:#ffffff59;cursor:pointer;font-family:var(--cc-mono);background:0 0;border:0;font-size:11px}.sidebar__logout:hover{color:var(--cc-accent)}.page{flex-direction:column;flex:1;gap:24px;min-width:0;padding:34px 40px;display:flex;overflow-y:auto}.page--task-create,.page--dialogs{gap:0;padding:0;overflow:hidden}.page-header{align-items:center;gap:14px;display:flex}.page-header--stacked{flex-direction:column;align-items:flex-start;gap:6px}.page-title{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:700}.page-title--task{font-size:23px}.page-subtitle{color:var(--cc-text-muted);margin:0;font-size:13.5px}.header-count{color:#ffffff6b;font-size:12.5px}.header-action{margin-left:auto}.header-actions{align-items:center;gap:9px;margin-left:auto;display:flex}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1040px;display:grid}.project-card{border:1px solid var(--cc-border);border-radius:var(--cc-radius-card);background:var(--cc-surface);min-height:170px;color:var(--cc-text);cursor:pointer;flex-direction:column;gap:14px;padding:22px 24px;text-decoration:none;transition:border-color .15s,opacity .15s;display:flex}.project-card:hover{border-color:#5eead466}.project-card--draft{background:var(--cc-surface-muted);border-style:dashed;border-color:#ffffff1f}.project-card--draft:hover{border-color:#ffffff40}.project-card__head{align-items:center;gap:12px;display:flex}.project-card__title{color:inherit;margin:0;font-size:17px;font-weight:600}.project-card--draft .project-card__title{color:#ffffffbf}.project-card__description{color:#ffffff8c;margin:0;font-size:13px;line-height:1.5}.project-card--draft .project-card__description{color:#ffffff73}.project-card__metrics{color:#ffffff73;font-family:var(--cc-mono);flex-wrap:wrap;gap:16px;font-size:11px;display:flex}.project-card__metric--accent{color:var(--cc-accent-soft)}.project-card__footer{color:#fff6;border-top:1px solid #ffffff0f;align-items:center;gap:8px;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.project-card__event-kind{color:var(--cc-accent);font-family:var(--cc-mono);font-size:10px}.project-card--draft .project-card__footer{color:var(--cc-link)}.status-chip{color:#ffffff8c;white-space:nowrap;border-radius:99px;flex:none;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.status-chip--small{padding:3px 9px;font-size:11.5px;font-weight:600}.status-chip:before{content:"";border:1px solid #fff6;border-radius:50%;flex:none;width:6px;height:6px}.status-chip--project-active,.status-chip--ready_for_approval,.status-chip--approved,.status-chip--review{color:var(--cc-accent-soft);background:#5eead424}.status-chip--project-active:before,.status-chip--ready_for_approval:before,.status-chip--approved:before,.status-chip--review:before{border-color:var(--cc-accent);background:var(--cc-accent)}.status-chip--project-estimation,.status-chip--in_progress{color:var(--cc-accent-soft);border:1px solid #5eead44d}.status-chip--project-estimation:before,.status-chip--in_progress:before{border-color:var(--cc-accent)}.status-chip--project-pending_activation,.status-chip--project-draft,.status-chip--draft,.status-chip--canceled{background:#ffffff0f}.status-chip--done{color:#ffffff80;background:#ffffff0d}.status-chip--done:before{width:auto;height:auto;color:var(--cc-accent);content:"✓";background:0 0;border:0;border-radius:0;font-size:11px}.create-grid{grid-template-columns:560px 320px;align-items:start;gap:28px;display:grid}.panel{border:1px solid var(--cc-border);border-radius:var(--cc-radius-card);background:var(--cc-surface)}.form-panel{flex-direction:column;gap:18px;padding:26px;display:flex}.form-actions{gap:10px;padding-top:4px;display:flex}.next-steps{border-radius:var(--cc-radius-card);border:1px dashed #ffffff21;flex-direction:column;gap:12px;padding:20px 22px;display:flex}.section-kicker{color:#ffffff61;font-family:var(--cc-mono);letter-spacing:.14em;font-size:10px}.next-steps__list{color:#ffffff8c;flex-direction:column;gap:12px;font-size:13px;line-height:1.55;display:flex}.next-steps__number{color:var(--cc-accent);font-family:var(--cc-mono);font-size:11px}.project-detail-header{flex-direction:column;gap:12px;display:flex}.project-detail-header__top{align-items:center;gap:14px;display:flex}.project-description{color:#ffffff9e;max-width:640px;margin:0;font-size:14px;line-height:1.55}.context-list{flex-wrap:wrap;gap:8px;display:flex}.context-chip{background:var(--cc-surface);color:#ffffffbf;font-family:var(--cc-mono);border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:7px;padding:6px 12px;font-size:11.5px;display:inline-flex}.context-chip__mark{color:var(--cc-accent)}.context-chip--missing{color:#ffffff59;background:0 0;border-style:dashed;border-color:#ffffff24}.project-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:28px;display:grid}.section-heading{align-items:baseline;gap:12px;display:flex}.section-heading h2{margin:0;font-size:16px;font-weight:600}.section-heading span{color:#ffffff6b;font-size:12.5px}.task-list{flex-direction:column;gap:10px;display:flex}.task-card{border:1px solid var(--cc-border);background:var(--cc-surface);color:var(--cc-text);border-radius:11px;align-items:center;gap:16px;padding:16px 18px;text-decoration:none;transition:border-color .15s,opacity .15s;display:flex}.task-card:hover{border-color:#5eead459}.task-card--ai{border-color:#a78bfa42}.task-card--ai:hover{border-color:#a78bfa80}.task-card--done{background:var(--cc-surface-muted);opacity:.75;border-color:#ffffff0f}.task-card--done:hover{opacity:1}.task-card__body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.task-card__headline{align-items:center;gap:10px;min-width:0;display:flex}.task-card__id{color:#ffffff61;font-family:var(--cc-mono);flex:none;font-size:11px}.task-card__title{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.task-card__summary{color:#ffffff7a;font-size:12.5px}.task-card__ai{color:var(--cc-ai-text);align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.task-card__action{color:var(--cc-accent-soft);cursor:pointer;background:#5eead41a;border:1px solid #5eead466;border-radius:8px;flex:none;padding:7px 14px;font-size:12.5px;font-weight:600}.task-card__action:hover{background:#5eead433}.events-rail{flex-direction:column;gap:12px;display:flex}.events-rail h2{margin:0;font-size:16px;font-weight:600}.event-list{border:1px solid var(--cc-border);background:var(--cc-surface);border-radius:11px;overflow:hidden}.event-row{border-bottom:1px solid #ffffff0f;gap:12px;padding:14px 16px;display:flex}.event-row:last-child{border-bottom:0}.event-row__kind{width:28px;color:var(--cc-accent);font-family:var(--cc-mono);flex:none;margin-top:2px;font-size:10.5px}.event-row__body{flex-direction:column;gap:2px;display:flex}.event-row__text{font-size:13px}.event-row__time{color:#ffffff61;font-size:11.5px}.dashed-note{color:#fff6;border:1px dashed #ffffff21;border-radius:11px;padding:16px;font-size:12.5px;line-height:1.5}.task-create-header{border-bottom:1px solid #ffffff12;align-items:center;gap:14px;padding:22px 32px;display:flex}.task-create-header__title{flex-direction:column;gap:3px;display:flex}.task-create-header__row{align-items:center;gap:10px;display:flex}.task-create-header h1{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.task-create-header__id{color:#ffffff61;font-family:var(--cc-mono);font-size:11px}.ai-badge{color:var(--cc-ai-text);background:#a78bfa1a;border:1px solid #a78bfa4d;border-radius:99px;align-items:center;gap:8px;margin-left:auto;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex}.ai-dot{background:var(--cc-ai);border-radius:50%;flex:none;width:7px;height:7px;animation:2.4s ease-in-out infinite cc-pulse}.task-create-grid{flex:1;grid-template-columns:minmax(0,1fr) 380px;min-height:0;display:grid}.chat-header__tools{align-items:center;gap:10px;margin-left:auto;display:flex}.dialog-index__header{align-items:flex-end}.dialog-index__header-copy{flex-direction:column;gap:5px;display:flex}.dialog-index__new{margin-left:auto}.dialog-index__grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.dialog-index__section,.dialog-index__archive{border:1px solid var(--cc-border);background:var(--cc-surface);border-radius:14px;flex-direction:column;gap:14px;padding:18px;display:flex}.dialog-index__section-heading,.dialog-index__archive-heading{align-items:center;gap:12px;display:flex}.dialog-index__section-heading h2,.dialog-index__archive-heading h2{margin:0;font-size:15px}.dialog-index__section-heading>span{color:var(--cc-text-muted);font-family:var(--cc-mono);margin-left:auto;font-size:10px}.dialog-index__list{flex-direction:column;gap:7px;display:flex}.dialog-index__item{border:1px solid var(--cc-border);background:var(--cc-surface-muted);color:#ffffffab;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:12px 13px;display:flex}.dialog-index__item:hover{background:#5eead40d;border-color:#5eead459}.dialog-index__item--draft{border-style:dashed}.dialog-index__item--archived{opacity:.72}.dialog-index__item-title{overflow-wrap:break-word;font-size:12.5px;font-weight:600}.dialog-index__item-code{color:var(--cc-ai-text);font-family:var(--cc-mono);font-size:9.5px}.dialog-index__item-meta,.dialog-index__empty{color:#ffffff57;font-size:10.5px;line-height:1.45}.dialog-index__empty{margin:0;padding:10px 2px}.dialog-index__archive-heading>div{flex-direction:column;gap:4px;display:flex}.dialog-index__archive-heading .btn{margin-left:auto}.dialog-index__archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dialog-main,.task-draft-content{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.dialog-main{background:var(--cc-bg)}.dialog-chat-scroll{min-height:0}.dialog-header__actions{gap:6px;display:flex}.dialog-rename{border-bottom:1px solid #ffffff12;align-items:flex-end;gap:8px;padding:12px 24px;display:flex}.dialog-rename .field{flex:1}.dialog-main>.form-error{margin:14px 24px 0}.dialog-welcome{background:var(--cc-ai-surface);text-align:center;border:1px solid #a78bfa38;border-radius:14px;flex-direction:column;align-self:center;gap:10px;width:min(560px,100%);margin:auto 0;padding:28px;display:flex}.dialog-welcome__mark{color:var(--cc-ai-text);font-size:23px}.dialog-welcome h2,.dialog-welcome p{margin:0}.dialog-welcome p{color:#ffffff80;font-size:13px;line-height:1.55}.dialog-welcome .field{text-align:left;margin-top:8px}.dialog-archived-note,.task-draft-readonly{color:#ffffff8c;background:#ffffff0a;border:1px solid #ffffff1c;border-radius:10px;padding:12px 15px;font-size:12.5px}.task-draft-readonly{align-items:center;gap:10px;margin:14px 18px 0;display:flex}.task-draft-content>.form-error{margin:14px 18px 0}.chat-message__source{color:#ffffff57;font-size:10.5px;line-height:1.45}.task-header-actions{margin-left:auto}.chat-pane{border-right:1px solid #ffffff12;flex-direction:column;min-width:0;min-height:0;display:flex}.chat-scroll{flex-direction:column;flex:1;gap:18px;padding:26px 32px;display:flex;overflow-y:auto}.chat-context{color:#ffffff4d;font-family:var(--cc-mono);letter-spacing:.1em;text-align:center;align-self:center;font-size:10.5px}.chat-message{flex-direction:column;display:flex}.chat-message__inner{flex-direction:column;gap:6px;max-width:560px;display:flex}.chat-message--ai .chat-message__inner{align-self:flex-start}.chat-message--user .chat-message__inner{align-self:flex-end;align-items:flex-end}.chat-message__author{color:var(--cc-ai-text);align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:inline-flex}.chat-message--user .chat-message__author{color:#ffffff80}.chat-message__bubble{background:var(--cc-ai-surface);color:#e7eaeee0;overflow-wrap:break-word;white-space:pre-wrap;border:1px solid #a78bfa38;border-radius:4px 13px 13px;padding:13px 16px;font-size:13.5px;line-height:1.6}.chat-message--user .chat-message__bubble{background:#141b1a;border-color:#5eead433;border-radius:13px 4px 13px 13px}.typing-bubble{background:var(--cc-ai-surface);border:1px solid #a78bfa38;border-radius:4px 13px 13px;align-self:flex-start;align-items:center;gap:8px;padding:11px 16px;display:flex}.typing-bubble__dot{background:var(--cc-ai);border-radius:50%;width:6px;height:6px;animation:1s step-end infinite cc-blink}.typing-bubble__text{color:var(--cc-ai-text);font-size:12.5px}.chat-composer{border-top:1px solid #ffffff12;align-items:flex-end;gap:10px;padding:18px 32px;display:flex}.chat-composer .btn{min-height:47px}.chat-composer .field{flex:1}.spec-draft{background:var(--cc-spec-panel);flex-direction:column;gap:16px;min-height:0;padding:26px 28px;display:flex;overflow-y:auto}.spec-draft__header{align-items:baseline;gap:10px;display:flex}.spec-draft__title{margin:0;font-size:15px;font-weight:600}.spec-draft__caption{color:#ffffff59;font-family:var(--cc-mono);font-size:10.5px}.spec-draft__list{flex-direction:column;gap:9px;display:flex}.spec-draft__row{border:1px solid var(--cc-border);background:var(--cc-surface);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.spec-draft__row--active{background:var(--cc-ai-surface);border-color:#a78bfa4d}.spec-draft__row--pending{background:var(--cc-surface-muted);color:#ffffff73;border-style:dashed;border-color:#ffffff1f}.spec-draft__check{color:var(--cc-accent);font-size:12px}.spec-draft__pending-dot{border:1px solid #ffffff4d;border-radius:50%;flex:none;width:7px;height:7px}.spec-draft__label{flex:1;font-size:13px}.spec-draft__label--active{color:#e0d8fb}.spec-draft__state{color:#ffffff59;font-family:var(--cc-mono);font-size:10px}.spec-draft__state--active{color:var(--cc-ai-text)}.spec-draft__footer{flex-direction:column;gap:8px;margin-top:auto;display:flex}.spec-progress__meta{color:#fff6;font-family:var(--cc-mono);justify-content:space-between;font-size:10.5px;display:flex}.spec-progress__value{color:var(--cc-accent)}.spec-progress__bar{background:#ffffff14;border-radius:2px;height:4px;overflow:hidden}.spec-progress__fill{background:linear-gradient(90deg, var(--cc-accent), var(--cc-ai));width:60%;height:100%;display:block}.spec-draft__hint{color:#ffffff59;text-align:center;font-size:11.5px;line-height:1.5}.task-detail-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:28px;display:grid}.task-detail-main{flex-direction:column;gap:22px;min-width:0;display:flex}.spec-card{border:1px solid var(--cc-border);border-radius:var(--cc-radius-card);background:var(--cc-surface);overflow:hidden}.spec-card__head{border-bottom:1px solid #ffffff12;align-items:center;gap:10px;padding:16px 22px;display:flex}.spec-card__head h2{margin:0;font-size:15px;font-weight:600}.spec-card__ai{color:var(--cc-ai-text);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.spec-card__version{color:#ffffff59;font-family:var(--cc-mono);margin-left:auto;font-size:10.5px}.spec-card__body{flex-direction:column;gap:18px;padding:22px;display:flex}.spec-section{flex-direction:column;gap:6px;display:flex}.spec-section__title{color:var(--cc-accent);font-family:var(--cc-mono);letter-spacing:.14em;font-size:10px}.spec-section p,.spec-section ul{color:#e7eaeed1;margin:0;font-size:13.5px;line-height:1.65}.spec-section--muted p{color:#e7eaee99}.spec-section ul{flex-direction:column;gap:5px;padding-left:18px;display:flex}.discussion{flex-direction:column;gap:14px;display:flex}.discussion h2{margin:0;font-size:15px;font-weight:600}.discussion__list{flex-direction:column;gap:14px;display:flex}.discussion-message{gap:12px;display:flex}.discussion-message__avatar{border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;display:flex}.discussion-message--ai .discussion-message__avatar{color:var(--cc-ai-text);background:#26212f}.discussion-message--owner .discussion-message__avatar{color:#e8c9a0;background:#2a2320;font-weight:600}.discussion-message--user .discussion-message__avatar{color:var(--cc-accent);background:#1c2b28;font-weight:600}.discussion-message__body{flex-direction:column;gap:4px;display:flex}.discussion-message__meta{color:#ffffff73;font-size:12px}.discussion-message__author{color:#e7eaeed9;font-weight:600}.discussion-message--ai .discussion-message__author{color:var(--cc-ai-text)}.discussion-message__bubble{background:var(--cc-surface);color:#e7eaeed9;overflow-wrap:break-word;white-space:pre-wrap;border:1px solid #ffffff17;border-radius:4px 11px 11px;max-width:620px;padding:11px 14px;font-size:13px;line-height:1.6}.discussion-message--ai .discussion-message__bubble{background:var(--cc-ai-surface);border-color:#a78bfa33}.discussion__composer{gap:10px;display:flex}.discussion__composer .field{flex:1}.task-rail{flex-direction:column;gap:16px;display:flex}.rail-card{border:1px solid var(--cc-border);border-radius:var(--cc-radius-card);background:var(--cc-surface);flex-direction:column;gap:14px;padding:20px;display:flex}.decision-actions{flex-direction:column;gap:9px;display:flex}.decision-note{color:#ffffff59;font-size:11.5px;line-height:1.5}.approved-callout{color:var(--cc-accent-soft);background:#5eead41a;border:1px solid #5eead44d;border-radius:9px;align-items:center;gap:9px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.timeline{flex-direction:column;display:flex}.timeline-item{gap:12px;display:flex}.timeline-item__track{flex-direction:column;align-items:center;display:flex}.timeline-item__dot{background:#ffffff4d;border-radius:50%;flex:none;width:7px;height:7px;margin-top:4px}.timeline-item--accent .timeline-item__dot{background:var(--cc-accent)}.timeline-item--ai .timeline-item__dot{background:var(--cc-ai)}.timeline-item__line{background:#ffffff1a;flex:1;width:1px}.timeline-item__body{flex-direction:column;gap:2px;padding-bottom:16px;display:flex}.timeline-item:last-child .timeline-item__body{padding-bottom:0}.timeline-item__title{font-size:12.5px;font-weight:600}.timeline-item--accent .timeline-item__title{color:var(--cc-accent-soft)}.timeline-item__meta{color:#ffffff61;font-size:11px}.form-error{color:#ffe6e6f2;background:#ff7c7c14;border:1px solid #ff7c7c61;border-radius:10px;align-items:center;gap:12px;margin:0 0 18px;padding:12px 14px;display:flex}.empty-state{border:1px dashed var(--cc-border);color:var(--cc-text-muted);text-align:center;border-radius:14px;padding:36px}.empty-state h2{color:var(--cc-text);margin:0 0 8px}.owner-panel{max-width:720px;margin-bottom:28px}@media (width<=1080px){.work-shell{height:auto;min-height:100dvh;overflow:visible}.sidebar{width:220px}.project-grid,.project-layout,.task-detail-grid,.create-grid,.task-create-grid,.dialog-index__grid,.dialog-index__archive-grid{grid-template-columns:1fr}.spec-draft{border-top:1px solid #ffffff12;min-height:360px}}@media (width<=760px){.work-shell{flex-direction:column}.sidebar{width:100%;max-height:none}.sidebar__nav{padding-bottom:10px}.sidebar__account{margin-top:0}.page{padding:24px 18px}.page-header,.project-detail-header__top,.task-create-header{flex-direction:column;align-items:flex-start}.header-action,.ai-badge{margin-left:0}.header-actions,.chat-header__tools,.dialog-header__actions,.task-header-actions{flex-direction:column;align-items:stretch;width:100%;margin-left:0}.chat-header__tools .ai-badge{align-self:flex-start}.dialog-index__new{width:100%}.dialog-index__archive-heading{flex-direction:column;align-items:stretch}.dialog-index__archive-heading .btn{margin-left:0}.dialog-rename,.task-draft-readonly,.task-card,.spec-card__head,.discussion__composer,.chat-composer,.form-actions{flex-direction:column;align-items:stretch}.task-card__headline{flex-direction:column;align-items:flex-start;gap:4px}.task-card__title{white-space:normal}}.field__control--select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='rgba(255,255,255,0.55)' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.field__control--select option{background:var(--cc-surface);color:var(--cc-text)}.field-error{color:#ff9494e6;margin:-8px 0 0;font-size:12.5px}.sidebar__admin{border-top:1px solid var(--cc-border);flex-direction:column;margin-top:18px;padding-top:14px;display:flex}.admin-detail{flex-direction:column;gap:18px;max-width:860px;display:flex}.admin-section{flex-direction:column;gap:14px;display:flex}.admin-section__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-section__text{color:var(--cc-text-soft);margin:0;font-size:14px}.admin-inline-form{flex-direction:column;gap:14px;display:flex}.admin-checkbox{color:var(--cc-text-soft);cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:inline-flex}.admin-checkbox input{width:15px;height:15px;accent-color:var(--cc-accent)}.admin-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-list__row{border-top:1px solid var(--cc-border);align-items:center;gap:14px;padding:12px 0;display:flex}.admin-list__row:first-child{border-top:0}.admin-list__main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.admin-list__title{color:var(--cc-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;text-decoration:none;overflow:hidden}a.admin-list__title:hover{color:var(--cc-link-hover)}.admin-list__meta{color:var(--cc-text-muted);font-size:12.5px}.admin-list__actions{flex:none;align-items:center;gap:8px;display:flex}.admin-bind-row{align-items:flex-end;gap:12px;display:flex}.admin-bind-row .field{flex:1}.admin-hint{color:var(--cc-text-faint);margin:0;font-size:12.5px}.admin-notice{color:var(--cc-accent-soft);background:#5eead414;border:1px solid #5eead44d;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.admin-topic{border-top:1px solid var(--cc-border);flex-direction:column;gap:10px;padding:14px 0;display:flex}.admin-topic:first-child{border-top:0}.admin-topic__info{align-items:center;gap:14px;display:flex}.admin-topic__actions{align-items:center;gap:8px;display:flex}.admin-topic__actions .field{flex:1;min-width:0}.status-chip--classified,.status-chip--manual{color:var(--cc-accent-soft);background:#5eead424}.status-chip--classified:before,.status-chip--manual:before{border-color:var(--cc-accent);background:var(--cc-accent)}.status-chip--pending,.status-chip--general{background:#ffffff0f}.status-chip--failed{color:#ff9494e6;background:#ff7c7c1f}.status-chip--failed:before{background:#ff9494e6;border-color:#ff9494e6}.agent-progress{width:min(620px,100% - 24px);color:var(--cc-text-soft);background:#5eead40f;border:1px solid #5eead438;border-radius:12px;margin:10px 12px;padding:12px 14px}.agent-progress--failed{background:#ff7c7c12;border-color:#ff94944d}.agent-progress__summary{cursor:pointer;align-items:center;gap:9px;font-size:13.5px;list-style:none;display:flex}.agent-progress__summary::-webkit-details-marker{display:none}.agent-progress__summary-text{flex:1}.agent-progress__agent{color:var(--cc-text-muted);white-space:nowrap;font-size:11.5px}.agent-progress__spinner{border:2px solid #5eead438;border-top-color:var(--cc-accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite agent-progress-spin}.agent-progress__steps{color:var(--cc-text-muted);gap:5px;margin:12px 0 0 23px;padding:0;font-size:12px;list-style:none;display:grid}.agent-progress__steps li:before{color:var(--cc-accent);content:"✓";margin-right:7px}.agent-progress__error{color:#ffb4b4eb;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-size:13px;display:flex}@keyframes agent-progress-spin{to{transform:rotate(360deg)}}@media (width<=720px){.admin-topic__actions{flex-wrap:wrap}.admin-topic__actions .field{flex-basis:100%}.admin-bind-row{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.auth-particle{display:none}.auth-screen:after,.auth-card,.auth-card:before,.auth-card>*,.auth-mark:before,.brand-logo__cursor,.btn--primary:after,.ai-dot{animation:none!important}.agent-progress__spinner{animation:none}.route-fade-enter-active,.route-fade-leave-active{transition:none}}
