*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-accent:#6366f10d;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-primary:#6366f1;--accent-secondary:#06b6d4;--border-color:#6366f126;--glass-bg:#ffffffb3;--glass-border:#ffffff4d}body[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-accent:#141414;--text-primary:#f5f5f5;--text-secondary:#d4d4d4;--text-muted:#a3a3a3;--accent-primary:#f5f5f5;--accent-secondary:#e5e5e5;--border-color:#f5f5f526;--glass-bg:#0a0a0ab3;--glass-border:#f5f5f51a}body{background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;transition:background .3s,color .3s;overflow-x:hidden}.bg-pattern-dots{z-index:0;opacity:.3;pointer-events:none;background-image:radial-gradient(circle,var(--border-color)2px,transparent 2px);background-size:50px 50px;width:100%;height:100%;transition:opacity .3s;position:fixed;top:0;left:0}.navbar{z-index:1000;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);transition:all .3s;position:fixed;top:0;left:0;right:0}.nav-container{justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;padding:1rem 2rem;display:flex}.logo{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;text-decoration:none}body[data-theme=dark] .logo{background:linear-gradient(135deg,var(--text-primary),var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.back-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.back-btn:hover{background:var(--bg-accent);transform:translate(-5px)}body[data-theme=dark] .back-btn:hover{border-color:var(--text-primary)}.project-hero{background:linear-gradient(135deg,#6366f10d 0%,#06b6d40d 100%);padding:8rem 2rem 4rem;position:relative;overflow:hidden}body[data-theme=dark] .project-hero{background:linear-gradient(135deg,#0a0a0af2 0%,#141414f2 100%)}.hero-content{z-index:1;max-width:1280px;margin:0 auto;position:relative}.breadcrumb{color:var(--text-muted);align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.875rem;display:flex}.breadcrumb a{color:var(--text-muted);text-decoration:none;transition:color .3s}.breadcrumb a:hover{color:var(--accent-primary)}body[data-theme=dark] .breadcrumb a:hover{color:var(--text-primary)}h1{letter-spacing:-1px;margin-bottom:1.5rem;font-size:3.5rem;font-weight:800}.project-subtitle{color:var(--text-secondary);max-width:800px;margin-bottom:2rem;font-size:1.5rem}.project-meta{flex-wrap:wrap;gap:2rem;margin-bottom:3rem;display:flex}.meta-item{flex-direction:column;gap:.25rem;display:flex}.meta-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}.meta-value{color:var(--text-primary);font-size:1.125rem;font-weight:600}.project-tags{flex-wrap:wrap;gap:.75rem;margin-bottom:2rem;display:flex}.tag{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500}body[data-theme=dark] .tag:hover{border-color:var(--text-primary);color:var(--text-primary)}.action-buttons{flex-wrap:wrap;gap:1rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 15px #6366f14d}body[data-theme=dark] .btn-primary{background:var(--text-primary);color:var(--bg-primary);box-shadow:0 4px 15px #f5f5f533}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #6366f166}body[data-theme=dark] .btn-primary:hover{box-shadow:0 6px 25px #f5f5f54d}.btn-secondary{color:var(--text-primary);border:2px solid var(--border-color);background:0 0}.btn-secondary:hover{background:var(--bg-accent)}body[data-theme=dark] .btn-secondary:hover{border-color:var(--text-primary)}.container{z-index:1;max-width:1280px;margin:0 auto;padding:4rem 2rem;position:relative}.image-gallery{margin-bottom:4rem}.main-image{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:16px;width:100%;height:600px;margin-bottom:1.5rem;transition:all .3s;overflow:hidden}.main-image img{object-fit:cover;width:100%;height:100%}body[data-theme=dark] .main-image{box-shadow:0 10px 30px #0000004d}.thumbnail-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.thumbnail{border:2px solid var(--border-color);cursor:pointer;background:var(--bg-secondary);border-radius:12px;height:150px;transition:all .3s;overflow:hidden}.thumbnail:hover{border-color:var(--accent-primary);transform:translateY(-5px)}body[data-theme=dark] .thumbnail:hover{border-color:var(--text-primary);box-shadow:0 5px 15px #0000004d}.thumbnail img{object-fit:cover;width:100%;height:100%}.content-grid{grid-template-columns:2fr 1fr;gap:4rem;margin-bottom:4rem;display:grid}.content-section{margin-bottom:3rem}.content-section h2{margin-bottom:1.5rem;font-size:2rem;font-weight:700}.content-section p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.8}.content-section ul{padding:0;list-style:none}.content-section ul li{color:var(--text-secondary);margin-bottom:.75rem;padding-left:1.5rem;position:relative}.content-section ul li:before{content:"";background:var(--accent-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:.5rem;left:0}body[data-theme=dark] .content-section ul li:before{background:var(--text-primary)}.sidebar{height:fit-content;position:sticky;top:100px}.info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;margin-bottom:2rem;padding:2rem;transition:all .3s}body[data-theme=dark] .info-card:hover{border-color:var(--text-primary);box-shadow:0 10px 30px #0000004d}.info-card h3{margin-bottom:1.5rem;font-size:1.25rem;font-weight:700}.info-item{border-bottom:1px solid var(--border-color);justify-content:space-between;padding:.75rem 0;display:flex}.info-item:last-child{border-bottom:none}.info-label{color:var(--text-muted);font-size:.875rem}.info-value{color:var(--text-primary);font-weight:600}.tech-stack{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tech-tag{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:6px;padding:.375rem .75rem;font-size:.8rem;font-weight:500;transition:all .3s}body[data-theme=dark] .tech-tag:hover{border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}.stats-grid{grid-template-columns:repeat(3,1fr);gap:2rem;margin:4rem 0;display:grid}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;border-radius:16px;padding:2rem;transition:all .3s}.stat-card:hover{border-color:var(--accent-primary);transform:translateY(-5px)}body[data-theme=dark] .stat-card:hover{border-color:var(--text-primary);box-shadow:0 10px 30px #0000004d}.stat-number{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}body[data-theme=dark] .stat-number{background:linear-gradient(135deg,var(--text-primary),var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}@media (max-width:968px){h1{font-size:2.5rem}.content-grid{grid-template-columns:1fr;gap:3rem}.sidebar{position:static}.thumbnail-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}}@media (max-width:640px){.project-hero{padding:6rem 1rem 3rem}h1{font-size:2rem}.project-subtitle{font-size:1.125rem}.main-image{height:300px}.action-buttons{flex-direction:column}.btn{justify-content:center;width:100%}.container{padding:3rem 1rem}}
