@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--e-ink: #12151c;--e-ink-soft: #1b2130;--e-ink-dim: #4b5262;--e-muted: #6f7787;--e-faint: #9aa1af;--e-paper: #f4f1e9;--e-paper-raised: #faf8f2;--e-white: #ffffff;--e-line: #e7e2d5;--e-line-soft: #efeade;--e-line-hair: rgba(18, 21, 28, .06);--e-accent: #3457f5;--e-accent-dim: #eaefff;--e-accent-ink: #24409e;--e-accent-ring: rgba(52, 87, 245, .16);--e-good: #16a34a;--e-good-dim: #e7f9ee;--e-good-ink: #047857;--e-warn: #b45309;--e-warn-dim: #fef3c7;--e-bad: #dc2626;--e-bad-dim: #fef2f2;--e-bad-line: #f3d0d0;--e-violet: #6d28d9;--e-violet-dim: #f1ebfe;--e-radius-sm: 6px;--e-radius-md: 10px;--e-radius-lg: 16px;--e-radius-full: 999px;--e-shadow-sm: 0 1px 2px rgba(18, 21, 28, .06);--e-shadow-md: 0 6px 20px rgba(18, 21, 28, .07);--e-shadow-lg: 0 20px 45px rgba(18, 21, 28, .14);--e-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--e-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--e-ease: cubic-bezier(.4, 0, .2, 1)}.dt .dt-eyebrow{display:block;font-family:var(--e-mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--e-muted)}.dt .dt-num{font-family:var(--e-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.dt .dt-grid-bg{background-color:var(--e-paper-raised);background-image:radial-gradient(rgba(18,21,28,.05) 1.5px,transparent 1.5px);background-size:20px 20px;background-position:center center}.dt .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13.5px;font-weight:600;line-height:1;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:all .15s var(--e-ease)}.dt .btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}.dt .btn-primary{background:var(--e-ink);color:var(--e-white);box-shadow:var(--e-shadow-sm)}.dt .btn-primary:hover:not(:disabled){background:var(--e-ink-soft);transform:translateY(-1px);box-shadow:var(--e-shadow-md)}.dt .btn-secondary{background:var(--e-white);color:var(--e-ink);border-color:var(--e-line)}.dt .btn-secondary:hover:not(:disabled){border-color:var(--e-ink);transform:translateY(-1px)}.dt .btn-sm,.dt .btn-small{padding:6px 14px;font-size:12px}.dt .btn:focus-visible,.dt button:focus-visible,.dt a:focus-visible,.dt input:focus-visible,.dt select:focus-visible,.dt textarea:focus-visible{outline:none;box-shadow:0 0 0 3px var(--e-accent-ring)}.dt .form-input{width:100%;padding:10px 13px;border:1px solid var(--e-line);border-radius:var(--e-radius-md);font-family:var(--e-sans);font-size:13.5px;color:var(--e-ink);background:var(--e-white);transition:all .15s var(--e-ease)}.dt .form-input::placeholder{color:#b3ada0}.dt .form-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.dt .form-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--e-ink);margin-bottom:7px}.dt .form-label svg{color:var(--e-muted)}.dt .form-hint{display:block;margin-top:6px;font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted)}.dt .spinner{animation:e-spin .9s linear infinite}@keyframes e-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.dt,.dt *{animation-duration:.001ms!important;transition-duration:.001ms!important}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-dark: #1a1a2e;--primary-blue: #4169e1;--primary-light-blue: #6b8dd6;--accent-blue: #3b82f6;--bg-cream: #f5f3ef;--bg-dark: #16213e;--bg-darker: #0f0f23;--text-dark: #1a1a2e;--text-light: #6b7280;--text-white: #ffffff;--border-light: #e5e7eb;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--container-max: 1200px;--nav-height: 80px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition: all .2s ease}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:16px;line-height:1.6;color:var(--text-dark);background-color:var(--bg-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit;transition:var(--transition)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:var(--transition)}input,textarea,select{font-family:inherit;outline:none;border:1px solid var(--border-light);transition:var(--transition)}input:focus,textarea:focus,select:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #4169e11a}ul,ol{list-style:none}img{max-width:100%;height:auto}.container{max-width:var(--container-max);margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:600;border-radius:var(--radius-full);transition:var(--transition)}.btn-primary{background-color:var(--primary-dark);color:var(--text-white)}.btn-primary:hover{background-color:#2a2a4e;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--text-dark);border:1px solid var(--border-light)}.btn-secondary:hover{background-color:var(--text-dark);color:var(--text-white)}.btn-accent{background-color:var(--accent-blue);color:var(--text-white)}.btn-accent:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background-color:transparent;color:var(--primary-dark);border:2px solid var(--primary-dark)}.btn-outline:hover{background-color:var(--primary-dark);color:var(--text-white)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-dark)}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}.text-gradient{background:linear-gradient(135deg,var(--primary-blue),var(--primary-light-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.text-center{text-align:center}.text-sm{font-size:14px}.text-light{color:var(--text-light)}.card{background:#fff;border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--text-dark);margin-bottom:8px}.form-input{width:100%;padding:12px 16px;font-size:15px;border-radius:var(--radius-md);background:#fff}.form-input::placeholder{color:var(--text-light)}.divider{display:flex;align-items:center;gap:16px;margin:24px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-light)}.divider span{color:var(--text-light);font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-fade-in{animation:fadeIn .6s ease-out}.animate-float{animation:float 3s ease-in-out infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-cream)}::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-dark)}button{background-color:#f9f9f9}.project-detail{min-height:100vh;font-family:var(--e-sans);color:var(--e-ink);background:var(--e-paper);animation:e-fade-up .5s var(--e-ease) both;margin:-32px -40px -120px;padding:24px 24px 120px}.slug-rename-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;margin:-24px -24px 0;background:var(--e-warn-dim);border-bottom:1px solid rgba(180,83,9,.25);color:var(--e-warn);font-size:13px;line-height:1.5}.slug-rename-banner svg{flex-shrink:0;margin-top:1px}.slug-rename-banner span{flex:1;color:var(--e-ink-dim)}.slug-rename-banner code{font-family:var(--e-mono);font-size:12px;font-weight:700;color:var(--e-warn);background:#b453091a;padding:1px 6px;border-radius:var(--e-radius-sm)}.slug-rename-banner button{flex-shrink:0;display:flex;background:transparent;border:none;color:var(--e-warn);cursor:pointer;padding:2px;opacity:.7;transition:opacity .15s var(--e-ease)}.slug-rename-banner button:hover{opacity:1}.slug-rename-banner+.project-header{margin-top:0}.project-header{position:relative;overflow:hidden;background-color:var(--e-paper-raised);background-image:radial-gradient(rgba(18,21,28,.05) 1.5px,transparent 1.5px);background-size:20px 20px;background-position:center center;border-bottom:1px solid var(--e-line);padding:32px 32px 0;margin:-24px -24px 28px}.project-header:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,var(--e-paper-raised) 100%);pointer-events:none}.project-header>*{position:relative;z-index:1}.project-detail .back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--e-muted);margin-bottom:20px;transition:color .15s var(--e-ease),transform .15s var(--e-ease)}.project-detail .back-link:hover{color:var(--e-ink);transform:translate(-2px)}.project-title-section{margin-bottom:20px}.project-detail .project-title-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.title-and-badges{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.project-header h1{display:flex;align-items:center;gap:12px;font-family:var(--e-sans);font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--e-ink);margin:0}.project-header h1 svg{color:var(--e-accent);flex-shrink:0}.project-actions{display:flex;align-items:center;gap:12px}.meta-text.members-count{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(18,21,28,.1);border-radius:var(--e-radius-full);font-size:13px;font-weight:600;color:var(--e-ink);box-shadow:0 1px 3px #12151c08}.meta-text.members-count svg{color:var(--e-accent)}.project-detail .star-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--e-white);border:1px solid rgba(18,21,28,.15);border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13px;font-weight:700;color:var(--e-ink);cursor:pointer;box-shadow:0 2px 4px #12151c0a;transition:all .2s var(--e-ease)}.project-detail .star-btn:hover{border-color:var(--e-ink);background:var(--e-ink);color:var(--e-white);transform:translateY(-2px);box-shadow:0 4px 12px #12151c26}.project-detail .star-btn:hover svg{stroke:var(--e-white)}.project-detail .star-btn.starred{background:#fffae6;border-color:#f59e0b;color:#d97706;box-shadow:0 2px 8px #f59e0b40}.project-detail .star-btn.starred svg{fill:#f59e0b;stroke:#f59e0b}.project-detail .star-btn.starred:hover{background:#fff3c4;border-color:#ea580c;color:#c2410c;box-shadow:0 4px 12px #f59e0b59}.project-detail .star-btn.starred:hover svg{fill:#ea580c;stroke:#ea580c}.project-detail .project-desc{display:block;color:var(--e-muted);font-size:15px;margin-bottom:24px;max-width:640px;line-height:1.5;overflow:visible}.project-detail .project-desc.is-empty{font-style:italic;color:var(--e-faint)}.project-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 10px;border-radius:var(--e-radius-full);font-size:12px;font-weight:700;letter-spacing:.01em;text-transform:capitalize}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.badge.private{background:#f1efe8;color:#52586b}.badge.public{background:var(--e-accent-dim);color:var(--e-accent-ink)}.badge.role-owner{background:var(--e-warn-dim);color:var(--e-warn)}.badge.role-admin{background:var(--e-violet-dim);color:var(--e-violet)}.badge.role-member{background:var(--e-good-dim);color:#047857}.badge.role-viewer{background:#f1efe8;color:var(--e-muted)}.meta-text{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--e-muted)}.members-count{padding:8px 12px;background:#12151c08;border-radius:var(--e-radius-full);border:1px solid var(--e-line)}.project-tabs{display:flex;gap:4px}.tab{position:relative;display:flex;align-items:center;gap:8px;padding:13px 18px;font-size:14px;font-weight:600;color:var(--e-muted);border-bottom:2px solid transparent;transition:color .15s var(--e-ease)}.tab svg{transition:transform .15s var(--e-ease)}.tab:hover{color:var(--e-ink)}.tab:hover svg{transform:translateY(-1px)}.tab.active{color:var(--e-accent)}.tab.active:after{content:"";position:absolute;left:18px;right:18px;bottom:-2px;height:2px;background:var(--e-accent);border-radius:2px}.project-content{padding:0 4px}.project-detail .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13.5px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .15s var(--e-ease);white-space:nowrap}.project-detail .btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.project-detail .btn-primary{background:var(--e-ink);color:var(--e-white);box-shadow:var(--e-shadow-sm)}.project-detail .btn-primary:hover:not(:disabled){background:var(--e-ink-soft);transform:translateY(-1px);box-shadow:var(--e-shadow-md)}.project-detail .btn-secondary{background:var(--e-white);color:var(--e-ink);border-color:var(--e-line)}.project-detail .btn-secondary:hover:not(:disabled){border-color:var(--e-ink);transform:translateY(-1px)}.project-detail .btn-danger{background:var(--e-bad);color:var(--e-white)}.project-detail .btn-danger:hover:not(:disabled){background:#b91c1c}.project-detail .btn-small{padding:6px 14px;font-size:12px}.project-detail .btn:focus-visible,.project-detail button:focus-visible,.project-detail input:focus-visible,.project-detail select:focus-visible{outline:none;box-shadow:0 0 0 3px var(--e-accent-ring)}.env-tab{background:var(--e-white);border-radius:var(--e-radius-lg);border:1px solid var(--e-line);box-shadow:var(--e-shadow-sm);overflow:hidden}.clone-box{background:var(--e-paper);border-bottom:1px solid var(--e-line);padding:16px 20px}.clone-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--e-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.08em}.clone-command{display:flex;align-items:center;gap:14px;background:var(--e-ink);background-image:linear-gradient(180deg,var(--e-ink-soft),var(--e-ink));border-radius:var(--e-radius-md);padding:13px 16px;box-shadow:var(--e-shadow-md)}.terminal-dots{display:flex;gap:6px;flex-shrink:0}.terminal-dots span{width:9px;height:9px;border-radius:50%;display:block}.terminal-dots span:nth-child(1){background:#ff5f57}.terminal-dots span:nth-child(2){background:#febc2e}.terminal-dots span:nth-child(3){background:#28c840}.clone-command code{flex:1;font-family:var(--e-mono);font-size:13.5px;color:#6ee7a7;-webkit-user-select:all;user-select:all;white-space:nowrap;overflow-x:auto}.clone-command .copy-btn{background:#ffffff14;border:none;color:#9ca3af;padding:6px;border-radius:var(--e-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s var(--e-ease);flex-shrink:0}.clone-command .copy-btn:hover{color:#fff;background:#ffffff29}.clone-command .text-green{color:#6ee7a7!important}.env-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--e-line)}.env-selector{display:flex;gap:6px;padding:4px;background:var(--e-paper);border-radius:var(--e-radius-full);border:1px solid var(--e-line-soft)}.env-btn{display:flex;align-items:center;gap:8px;padding:7px 14px;background:transparent;border:none;border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13px;font-weight:600;color:var(--e-ink-dim);cursor:pointer;transition:all .15s var(--e-ease);text-transform:capitalize}.env-btn:hover{color:var(--e-ink)}.env-btn.active{background:var(--e-ink);color:#fff;box-shadow:var(--e-shadow-sm)}.env-count{padding:1px 7px;background:#12151c12;border-radius:var(--e-radius-full);font-size:11px;font-weight:700;font-family:var(--e-mono)}.env-btn.active .env-count{background:#ffffff38}.env-actions{display:flex;gap:8px}.env-tab .loading-state{min-height:0;padding:28px 20px;gap:10px}.env-tab .loading-state p{font-size:13px;color:var(--e-muted)}.variables-list{padding:10px}.empty-vars{display:flex;flex-direction:column;align-items:center;gap:14px;padding:56px 20px;margin:8px;color:var(--e-muted);text-align:center;border:1.5px dashed var(--e-line);border-radius:var(--e-radius-md)}.empty-vars svg{color:#c9c3b3}.empty-vars p{font-size:14px;font-weight:500}.variable-row{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:16px;padding:13px 16px;border-radius:var(--e-radius-md);transition:background .12s var(--e-ease);animation:e-fade-up .35s var(--e-ease) both}.variable-row:hover{background:var(--e-paper)}.var-key{display:flex;align-items:center;gap:8px;min-width:0}.key-name{font-family:var(--e-mono);font-size:13px;font-weight:700;color:var(--e-ink);overflow:hidden;text-overflow:ellipsis}.secret-badge{display:inline-flex;align-items:center;padding:2px 7px;background:var(--e-warn-dim);color:var(--e-warn);border-radius:var(--e-radius-sm);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0}.var-value code{display:inline-block;font-family:var(--e-mono);font-size:12.5px;color:var(--e-ink-dim);background:var(--e-paper);border:1px solid var(--e-line-soft);padding:4px 10px;border-radius:var(--e-radius-sm);word-break:break-all;max-width:100%}.var-actions{display:flex;gap:2px}.icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--e-radius-sm);color:var(--e-muted);cursor:pointer;transition:all .15s var(--e-ease)}.icon-btn:hover{background:var(--e-accent-dim);color:var(--e-accent-ink)}.icon-btn.danger:hover{background:var(--e-bad-dim);color:var(--e-bad)}.text-green{color:var(--e-good)}.modal-overlay{position:fixed;inset:0;background:#12151c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;overflow-y:auto;animation:e-overlay-in .15s var(--e-ease) both}@keyframes e-overlay-in{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:480px;max-height:calc(100vh - 48px);overflow-y:auto;background:var(--e-white);border-radius:var(--e-radius-lg);box-shadow:var(--e-shadow-lg);border:1px solid var(--e-line);animation:e-modal-in .2s var(--e-ease) both}@keyframes e-modal-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--e-line)}.modal-header h3{font-size:17px;font-weight:700;color:var(--e-ink)}.close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:transparent;border:none;border-radius:var(--e-radius-sm);cursor:pointer;color:var(--e-muted);transition:all .15s var(--e-ease)}.close-btn:hover{background:var(--e-paper);color:var(--e-ink)}.modal form{padding:24px}.modal-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--e-bad-dim);border:1px solid #fecaca;border-radius:var(--e-radius-md);color:var(--e-bad);font-size:13.5px;margin-bottom:20px}.form-group{margin-bottom:18px}.form-label{display:block;font-size:12.5px;font-weight:700;color:var(--e-ink);margin-bottom:7px}.form-input{width:100%;padding:10px 13px;border:1px solid var(--e-line);border-radius:var(--e-radius-md);font-family:var(--e-sans);font-size:13.5px;color:var(--e-ink);background:var(--e-white);transition:all .15s var(--e-ease)}.form-input::placeholder{color:#b3ada0}.form-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.form-hint{display:block;margin-top:6px;font-size:11.5px;font-family:var(--e-mono);color:var(--e-muted)}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer}.checkbox-label input{width:17px;height:17px;cursor:pointer;accent-color:var(--e-accent)}.checkbox-label span{font-size:13.5px;color:var(--e-ink)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.team-tab{max-width:820px}.team-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.team-header h2{font-size:19px;font-weight:700;color:var(--e-ink)}.add-member-section{position:relative;width:300px;flex-shrink:0}.add-member-section .search-wrapper{position:relative}.add-member-section .search-input{width:100%;padding:10px 14px 10px 36px;border:1px solid var(--e-line);border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13.5px;background:var(--e-white);transition:all .15s var(--e-ease)}.add-member-section .search-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.add-member-section .search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--e-muted)}.add-member-section .spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--e-accent)}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-md);box-shadow:var(--e-shadow-lg);z-index:100;max-height:260px;overflow-y:auto;animation:e-fade-up .15s var(--e-ease) both}.search-result{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:1px solid var(--e-line-soft);transition:background .12s var(--e-ease)}.search-result:hover{background:var(--e-paper)}.search-result:last-child{border-bottom:none}.search-result .user-info{display:flex;flex-direction:column;min-width:0}.search-result .user-name{font-weight:600;font-size:13.5px;color:var(--e-ink)}.search-result .user-email{font-size:12px;color:var(--e-muted)}.members-list{background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-lg);overflow:hidden;margin-bottom:24px;box-shadow:var(--e-shadow-sm)}.member-row{display:flex;align-items:center;gap:14px;padding:15px 20px;border-bottom:1px solid var(--e-line-soft);transition:background .12s var(--e-ease)}.member-row:hover{background:var(--e-paper)}.member-row:last-child{border-bottom:none}.member-avatar{width:38px;height:38px;background:linear-gradient(135deg,var(--e-accent),var(--e-accent-ink));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.member-info{flex:1;min-width:0}.member-name{display:block;font-weight:600;font-size:14px;color:var(--e-ink)}.member-email{font-size:12.5px;color:var(--e-muted)}.role-select{padding:6px 12px;border:1px solid var(--e-line);border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:12.5px;font-weight:600;color:var(--e-ink);background:var(--e-white);cursor:pointer}.role-select:focus{outline:none;border-color:var(--e-accent)}.role-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--e-radius-full);font-size:12px;font-weight:700;text-transform:capitalize}.role-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.role-badge.owner{background:var(--e-warn-dim);color:var(--e-warn)}.role-badge.admin{background:var(--e-violet-dim);color:var(--e-violet)}.role-badge.member{background:var(--e-good-dim);color:#047857}.role-badge.viewer{background:#f1efe8;color:var(--e-muted)}.roles-info{padding:20px 22px;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-lg)}.roles-info.card:hover{transform:none;box-shadow:none}.roles-info h4{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--e-ink);margin-bottom:12px}.roles-info h4 svg{color:var(--e-accent)}.roles-info ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}.roles-info li{font-size:13px;color:var(--e-muted);padding:2px 0}.roles-info strong{color:var(--e-ink);font-weight:700}.activity-tab{padding:0}.activity-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.activity-header h2{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:700;color:var(--e-ink)}.activity-header h2 svg{color:var(--e-accent)}.activity-filters select{min-width:170px;padding:8px 14px;border:1px solid var(--e-line);border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13px;font-weight:600;background:var(--e-white);color:var(--e-ink);cursor:pointer}.activity-filters select:focus{outline:none;border-color:var(--e-accent)}.activity-list{position:relative;display:flex;flex-direction:column;gap:0;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-lg);box-shadow:var(--e-shadow-sm);overflow:hidden}.activity-list:before{content:"";position:absolute;top:36px;bottom:36px;left:38px;width:2px;background:var(--e-line);z-index:0}.activity-item{position:relative;z-index:1;display:flex;gap:16px;padding:20px;background:transparent;border-bottom:none;transition:background .15s var(--e-ease);animation:e-fade-up .3s var(--e-ease) both}.activity-item:last-child{border-bottom:none}.activity-item:hover{background:#12151c05}.activity-item.action-created .activity-icon{color:var(--e-good);background:var(--e-good-dim)}.activity-item.action-updated .activity-icon{color:var(--e-accent-ink);background:var(--e-accent-dim)}.activity-item.action-deleted .activity-icon{color:var(--e-bad);background:var(--e-bad-dim)}.activity-item.action-pushed .activity-icon{color:var(--e-violet);background:var(--e-violet-dim)}.activity-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--e-paper);border:2px solid var(--e-white);box-shadow:0 0 0 1px var(--e-line);border-radius:50%;color:var(--e-muted);flex-shrink:0}.activity-content{flex:1;min-width:0}.activity-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.activity-user{display:flex;align-items:center;gap:8px}.project-detail .user-avatar{width:24px;height:24px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-user .user-name{font-weight:700;color:var(--e-ink)!important;font-size:13.5px}.activity-message{color:var(--e-ink-dim);font-size:13.5px}.activity-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.commit-hash{font-family:var(--e-mono);font-size:11px;font-weight:600;color:var(--e-muted);transition:color .15s var(--e-ease)}.commit-hash:hover{color:var(--e-accent)}.env-badge{font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:var(--e-radius-full);text-transform:capitalize}.env-badge.env-development{background:var(--e-accent-dim);color:var(--e-accent-ink)}.env-badge.env-staging{background:var(--e-warn-dim);color:var(--e-warn)}.env-badge.env-production{background:var(--e-bad-dim);color:#b91c1c}.activity-source{font-size:11px;font-weight:700;color:var(--e-muted);text-transform:uppercase;letter-spacing:.04em;background:#12151c0a;padding:2px 8px;border-radius:var(--e-radius-full)}.activity-time{font-size:12px;color:var(--e-muted);margin-left:auto}.activity-variables{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.variable-change{display:flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--e-radius-sm);font-size:12.5px;font-family:var(--e-mono);font-weight:600}.variable-change.created{background:var(--e-good-dim);color:#166534}.variable-change.updated{background:var(--e-accent-dim);color:var(--e-accent-ink)}.variable-change.deleted{background:var(--e-bad-dim);color:#991b1b}.var-action{font-weight:800}.variable-change .var-key{background:transparent;padding:0}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px}.page-info{font-size:13px;font-weight:500;color:var(--e-muted);font-family:var(--e-mono)}.activity-tab .empty-state{text-align:center;padding:64px 20px;background:var(--e-white);border:1.5px dashed var(--e-line);border-radius:var(--e-radius-lg)}.activity-tab .empty-state svg{color:#c9c3b3;margin-bottom:14px}.activity-tab .empty-state h3{font-size:16px;font-weight:700;color:var(--e-ink);margin-bottom:6px}.activity-tab .empty-state p{color:var(--e-muted);font-size:13.5px}.project-detail .settings-tab{display:block;max-width:920px;padding:0;background:none;border-radius:0;cursor:default;color:inherit;font-size:inherit;font-weight:inherit}.settings-grid{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:start}.settings-main{display:flex;flex-direction:column;gap:24px}.settings-card{background:var(--e-white);border-radius:var(--e-radius-lg);border:1px solid var(--e-line);box-shadow:var(--e-shadow-sm);overflow:hidden}.settings-card-header{display:flex;align-items:center;gap:10px;padding:18px 22px;border-bottom:1px solid var(--e-line);background:var(--e-paper)}.settings-card-header svg{color:var(--e-accent)}.settings-card-header h3{font-size:15px;font-weight:700;color:var(--e-ink);margin:0}.settings-card-body{padding:24px}.settings-card-body .form-group{margin-bottom:20px}.settings-card-body .form-group:last-child{margin-bottom:0}.settings-card-body textarea.form-input{resize:vertical;min-height:100px}.visibility-options{display:flex;flex-direction:column;gap:10px}.visibility-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--e-line);border-radius:var(--e-radius-md);cursor:pointer;transition:all .15s var(--e-ease);background:var(--e-white)}.visibility-option input{display:none}.visibility-option svg{color:var(--e-muted);margin-top:2px;flex-shrink:0}.visibility-option.active{border-color:var(--e-accent);background:var(--e-accent-dim)}.visibility-option.active svg{color:var(--e-accent)}.visibility-option:hover:not(.active){border-color:var(--e-ink-dim)}.visibility-option div{display:flex;flex-direction:column;gap:2px}.visibility-title{font-size:14px;font-weight:700;color:var(--e-ink)}.visibility-desc{font-size:12px;color:var(--e-muted)}.settings-card-footer{padding:16px 24px;border-top:1px solid var(--e-line);background:var(--e-paper)}.project-detail .settings-sidebar{position:sticky;top:24px}.danger-card{background:var(--e-white);border-radius:var(--e-radius-lg);border:1px solid #f3d0d0;padding:20px}.danger-card-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.danger-card-header svg{color:var(--e-bad)}.danger-card-header h4{font-size:14px;font-weight:700;color:var(--e-bad);margin:0}.danger-card p{font-size:13px;color:var(--e-muted);line-height:1.55;margin-bottom:16px}.btn-danger-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:var(--e-white);color:var(--e-bad);border:1px solid #f3d0d0;border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13px;font-weight:700;cursor:pointer;transition:all .15s var(--e-ease)}.btn-danger-outline:hover:not(:disabled){background:var(--e-bad);border-color:var(--e-bad);color:#fff}.btn-danger-outline:disabled{opacity:.6;cursor:not-allowed}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:400px;color:var(--e-muted);text-align:center}.loading-state svg{color:var(--e-accent)}.loading-state p{font-size:16px;font-weight:600;color:var(--e-ink)}.error-state svg{color:var(--e-bad)}.error-state h2{font-size:19px;font-weight:700;color:var(--e-ink)}.spinner{animation:e-spin .9s linear infinite}@keyframes e-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.project-header{padding:20px 20px 0;margin:-16px -16px 20px}.project-detail .project-title-row{flex-direction:column;align-items:flex-start}.project-actions{width:100%}.project-header h1{font-size:24px}.project-tabs{overflow-x:auto}.env-toolbar{flex-direction:column;gap:14px;align-items:stretch}.env-selector{overflow-x:auto}.variable-row{grid-template-columns:1fr;gap:8px}.team-header{flex-direction:column;gap:16px;align-items:stretch}.add-member-section{width:100%}.clone-command{flex-wrap:wrap}.clone-command code{font-size:12px;white-space:normal;word-break:break-all}.settings-grid{grid-template-columns:1fr}.project-detail .settings-sidebar{position:static}.activity-list:before{left:34px}}.contribution-graph-container{background:var(--bg-white, #ffffff);border:1px solid var(--border-light, #e5e7eb);border-radius:12px;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.graph-header{display:flex;justify-content:space-between;align-items:center}.graph-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-dark, #1a1a2e)}.graph-meta{font-size:12px;color:var(--text-light, #6b7280)}.graph-loading{font-size:12px;color:var(--text-light, #6b7280);text-align:center;padding:1rem 0}.graph-body{display:flex;justify-content:flex-start;overflow-x:auto;padding-bottom:.5rem}.graph-grid{display:grid;grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:6px}.graph-square{width:15px;height:15px;border-radius:3px;background-color:#ebedf0;transition:all .2s ease}.graph-square:hover{transform:scale(1.2);cursor:crosshair}.graph-square.level-0{background-color:#ebedf0}.graph-square.level-1{background-color:#dbeafe}.graph-square.level-2{background-color:#93c5fd}.graph-square.level-3{background-color:#3b82f6}.graph-square.level-4{background-color:#1d4ed8;box-shadow:0 0 8px #1d4ed866}.graph-footer{display:flex;justify-content:flex-end;align-items:center}.legend{display:flex;align-items:center;gap:4px}.legend-text{font-size:11px;color:var(--text-light, #6b7280);margin:0 4px}.graph-grid-container{display:flex;flex-direction:column;gap:8px}.graph-months{display:flex;justify-content:space-between;font-size:11px;color:var(--text-light, #6b7280);padding:0 2px}.graph-tooltip{background:var(--bg-darker, #0f0f23);color:var(--text-white, #ffffff);padding:8px 12px;border-radius:6px;font-size:12px;pointer-events:none;white-space:nowrap;box-shadow:var(--shadow-lg);z-index:1000}.vault-unlock-wrap{display:flex;justify-content:center;align-items:flex-start;padding:40px 24px}.vault-unlock-card{background:#fff;border:1px solid var(--border-light, #e5e7eb);border-radius:var(--radius-lg, 16px);padding:40px;max-width:440px;width:100%;box-shadow:0 4px 24px #1a1a2e12}.vault-unlock-icon{width:56px;height:56px;background:linear-gradient(135deg,#4169e1,#6b8dd6);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:24px}.vault-unlock-header{margin-bottom:24px}.vault-unlock-header h2{font-size:22px;font-weight:700;color:var(--text-dark, #1a1a2e);margin-bottom:8px;letter-spacing:-.01em}.vault-unlock-header p{font-size:14px;color:var(--text-light, #6b7280);line-height:1.6;margin:0}.vault-unlock-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:20px}.vault-unlock-form{display:flex;flex-direction:column;gap:14px}.vault-input-wrapper{position:relative;display:flex;align-items:center}.vault-input-icon{position:absolute;left:14px;color:var(--text-light, #9ca3af);pointer-events:none;flex-shrink:0}.vault-input{width:100%;padding:12px 44px 12px 42px;font-size:14px;font-family:inherit;border:1.5px solid var(--border-light, #e5e7eb);border-radius:var(--radius-md, 10px);background:#fafafa;color:var(--text-dark, #1a1a2e);transition:border-color .15s ease,box-shadow .15s ease}.vault-input::placeholder{color:#9ca3af}.vault-input:focus{border-color:var(--primary-blue, #4169e1);background:#fff;box-shadow:0 0 0 3px #4169e11a;outline:none}.vault-toggle-password{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:var(--text-light, #9ca3af);display:flex;align-items:center;padding:4px;border-radius:4px;transition:color .15s ease}.vault-toggle-password:hover{color:var(--text-dark, #1a1a2e)}.vault-unlock-btn{width:100%;padding:13px;border-radius:var(--radius-md, 10px);border:none;background:linear-gradient(135deg,#4169e1,#6b8dd6);color:#fff;font-size:15px;font-weight:600;font-family:inherit;letter-spacing:.01em;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s ease,transform .1s ease,box-shadow .15s ease;box-shadow:0 2px 8px #4169e140}.vault-unlock-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 4px 14px #4169e159}.vault-unlock-btn:active:not(:disabled){transform:translateY(0)}.vault-unlock-btn:disabled{opacity:.55;cursor:not-allowed}.vault-spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:vault-spin .65s linear infinite;display:inline-block}@keyframes vault-spin{to{transform:rotate(360deg)}}.vault-unlock-note{margin-top:18px;font-size:12px;color:var(--text-light, #9ca3af);line-height:1.6;text-align:center}.vault-unlock-note strong{color:var(--text-dark, #1a1a2e)}.new-project-page{max-width:660px;margin:0 auto;padding:0;font-family:var(--e-sans);color:var(--e-ink);animation:e-fade-up .4s var(--e-ease) both}.new-project-page .page-header{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--e-line)}.new-project-page .back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--e-muted);margin-bottom:16px;transition:color .15s var(--e-ease),transform .15s var(--e-ease)}.new-project-page .back-link:hover{color:var(--e-ink);transform:translate(-2px)}.new-project-page .page-header h1{font-size:26px;font-weight:800;letter-spacing:-.025em;color:var(--e-ink);margin-bottom:5px}.new-project-page .page-header p{font-size:13.5px;color:var(--e-muted)}.project-form,.project-form.card{padding:0;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-lg);box-shadow:var(--e-shadow-sm);overflow:hidden}.project-form.card:hover{transform:none;box-shadow:var(--e-shadow-sm)}.project-form .form-group{margin:0;padding:20px 24px;border-bottom:1px solid var(--e-line-soft)}.project-form .form-group:last-of-type{border-bottom:none}.project-form .form-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--e-ink);margin-bottom:7px}.project-form .form-label svg{color:var(--e-muted)}.project-form .form-input{width:100%;padding:10px 13px;font-family:var(--e-sans);font-size:13.5px;color:var(--e-ink);border:1px solid var(--e-line);border-radius:var(--e-radius-md);background:var(--e-white);transition:all .15s var(--e-ease)}.project-form input[name=name],.project-form input[name=githubUrl]{font-family:var(--e-mono);font-size:13px}.project-form .form-input::placeholder{color:#b3ada0}.project-form .form-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.project-form textarea.form-input{resize:vertical;min-height:88px;line-height:1.55}.project-form .form-hint{display:block;margin-top:6px;font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted)}.form-error{display:flex;align-items:center;gap:10px;margin:20px 24px 0;padding:12px 16px;background:var(--e-bad-dim);border:1px solid var(--e-bad-line);border-radius:var(--e-radius-md);color:var(--e-bad);font-size:13.5px}.new-project-page .visibility-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.new-project-page .visibility-option{display:flex;align-items:flex-start;gap:11px;padding:14px;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-md);cursor:pointer;transition:all .15s var(--e-ease)}.new-project-page .visibility-option:hover:not(.selected){border-color:var(--e-ink-dim)}.new-project-page .visibility-option.selected{border-color:var(--e-accent);background:var(--e-accent-dim)}.new-project-page .visibility-option input{display:none}.new-project-page .visibility-option svg{flex-shrink:0;margin-top:1px;color:var(--e-muted)}.new-project-page .visibility-option.selected svg{color:var(--e-accent)}.new-project-page .visibility-option div{display:flex;flex-direction:column;gap:3px;min-width:0}.new-project-page .visibility-option strong{font-size:13.5px;font-weight:700;color:var(--e-ink)}.new-project-page .visibility-option span{font-size:12px;line-height:1.45;color:var(--e-muted)}.environments-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.new-project-page .env-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--e-paper);border:1px solid var(--e-line);border-radius:var(--e-radius-full);font-family:var(--e-mono);font-size:11.5px;color:var(--e-ink-dim)}.remove-env{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;cursor:pointer;color:var(--e-muted);transition:color .15s var(--e-ease)}.remove-env:hover{color:var(--e-bad)}.add-env-row{display:flex;gap:8px}.add-env-row .form-input{flex:1}.add-env-row .btn{flex-shrink:0}.form-info{display:flex;align-items:center;gap:6px;margin-top:8px;font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted)}.new-project-page .form-actions{display:flex;justify-content:flex-end;gap:10px;margin:0;padding:16px 24px;background:var(--e-paper-raised);border-top:1px solid var(--e-line)}@media(max-width:600px){.new-project-page .visibility-options{grid-template-columns:1fr}.project-form .form-group{padding:18px 16px}.new-project-page .form-actions{padding:14px 16px;flex-direction:column-reverse}.new-project-page .form-actions .btn{width:100%}.add-env-row{flex-direction:column}}.border-glow-card{--edge-proximity: 0;--cursor-angle: 45deg;--edge-sensitivity: 30;--color-sensitivity: calc(var(--edge-sensitivity) + 20);--border-radius: 28px;--glow-padding: 40px;--cone-spread: 25;position:relative;border-radius:var(--border-radius);isolation:isolate;transform:translateZ(.01px);display:flex;border:1px solid rgb(255 255 255 / 15%);background:var(--card-bg, #120F17);overflow:visible;box-shadow:#0000001a 0 1px 2px,#0000001a 0 2px 4px,#0000001a 0 4px 8px,#0000001a 0 8px 16px,#0000001a 0 16px 32px,#0000001a 0 32px 64px}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{content:"";position:absolute;inset:0;border-radius:inherit;transition:opacity .25s ease-out;z-index:-1}.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{border:1px solid transparent;background:linear-gradient(var(--card-bg, #120F17) 0 100%) padding-box,linear-gradient(#fff0 0% 100%) border-box,var(--gradient-one, radial-gradient(at 80% 55%, hsla(268, 100%, 76%, 1) 0px, transparent 50%)) border-box,var(--gradient-two, radial-gradient(at 69% 34%, hsla(349, 100%, 74%, 1) 0px, transparent 50%)) border-box,var(--gradient-three, radial-gradient(at 8% 6%, hsla(136, 100%, 78%, 1) 0px, transparent 50%)) border-box,var(--gradient-four, radial-gradient(at 41% 38%, hsla(192, 100%, 64%, 1) 0px, transparent 50%)) border-box,var(--gradient-five, radial-gradient(at 86% 85%, hsla(186, 100%, 74%, 1) 0px, transparent 50%)) border-box,var(--gradient-six, radial-gradient(at 82% 18%, hsla(52, 100%, 65%, 1) 0px, transparent 50%)) border-box,var(--gradient-seven, radial-gradient(at 51% 4%, hsla(12, 100%, 72%, 1) 0px, transparent 50%)) border-box,var(--gradient-base, linear-gradient(#c299ff 0 100%)) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread) * 1%),transparent calc((var(--cone-spread) + 15) * 1%),transparent calc((100 - var(--cone-spread) - 15) * 1%),black calc((100 - var(--cone-spread)) * 1%))}.border-glow-card:after{border:1px solid transparent;background:var(--gradient-one, radial-gradient(at 80% 55%, hsla(268, 100%, 76%, 1) 0px, transparent 50%)) padding-box,var(--gradient-two, radial-gradient(at 69% 34%, hsla(349, 100%, 74%, 1) 0px, transparent 50%)) padding-box,var(--gradient-three, radial-gradient(at 8% 6%, hsla(136, 100%, 78%, 1) 0px, transparent 50%)) padding-box,var(--gradient-four, radial-gradient(at 41% 38%, hsla(192, 100%, 64%, 1) 0px, transparent 50%)) padding-box,var(--gradient-five, radial-gradient(at 86% 85%, hsla(186, 100%, 74%, 1) 0px, transparent 50%)) padding-box,var(--gradient-six, radial-gradient(at 82% 18%, hsla(52, 100%, 65%, 1) 0px, transparent 50%)) padding-box,var(--gradient-seven, radial-gradient(at 51% 4%, hsla(12, 100%, 72%, 1) 0px, transparent 50%)) padding-box,var(--gradient-base, linear-gradient(#c299ff 0 100%)) padding-box;-webkit-mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,black 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,black 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,black 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,black 15%,black 85%,transparent 95%);-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add;opacity:calc(var(--fill-opacity, .5) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:normal}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);pointer-events:none;z-index:1;opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));mix-blend-mode:normal}.border-glow-card>.edge-light:before{content:"";position:absolute;inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color, hsl(40deg 80% 80% / 100%)),inset 0 0 1px 0 var(--glow-color-60, hsl(40deg 80% 80% / 60%)),inset 0 0 3px 0 var(--glow-color-50, hsl(40deg 80% 80% / 50%)),inset 0 0 6px 0 var(--glow-color-40, hsl(40deg 80% 80% / 40%)),inset 0 0 15px 0 var(--glow-color-30, hsl(40deg 80% 80% / 30%)),inset 0 0 25px 2px var(--glow-color-20, hsl(40deg 80% 80% / 20%)),inset 0 0 50px 2px var(--glow-color-10, hsl(40deg 80% 80% / 10%)),0 0 1px 0 var(--glow-color-60, hsl(40deg 80% 80% / 60%)),0 0 3px 0 var(--glow-color-50, hsl(40deg 80% 80% / 50%)),0 0 6px 0 var(--glow-color-40, hsl(40deg 80% 80% / 40%)),0 0 15px 0 var(--glow-color-30, hsl(40deg 80% 80% / 30%)),0 0 25px 2px var(--glow-color-20, hsl(40deg 80% 80% / 20%)),0 0 50px 2px var(--glow-color-10, hsl(40deg 80% 80% / 10%))}.border-glow-inner{display:flex;flex-direction:column;position:relative;overflow:hidden;border-radius:inherit;isolation:isolate;transform:translateZ(0);z-index:1;width:100%;height:100%}.dashboard{display:flex;min-height:100vh;background:var(--e-paper);font-family:var(--e-sans);color:var(--e-ink)}.dashboard-sidebar{width:252px;background:var(--e-white);display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100;border-right:1px solid var(--e-line)}.sidebar-header{padding:18px 20px 16px;border-bottom:1px solid var(--e-line);display:flex;justify-content:space-between;align-items:center}.sidebar-logo{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--e-ink);text-decoration:none}.sidebar-logo img{height:34px;width:auto;object-fit:contain;flex-shrink:0}.sidebar-label{padding:20px 20px 8px;font-family:var(--e-mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--e-muted)}.sidebar-nav{flex:1;padding:12px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.nav-item{position:relative;display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:var(--e-radius-md);font-size:13.5px;font-weight:600;color:var(--e-ink-dim);text-decoration:none;transition:background .15s var(--e-ease),color .15s var(--e-ease)}.nav-item:before{content:"";position:absolute;left:-12px;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--e-accent);border-radius:0 2px 2px 0;transition:height .15s var(--e-ease)}.nav-item:hover{background:var(--e-paper);color:var(--e-ink)}.nav-item.active{background:var(--e-accent-dim);color:var(--e-accent-ink)}.nav-item.active:before{height:18px}.nav-item svg{flex-shrink:0;width:17px;height:17px;opacity:.65}.nav-item.active svg{opacity:1}.sidebar-footer{padding:12px;border-top:1px solid var(--e-line)}.user-profile{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--e-line);border-radius:var(--e-radius-md);background:var(--e-paper);transition:border-color .15s var(--e-ease);cursor:pointer}.user-profile:hover{border-color:var(--e-ink-dim)}.user-avatar-small{width:34px;height:34px;border-radius:var(--e-radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--e-white);flex-shrink:0}.user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.user-name{font-size:12.5px;font-weight:700;color:var(--e-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-family:var(--e-mono);font-size:10.5px;color:var(--e-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-legal-links{display:flex;justify-content:center;gap:12px;margin-top:12px;font-family:var(--e-mono);font-size:10.5px}.sidebar-legal-links a{color:var(--e-muted);text-decoration:none;transition:color .15s var(--e-ease)}.sidebar-legal-links a:hover{color:var(--e-ink)}.dashboard-main{flex:1;margin-left:252px;padding:32px 40px 120px;min-height:100vh;animation:e-fade-up .4s var(--e-ease) both}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--e-line)}.header-left h1{font-size:28px;font-weight:800;letter-spacing:-.025em;color:var(--e-ink);margin-bottom:5px}.header-left p{color:var(--e-muted);font-size:13.5px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.stat-card,.stat-card.card{position:relative;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-md);padding:16px 18px;display:flex;align-items:center;gap:14px;box-shadow:none;transition:border-color .15s var(--e-ease),transform .15s var(--e-ease)}.stat-card:hover{transform:translateY(-2px);border-color:var(--e-ink-dim);box-shadow:var(--e-shadow-sm)}.stat-icon-wrapper{width:36px;height:36px;border-radius:var(--e-radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrapper svg{width:17px;height:17px}.stat-icon-wrapper.primary{background:var(--e-accent-dim);color:var(--e-accent-ink)}.stat-icon-wrapper.success{background:var(--e-good-dim);color:var(--e-good-ink)}.stat-icon-wrapper.warning{background:var(--e-warn-dim);color:var(--e-warn)}.stat-icon-wrapper.danger{background:var(--e-violet-dim);color:var(--e-violet)}.stat-content{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-value{font-family:var(--e-mono);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;color:var(--e-ink);line-height:1.05;letter-spacing:-.03em}.stat-label{font-family:var(--e-mono);font-size:10px;font-weight:500;color:var(--e-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projects-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.search-wrapper{position:relative;width:300px}.search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--e-muted);pointer-events:none}.search-input{width:100%;padding:9px 14px 9px 38px;border:1px solid var(--e-line);border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:13.5px;color:var(--e-ink);background:var(--e-white);transition:all .15s var(--e-ease)}.search-input::placeholder{color:#b3ada0}.search-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.toolbar-actions{display:flex;gap:10px;align-items:center;margin-left:auto}.filter-tabs{display:flex;gap:3px;padding:3px;background:var(--e-paper-raised);border:1px solid var(--e-line);border-radius:var(--e-radius-full)}.filter-tab{padding:7px 15px;background:transparent;border:none;border-radius:var(--e-radius-full);font-family:var(--e-sans);font-size:12.5px;font-weight:600;color:var(--e-ink-dim);cursor:pointer;transition:all .15s var(--e-ease)}.filter-tab:hover{color:var(--e-ink)}.filter-tab.active{background:var(--e-ink);color:var(--e-white);box-shadow:var(--e-shadow-sm)}.view-toggle{display:flex;gap:3px;padding:3px;background:var(--e-paper-raised);border:1px solid var(--e-line);border-radius:var(--e-radius-full)}.toggle-btn{padding:7px 11px;background:transparent;border:none;border-radius:var(--e-radius-full);color:var(--e-ink-dim);cursor:pointer;transition:all .15s var(--e-ease);display:flex;align-items:center;justify-content:center}.toggle-btn:hover{color:var(--e-ink)}.toggle-btn.active{background:var(--e-ink);color:var(--e-white)}.projects-container{margin-top:4px}.projects-container.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.projects-container.list{display:flex;flex-direction:column;gap:10px}.project-card{padding:18px;display:flex;flex-direction:column;gap:12px;text-decoration:none;position:relative;width:100%;height:100%;box-sizing:border-box;background:var(--e-white);transition:border-color .15s var(--e-ease),transform .2s var(--e-ease)}.border-glow-card .project-card{background:transparent;border:none}.projects-container .border-glow-card{border:1px solid var(--e-line);box-shadow:none;transition:border-color .15s var(--e-ease),transform .2s var(--e-ease),box-shadow .2s var(--e-ease)}.projects-container .border-glow-card:hover{border-color:var(--e-ink-dim);transform:translateY(-2px);box-shadow:var(--e-shadow-md)}.project-card.card{border:1px solid var(--e-line);border-radius:var(--e-radius-md);box-shadow:none}.project-card.card:hover{border-color:var(--e-ink-dim);transform:translateY(-2px);box-shadow:var(--e-shadow-sm)}.projects-container.list .project-card{flex-direction:row;align-items:center;padding:14px 18px;gap:20px}.projects-container.list .dashboard-project-header{flex:0 0 auto;min-width:200px;max-width:280px;margin:0;padding:0;background:transparent;border:none}.projects-container.list .project-desc{flex:1;-webkit-line-clamp:1;min-width:0}.projects-container.list .project-environments{flex:0 0 auto;justify-content:flex-end}.projects-container.list .project-footer{flex:0 0 auto;border-top:none;padding-top:0;margin-top:0;gap:20px}.dashboard-project-header,.project-card .project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.project-card .project-title-row{display:flex;flex-direction:row;align-items:center;gap:8px;flex:1;min-width:0}.project-name{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--e-ink);min-width:0}.project-name svg{color:var(--e-muted);flex-shrink:0}.project-card:hover .project-name{color:var(--e-accent-ink)}.project-card .star-btn{display:flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--e-muted);padding:5px;border-radius:var(--e-radius-sm);cursor:pointer;transition:all .15s var(--e-ease);flex-shrink:0}.project-card .star-btn:hover{background:var(--e-warn-dim);color:var(--e-warn)}.project-card .star-btn .star-count{font-family:var(--e-mono);font-size:11px;font-weight:600}.project-card .project-desc{font-size:13px;line-height:1.55;color:var(--e-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-environments{display:flex;flex-wrap:wrap;gap:6px}.env-tag{display:inline-flex;align-items:center;font-family:var(--e-mono);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:var(--e-radius-full);background:var(--e-paper);border:1px solid var(--e-line);color:var(--e-ink-dim)}.env-tag.development{background:var(--e-accent-dim);border-color:transparent;color:var(--e-accent-ink)}.env-tag.staging{background:var(--e-warn-dim);border-color:transparent;color:var(--e-warn)}.env-tag.production{background:var(--e-bad-dim);border-color:transparent;color:#b91c1c}.env-tag.empty-env{background:transparent;border-style:dashed;color:var(--e-faint);text-transform:none;letter-spacing:0}.project-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;margin-top:auto;border-top:1px solid var(--e-line-soft)}.project-meta{display:flex;gap:14px;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:5px;font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted)}.meta-item svg{flex-shrink:0;width:13px;height:13px}.project-arrow-container{width:28px;height:28px;border-radius:50%;background:var(--e-paper);display:flex;align-items:center;justify-content:center;color:var(--e-ink-dim);flex-shrink:0;transition:all .2s var(--e-ease);opacity:0;transform:translate(-6px)}.project-arrow{flex-shrink:0;width:16px;height:16px}.project-card:hover .project-arrow-container{opacity:1;transform:translate(0);background:var(--e-ink);color:var(--e-white)}.explore-card{display:flex;flex-direction:column}.explore-card .project-owner{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--e-muted)}.github-link{display:inline-flex;align-items:center;gap:4px;font-family:var(--e-mono);font-size:11px;color:var(--e-ink-dim);text-decoration:none;padding:3px 8px;background:var(--e-paper);border:1px solid var(--e-line);border-radius:var(--e-radius-sm);transition:all .15s var(--e-ease)}.github-link:hover{background:var(--e-ink);border-color:var(--e-ink);color:var(--e-white)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;color:var(--e-muted);background:var(--e-white);border:1.5px dashed var(--e-line);border-radius:var(--e-radius-lg)}.empty-state>svg{margin-bottom:16px;color:#c9c3b3}.empty-state h3{font-size:17px;font-weight:700;color:var(--e-ink);margin-bottom:6px}.empty-state p{margin-bottom:20px;font-size:13.5px;color:var(--e-muted)}.error-banner{display:flex;align-items:center;gap:12px;padding:13px 18px;background:var(--e-bad-dim);border:1px solid var(--e-bad-line);border-radius:var(--e-radius-md);color:var(--e-bad);font-size:13.5px;margin-bottom:20px}.error-banner span{flex:1}.error-banner button{padding:7px 14px;background:var(--e-white);border:1px solid var(--e-bad-line);border-radius:var(--e-radius-full);color:var(--e-bad);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s var(--e-ease)}.error-banner button:hover{background:var(--e-bad);color:var(--e-white)}.dashboard .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;gap:16px;color:var(--e-muted)}.dashboard .loading-state svg{color:var(--e-accent)}.dashboard .loading-state p{font-size:14px;font-weight:600;color:var(--e-ink)}.page-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px;color:var(--e-muted);text-align:center}.page-placeholder svg{margin-bottom:16px;color:#c9c3b3}.page-placeholder h2{color:var(--e-ink);margin-bottom:6px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--e-muted);margin-bottom:16px;transition:color .15s var(--e-ease),transform .15s var(--e-ease)}.back-link:hover{color:var(--e-ink);transform:translate(-2px)}.settings-page{width:100%}.settings-container{display:flex;gap:28px;max-width:940px}.settings-page .settings-sidebar{width:190px;flex-shrink:0;display:flex;flex-direction:column;gap:3px}.settings-page .settings-tab{display:flex;align-items:center;gap:10px;padding:10px 13px;border:none;background:transparent;border-radius:var(--e-radius-md);font-family:var(--e-sans);font-size:13.5px;font-weight:600;color:var(--e-ink-dim);cursor:pointer;transition:all .15s var(--e-ease);text-align:left;width:100%}.settings-page .settings-tab svg{opacity:.65}.settings-page .settings-tab:hover{background:var(--e-paper-raised);color:var(--e-ink)}.settings-page .settings-tab.active{background:var(--e-ink);color:var(--e-white)}.settings-page .settings-tab.active svg{opacity:1}.settings-page .settings-tab.danger{color:var(--e-bad)}.settings-page .settings-tab.danger:hover{background:var(--e-bad-dim);color:var(--e-bad)}.settings-tab-divider{height:1px;background:var(--e-line);margin:10px 0}.settings-content{flex:1;min-width:0}.settings-section{background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-lg);padding:26px 28px;box-shadow:var(--e-shadow-sm)}.settings-section .section-header{max-width:none;margin:0 0 22px;padding-bottom:16px;text-align:left;border-bottom:1px solid var(--e-line)}.settings-section h2{font-size:17px;font-weight:700;letter-spacing:-.015em;color:var(--e-ink);margin-bottom:5px}.settings-section .section-desc{font-size:13px;color:var(--e-muted);margin-bottom:0}.settings-form{display:flex;flex-direction:column;gap:18px;max-width:420px}.settings-form .form-label{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;margin-bottom:7px;color:var(--e-ink)}.settings-form .form-label svg{color:var(--e-muted)}.settings-form .form-input{width:100%;padding:10px 13px;border:1px solid var(--e-line);border-radius:var(--e-radius-md);font-family:var(--e-sans);font-size:13.5px;color:var(--e-ink);background:var(--e-white);transition:all .15s var(--e-ease)}.settings-form .form-input:focus{outline:none;border-color:var(--e-accent);box-shadow:0 0 0 3px var(--e-accent-ring)}.settings-form .form-hint{font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted);margin-top:5px}.settings-form .form-actions{margin-top:4px}.settings-message{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--e-radius-md);margin-bottom:18px;font-size:13.5px;font-weight:500}.settings-message.success{background:var(--e-good-dim);color:#166534;border:1px solid #bbf7d0}.settings-message.error{background:var(--e-bad-dim);color:var(--e-bad);border:1px solid var(--e-bad-line)}.profile-layout{max-width:620px}.profile-top-section{display:flex;align-items:flex-end;gap:14px;margin-bottom:22px}.profile-top-section .form-group{margin-bottom:0}.flex-1{flex:1}.profile-save{margin-top:0!important;margin-bottom:1px;border-top:none;padding-top:0}.avatar-section,.avatar-section.card{display:flex;gap:22px;padding:20px;background:var(--e-paper-raised);border:1px solid var(--e-line);border-radius:var(--e-radius-lg);box-shadow:none}.avatar-section.card:hover{transform:none;box-shadow:none}.avatar-preview-wrap{flex-shrink:0}.avatar-preview{width:88px;height:88px;border-radius:var(--e-radius-lg);overflow:hidden;border:1px solid var(--e-line);transition:background .3s var(--e-ease)}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-controls{flex:1;display:flex;flex-direction:column;gap:18px;min-width:0}.avatar-controls .form-label{font-family:var(--e-mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--e-muted)}.avatar-grid,.color-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.avatar-btn{width:44px;height:44px;border-radius:var(--e-radius-md);border:1px solid var(--e-line);cursor:pointer;padding:0;overflow:hidden;transition:all .15s var(--e-ease)}.avatar-btn:hover{transform:translateY(-2px)}.avatar-btn.active{border-color:transparent;box-shadow:0 0 0 2px var(--e-white),0 0 0 4px var(--e-ink)}.avatar-btn img{width:100%;height:100%;object-fit:cover}.color-btn{width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--e-white);transition:all .15s var(--e-ease)}.color-btn:hover{transform:scale(1.1)}.color-btn.active{box-shadow:0 0 0 2px var(--e-white),0 0 0 4px var(--e-ink)}.passkey-list-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--e-ink);margin-bottom:14px}.passkey-list-title svg{color:var(--e-accent)}.passkey-cards{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.passkey-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:var(--e-white);border:1px solid var(--e-line);border-radius:var(--e-radius-md);transition:border-color .15s var(--e-ease)}.passkey-card:hover{border-color:var(--e-ink-dim)}.passkey-info-wrap{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.passkey-icon{width:36px;height:36px;border-radius:var(--e-radius-sm);background:var(--e-good-dim);color:var(--e-good);display:flex;align-items:center;justify-content:center;flex-shrink:0}.passkey-details{flex:1;display:flex;flex-direction:column;min-width:0}.passkey-details strong{display:block;color:var(--e-ink);margin-bottom:2px;font-size:13.5px;font-weight:700}.passkey-details span{font-family:var(--e-mono);font-size:11.5px;color:var(--e-muted)}.passkey-edit-mode{display:flex;align-items:center;gap:10px;width:100%;max-width:300px}.passkey-edit-input{padding:6px 11px!important;font-size:13px!important}.passkey-edit-actions,.passkey-actions{display:flex;gap:4px}.btn-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--e-radius-sm);border:none;background:transparent;color:var(--e-muted);cursor:pointer;transition:all .15s var(--e-ease)}.btn-icon:hover{background:var(--e-accent-dim);color:var(--e-accent-ink)}.btn-icon.danger-icon:hover{background:var(--e-bad-dim);color:var(--e-bad)}.text-success{color:var(--e-good)}.text-success:hover{background:var(--e-good-dim)!important}.text-danger{color:var(--e-bad)}.text-danger:hover{background:var(--e-bad-dim)!important}.passkey-setup-box{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px;background:var(--e-paper-raised);border:1.5px dashed var(--e-line);border-radius:var(--e-radius-md)}.passkey-setup-box h3{margin:0 0 4px;font-size:14px;font-weight:700;color:var(--e-ink)}.passkey-setup-box p{margin:0;font-size:13px;color:var(--e-muted)}.mobile-dashboard-header{display:none;align-items:center;gap:16px;padding:14px 20px;background:var(--e-white);border-bottom:1px solid var(--e-line);position:sticky;top:0;z-index:90;margin:-24px -20px 24px}.mobile-sidebar-toggle{background:transparent;border:none;cursor:pointer;color:var(--e-ink);padding:4px;display:flex;align-items:center;justify-content:center}.mobile-header-title{font-size:17px;font-weight:700;color:var(--e-ink)}.dashboard-overlay{display:none;position:fixed;inset:0;background:#12151c73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;opacity:0;transition:opacity .3s var(--e-ease);pointer-events:none}.dashboard-overlay.active{opacity:1;pointer-events:auto}.sidebar-close-btn{display:none;background:transparent;border:none;color:var(--e-muted);cursor:pointer;padding:4px}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.projects-container.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media(max-width:900px){.dashboard{flex-direction:column}.dashboard-main{margin-left:0;padding:100px 16px 32px}.dashboard-header{flex-direction:column;align-items:flex-start}.projects-toolbar{flex-direction:column;align-items:stretch}.search-wrapper{width:100%}.toolbar-actions{margin-left:0;justify-content:space-between}.dashboard-overlay{display:block}.dashboard-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;z-index:100;transform:translate(-100%);transition:transform .3s var(--e-ease);box-shadow:4px 0 24px #12151c1a}.dashboard-sidebar.active{transform:translate(0)}.sidebar-close-btn{display:block}}@media(max-width:768px){.settings-container{flex-direction:column}.settings-page .settings-sidebar{width:100%}.settings-tab-divider{display:none}}@media(max-width:600px){.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px}.stat-value{font-size:21px}.projects-container.grid{grid-template-columns:1fr}.filter-tabs{width:100%;overflow-x:auto}.filter-tab{flex:1;text-align:center}.profile-top-section{flex-direction:column;align-items:stretch}.avatar-section{flex-direction:column;align-items:center}.avatar-controls{width:100%}.passkey-setup-box{flex-direction:column;align-items:stretch;text-align:center}.settings-section{padding:20px 18px}}.navbar{position:fixed;top:16px;left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:1200px;z-index:1000;height:var(--nav-height);background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:16px;box-shadow:0 4px 24px #0000000f}.navbar-container{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 24px;max-width:1200px;margin:0 auto}.navbar-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.navbar-logo-img{height:36px;width:auto;margin-right:-20px;object-fit:contain}.logo-text{font-size:1.25rem;font-weight:600;color:var(--primary-dark);letter-spacing:-.02em}.navbar-center{display:flex;align-items:center;gap:8px}.nav-link{padding:8px 16px;font-size:.9rem;font-weight:500;color:#444;text-decoration:none;border-radius:8px;transition:all .15s ease}.nav-link:hover{color:var(--primary-dark);background:#f8f8f8}.nav-link.active{color:var(--primary-dark);background:#f5f5f5}.navbar-auth{display:flex;align-items:center;gap:8px}.btn-nav-primary{padding:10px 20px;font-size:.9rem;font-weight:500;color:#fff;background:var(--primary-dark);border-radius:50px;text-decoration:none;transition:all .15s ease}.btn-nav-primary:hover{background:#1a1a1a;transform:translateY(-1px)}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:1px solid #e5e5e5;border-radius:50px;cursor:pointer;transition:all .15s ease}.user-menu-trigger:hover{background:#f8f8f8;border-color:#ddd}.user-menu-trigger .chevron{color:#888;transition:transform .15s ease}.user-menu:hover .user-menu-trigger .chevron{transform:rotate(180deg)}.user-avatar{width:28px;height:28px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.user-avatar.large{width:36px;height:36px;font-size:.85rem}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#fff;border:1px solid #e5e5e5;border-radius:12px;box-shadow:0 8px 24px #00000014;overflow:hidden;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px}.user-dropdown-header strong{display:block;font-size:.9rem;font-weight:600;color:var(--primary-dark)}.user-dropdown-header p{font-size:.8rem;color:#888;margin:0}.user-dropdown-divider{height:1px;background:#f0f0f0}.user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;font-size:.875rem;color:#444;text-decoration:none;background:transparent;border:none;cursor:pointer;transition:background .1s ease}.user-dropdown-item:hover{background:#f8f8f8}.user-dropdown-item.logout{color:#dc3545}.user-dropdown-item.logout:hover{background:#fef2f2}.navbar-burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:8px;background:transparent;border:none;cursor:pointer;border-radius:8px;transition:background .15s ease;z-index:1002}.navbar-burger:hover{background:#f5f5f5}.navbar-burger span{display:block;width:20px;height:2px;background:var(--primary-dark);border-radius:2px;transition:all .3s cubic-bezier(.68,-.55,.27,1.55);transform-origin:center}.navbar-burger.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navbar-burger.active span:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-burger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-overlay{display:none;position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;opacity:0;transition:opacity .3s ease;pointer-events:none}.mobile-overlay.active{opacity:1;pointer-events:auto}.mobile-menu{display:none;position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);background:#fff;z-index:1001;flex-direction:column;padding:0;transform:translate(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:-8px 0 32px #0000001a}.mobile-menu.active{transform:translate(0)}.mobile-menu-header{padding:24px 24px 20px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.mobile-menu-logo{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;color:var(--text-dark);text-decoration:none;letter-spacing:-.02em}.mobile-menu-close-btn{background:transparent;border:none;color:#888;cursor:pointer;padding:8px;margin:-8px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease}.mobile-menu-close-btn:hover{background:#f5f5f5;color:#333}.mobile-user-info{display:flex;align-items:center;gap:14px;padding:16px 24px;background:#fff;border-top:1px solid var(--border-light);margin-top:auto}.mobile-user-avatar{width:44px;height:44px;border-radius:10px;overflow:hidden;flex-shrink:0}.mobile-user-info strong{display:block;font-size:.95rem;font-weight:600;color:var(--primary-dark);margin-bottom:2px}.mobile-user-info p{font-size:.8rem;color:#888;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.mobile-nav-links{display:flex;flex-direction:column;gap:4px;flex:1;padding:24px}.mobile-link{padding:14px 16px;font-size:1rem;font-weight:500;color:#333;text-decoration:none;border-radius:10px;transition:all .15s ease}.mobile-link:hover{background:#f5f5f5}.mobile-auth{display:flex;flex-direction:column;gap:10px;padding:24px;border-top:1px solid #f0f0f0}.mobile-auth-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:8px;font-weight:500;transition:all .2s ease}.mobile-auth-btn.logout-btn{background:transparent;color:#ef4444;border:1px solid #ef4444}.mobile-auth-btn.logout-btn:hover{background:#fef2f2;color:#dc2626;border-color:#dc2626;box-shadow:0 4px 12px #ef444426}@media(min-width:769px){.navbar.dashboard-navbar{display:none}}@media(max-width:768px){.navbar-center,.navbar-auth{display:none}.navbar-burger{display:flex}.mobile-overlay{display:block}.mobile-menu{display:flex}}.pixel-snow-container{width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;contain:layout style paint;z-index:0;pointer-events:none}.pixel-snow-container canvas{display:block;width:100%;height:100%;transform:translateZ(0);will-change:transform;backface-visibility:hidden}.footer{background:var(--bg-darker);color:var(--text-white);padding:80px 0 40px;margin-top:100px}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.footer-brand{max-width:400px}.footer-logo{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:#fff;margin-bottom:16px}.footer-logo .logo-icon{width:32px;height:32px;background:var(--primary-blue)}.footer-tagline{font-size:14px;color:#fff9;line-height:1.7;margin-bottom:24px}.footer-social{display:flex;gap:12px}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;border-radius:var(--radius-md);color:#fff;transition:var(--transition)}.social-link:hover{background:var(--primary-blue);transform:translateY(-2px)}.footer-terminal-container{background:#0f111a;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;box-shadow:0 20px 40px #0006;font-family:Fira Code,Courier New,Courier,monospace;width:100%;max-width:550px}.footer-terminal-header{background:#ffffff0d;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#fff9;border-bottom:1px solid rgba(255,255,255,.05)}.terminal-dots{display:flex;gap:6px}.terminal-dots .dot{width:12px;height:12px;border-radius:50%}.dot-red{background:#ff5f56}.dot-yellow{background:#ffbd2e}.dot-green{background:#27c93f}.footer-terminal-body{padding:20px;height:240px;overflow-y:auto;font-size:14px;line-height:1.6;display:flex;flex-direction:column;gap:6px;text-align:left}.footer-terminal-body::-webkit-scrollbar{width:6px}.footer-terminal-body::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.term-line{white-space:pre-wrap;word-wrap:break-word}.term-system{color:#8892b0}.term-input{color:#5eead4}.term-output{color:#cbd5e1}.term-input-line{display:flex;align-items:center;gap:8px;margin-top:4px}.term-prompt{color:#5eead4}.term-input-line input{background:transparent;border:none;color:#f8fafc;font-family:inherit;font-size:inherit;flex-grow:1;outline:none;box-shadow:none;padding:0}.term-input-line input:focus{border:none;box-shadow:none}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:40px;margin-top:60px;border-top:1px solid rgba(255,255,255,.1)}.footer-bottom p{font-size:14px;color:#ffffff80}.footer-links{display:flex;gap:24px}.footer-links a{font-size:14px;color:#ffffff80;transition:var(--transition)}.footer-links a:hover{color:#fff}@media(max-width:900px){.footer-grid{grid-template-columns:1fr;gap:40px}}@media(max-width:600px){.footer{padding:60px 0 30px}.footer-bottom{flex-direction:column;gap:20px;text-align:center}}.ripple-wrapper{position:absolute;inset:0;height:100%;width:100%;--cell-border-color: rgba(0, 0, 0, .05);--cell-fill-color: transparent}.ripple-inner{position:relative;height:100%;width:100%;overflow:hidden}.ripple-grid{position:relative;z-index:1;-webkit-mask-image:radial-gradient(ellipse at top,black 20%,transparent 80%);mask-image:radial-gradient(ellipse at top,black 20%,transparent 80%);opacity:.8}.ripple-cell{position:relative;border:.5px solid var(--cell-border-color);opacity:.4;transition:opacity .15s ease;will-change:transform}.ripple-cell:hover{opacity:1;background-color:var(--cell-fill-color)!important}.ripple-cell.animate-cell-ripple{animation:cell-ripple var(--duration, .2s) ease-out var(--delay, 0ms) 1 none}.ripple-cell.not-interactive{pointer-events:none}@keyframes cell-ripple{0%{opacity:.4;background-color:transparent}50%{opacity:1;background-color:var(--cell-fill-color)}to{opacity:.4;background-color:transparent}}.home{padding-top:var(--nav-height)}.hero{min-height:calc(100vh - var(--nav-height));display:flex;align-items:center;padding:80px 0 100px;position:relative;overflow:hidden}.hero-container{display:flex;align-items:center;justify-content:center;position:relative;width:100%}.hero-content{max-width:680px;text-align:center;position:relative;z-index:2}.hero h1{margin-bottom:24px;letter-spacing:-1.5px;font-size:clamp(2.8rem,5vw,4.2rem);line-height:1.1}.hero-highlight{position:relative;display:inline;color:var(--primary-blue)}.hero-highlight:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:12px;background:var(--primary-blue);opacity:.2;border-radius:4px;z-index:-1}.hero-subtitle{font-size:18px;color:var(--text-light);margin-bottom:40px;line-height:1.8;max-width:560px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero-icons-left{position:absolute;left:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:120px;padding-left:40px}.hero-icons-right{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-end;gap:70px;padding-right:40px}.floating-icon{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transition:transform .3s ease,box-shadow .3s ease}.floating-icon:hover{transform:scale(1.1);box-shadow:var(--shadow-xl)}.icon-lock{width:64px;height:64px;background:var(--primary-dark);color:#fff;border-radius:var(--radius-xl)}.icon-git{width:52px;height:52px;background:#fff;color:var(--primary-blue);margin-left:50px}.icon-shield{width:56px;height:56px;background:var(--accent-blue);color:#fff;border-radius:var(--radius-lg)}.icon-zap{width:52px;height:52px;background:var(--accent-blue);color:#fff;margin-right:40px}.icon-key{width:48px;height:48px;background:#fff;color:var(--text-dark);border:1px solid var(--border-light)}.mission{background:linear-gradient(180deg,var(--bg-cream) 0%,#ebe9e4 100%);padding:100px 0}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.mission-content h2{margin-bottom:20px}.mission-content p{font-size:18px;color:var(--text-light);line-height:1.7}.mission-visual{display:flex;justify-content:center}.mission-icon-group{display:flex;align-items:center;gap:-20px}.mission-icon{width:80px;height:80px;background:var(--primary-dark);color:#fff;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);margin-left:-15px}.mission-icon:first-child{margin-left:0}.mission-icon.accent{background:var(--accent-blue);width:100px;height:100px;z-index:2}.features-section{padding:100px 0}.section-header{text-align:center;max-width:600px;margin:0 auto 60px}.section-header h2{margin-bottom:16px}.section-header p{color:var(--text-light);font-size:18px}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.feature-card{text-align:left}.feature-icon{width:56px;height:56px;background:var(--bg-cream);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:var(--primary-dark)}.feature-card h3{font-size:16px;font-weight:600;margin-bottom:8px}.feature-card p{font-size:14px;color:var(--text-light);line-height:1.6}.portfolio-section{background:var(--bg-darker);padding:100px 0;color:#fff}.portfolio-section .section-header h2{color:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.portfolio-item{display:flex;align-items:flex-start;gap:16px}.portfolio-icon{width:48px;height:48px;background:#ffffff1a;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.portfolio-info h4{font-size:16px;font-weight:600;color:#fff;margin-bottom:4px}.portfolio-info p{font-size:14px;color:#fff9}.cta-section{padding:100px 0}.cta-card{background:#fff;border-radius:var(--radius-xl);padding:60px;text-align:center;box-shadow:var(--shadow-lg)}.cta-card h2{margin-bottom:12px}.cta-card p{color:var(--text-light);margin-bottom:32px;font-size:18px}.cta-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}@media(max-width:1200px){.hero-icons-left{padding-left:20px;gap:80px}.hero-icons-right{padding-right:20px;gap:50px}.icon-lock,.icon-shield{width:56px;height:56px}.icon-git,.icon-zap,.icon-key{width:44px;height:44px}}@media(max-width:1024px){.features-grid,.portfolio-grid{grid-template-columns:repeat(2,1fr)}.hero-icons-left,.hero-icons-right{display:none}}@media(max-width:768px){.hero{min-height:auto;padding:80px 0}.hero-icons-left,.hero-icons-right{display:none}.mission-grid{grid-template-columns:1fr;text-align:center}.mission-visual{order:-1}.features-grid,.portfolio-grid{grid-template-columns:1fr}.cta-card{padding:40px 24px}}.docs{min-height:100vh;background:var(--bg-cream);position:relative}.docs-hero{background:transparent;border-bottom:1px solid #e5e5e5;padding:calc(var(--nav-height) + 48px) 0 48px}.docs-hero-content{max-width:600px}.docs-badge{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:13px;font-weight:500;margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.docs-hero h1{font-size:2.5rem;color:var(--primary-dark);margin-bottom:12px;font-weight:700;letter-spacing:-.5px}.docs-hero-subtitle{font-size:17px;color:var(--text-muted);line-height:1.6}.docs-container{display:grid;grid-template-columns:220px 1fr;gap:64px;padding:40px 24px 80px;max-width:1200px;margin:0 auto}.docs-sidebar{position:sticky;top:calc(var(--nav-height) + 32px);max-height:calc(100vh - var(--nav-height) - 64px);overflow-y:auto}.docs-sidebar::-webkit-scrollbar{width:6px}.docs-sidebar::-webkit-scrollbar-thumb{background-color:#e5e5e5;border-radius:4px}.docs-nav{padding:0;background:transparent;border:none;box-shadow:none}.docs-nav-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:12px;padding-left:12px}.docs-nav-link{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;color:var(--text-secondary);text-decoration:none;font-size:14px;transition:all .15s ease}.docs-nav-link:hover{background-color:#1e1e1e0a;color:var(--primary-dark)}.docs-nav-link.active{background-color:#1e1e1e0f;color:var(--primary-dark);font-weight:500}.docs-nav-link svg{display:none}.docs-content{min-width:0;max-width:720px}.docs-section{background:transparent;border-radius:0;padding:0;margin-bottom:56px;box-shadow:none;border:none;scroll-margin-top:100px}.docs-section h2{display:block;font-size:1.5rem;color:var(--primary-dark);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e5e5;font-weight:600}.docs-section h2 .section-icon{display:none}.docs-section h3{font-size:1.1rem;color:var(--primary-dark);margin:32px 0 12px;font-weight:600}.docs-section p{color:#555;line-height:1.7;margin-bottom:16px;font-size:15px}.docs-section strong{color:var(--primary-dark);font-weight:600}.code-block{background:#1a1a1a;border-radius:8px;overflow:hidden;margin:20px 0;font-size:13px}.code-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#252525;border-bottom:1px solid #333}.code-language{font-size:11px;color:#888;text-transform:uppercase;font-weight:500;letter-spacing:.5px}.copy-btn{display:flex;align-items:center;gap:5px;background:transparent;border:none;color:#888;padding:4px 8px;border-radius:4px;font-size:11px;cursor:pointer;transition:all .15s ease}.copy-btn:hover{background:#333;color:#ccc}.code-block pre{margin:0;padding:16px;overflow-x:auto}.code-block code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px;line-height:1.5;color:#e0e0e0}.command-table-wrapper{overflow-x:auto;margin:20px 0;border:1px solid #e5e5e5;border-radius:8px}.command-table{width:100%;border-collapse:collapse;background:#fff}.command-table th,.command-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.command-table th{background:#fafafa;font-weight:600;color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.command-table td{color:#555;font-size:14px}.command-table td code{background:#f5f5f5;padding:3px 8px;border-radius:4px;font-size:13px;color:#333;font-weight:500}.command-table tr:last-child td{border-bottom:none}.command-table tr:hover td{background:#fafafa}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}.feature-card{background:#fff;border-radius:8px;padding:20px;border:1px solid #e5e5e5;transition:border-color .2s ease}.feature-card:hover{border-color:#ccc}.feature-icon{width:36px;height:36px;background:#f0f0f0;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#555;margin-bottom:12px}.feature-card h4{font-size:14px;color:var(--primary-dark);margin-bottom:6px;font-weight:600}.feature-card p{font-size:13px;color:var(--text-muted);margin:0;line-height:1.4}.steps{border-left:2px solid #e5e5e5;padding-left:28px;margin:20px 0 20px 8px}.step{position:relative;padding:0 0 32px;border-bottom:none}.step:last-child{padding-bottom:0}.step-number{position:absolute;left:-38px;width:24px;height:24px;background:var(--primary-dark);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.step-content h4{font-size:15px;color:var(--primary-dark);margin-bottom:8px;font-weight:600}.info-box,.success-box{display:flex;gap:12px;padding:16px;border-radius:8px;margin:20px 0}.info-box{background:#f0f7ff;border-color:var(--primary-blue)}.info-box svg{color:var(--primary-blue);flex-shrink:0}.success-box{background:#f0fdf4;border-color:#22c55e}.success-box svg{color:#22c55e;flex-shrink:0}.info-box div,.success-box div{font-size:14px;color:#555;line-height:1.5}.info-box strong,.success-box strong{color:var(--primary-dark);font-weight:600}.info-box code,.success-box code{background:#0000000f;padding:2px 5px;border-radius:3px;font-size:13px}.role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.role-card{background:#fff;border-radius:8px;padding:16px;border:1px solid #e5e5e5}.role-card h4{font-size:14px;color:var(--primary-dark);margin-bottom:4px;font-weight:600}.role-card p{font-size:13px;color:var(--text-muted);margin:0}.security-features{display:flex;flex-direction:column;gap:12px;margin-top:16px}.security-item{display:flex;gap:14px;padding:16px;background:#fff;border-radius:8px;border:1px solid #e5e5e5}.security-item svg{color:#555;flex-shrink:0}.security-item h4{font-size:14px;color:var(--primary-dark);margin-bottom:4px;font-weight:600}.security-item p{font-size:13px;color:var(--text-muted);margin:0;line-height:1.4}.security-item code{background:#f5f5f5;padding:1px 5px;border-radius:3px;font-size:12px}.file-descriptions{display:flex;flex-direction:column;gap:12px;margin-top:16px}.file-item{padding:16px;background:#fff;border-radius:8px;border:1px solid #e5e5e5}.file-item code{font-size:13px;color:#333;font-weight:600}.file-danger,.file-safe{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;margin-left:10px}.file-danger{background:#fef2f2;color:#dc2626}.file-safe{background:#f0fdf4;color:#16a34a}.file-item p{margin:8px 0 0;font-size:13px;color:var(--text-muted)}.best-practices-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.practice{display:flex;gap:14px;padding:16px;background:#fff;border-radius:8px;border:1px solid #e5e5e5}.practice-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.practice-icon.good{background:#f0fdf4;color:#16a34a}.practice-icon.bad{background:#fef2f2;color:#dc2626}.practice h4{font-size:14px;color:var(--primary-dark);margin-bottom:4px;font-weight:500}.practice h4 code{background:#f5f5f5;padding:1px 5px;border-radius:3px;font-size:12px}.practice p{font-size:13px;color:var(--text-muted);margin:0}.docs-cta{background:var(--primary-dark);border-radius:12px;padding:40px;text-align:center;margin-top:40px}.docs-cta h2{color:#fff;font-size:1.5rem;margin-bottom:8px;border:none;padding:0;font-weight:600}.docs-cta p{color:#fff9;margin-bottom:24px;font-size:15px}.docs-cta-buttons{display:flex;gap:12px;justify-content:center}.docs-cta .btn{display:inline-flex;align-items:center;gap:6px;padding:12px 24px;border-radius:8px;font-weight:500;font-size:14px;text-decoration:none;transition:all .15s ease}.docs-cta .btn-primary{background:#fff;color:var(--primary-dark)}.docs-cta .btn-primary:hover{background:#f5f5f5}.docs-cta .btn-secondary{background:transparent;color:#fffc;border:1px solid rgba(255,255,255,.2)}.docs-cta .btn-secondary:hover{background:#ffffff1a;color:#fff}@media(max-width:768px){.docs-container{grid-template-columns:1fr;gap:40px;padding:24px 20px 60px}.docs-sidebar{position:static;display:none}}.architecture-step{background:#fff;border-radius:8px;padding:20px;border:1px solid #e5e5e5;margin-bottom:16px}.architecture-step h4{font-size:15px;color:var(--primary-dark);margin-bottom:8px;font-weight:600;display:flex;align-items:center;gap:8px}.architecture-step p{margin-bottom:12px}.architecture-step ol{padding-left:20px;color:#555;font-size:14px;line-height:1.6}.architecture-step ol li{margin-bottom:6px}.tech-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:20px;margin-bottom:32px}.tech-card{background:#fff;border-radius:8px;padding:16px;border:1px solid #e5e5e5}.tech-card h4{font-size:14px;color:var(--primary-dark);margin-bottom:6px;font-weight:600}.tech-card p{font-size:13px;color:var(--text-muted);margin:0;line-height:1.5}.blame-table{font-family:SF Mono,Fira Code,monospace;font-size:13px;background:#1a1a1a;color:#e0e0e0;padding:16px;border-radius:8px;overflow-x:auto;white-space:pre;line-height:1.4;margin:20px 0}.blame-table-header{color:#888;margin-bottom:8px}.blame-row{display:block}.blame-commit{color:#eab308}.blame-user{color:#60a5fa}.blame-action{color:#a78bfa}.blame-env{color:#34d399}.blame-source{color:#fb923c}.blame-time{color:#9ca3af}@media(max-width:900px){.docs-container{grid-template-columns:1fr;gap:0;padding:32px 20px 60px}.docs-sidebar{display:none}.docs-hero h1{font-size:2rem}.feature-grid,.role-grid{grid-template-columns:1fr}.docs-cta-buttons{flex-direction:column}}.auth-page{min-height:100vh;background:var(--bg-cream)}.auth-container{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-brand{background:var(--bg-darker);color:#fff;padding:60px;display:flex;align-items:center}.brand-content{max-width:400px}.brand-logo{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;color:#fff;margin-bottom:48px}.brand-logo .logo-icon{width:44px;height:44px;background:var(--primary-blue)}.auth-brand h1{font-size:36px;color:#fff;margin-bottom:16px;line-height:1.2}.auth-brand p{font-size:16px;color:#ffffffb3;line-height:1.7;margin-bottom:40px}.brand-features{display:flex;flex-direction:column;gap:16px}.brand-feature{display:flex;align-items:center;gap:12px;font-size:14px;color:#fffc}.feature-dot{width:8px;height:8px;background:var(--accent-blue);border-radius:50%}.auth-form-panel{display:flex;align-items:center;justify-content:center;padding:40px}.auth-form-container{width:100%;max-width:400px}.auth-header{margin-bottom:32px}.auth-header h2{font-size:28px;margin-bottom:8px}.auth-header p{color:var(--text-light)}.btn-social{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 24px;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:15px;font-weight:500;color:var(--text-dark)}.btn-social:hover{background:var(--bg-cream);border-color:var(--text-dark)}.auth-form{display:flex;flex-direction:column;gap:20px}.label-row{display:flex;justify-content:space-between;align-items:center}.forgot-link{font-size:13px;color:var(--primary-blue);font-weight:500}.forgot-link:hover{text-decoration:underline}.input-wrapper{position:relative}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-light)}.form-input.with-icon{padding-left:44px;padding-right:44px}.toggle-password{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;color:var(--text-light);padding:4px}.toggle-password:hover{color:var(--text-dark)}.password-checks{display:flex;flex-direction:column;gap:8px;margin-top:12px}.password-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-light)}.password-check svg{color:var(--border-light)}.password-check.valid{color:var(--success)}.password-check.valid svg{color:var(--success)}.btn-full{width:100%}.btn.loading{position:relative;color:transparent}.btn.loading .spinner{position:absolute;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.terms-text{font-size:13px;color:var(--text-light);text-align:center}.terms-text a{color:var(--primary-blue)}.terms-text a:hover{text-decoration:underline}.auth-footer{margin-top:24px;text-align:center;font-size:14px;color:var(--text-light)}.auth-footer a{color:var(--primary-blue);font-weight:500}.auth-footer a:hover{text-decoration:underline}.auth-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px}.auth-error svg{flex-shrink:0}.field-error{display:block;color:#dc2626;font-size:12px;margin-top:4px}.input-error{border-color:#dc2626!important}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:var(--bg-cream)}.loading-screen p{font-size:18px;font-weight:500;color:var(--text-dark)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-light);border-top-color:var(--primary-blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-tabs{display:flex;gap:0;margin-bottom:20px;border-radius:10px;overflow:hidden;border:1px solid #e0e0e0}.auth-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:none;background:transparent;color:#666;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.auth-tab.active{background:var(--primary-blue, #4361ee);color:#fff}.auth-tab:not(.active):hover{background:#f5f5f5}.srp-notice{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:#4361ee0f;border:1px solid rgba(67,97,238,.15);border-radius:10px;margin-bottom:20px;font-size:13px;color:#555;line-height:1.5}.srp-notice svg{color:var(--primary-blue, #4361ee);flex-shrink:0;margin-top:1px}.passkey-info{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#4caf500f;border:1px solid rgba(76,175,80,.15);border-radius:10px;margin-bottom:20px}.passkey-info svg{color:#4caf50;flex-shrink:0;margin-top:2px}.passkey-info p{font-size:13px;color:#555;line-height:1.6;margin:0}@media(max-width:900px){.auth-container{grid-template-columns:1fr}.auth-brand{display:none}.auth-form-panel{padding:24px}}.legal-page{padding:120px 20px 80px;max-width:900px;margin:0 auto;color:var(--text-dark);line-height:1.7;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.legal-header{text-align:center;margin-bottom:60px}.legal-header h1{font-size:3.5rem;margin-bottom:15px;color:var(--text-dark);letter-spacing:-.03em;font-weight:800;background:linear-gradient(135deg,var(--text-dark) 0%,var(--primary-blue) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.legal-header p{color:var(--text-light);font-size:1.1rem;max-width:600px;margin:0 auto}.legal-card{background:#fff;border:1px solid var(--border-light);border-radius:16px;padding:50px 60px;box-shadow:0 10px 30px #0000000d}.legal-content h2{font-size:1.6rem;margin-top:45px;margin-bottom:20px;color:var(--text-dark);font-weight:700;letter-spacing:-.01em;border-bottom:1px solid var(--border-light);padding-bottom:12px}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:1.25rem;margin-top:30px;margin-bottom:15px;color:var(--text-dark);font-weight:600}.legal-content p{margin-bottom:20px;color:var(--text-light);font-size:1.05rem}.legal-content ul{margin-bottom:24px;padding-left:24px}.legal-content li{margin-bottom:10px;color:var(--text-light);font-size:1.05rem}.legal-content strong{color:var(--text-dark);font-weight:600}.legal-content a{color:var(--primary-blue, #4169e1);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-color .2s ease}.legal-content a:hover{border-color:var(--primary-blue, #4169e1)}.legal-content .highlight-box{background:#4169e10d;border-left:4px solid var(--primary-blue, #4169e1);padding:20px 24px;border-radius:0 8px 8px 0;margin:30px 0}.legal-content .highlight-box p{margin-bottom:0;color:var(--text-dark);font-weight:500}@media(max-width:768px){.legal-page{padding-top:100px}.legal-header h1{font-size:2.5rem}.legal-card{padding:30px 20px}}.not-found-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--bg);text-align:center;padding:20px}.nf-glitch-container{position:relative;z-index:2}.nf-error-code{font-size:clamp(6rem,20vw,12rem);font-weight:800;line-height:1;margin:0;background:linear-gradient(to right,#6fbe9e,#6366f1,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;position:relative;display:inline-block;animation:nf-pulse 4s ease-in-out infinite alternate}.nf-error-code:before,.nf-error-code:after{content:"404";position:absolute;top:0;left:0;right:0;background:var(--bg);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nf-error-code:before{left:3px;text-shadow:-2px 0 red;animation:nf-glitch-anim-1 2.5s infinite linear alternate-reverse}.nf-error-code:after{left:-3px;text-shadow:-2px 0 blue;animation:nf-glitch-anim-2 3s infinite linear alternate-reverse}.nf-title{font-size:2rem;color:var(--text);margin-top:10px;font-weight:600;letter-spacing:-.02em;z-index:2}.nf-description{color:var(--text-muted);font-size:1.1rem;max-width:450px;margin:20px auto 40px;line-height:1.6;z-index:2}.nf-home-btn{display:inline-flex;align-items:center;gap:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text);padding:12px 28px;border-radius:30px;font-size:1rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;position:relative;overflow:hidden}.nf-home-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(111,190,158,.2),transparent);transition:left .5s ease}.nf-home-btn:hover{background:#ffffff1a;border-color:#6fbe9e80;box-shadow:0 0 20px #6fbe9e33;transform:translateY(-2px)}.nf-home-btn:hover:before{left:100%}.nf-background-elements{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.nf-blur-circle{position:absolute;border-radius:50%;filter:blur(80px);opacity:.15}.nf-blur-1{width:400px;height:400px;background:#6fbe9e;top:-100px;left:-100px;animation:nf-float 10s ease-in-out infinite}.nf-blur-2{width:500px;height:500px;background:#6366f1;bottom:-200px;right:-100px;animation:nf-float 12s ease-in-out infinite reverse}@keyframes nf-pulse{0%{opacity:.8;filter:drop-shadow(0 0 20px rgba(111,190,158,.2))}to{opacity:1;filter:drop-shadow(0 0 40px rgba(99,102,241,.4))}}@keyframes nf-float{0%{transform:translate(0)}50%{transform:translate(30px,30px)}to{transform:translate(0)}}@keyframes nf-glitch-anim-1{0%{clip-path:inset(20% 0 80% 0)}20%{clip-path:inset(60% 0 10% 0)}40%{clip-path:inset(40% 0 50% 0)}60%{clip-path:inset(80% 0 5% 0)}80%{clip-path:inset(10% 0 70% 0)}to{clip-path:inset(30% 0 40% 0)}}@keyframes nf-glitch-anim-2{0%{clip-path:inset(10% 0 60% 0)}20%{clip-path:inset(30% 0 20% 0)}40%{clip-path:inset(70% 0 10% 0)}60%{clip-path:inset(40% 0 50% 0)}80%{clip-path:inset(80% 0 5% 0)}to{clip-path:inset(5% 0 80% 0)}}.cw-widget,.cw-widget *{box-sizing:border-box}.cw-widget{--cw-ink: #16211D;--cw-ink-soft: #223129;--cw-accent: #3F7C6B;--cw-accent-soft: #E7F0EC;--cw-bg: #FFFFFF;--cw-surface: #F6F5F3;--cw-bubble-assistant: #EFEDE9;--cw-text: #1A1A1A;--cw-text-muted: #767671;--cw-text-on-ink: #F3F4F1;--cw-border: #E7E5E0;--cw-radius-panel: 20px;--cw-radius-bubble: 14px;--cw-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--cw-shadow: 0 20px 60px -12px rgba(22, 33, 29, .35), 0 4px 20px -4px rgba(22, 33, 29, .15);--cw-z: 2147483000;position:fixed;inset:auto 24px 24px auto;z-index:var(--cw-z);font-family:var(--cw-font);color:var(--cw-text);line-height:1.45}.cw-launcher{position:absolute;right:0;bottom:0;width:60px;height:60px;border-radius:50%;border:none;background:var(--cw-ink);color:var(--cw-text-on-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--cw-shadow);transition:transform .25s cubic-bezier(.34,1.56,.64,1),background .2s ease}.cw-launcher:hover{transform:scale(1.06);background:var(--cw-ink-soft)}.cw-launcher:focus-visible{outline:2px solid var(--cw-accent);outline-offset:3px}.cw-launcher:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 #3f7c6b8c;animation:cw-breathe 2.6s ease-out infinite}.cw-widget.cw-open .cw-launcher:after{animation:none;box-shadow:none}@keyframes cw-breathe{0%{box-shadow:0 0 #3f7c6b73}70%{box-shadow:0 0 0 14px #3f7c6b00}to{box-shadow:0 0 #3f7c6b00}}.cw-launcher-icon{position:absolute;transition:opacity .2s ease,transform .3s cubic-bezier(.34,1.56,.64,1);display:flex}.cw-icon-close{opacity:0;transform:rotate(-90deg) scale(.6)}.cw-icon-chat{opacity:1;transform:rotate(0) scale(1)}.cw-widget.cw-open .cw-icon-chat{opacity:0;transform:rotate(90deg) scale(.6)}.cw-widget.cw-open .cw-icon-close{opacity:1;transform:rotate(0) scale(1)}.cw-badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#c24e3a;color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid var(--cw-bg)}.cw-panel{position:absolute;right:0;bottom:76px;width:380px;height:600px;max-height:calc(100vh - 116px);background:var(--cw-bg);border-radius:var(--cw-radius-panel);box-shadow:var(--cw-shadow);display:flex;flex-direction:column;overflow:hidden;transform-origin:bottom right;transform:scale(.92) translateY(12px);opacity:0;pointer-events:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}.cw-widget.cw-open .cw-panel{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}.cw-header{flex:none;display:flex;align-items:center;gap:12px;padding:16px 16px 16px 18px;background:var(--cw-ink);color:var(--cw-text-on-ink)}.cw-avatar{width:36px;height:36px;border-radius:50%;background:var(--cw-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;letter-spacing:.02em;flex:none;overflow:hidden;box-shadow:0 2px 6px #00000026}.cw-avatar-logo{width:100%;height:100%;object-fit:contain;transform:scale(1.15)}.cw-header-text{flex:1;min-width:0}.cw-title{font-size:14.5px;font-weight:600;letter-spacing:-.01em}.cw-status{font-size:12px;color:#f3f4f1ad;display:flex;align-items:center;gap:5px;margin-top:2px}.cw-status-dot{width:6px;height:6px;border-radius:50%;background:#6fbe9e;flex:none}.cw-close{flex:none;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:#f3f4f1bf;cursor:pointer;display:flex;align-items:center;justify-content:center}.cw-close:hover{background:#ffffff1a;color:#fff}.cw-close:focus-visible{outline:2px solid var(--cw-accent);outline-offset:2px}.cw-messages{flex:1;overflow-y:auto;padding:18px 16px;background:var(--cw-surface);display:flex;flex-direction:column;gap:12px}.cw-messages::-webkit-scrollbar{width:8px}.cw-messages::-webkit-scrollbar-thumb{background:#16211d26;border-radius:8px}.cw-messages::-webkit-scrollbar-track{background:transparent}.cw-empty-state{margin:auto 0 0;padding:4px 2px 8px;color:var(--cw-text-muted);font-size:13.5px}.cw-empty-state p{margin:0 0 12px}.cw-quick-replies{display:flex;flex-direction:column;gap:8px}.cw-chip{align-self:flex-start;max-width:100%;text-align:left;padding:9px 14px;border-radius:12px;border:1px solid var(--cw-border);background:var(--cw-bg);color:var(--cw-text);font-size:13px;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.cw-chip:hover{border-color:var(--cw-accent);transform:translateY(-1px)}.cw-chip:focus-visible{outline:2px solid var(--cw-accent);outline-offset:1px}.cw-msg{display:flex;max-width:86%;min-width:0;animation:cw-msg-in .22s ease both}@keyframes cw-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cw-msg-user{align-self:flex-end}.cw-msg-assistant{align-self:flex-start}.cw-bubble{padding:10px 13px;border-radius:var(--cw-radius-bubble);font-size:13.5px;white-space:pre-wrap;word-wrap:break-word;min-width:0;max-width:100%}.cw-msg-user .cw-bubble{background:var(--cw-accent);color:#fff;border-bottom-right-radius:4px}.cw-msg-assistant .cw-bubble{background:var(--cw-bubble-assistant);color:var(--cw-text);border-bottom-left-radius:4px}.cw-typing-dots{display:flex;gap:4px;padding:4px 2px}.cw-typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--cw-text-muted);opacity:.6;animation:cw-bounce 1.1s ease-in-out infinite}.cw-limit{font-size:11px;color:var(--cw-text-muted);text-align:center;padding:0 16px 12px;background:var(--cw-bg)}.cw-bubble h1,.cw-bubble h2,.cw-bubble h3,.cw-bubble h4,.cw-bubble h5,.cw-bubble h6{margin:12px 0 8px;font-size:1.15em;line-height:1.3}.cw-bubble h1:first-child,.cw-bubble h2:first-child,.cw-bubble h3:first-child,.cw-bubble h4:first-child,.cw-bubble h5:first-child,.cw-bubble h6:first-child{margin-top:0}.cw-bubble p{margin:0 0 10px}.cw-bubble p:last-child{margin-bottom:0}.cw-bubble a{color:inherit;text-decoration:underline;text-underline-offset:3px}.cw-code-wrapper{position:relative;margin:10px 0}.cw-code-wrapper pre{margin:0!important}.cw-copy-btn{position:absolute;top:8px;right:8px;background:#0006;border:none;border-radius:4px;color:#fff;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s,background .2s;z-index:2}.cw-code-wrapper:hover .cw-copy-btn{opacity:1}.cw-copy-btn:hover{background:#000000b3}.cw-bubble pre{padding:12px 36px 12px 12px;border-radius:8px;overflow-x:auto}.cw-msg-assistant .cw-bubble pre{background:#0000000a;border:1px solid rgba(0,0,0,.06)}.cw-msg-user .cw-bubble pre{background:#00000040}.cw-bubble code{font-family:monospace;padding:3px 5px;border-radius:4px;font-size:.9em}.cw-msg-assistant .cw-bubble code{background:#0000000f;color:var(--cw-ink)}.cw-msg-user .cw-bubble code{background:#ffffff26;color:#fff}.cw-bubble pre code{background:transparent!important;padding:0;color:inherit!important}.cw-bubble ul,.cw-bubble ol{margin:8px 0;padding-left:20px}.cw-bubble li{margin-bottom:4px}.cw-bubble table{border-collapse:collapse;width:100%;margin:10px 0;font-size:.9em;overflow-x:auto}.cw-bubble th,.cw-bubble td{padding:8px 10px;text-align:left}.cw-msg-assistant .cw-bubble th,.cw-msg-assistant .cw-bubble td{border:1px solid rgba(0,0,0,.1)}.cw-msg-assistant .cw-bubble th{background:#0000000a;font-weight:600}.cw-msg-user .cw-bubble th,.cw-msg-user .cw-bubble td{border:1px solid rgba(255,255,255,.2)}.cw-msg-user .cw-bubble th{background:#ffffff1a;font-weight:600}.cw-back{background:transparent;border:none;color:inherit;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .15s ease}.cw-back:hover{background:#ffffff1a}.cw-session-list{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--cw-surface)}.cw-session-list-header{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--cw-border)}.cw-session-list-header h3{margin:0;font-size:14px;font-weight:600;color:var(--cw-text)}.cw-new-chat-btn{display:flex;align-items:center;gap:4px;background:var(--cw-accent);color:#fff;border:none;padding:6px 12px;border-radius:12px;font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s ease}.cw-new-chat-btn:hover{opacity:.9}.cw-sessions{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.cw-empty-sessions{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--cw-text-muted);gap:12px;font-size:14px}.cw-session-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--cw-bg);border:1px solid var(--cw-border);border-radius:12px;cursor:pointer;text-align:left;transition:border-color .15s ease,box-shadow .15s ease}.cw-session-item:hover{border-color:var(--cw-accent);box-shadow:0 2px 8px #0000000a}.cw-session-icon{color:var(--cw-text-muted);flex:none}.cw-session-details{flex:1;min-width:0}.cw-session-title{font-size:14px;font-weight:500;color:var(--cw-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.cw-session-date{font-size:12px;color:var(--cw-text-muted)}.cw-limit-list{background:transparent;padding-bottom:16px}.cw-typing-dots span:nth-child(2){animation-delay:.15s}.cw-typing-dots span:nth-child(3){animation-delay:.3s}@keyframes cw-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.cw-composer{flex:none;display:flex;align-items:flex-end;gap:8px;padding:12px;background:var(--cw-bg);border-top:1px solid var(--cw-border)}.cw-input{flex:1;resize:none;border:1px solid var(--cw-border);border-radius:14px;padding:10px 12px;font-family:inherit;font-size:13.5px;color:var(--cw-text);max-height:120px;min-height:40px;background:var(--cw-bg)}.cw-input:focus-visible,.cw-input:focus{outline:none;border-color:var(--cw-accent)}.cw-input::placeholder{color:var(--cw-text-muted)}.cw-send{flex:none;width:40px;height:40px;border-radius:12px;border:none;background:var(--cw-ink);color:var(--cw-text-on-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,opacity .15s ease}.cw-send:hover:not(:disabled){background:var(--cw-ink-soft)}.cw-send:disabled{opacity:.4;cursor:not-allowed}.cw-send:focus-visible{outline:2px solid var(--cw-accent);outline-offset:2px}@media(max-width:480px){.cw-widget{inset:auto 16px 16px auto}.cw-panel{position:fixed;inset:0;width:100vw;height:100dvh;max-height:100dvh;border-radius:0}}@media(prefers-reduced-motion:reduce){.cw-launcher:after{animation:none}.cw-panel,.cw-launcher,.cw-launcher-icon,.cw-msg,.cw-typing-dots span{animation:none!important;transition-duration:.01ms!important}}.page-enter{opacity:0;transform:translateY(10px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .3s}
