@import url(https://fonts.googleapis.com/css2?family=Jost&family=Quicksand&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.parking-app{margin:0}.parking-app .picture{max-width:300px}.parking-app .picture .carousel-inner{border-radius:10px}.parking-app .installation{margin:20px 0}.parking-app .installation .release{background-color:#0f3460;border-radius:5px;margin:20px 0;padding:6px}.parking-app .installation .release a{color:hsla(0,0%,100%,.384);text-decoration:none}.parking-app .installation .release .lastest{color:#fff}.parking-app .installation .release p{color:hsla(0,0%,100%,.384);font-size:15px;margin:auto}.parking-app .installation .release p .lastest{color:#fff}.dark,.light{--accent:#009380;--surface:#0f346059;--surface-strong:#0f3460;--border:#ffffff1f;--text:#fff;--muted:#ffffffad;--chip-bg:#0093802e}.light{--surface:#dceef1;--surface-strong:#bfdfe6;--border:#16213e24;--text:#16213e;--muted:#16213eb3;--chip-bg:#00938024}body,html{background-color:#16213e;color:#fff;font-family:Quicksand,sans-serif;margin:0}.light{background-color:#ebf5f7;color:#16213e}.light .sidebar-bg{background-color:#c7e3e8!important;color:#16213e}.light .sidebar-bg .sidebar-text{color:#16213e!important}.light .sidebar-bg .active{background-color:#c7e3e8!important;font-weight:600}.light .footer-left,.light .footer-right{color:#16213e}.light .login-card input{border:1px solid #16213e;color:#16213e}.light .word-card-btn{background-color:#a2d1da!important;color:#16213e}.main-layout{display:flex;min-height:100vh}.page{max-width:1180px;padding-bottom:3rem!important}.page-title{font-size:clamp(28px,5vw,44px);font-weight:700;letter-spacing:1px}.page-lead{color:var(--muted);max-width:60ch}.section-title{font-size:clamp(20px,3vw,28px);letter-spacing:1px}.card-heading,.section-link{color:var(--accent);font-weight:600}.card-heading{font-family:Jost,sans-serif;font-size:1.05rem}.text-muted-soft{color:var(--muted)}.sidebar-bg{background-color:#1a1a2e!important}.sidebar-bg .sidebar-text{color:#fff!important}.sidebar-section-label{font-size:.72rem;letter-spacing:2px;opacity:.6;text-transform:uppercase}.footer-left,.footer-right{background-color:#0000;bottom:0;color:#fff;font-size:12px;padding:0 10px;position:fixed}.footer-right{font-style:italic;right:0}.theme-toggle{background:#0000;border:0;cursor:pointer;font-size:20px;left:0;line-height:1;padding-bottom:6px}.hero-eyebrow{color:var(--muted);font-size:.8rem;letter-spacing:2px;text-transform:uppercase}.hero-name{font-size:clamp(32px,6vw,56px);font-weight:700;letter-spacing:1px}.hero-title{color:var(--accent);font-size:clamp(18px,2.4vw,24px);font-weight:600;margin:0}.hero-tagline{color:var(--muted);font-size:1.05rem;max-width:52ch}.fact-pill{align-items:center;background-color:var(--surface);border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:.9rem;padding:.35rem .85rem}.fact-pill-accent{border-color:var(--accent);color:var(--accent);font-weight:600}.cta-btn{align-items:center;background-color:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);display:inline-flex;font-weight:600;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s ease,transform .2s ease}.cta-btn:hover{background-color:var(--surface-strong);color:var(--text);transform:translateY(-1px)}.cta-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.cta-btn-primary{background-color:var(--accent);border-color:var(--accent);color:#fff}.cta-btn-primary:hover{background-color:#007465;color:#fff}.admin-item,.callout,.closing-card,.content-card,.highlight-card,.project-card,.timeline-item{background-color:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.1rem}.highlight-value{color:var(--accent);font-family:Jost,sans-serif;font-size:1.25rem;font-weight:700}.highlight-label{color:var(--muted);font-size:.88rem}.callout{border-left:3px solid var(--accent)}.project-card{transition:box-shadow .2s ease,transform .2s ease}.project-card:hover{box-shadow:0 .5rem 1rem #00000040;transform:translateY(-2px)}.project-card-media img{aspect-ratio:16/10;object-fit:cover}.project-card-title{font-size:1.15rem;font-weight:600}.project-card-summary{color:var(--muted);font-size:.92rem}.project-card-impact{color:var(--accent);font-size:.92rem}.tech-chip{background-color:var(--chip-bg);border-radius:999px;font-size:.78rem;padding:.15rem .6rem;white-space:nowrap}.card-link{align-items:center;color:var(--accent);display:inline-flex;font-size:.88rem;font-weight:600;text-decoration:none}.card-link:hover{color:var(--accent);text-decoration:underline}.carousel-arrow{color:#16213e}.detail-shell{max-width:1180px;padding:1rem 1rem 3rem}.back-link{align-items:center;color:var(--accent);display:inline-flex;font-weight:600}.timeline{margin:0;padding:0}.timeline-item{margin-bottom:1rem}.timeline-role{color:var(--accent);font-size:1.2rem;font-weight:600}.timeline-dates{background-color:var(--surface-strong);border-radius:999px;font-size:.82rem;padding:.15rem .7rem;white-space:nowrap}.timeline-meta{color:var(--muted);font-size:.95rem}.timeline-bullets{margin:0;padding-left:1.1rem}.timeline-bullets li{margin-bottom:.35rem}.timeline-bullets li::marker{color:var(--accent)}.about-paragraph{line-height:1.7;max-width:68ch}.skill-row{border-bottom:1px solid var(--border);font-size:.95rem;padding:.3rem 0}.skill-row:last-child{border-bottom:0}.skill-icon{height:20px;object-fit:contain;width:20px}.skill-detail{color:var(--muted);font-size:.82rem;white-space:nowrap}.admin-bar{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding-bottom:1rem}.admin-signed-in{color:var(--muted);font-size:.85rem}.admin-dirty{color:var(--accent);font-weight:600}.admin-nav{display:flex;flex-direction:column;gap:.25rem;position:-webkit-sticky;position:sticky;top:1rem}.admin-nav-item{background:#0000;border:0;border-radius:8px;color:var(--text);cursor:pointer;font-weight:600;padding:.5rem .75rem;text-align:left}.admin-nav-item:hover{background-color:var(--surface)}.admin-nav-item.active{background-color:var(--accent)!important;color:#fff!important}.admin-field{margin-bottom:.85rem}.admin-field-inline{align-items:center;display:flex;gap:.5rem}.admin-field-inline .admin-label{margin:0}.admin-label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.25rem}.admin-hint{color:var(--muted);display:block;font-size:.78rem;font-weight:400}.admin-hint-block{color:var(--muted);font-size:.88rem;margin-bottom:1rem}.admin-input{background-color:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:inherit;font-size:.92rem;padding:.45rem .6rem;width:100%}.admin-input:focus{outline:2px solid var(--accent);outline-offset:1px}.admin-item{margin-bottom:.85rem}.admin-item-head{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.admin-item-title{color:var(--accent);font-weight:600}.admin-btn,.admin-item-actions button{background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;margin-left:.25rem;padding:.25rem .5rem}.admin-btn:disabled,.admin-item-actions button:disabled{cursor:not-allowed;opacity:.35}.admin-btn{align-items:center;display:inline-flex;font-weight:600;margin:0;padding:.45rem .9rem}.admin-danger:hover{border-color:#e05260;color:#e05260}.admin-status{border-radius:6px;font-size:.9rem;margin-top:1rem;padding:.5rem .75rem}.admin-status-ok{background-color:#0093802e;color:var(--accent)}.admin-status-error{background-color:#e0526029;color:#e05260}.admin-login{max-width:380px}.ff-jose,.ff-jost,.font-big{font-family:Jost,sans-serif}.font-big{font-size:clamp(26px,6vw,44px);font-weight:bolder}.font-big,.ls-2{letter-spacing:2px}.text-primary-color{color:#009380}.active{background-color:#1a1a2e!important;color:#009380!important;font-weight:600}.word-card-btn{background-color:#0f3460;color:#fff}.portfolio-link:hover{background-color:#009380;transition:background-color .3s linear}.content-card:hover{box-shadow:0 .5rem 1rem #00000040}.comma-card{align-items:center;gap:.75rem;margin-bottom:1rem}.comma-card img{border-radius:.2rem;display:block;max-width:75%}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideInTop{0%{opacity:0;transform:translateY(-10%)}to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slideInLeft 1s ease-in-out 1}.slide-in-top{animation:slideInTop .6s ease-in-out 1}@media(prefers-reduced-motion:reduce){.slide-in-left,.slide-in-top{animation:none}}@media(max-width:575.98px){.sidebar-bg{padding-bottom:3rem}.sidebar-bg .fs-5{font-size:1.05rem}.sidebar-bg .nav-link{padding-bottom:.35rem;padding-top:.35rem}.footer-left{font-size:16px}}.login-card{background-color:#0000;max-width:400px;width:100%}.login-card h2{font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.login-card .form-group{margin-bottom:1rem}.login-card label{display:block;margin-bottom:.5rem}.login-card input{background-color:#0000;border:1px solid #fff;border-radius:.5rem;box-sizing:border-box;color:#fff;padding:.5rem;width:100%}.login-card button{background-color:#009380;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;margin-bottom:20px;padding:.75rem;width:100%}.login-card button:hover{background-color:#00c6ac}.login-card .text-center{text-align:center}.login-card .text-sm{color:#6b7280;font-size:.875rem}.login-card .text-sm a{color:#2563eb;text-decoration:none}.login-card .text-sm a:hover{text-decoration:underline}