@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&display=swap";:root{--bg:#f4f7fb;--bg-strong:#fff;--bg-soft:#ecf2f9;--surface:#fffffff0;--surface-strong:#fff;--surface-soft:#f3f8ffeb;--text:#1d2a3f;--text-soft:#5b6b7f;--text-faint:#7c8ba0;--border:#1d2a3f1f;--border-strong:#1d2a3f38;--accent:#5aa8ff;--accent-strong:#3f8ef2;--accent-soft:#5aa8ff24;--accent-soft-2:#5aa8ff14;--navy-soft:#e9f1ff;--success:#1d7a52;--error:#c54545;--warning:#b97c16;--shadow:0 26px 70px #1d2a3f1f;--shadow-soft:0 14px 34px #1d2a3f14;--radius-xl:30px;--radius-lg:24px;--radius-md:18px;--radius-sm:12px;--sans:"Space Grotesk", "Segoe UI", sans-serif;--mono:"Cascadia Code", Consolas, monospace;color:var(--text);font:16px/1.65 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(circle at 0 0,#5aa8ff2e,#0000 24rem),radial-gradient(circle at 100% 0,#3f8ef21a,#0000 18rem),linear-gradient(#f8fbff 0%,#eef4fb 55%,#e8f0f9 100%);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}#root{min-height:100vh}h1,h2,h3,h4,p,dl,dd,dt{margin:0}h1,h2,h3,h4{color:var(--text);letter-spacing:-.04em}h1{font-size:clamp(2.7rem,6vw,5rem);line-height:.96}h2{font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.08}h3{font-size:1.05rem}.landing-page,.auth-layout,.page-shell{width:min(1160px,100% - 36px);margin:0 auto}.landing-page,.auth-layout{place-items:center;min-height:100vh;padding:32px 0;display:grid}.hero-panel,.auth-card,.panel,.sidebar{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-panel{border-radius:var(--radius-xl);box-shadow:var(--shadow);gap:28px;padding:44px;display:grid;position:relative;overflow:hidden}.hero-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#5aa8ff33,#0000 68%);width:260px;height:260px;position:absolute;inset:-18% auto auto -8%}.hero-panel:after{content:"";pointer-events:none;background:radial-gradient(circle,#5aa8ff24,#0000 72%);width:280px;height:280px;position:absolute;inset:auto -5% -24% auto}.hero-copy,.auth-card,.detail-panel,.sidebar-footer,.hero-topbar,.brand,.revision-meta,.project-row>div{z-index:1;position:relative}.hero-topbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-badges,.hero-meta,.stage-list{flex-wrap:wrap;display:flex}.hero-badges{gap:10px}.hero-badges span,.hero-meta span,.stage-list span{color:var(--text-soft);font-size:.82rem}.hero-badges span{background:#ffffffb8;border:1px solid #1d2a3f14;border-radius:999px;padding:8px 12px}.hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center;gap:24px;display:grid}.hero-copy{gap:18px;display:grid}.hero-copy h1{max-width:11ch}.hero-copy p{max-width:46rem;color:var(--text-soft);font-size:1.03rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.hero-meta{gap:18px;margin-top:6px}.hero-meta div{gap:4px;display:grid}.hero-meta strong{letter-spacing:-.05em;font-size:1.35rem}.hero-stage{gap:16px;display:grid}.hero-stage-card{border-radius:var(--radius-lg);border:1px solid #1d2a3f14;padding:22px;box-shadow:0 16px 34px #1d2a3f14}.hero-stage-primary{color:#f5f9ff;background:linear-gradient(160deg,#1d2a3f,#2b4f7d 55%,#5aa8ff)}.hero-stage-primary p,.hero-stage-primary .stage-list span,.hero-stage-primary .mini-label{color:#f0f7ffd6}.hero-stage-secondary{background:linear-gradient(#fffffffa,#ebf4fff0)}.mini-label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:10px;font-size:.78rem;font-weight:700;display:inline-block}.hero-stage-card strong{margin-bottom:8px;font-size:1.25rem;line-height:1.1;display:block}.hero-stage-card p{color:var(--text-soft)}.stage-list{gap:10px;margin-top:16px}.stage-list span{background:#ffffff1a;border:1px solid #ffffff1f;border-radius:999px;padding:8px 10px}.hero-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.hero-card{border-radius:var(--radius-md);text-align:left;background:linear-gradient(#fffffffa,#eff6ffeb);border:1px solid #1d2a3f14;padding:22px;box-shadow:0 10px 28px #1d2a3f0f}.hero-card strong{margin-bottom:8px;font-size:1rem;display:block}.hero-card p{color:var(--text-soft);font-size:.96rem}.auth-card{border-radius:var(--radius-lg);width:min(100%,540px);box-shadow:var(--shadow);gap:18px;padding:34px 30px;display:grid}.auth-card>p{color:var(--text-soft)}.eyebrow{background:var(--accent-soft-2);width:fit-content;color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;border:1px solid #5aa8ff38;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:.77rem;font-weight:700;display:inline-flex}.form-stack,.form-grid,.detail-list,.project-list,.revision-list,.status-actions,.stats-grid,.detail-grid,.page-shell,.sidebar,.nav-links{display:grid}.form-stack,.form-grid,.detail-list,.project-list,.revision-list,.status-actions,.page-shell,.nav-links{gap:16px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide{grid-column:1/-1}label{color:var(--text);gap:8px;font-weight:500;display:grid}input,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);background:#fffffff5;padding:14px 16px;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s}input::placeholder,textarea::placeholder{color:#5b6b7fb8}textarea{resize:vertical;min-height:120px}input:focus,textarea:focus{border-color:var(--accent);background:#fff;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #5aa8ff29}.primary-button,.primary-link,.secondary-link,.ghost-button,.status-button,.inline-action{border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s,color .15s;display:inline-flex}.primary-button,.primary-link{background:linear-gradient(135deg, var(--accent), #7ec0ff 56%, #a2d6ff);color:#102338;font-weight:700;box-shadow:0 16px 28px #5aa8ff47}.secondary-link,.ghost-button,.inline-action,.status-button{border-color:var(--border);color:var(--text);background:#ffffffd6}.primary-button:hover,.primary-link:hover,.secondary-link:hover,.ghost-button:hover,.inline-action:hover,.status-button:hover{transform:translateY(-2px)}.secondary-link:hover,.ghost-button:hover,.inline-action:hover,.status-button:hover{border-color:var(--accent);color:var(--accent-strong)}.primary-button:disabled,.ghost-button:disabled,.inline-action:disabled,.status-button:disabled{opacity:.62;cursor:not-allowed;transform:none}.form-actions{align-items:start;gap:14px;display:grid}.form-message{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-soft);background:#ffffffbd;padding:12px 14px}.form-message-success{color:var(--success);background:#1d7a5214;border-color:#1d7a5238}.form-message-error{color:var(--error);background:#c5454514;border-color:#c5454533}.auth-footnote{color:var(--text-faint);font-size:.94rem}.auth-footnote a{color:var(--accent-strong);font-weight:700}.inline-action{justify-self:start}.app-shell{grid-template-columns:290px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(#1a2740,#233451),radial-gradient(circle at 0 0,#5aa8ff1a,#0000 40%);border-color:#ffffff14;border-radius:0 30px 30px 0;align-content:start;gap:24px;min-height:100vh;padding:24px 20px;position:sticky;top:0;box-shadow:16px 0 40px #1d2a3f1a}.brand{align-items:center;gap:14px;width:fit-content;display:flex}.brand strong{letter-spacing:-.03em;color:#f5f9ff;font-size:1.08rem;display:block}.brand span,.sidebar-footer span{color:#b9c7db}.subtle-line,.project-row span,.revision-meta span,.empty-state,.stat-card span{color:var(--text-soft)}.brand-logo{object-fit:contain;background:#fffffffa;border:1px solid #ffffff24;border-radius:50%;width:50px;height:50px;box-shadow:0 10px 24px #5aa8ff38}.brand-light strong{color:var(--text)}.brand-light span{color:var(--text-soft)}.brand-light .brand-logo{border:1px solid #1d2a3f1f;box-shadow:0 12px 28px #5aa8ff24}.auth-brand{margin-bottom:2px}.nav-links a{color:#d7e5f5;border:1px solid #0000;border-radius:14px;padding:12px 14px;font-weight:500}.nav-links a:hover{color:#fff;background:#ffffff14;border-color:#a2d6ff33}.nav-links a.active{color:#fff;background:#5aa8ff2e;border-color:#a2d6ff38}.sidebar-intro{background:#ffffff14;border:1px solid #ffffff14;border-radius:18px;gap:8px;padding:16px;display:grid}.sidebar-intro p{color:#d7e5f5;font-size:.92rem;line-height:1.55}.sidebar-footer{border-top:1px solid #ffffff1f;gap:14px;margin-top:auto;padding-top:18px}.sidebar-user{gap:4px;display:grid}.sidebar-footer p{color:#fff;font-weight:700}.sidebar-footer .ghost-button{justify-self:start;min-width:128px}.content-area{padding:28px 22px 40px}.page-shell{gap:24px;padding:8px 0}.page-header,.panel-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.panel-heading{margin-bottom:18px}.page-header h1{margin-top:8px;font-size:clamp(2rem,4vw,3.1rem)}.page-lead{max-width:48rem;color:var(--text-soft);margin-top:10px;font-size:1rem}.panel{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-soft);padding:24px}.stats-grid,.detail-grid{gap:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:linear-gradient(#fff,#f2f7fd);border:1px solid #1d2a3f14;padding:22px}.stat-card strong{letter-spacing:-.05em;margin-top:8px;font-size:2.15rem;display:block}.spotlight-panel{background:linear-gradient(135deg,#f7fbff,#ebf4ff 60%,#e5f0ff);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:18px;display:grid}.spotlight-panel p{color:var(--text-soft)}.project-list.compact{gap:10px}.project-row,.revision-item{background:linear-gradient(#fffffff5,#f1f7ffe0);border:1px solid #1d2a3f14;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.project-row:hover,.revision-item:hover{border-color:#5aa8ff42;transform:translateY(-2px);box-shadow:0 12px 28px #1d2a3f14}.status-pill{text-transform:capitalize;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:.84rem;font-weight:700;display:inline-flex}.status-new,.status-discovery{color:var(--warning);background:#b97c161f}.status-design,.status-development{color:var(--accent-strong);background:#5aa8ff1f}.status-revision{color:var(--error);background:#c545451f}.status-done{color:var(--success);background:#1d7a521f}.detail-grid{grid-template-columns:1.15fr .85fr}.detail-panel{gap:18px}.detail-list div{border-bottom:1px solid #1d2a3f14;gap:4px;padding-bottom:14px;display:grid}.detail-list div:last-child{border-bottom:0;padding-bottom:0}.detail-list dt{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);font-size:.82rem}.status-actions{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.status-button.active{color:var(--accent-strong);background:#5aa8ff1f;border-color:#5aa8ff4d}.empty-state{background:#e9f1ffc2;border:1px dashed #1d2a3f2e;border-radius:18px;padding:20px}code,.counter{font-family:var(--mono)}@media (width<=960px){.app-shell{grid-template-columns:1fr}.sidebar{border-radius:0 0 28px 28px;min-height:auto;padding-bottom:18px;position:static}.content-area{padding:20px 16px 32px}.stats-grid,.detail-grid,.hero-grid,.hero-card-grid,.form-grid,.spotlight-panel{grid-template-columns:1fr}.nav-links{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-footer{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.sidebar-footer .ghost-button{grid-column:1/-1}}@media (width<=640px){.landing-page,.auth-layout,.page-shell{width:min(100%,100% - 20px)}.hero-panel,.auth-card,.panel,.sidebar{padding:20px}.landing-page,.auth-layout{min-height:auto;padding:18px 0 28px}.app-shell{min-height:100dvh}.page-header,.panel-heading,.project-row,.revision-item{flex-direction:column;align-items:stretch}.hero-topbar{flex-direction:column;align-items:flex-start}.hero-badges,.hero-meta,.stage-list{width:100%}.hero-badges span,.stage-list span{text-align:center;flex:100%;justify-content:center}.hero-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.hero-meta strong{font-size:1.15rem}.hero-copy h1,.page-header h1,.auth-card h1{font-size:clamp(2rem,11vw,2.75rem)}.hero-actions,.status-actions{width:100%}.hero-copy p,.page-lead,.hero-card p,.hero-stage-card p,.sidebar-intro p{font-size:.95rem}.hero-panel{border-radius:24px;gap:22px}.hero-stage-card,.hero-card,.stat-card,.project-row,.revision-item{padding:18px}.project-row>div,.revision-item>div{width:100%}.status-pill{width:fit-content}.nav-links,.sidebar-footer,.hero-meta{grid-template-columns:1fr}.panel,.auth-card{border-radius:22px}.form-stack,.form-grid,.detail-list,.project-list,.revision-list,.status-actions,.page-shell,.nav-links{gap:14px}.primary-link,.secondary-link,.primary-button,.ghost-button,.inline-action,.status-button{width:100%}}@media (width<=420px){.landing-page,.auth-layout,.page-shell{width:min(100%,100% - 16px)}.hero-panel,.auth-card,.panel,.sidebar,.content-area{padding:16px}.brand{gap:10px}.brand-logo{width:44px;height:44px}input,textarea{padding:13px 14px}}
