.projects-page .app{display:grid;grid-template-columns:280px 1fr;height:100vh;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:#ecf2fb;background:radial-gradient(circle at top left,rgba(47,129,247,.1),transparent 28%),radial-gradient(circle at right,rgba(88,166,255,.08),transparent 24%),#0b0f14}.projects-page .sidebar{border-right:1px solid #263243;background:#090d12eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:22px 18px;display:flex;flex-direction:column;height:100vh;overflow-y:auto}.projects-page .brand{display:flex;align-items:center;gap:12px;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid #263243}.projects-page .brand .brand-badge{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#2f81f7,#58a6ff);display:grid;place-items:center;font-weight:800;font-size:18px;flex-shrink:0;box-shadow:0 20px 50px #00000059}.projects-page .brand h1{margin:0;font-size:16px;line-height:1.2;color:#ecf2fb}.projects-page .brand span{color:#8ea0b8;font-size:11px}.projects-page .nav-section{margin-bottom:24px}.projects-page .nav-title{color:#8ea0b8;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;padding-left:4px}.projects-page .nav a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#8ea0b8;padding:11px 14px;border-radius:12px;border:1px solid transparent;margin-bottom:4px;font-size:14px;transition:.18s ease}.projects-page .nav a:hover,.projects-page .nav a.active{color:#ecf2fb;background:#121821;border-color:#263243}.projects-page .dot{width:8px;height:8px;border-radius:50%;background:#2f81f7;flex-shrink:0}.projects-page .sidebar-footer{margin-top:auto;padding-top:18px;border-top:1px solid #263243;display:flex;flex-direction:column;gap:10px}.projects-page .sidebar-user{display:flex;align-items:center;gap:10px}.projects-page .sidebar-user .user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#2f81f7,#58a6ff);display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}.projects-page .sidebar-user .user-name{font-size:13px;color:#ecf2fb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projects-page .btn-logout{padding:8px 14px;border:1px solid #263243;border-radius:10px;background:transparent;color:#8ea0b8;font-size:12px;cursor:pointer;transition:.18s;text-align:center}.projects-page .btn-logout:hover{border-color:#da3633;color:#ff9b95;background:#da363314}.projects-page .content{padding:28px;overflow-y:auto;height:100vh}.projects-page .topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.projects-page .welcome h2{margin:0 0 8px;font-size:clamp(22px,3vw,34px);line-height:1.1;color:#ecf2fb}.projects-page .welcome p{margin:0;color:#8ea0b8;font-size:14px;line-height:1.55;max-width:700px}.projects-page .actions{display:flex;gap:10px;flex-shrink:0}.projects-page .btn{border:1px solid #263243;background:#121821;color:#ecf2fb;padding:11px 18px;border-radius:12px;font-weight:600;font-size:13px;cursor:pointer;transition:.18s;white-space:nowrap}.projects-page .btn:hover{transform:translateY(-1px);border-color:#2f81f7}.projects-page .btn.primary{background:linear-gradient(135deg,#2f81f7,#58a6ff);border-color:transparent;color:#fff}.projects-page .btn.primary:hover{opacity:.9;transform:translateY(-1px)}.projects-page .btn.sm{padding:8px 14px;font-size:12px}.projects-page .btn-link{background:transparent;border:none;color:#58a6ff;font-size:13px;font-weight:600;cursor:pointer;padding:0}.projects-page .btn-link:hover{color:#ecf2fb}.projects-page .btn-retry{background:transparent;border:1px solid #263243;color:#8ea0b8;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer}.projects-page .btn-retry:hover{border-color:#2f81f7;color:#ecf2fb}.projects-page .card{background:linear-gradient(180deg,#18212dfa,#121821fa);border:1px solid #263243;border-radius:18px;box-shadow:0 20px 50px #00000059}.projects-page .card .card-body{padding:22px}.projects-page .card h3{margin:0 0 8px;font-size:17px;color:#ecf2fb}.projects-page .muted{color:#8ea0b8;font-size:13px;line-height:1.5}.projects-page .hero{display:grid;grid-template-columns:1.3fr .9fr;gap:20px;margin-bottom:20px}.projects-page .assistant-box{margin-top:16px;border:1px solid #263243;border-radius:16px;background:#0b0f148c;padding:16px}.projects-page .assistant-box label{display:block;margin-bottom:8px;color:#8ea0b8;font-size:13px}.projects-page .assistant-box textarea{width:100%;min-height:110px;resize:vertical;background:#0d131b;color:#ecf2fb;border:1px solid #263243;border-radius:12px;padding:12px 14px;font:inherit;font-size:13px;outline:none;box-sizing:border-box}.projects-page .assistant-box textarea:focus{border-color:#2f81f7}.projects-page .assistant-box textarea::placeholder{color:#8ea0b8;opacity:.7}.projects-page .assistant-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.projects-page .chips{display:flex;gap:8px;flex-wrap:wrap}.projects-page .chip{font-size:12px;color:#8ea0b8;background:#0d131b;border:1px solid #263243;padding:6px 10px;border-radius:999px}.projects-page .stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.projects-page .stat{background:#0b0f1480;border:1px solid #263243;border-radius:14px;padding:14px 16px}.projects-page .stat .muted{font-size:12px}.projects-page .stat .value{font-size:26px;font-weight:800;margin-top:4px;color:#ecf2fb}.projects-page .overview{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.projects-page .mini{padding:18px 22px}.projects-page .mini .label{color:#8ea0b8;font-size:13px}.projects-page .mini .num{font-size:28px;font-weight:800;margin-top:8px;color:#ecf2fb}.projects-page .section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.projects-page .section-header h3{margin:0;font-size:16px;color:#ecf2fb}.projects-page .workspace{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;padding-bottom:28px}.projects-page .lifecycle{display:grid;gap:12px}.projects-page .phase{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:stretch;border:1px solid #263243;border-radius:14px;padding:14px;background:#0b0f1459}.projects-page .phase .phase-tag{border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:13px;padding:10px;min-height:80px;line-height:1.3}.projects-page .phase h4{margin:0 0 6px;font-size:14px;color:#ecf2fb}.projects-page .phase ul{margin:0;padding-left:16px;color:#8ea0b8;font-size:12px;line-height:1.65}.projects-page .phase.planning .phase-tag{background:#2f81f71f;color:#8fc1ff}.projects-page .phase.analysis .phase-tag{background:#d299221f;color:#f2c66b}.projects-page .phase.design .phase-tag{background:#58a6ff1f;color:#9ed0ff}.projects-page .phase.development .phase-tag{background:#2386361f;color:#7ee787}.projects-page .phase.testing .phase-tag{background:#da36331f;color:#ff9b95}.projects-page .phase.production .phase-tag{background:#9767ff1f;color:#c7b0ff}.projects-page .panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.projects-page .list{display:grid;gap:12px;margin-top:16px}.projects-page .project-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border:1px solid #263243;background:#0b0f1459;border-radius:14px;padding:14px;cursor:pointer;transition:.18s}.projects-page .project-item:hover{border-color:#2f81f7;background:#2f81f70d}.projects-page .project-item .project-info h4{margin:0 0 4px;font-size:14px;color:#ecf2fb}.projects-page .project-item .project-info p{margin:0;color:#8ea0b8;font-size:12px;line-height:1.4}.projects-page .badge{align-self:flex-start;font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid #263243;white-space:nowrap;flex-shrink:0}.projects-page .badge.success{color:#7ee787;background:#2386361f;border-color:#2386364d}.projects-page .badge.warning{color:#f2c66b;background:#d299221f;border-color:#d299224d}.projects-page .badge.info{color:#8fc1ff;background:#2f81f71f;border-color:#2f81f74d}.projects-page .state-msg{color:#8ea0b8;font-size:13px;margin:20px 0 0;text-align:center}.projects-page .empty-panel{text-align:center;padding:24px 0}.projects-page .empty-panel p{color:#8ea0b8;margin-bottom:14px;font-size:13px}.projects-page .error-small{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#da363314;border:1px solid rgba(218,54,51,.25);border-radius:10px;color:#ff9b95;font-size:13px;margin-top:14px}.projects-page .more-projects{text-align:right;margin:12px 0 0;font-size:12px}.projects-page .link-ver{color:#58a6ff;cursor:pointer;text-decoration:underline}.projects-page .list-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}.projects-page .list-topbar .list-title{margin:0 0 4px;font-size:24px;font-weight:700;color:#ecf2fb}.projects-page .list-topbar .list-subtitle{margin:0;font-size:13px;color:#8ea0b8}.projects-page .state-center{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:16px}.projects-page .spinner{width:36px;height:36px;border:3px solid #263243;border-top-color:#2f81f7;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.projects-page .empty-icon{font-size:48px;opacity:.4}.projects-page .error-banner{display:flex;align-items:center;gap:12px;padding:14px 20px;background:#da363314;border:1px solid rgba(218,54,51,.25);border-radius:10px;color:#ff9b95;font-size:13px;margin-bottom:20px}.projects-page .projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;padding-bottom:28px}.projects-page .project-card{display:flex;flex-direction:column;background:linear-gradient(180deg,#18212dfa,#121821fa);border:1px solid #263243;border-radius:16px;overflow:hidden;transition:.18s}.projects-page .project-card:hover{border-color:#2f81f7;box-shadow:0 4px 20px #2f81f726;transform:translateY(-2px)}.projects-page .card-header-grid{display:flex;align-items:center;gap:10px;padding:14px 16px 10px;border-bottom:1px solid #263243}.projects-page .card-header-grid .lang-icon{font-size:22px}.projects-page .card-header-grid .card-meta{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.projects-page .card-header-grid .card-type{font-size:12px;font-weight:600;color:#4ec9b0;text-transform:uppercase;letter-spacing:.4px}.projects-page .card-header-grid .card-framework{font-size:11px;color:#8ea0b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projects-page .badge-public{padding:3px 8px;background:#4ec9b01f;border:1px solid rgba(78,201,176,.3);border-radius:999px;color:#4ec9b0;font-size:10px;font-weight:600;white-space:nowrap}.projects-page .card-body-grid{padding:12px 16px;flex:1}.projects-page .card-body-grid .card-name{margin:0 0 6px;font-size:15px;font-weight:600;color:#ecf2fb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projects-page .card-body-grid .card-desc{margin:0;font-size:12px;color:#8ea0b8;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.projects-page .card-footer-grid{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#0b0f1480;border-top:1px solid #263243;gap:8px}.projects-page .card-footer-grid .card-date{font-size:11px;color:#8ea0b8;font-family:Consolas,monospace;white-space:nowrap}.projects-page .card-actions{display:flex;align-items:center;gap:8px}.projects-page .btn-delete{width:30px;height:30px;display:grid;place-items:center;background:transparent;border:1px solid #263243;border-radius:8px;cursor:pointer;font-size:14px;transition:.15s}.projects-page .btn-delete:hover:not(:disabled){border-color:#da3633;background:#da36331a}.projects-page .btn-delete:disabled{opacity:.5;cursor:not-allowed}.projects-page .btn-edit{width:30px;height:30px;display:grid;place-items:center;background:transparent;border:1px solid #263243;border-radius:8px;cursor:pointer;font-size:14px;transition:.15s}.projects-page .btn-edit:hover{border-color:#2f81f7;background:#2f81f71a}.projects-page .btn-open{padding:6px 16px;background:#2f81f7;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:.15s;white-space:nowrap}.projects-page .btn-open:hover{background:#58a6ff;box-shadow:0 2px 8px #2f81f74d}@media (max-width: 1200px){.projects-page .hero,.projects-page .workspace{grid-template-columns:1fr 1fr}.projects-page .overview{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.projects-page .app{grid-template-columns:1fr}.projects-page .sidebar{height:auto;border-right:none;border-bottom:1px solid #263243}.projects-page .hero,.projects-page .workspace,.projects-page .phase{grid-template-columns:1fr}}@media (max-width: 600px){.projects-page .content{padding:18px}.projects-page .topbar{flex-direction:column}.projects-page .overview{grid-template-columns:1fr 1fr}.projects-page .stats{grid-template-columns:1fr}}:root{--brand-primary: #4f46e5;--brand-secondary: #059669;--brand-accent: #6a1b9a;--brand-bg: #f5f5f5;--brand-text: #1f2937;--brand-danger: #dc2626;--brand-warning: #d97706;--brand-muted: #6b7280;--brand-border: #e5e7eb;--brand-surface: #ffffff;--brand-surface-2: #f9fafb}.ide-container{display:grid;grid-template-rows:35px 1fr 200px;height:100vh;width:100vw;overflow:hidden;background-color:#1e1e1e;color:#ccc}app-top-bar{grid-row:1;background-color:#3c3c3c;border-bottom:1px solid #000}.center-area{grid-row:2;display:flex;overflow:hidden}.editor-container{flex-grow:1;min-width:0;overflow:hidden;height:100%}.right-sidebar{display:flex;flex-direction:column;width:300px;background-color:#252526;border-left:1px solid #000}.right-sidebar app-file-explorer{height:60%;overflow-y:auto;border-bottom:1px solid #000}.right-sidebar app-ai-chat{height:40%;overflow:hidden}app-debug-panel{grid-row:3;background-color:#252526;border-top:1px solid #000}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}body{overflow-x:hidden;overflow-y:hidden}
