@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--burgundy-900:#3d0e14;--burgundy-800:#5c151e;--burgundy-700:#7a1f2a;--burgundy-600:#9e2a3b;--burgundy-500:#b73d4f;--burgundy-400:#d46a78;--cream:#f7f2ee;--cream-dark:#efe6de;--gold:#c9a66b;--shadow:#3d0e1440}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 10% 20%, #9e2a3b66 0%, transparent 25%), radial-gradient(circle at 90% 80%, #b73d4f40 0%, transparent 30%), linear-gradient(135deg, var(--burgundy-900) 0%, var(--burgundy-800) 50%, var(--burgundy-700) 100%);color:var(--cream);min-height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,#f7f2ee0a 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0}#root{z-index:1;position:relative}.app{max-width:980px;margin:0 auto;padding:48px 20px 64px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate{animation:.7s cubic-bezier(.22,1,.36,1) both fadeInUp}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.card{color:var(--burgundy-900);box-shadow:0 12px 32px var(--shadow), inset 0 1px 0 #fff9;opacity:0;background:#f7f2eef2;border-radius:28px;padding:32px;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s;animation:.7s cubic-bezier(.22,1,.36,1) forwards fadeInUp}.card:hover{transform:translateY(-6px);box-shadow:0 20px 48px #3d0e1459,inset 0 1px #ffffffb3}.card-title{letter-spacing:.12em;text-transform:uppercase;color:var(--burgundy-600);align-items:center;gap:10px;margin-bottom:20px;font-size:.85rem;font-weight:700;display:flex}.card-title:after{content:"";background:linear-gradient(90deg, var(--burgundy-400), transparent);flex:1;height:1px}.hero{text-align:center;margin-bottom:32px}.hero-name{letter-spacing:-.02em;margin-bottom:14px;font-size:clamp(2.2rem,6vw,3.6rem);font-weight:700;line-height:1.1}.hero-subtitle{color:var(--cream-dark);margin-bottom:24px;font-size:clamp(1rem,2.5vw,1.25rem);font-weight:500}.hero-contacts{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;font-size:1rem;display:flex}.hero-contact-link{color:var(--cream);border-bottom:1px solid #f7f2ee4d;align-items:center;gap:8px;text-decoration:none;transition:border-color .3s,color .3s;display:inline-flex}.hero-contact-link:hover{color:var(--gold);border-color:var(--gold)}.hero-contact-divider{color:#f7f2ee80}.grid-2{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:24px;margin-bottom:24px;display:grid}.grid-2>.section,.grid-2>.right-column{height:100%}.right-column{flex-direction:column;justify-content:space-between;gap:24px;display:flex}.right-column>.section{margin-bottom:0}.section{margin-bottom:24px}.skills-list{flex-wrap:wrap;gap:10px;display:flex}.skill-tag{background:linear-gradient(135deg, var(--burgundy-700), var(--burgundy-600));color:var(--cream);border-radius:999px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:transform .25s,box-shadow .25s;box-shadow:0 4px 12px #3d0e1433}.skill-tag:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 8px 18px #3d0e144d}.experience-card{flex-direction:column;height:100%;display:flex}.experience-list{flex-direction:column;flex:1;justify-content:space-between;gap:24px;display:flex}.job-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.job-company{color:var(--burgundy-800);font-size:1.2rem;font-weight:700}.job-role{color:var(--burgundy-600);margin-bottom:10px;font-weight:600}.job-period{color:var(--gold);background:var(--burgundy-900);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:600}.job-desc{color:var(--burgundy-900);opacity:.92;font-size:.95rem}.job-list{margin-top:12px;padding-left:20px}.job-list li{margin-bottom:8px}.education-item{margin-bottom:18px}.education-item:last-child{margin-bottom:0}.education-school{color:var(--burgundy-800);font-size:1.05rem;font-weight:700}.education-detail{color:var(--burgundy-700);font-size:.95rem}.preview-section{text-align:center}.card-flip-container{perspective:1200px;aspect-ratio:1974/1280;background:var(--burgundy-800);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:20px;outline:none;width:100%;max-width:520px;margin:12px auto 0;position:relative}.card-flipper{transform-style:preserve-3d;-webkit-transform-style:preserve-3d;will-change:transform;transition:transform .8s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.card-flip-container:hover .card-flipper,.card-flip-container:focus-within .card-flipper,.card-flip-container.flipped .card-flipper{transform:rotateY(180deg)}.flip-hint{color:var(--burgundy-600);margin-top:-8px;margin-bottom:4px;font-size:.85rem;display:none}.card-face{backface-visibility:hidden;border-radius:20px;position:absolute;inset:0;overflow:hidden;transform:translateZ(0);box-shadow:0 16px 40px #3d0e1459}.card-face-back{transform:rotateY(180deg)}.card-face-img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.footer{text-align:center;margin-top:24px}.footer-card{flex-direction:column;align-items:center;gap:16px;display:flex}.qr-code{border-radius:16px;width:180px;height:180px;transition:transform .3s;box-shadow:0 8px 24px #3d0e1440}.qr-code:hover{transform:scale(1.04)}.will-image{object-fit:cover;border-radius:16px;width:180px;height:180px;transition:transform .3s,box-shadow .3s;box-shadow:0 8px 24px #3d0e1440}.will-image:hover{transform:scale(1.04);box-shadow:0 12px 32px #3d0e1459}.snopy-image{background:var(--cream);border-radius:20px;width:220px;max-width:100%;padding:16px;transition:transform .3s,box-shadow .3s;box-shadow:0 8px 24px #3d0e1440}.snopy-image:hover{transform:scale(1.03);box-shadow:0 12px 32px #3d0e1459}.hero-download-btn{margin-top:24px}.download-btn{background:linear-gradient(135deg, var(--burgundy-600), var(--burgundy-500));color:var(--cream);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;padding:14px 28px;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .25s,box-shadow .25s;display:inline-flex;box-shadow:0 8px 24px #3d0e1459}.download-btn:hover{transform:translateY(-3px);box-shadow:0 12px 32px #3d0e1473}.footer-note{color:var(--cream-dark);margin-top:8px;font-size:.9rem}.soft-skills-list,.hobbies-list{flex-direction:column;gap:16px;list-style:none;display:flex}.soft-skill-item,.hobby-item{align-items:flex-start;gap:14px;display:flex}.soft-skill-icon,.hobby-icon{width:26px;height:26px;color:var(--burgundy-600);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:1.3rem;font-style:normal;line-height:1;display:inline-flex}.hero-contact-link .nf,.download-btn .nf{font-style:normal;line-height:1}.soft-skill-title,.hobby-title{color:var(--burgundy-800);margin-bottom:4px;font-size:1rem;font-weight:700}.soft-skill-desc,.hobby-desc{color:var(--burgundy-700);font-size:.9rem;line-height:1.5}.about-text{color:var(--burgundy-900);font-size:1.05rem;line-height:1.7}@media (width<=640px){.app{padding:28px 16px 40px}.card{border-radius:20px;padding:22px}.card-title{margin-bottom:16px;font-size:.78rem}.hero-subtitle{margin-bottom:16px}.hero-contacts{flex-direction:column;gap:10px}.hero-contact-divider{display:none}.about-text{font-size:1rem}.skill-tag{padding:6px 12px;font-size:.85rem}.job-header{flex-direction:column}.job-company{font-size:1.1rem}.grid-2{grid-template-columns:1fr}.grid-2>.section,.grid-2>.right-column{height:auto}.right-column,.experience-list{justify-content:flex-start}.flip-hint{display:block}.card-flip-container{max-width:100%;margin-top:8px}.card-face{border-radius:14px}.snopy-image{width:160px;padding:12px}.download-btn{padding:12px 22px;font-size:.95rem}}.admin-page{background:radial-gradient(circle at 10% 20%, #9e2a3b66 0%, transparent 25%), radial-gradient(circle at 90% 80%, #b73d4f40 0%, transparent 30%), linear-gradient(135deg, var(--burgundy-900) 0%, var(--burgundy-800) 50%, var(--burgundy-700) 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative}.admin-page:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,#f7f2ee0a 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0}.admin-card{z-index:1;width:100%;max-width:460px;color:var(--burgundy-900);background:#f7f2eef5;border-radius:28px;padding:40px;position:relative;box-shadow:0 24px 56px #3d0e1466}.admin-dashboard{max-width:560px}.admin-title{color:var(--burgundy-800);margin-bottom:8px;font-size:1.8rem;font-weight:700}.admin-subtitle{color:var(--burgundy-600);margin-bottom:28px;font-size:.95rem}.admin-form{flex-direction:column;gap:18px;display:flex}.admin-field{flex-direction:column;gap:6px;display:flex}.admin-field label{color:var(--burgundy-700);font-size:.85rem;font-weight:600}.admin-field input{border:2px solid var(--cream-dark);background:var(--cream);color:var(--burgundy-900);border-radius:12px;padding:12px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s}.admin-field input:focus{border-color:var(--burgundy-600);outline:none}.admin-error{color:var(--burgundy-600);text-align:center;font-size:.9rem}.admin-btn{background:linear-gradient(135deg, var(--burgundy-600), var(--burgundy-500));color:var(--cream);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex}.admin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #3d0e144d}.admin-btn:disabled{opacity:.7;cursor:wait}.admin-btn-outline{border:2px solid var(--burgundy-600);color:var(--burgundy-600);background:0 0}.admin-btn-outline:hover:not(:disabled){background:var(--burgundy-600);color:var(--cream)}.admin-btn-secondary{background:linear-gradient(135deg, var(--burgundy-700), var(--burgundy-600))}.admin-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:28px;display:grid}.admin-stat{background:linear-gradient(135deg, var(--burgundy-700), var(--burgundy-600));color:var(--cream);text-align:center;border-radius:22px;padding:28px 20px;box-shadow:0 12px 32px #3d0e1440}.admin-stat-icon{margin-bottom:12px;font-size:1.8rem;display:block}.admin-stat-value{margin-bottom:8px;font-size:2.6rem;font-weight:700;line-height:1}.admin-stat-label{opacity:.9;font-size:.9rem}@media (width<=520px){.admin-card{border-radius:22px;padding:28px 22px}.admin-title{font-size:1.5rem}.admin-stats{grid-template-columns:1fr}.admin-stat-value{font-size:2.2rem}}
