@font-face{font-family:Poppins;src:url(/poppins-400-latin.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Sora;src:url(/sora-400-700-latin.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}:root{--primary:#327874;--primary-hover:#245c58;--primary-foreground:#fff;--secondary:#162033;--accent:#c7b586;--background:#fcfcf9;--surface:#fff;--surface-soft:#f3f1eb;--foreground:#162033;--muted:#4b5668;--border:#d8d7d0;--danger:brown;--focus:#327874;--body-font:Poppins, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--heading-font:Sora, Poppins, ui-sans-serif, system-ui, sans-serif;font-family:var(--body-font);color:var(--foreground);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3{font-family:var(--heading-font);letter-spacing:-.035em;margin:0}p{margin-top:0}.app-shell{background:var(--background);min-height:100svh}.topbar{border-bottom:1px solid var(--border);background:#fcfcf9eb;justify-content:space-between;align-items:center;height:76px;padding:0 32px;display:flex}.brand{color:var(--secondary);font-family:var(--heading-font);letter-spacing:-.03em;align-items:center;gap:14px;font-weight:700;text-decoration:none;display:inline-flex}.brand img{object-fit:contain;width:50px;height:36px}.brand span{border-left:1px solid var(--border);padding-left:14px}.account{color:var(--muted);align-items:center;gap:10px;font-size:.84rem;display:flex}.avatar{width:34px;height:34px;color:var(--primary-foreground);background:var(--primary);border-radius:50%;place-items:center;font-weight:600;display:grid}.text-button,.text-link{color:var(--primary-hover);background:0 0;border:0;padding:5px;font-weight:600}.workspace{grid-template-columns:284px 1fr;min-height:calc(100svh - 76px);display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface-soft);padding:34px 20px}.sidebar-heading,.section-heading,.page-heading,.project-card-top,.heading-actions,.modal-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.sidebar-heading{padding:0 8px 22px}.sidebar-heading h2{font-size:1.35rem}.eyebrow{color:var(--primary);letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:600}.icon-button{width:36px;height:36px;color:var(--primary-foreground);background:var(--primary);border:0;border-radius:10px;font-size:1.35rem}.icon-button:hover,.button.primary:hover{background:var(--primary-hover)}.customer-nav{gap:5px;display:grid}.customer-link{width:100%;color:var(--foreground);text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;padding:11px 10px;display:flex}.customer-link:hover{border-color:var(--border);background:#ffffff8c}.customer-link.active{border-color:var(--border);background:var(--surface);box-shadow:0 5px 16px #1620330f}.customer-monogram{width:34px;height:34px;color:var(--primary-hover);background:#e0ecea;border-radius:9px;flex:none;place-items:center;font-weight:600;display:grid}.customer-link strong,.customer-link small{display:block}.customer-link strong{font-size:.9rem}.customer-link small{color:var(--muted);margin-top:2px;font-size:.72rem}.sidebar-empty{color:var(--muted);padding:12px 8px;font-size:.85rem}.content{width:100%;max-width:1360px;padding:48px clamp(28px,5vw,74px) 80px}.page-heading{border-bottom:1px solid var(--border);align-items:flex-end;padding-bottom:34px}.page-heading h1{font-size:clamp(2rem,4vw,3.15rem)}.page-heading p:last-child{color:var(--muted);margin:10px 0 0}.breadcrumb{color:var(--muted);margin-bottom:13px;font-size:.78rem}.breadcrumb span{color:var(--accent);padding:0 7px}.button{border:1px solid #0000;border-radius:9px;min-height:42px;padding:10px 16px;font-weight:600}.button.primary{color:var(--primary-foreground);background:var(--primary)}.button.secondary{color:var(--foreground);border-color:var(--border);background:var(--surface)}.button.full{width:100%;margin-top:8px}.content section{padding-top:38px}.section-heading{margin-bottom:22px}.section-heading h2{font-size:1.5rem}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;flex-direction:column;min-height:230px;padding:22px;display:flex;box-shadow:0 7px 24px #1620330a}.project-icon{width:38px;height:38px;color:var(--primary-foreground);background:var(--secondary);font-family:var(--heading-font);border-radius:10px;place-items:center;display:grid}.status-dot{color:var(--muted);align-items:center;gap:6px;font-size:.68rem;display:inline-flex}.status-dot:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px}.project-card h3{margin:25px 0 9px;font-size:1.1rem}.project-card p{color:var(--muted);flex:1;font-size:.82rem;line-height:1.6}.text-link{align-self:flex-start;padding:0}.card-actions{justify-content:space-between;gap:12px;display:flex}.empty-state{border:1px dashed var(--border);background:var(--surface);text-align:center;border-radius:15px;align-content:center;justify-items:center;min-height:300px;padding:48px 24px;display:grid}.empty-state.large{min-height:calc(100svh - 180px)}.empty-state h1,.empty-state h3{margin:16px 0 8px}.empty-state p{max-width:440px;color:var(--muted)}.empty-icon{width:46px;height:46px;color:var(--primary-hover);background:#e0ecea;border-radius:13px;place-items:center;font-size:1.4rem;display:grid}.notice{border-radius:9px;justify-content:space-between;margin-bottom:20px;padding:12px 14px;display:flex}.notice.error{color:#752121;background:#f8e8e6}.notice.success{color:var(--primary-hover);background:#e0ecea}.notice button{color:inherit;background:0 0;border:0;font-weight:600}.login-page{background:var(--background);grid-template-columns:1.15fr .85fr;min-height:100svh;display:grid}.login-brand{color:#fff;background:var(--secondary);flex-direction:column;justify-content:space-between;padding:clamp(40px,7vw,96px);display:flex}.login-brand .brand{color:#fff}.login-brand .brand span{border-color:#ffffff40}.login-brand h1{max-width:720px;font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.06}.login-brand p:not(.eyebrow){color:#cdd2dc;max-width:560px;margin:25px 0 0;line-height:1.7}.gold-line{background:var(--accent);width:90px;height:4px}.login-panel{place-items:center;padding:32px;display:grid}.login-card{width:min(100%,420px)}.login-card h2{font-size:2.1rem}.muted{color:var(--muted);margin:9px 0 32px}form{gap:9px;display:grid}label{color:var(--foreground);margin-top:10px;font-size:.82rem;font-weight:600}input,select{border:1px solid var(--border);width:100%;min-height:46px;color:var(--foreground);background:var(--surface);border-radius:9px;padding:10px 12px}input:focus{border-color:var(--primary)}.form-error{color:var(--danger);margin:5px 0;font-size:.82rem}.modal-backdrop{z-index:10;background:#16203373;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:0;border-radius:15px;width:min(100%,460px);padding:30px;box-shadow:0 24px 80px #16203333}.modal h2{margin-bottom:22px}.planning-drawer{z-index:12;background:var(--background);width:min(100%,620px);padding:34px;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-20px 0 70px #16203333}.drawer-heading{justify-content:space-between;gap:20px;display:flex}.goal-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin-top:24px;padding:22px}.goal-card h3{margin:8px 0 3px}.goal-card small{color:var(--muted)}.epic-row{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.epic-row small{display:block}.epic-row>span{color:var(--primary);font-size:.78rem}.epic-row ul{color:var(--muted);padding:0;font-size:.8rem;list-style:none}.epic-row li{margin:7px 0}.epic-row li.complete{text-decoration:line-through}.modal-actions{justify-content:flex-end;margin-top:20px}.full-page-state,.content-state{text-align:center;align-content:center;place-items:center;min-height:100svh;padding:30px;display:grid}.full-page-state .brand{position:absolute;top:30px;left:30px}.full-page-state h1,.content-state h2{margin:18px 0 8px}.full-page-state p,.content-state p{color:var(--muted)}.content-state{min-height:60svh}.spinner{border:3px solid var(--surface-soft);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{border-color:var(--primary);animation:none}}@media (width<=900px){.workspace{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:18px 20px}.sidebar-heading{padding-bottom:12px}.customer-nav{display:flex;overflow-x:auto}.customer-link{min-width:190px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-page{grid-template-columns:1fr}.login-brand{gap:50px;min-height:42svh}}@media (width<=620px){.topbar{height:68px;padding:0 18px}.brand span,.account-email{display:none}.workspace{min-height:calc(100svh - 68px)}.content{padding:32px 18px 60px}.page-heading{flex-direction:column;align-items:flex-start}.heading-actions{width:100%}.heading-actions .button{flex:1}.project-grid{grid-template-columns:1fr}.login-brand{padding:32px 24px}.login-brand h1{font-size:2.25rem}.login-panel{padding:50px 24px}}
