@charset "UTF-8";.about{background:linear-gradient(180deg,#13133a,#0c0c1d);height:100vh;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center}@media(max-width:738px){.about{align-items:flex-start;padding:clamp(76px,11vh,110px) 0 clamp(4px,1vh,14px)}}.about .content{text-align:center;max-width:min(80%,1366px);color:#fff}@media(max-width:738px){.about .content{margin-top:0;max-width:92%;width:100%}}.about .content h1{margin-bottom:12px;font-size:30px}@media(max-width:738px){.about .content h1{margin-bottom:4px;font-size:18px}}.about .content p{margin-bottom:30px;text-align:center}@media(max-width:738px){.about .content p{font-size:12px;margin-bottom:12px;line-height:1.4}}.about .content .bio{display:flex;align-items:center;gap:24px;text-align:left;margin:0 auto 16px;max-width:800px}@media(max-width:738px){.about .content .bio{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"photo name" "photo title" "photo meta" "blurb blurb";column-gap:12px;row-gap:2px;align-items:center;text-align:left;margin:0 auto clamp(3px,1vh,12px);max-width:100%}}.about .content .bio .bio-photo{flex:0 0 auto;width:170px;height:170px;border-radius:46px;overflow:hidden;border:1px solid rgba(255,255,255,.06);box-shadow:0 4px 12px #0000001f}@media(max-width:738px){.about .content .bio .bio-photo{grid-area:photo;width:clamp(76px,13vh,130px);height:clamp(76px,13vh,130px);border-radius:clamp(22px,3.5vh,36px);align-self:center}}.about .content .bio .bio-photo img{width:100%;height:100%;object-fit:cover}.about .content .bio .bio-info{flex:1 1 auto;min-width:0}@media(max-width:738px){.about .content .bio .bio-info{display:contents}}.about .content .bio .bio-info .bio-name{font-size:28px;font-weight:700;margin:0 0 4px}@media(max-width:738px){.about .content .bio .bio-info .bio-name{grid-area:name;font-size:clamp(15px,2.4vh,24px);margin:0;align-self:end;line-height:1.1}}.about .content .bio .bio-info .bio-title{font-size:18px;font-weight:500;color:#b0b0d0;margin:0 0 12px}@media(max-width:738px){.about .content .bio .bio-info .bio-title{grid-area:title;font-size:clamp(11px,1.8vh,18px);margin:0;align-self:center;line-height:1.2}}.about .content .bio .bio-info .bio-meta{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:8px 18px}@media(max-width:738px){.about .content .bio .bio-info .bio-meta{grid-area:meta;justify-content:flex-start;gap:2px 10px;margin:2px 0 0;align-self:start}}.about .content .bio .bio-info .bio-meta li{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#d0d0e0}@media(max-width:738px){.about .content .bio .bio-info .bio-meta li{font-size:clamp(9px,1.5vh,14px);gap:4px}}.about .content .bio .bio-info .bio-meta li svg{color:#8a8aff}.about .content .bio .bio-info .bio-blurb{margin:0;font-size:15px;line-height:1.5;color:#e0e0f0;text-align:left}@media(max-width:738px){.about .content .bio .bio-info .bio-blurb{grid-area:blurb;font-size:clamp(10px,1.6vh,16px);line-height:1.35;margin-top:clamp(3px,.8vh,10px);text-align:left}}.about .content .technologies{margin-top:24px;justify-content:center;text-align:center}@media(max-width:738px){.about .content .technologies{font-size:20px;margin-top:clamp(2px,1vh,12px)}}@media(max-width:738px){.about .content .technologies h1{margin-bottom:clamp(2px,.8vh,10px);font-size:clamp(15px,2.6vh,26px)}}.about .content .technologies .groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;gap:16px;max-width:1100px;margin:0 auto}@media(max-width:1024px){.about .content .technologies .groups{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:12px}}@media(max-width:738px){.about .content .technologies .groups{display:grid;grid-template-columns:1fr;flex-wrap:nowrap;justify-content:center;gap:clamp(3px,.8vh,10px)}}.about .content .technologies .groups .category{display:flex;width:100%;align-items:center;justify-content:center;align-items:flex-start;padding:12px 14px;margin-bottom:0;background-color:#69696933;border-radius:18px;border:1px solid #929292}@media(max-width:1024px){.about .content .technologies .groups .category{padding:10px}}@media(max-width:738px){.about .content .technologies .groups .category{flex-direction:column;padding:clamp(3px,.7vh,10px) clamp(8px,2vw,14px);margin-bottom:0;background-color:#ffffff0a;border-radius:10px;border:1px solid rgba(146,146,146,.3);width:100%;min-width:0;max-width:none}}.about .content .technologies .groups .category .category-name{position:sticky;margin-top:4px;margin-bottom:6px;text-align:center;font-size:20px;font-weight:700;align-self:flex-start;width:100%}@media(max-width:738px){.about .content .technologies .groups .category .category-name{width:100%;font-size:clamp(10px,1.5vh,14px);margin:0 0 clamp(2px,.6vh,8px) 0;font-weight:600;white-space:normal;align-self:center;text-transform:uppercase;letter-spacing:.5px;color:#b0b0d0;text-align:center;line-height:1.1}}.about .content .technologies .groups .category h2{font-size:18px;margin-bottom:10px}.about .content .technologies .groups .category .tech-list{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:100%}@media(max-width:738px){.about .content .technologies .groups .category .tech-list{align-items:center;gap:clamp(2px,.5vh,6px)}}.about .content .technologies .groups .category .tech-item{display:flex;flex-direction:row;align-items:center;padding:6px 10px;background-color:#69696900;border-radius:999px;border:1px solid #929292;margin-bottom:4px;margin-left:4px}@media(max-width:738px){.about .content .technologies .groups .category .tech-item{padding:clamp(2px,.5vh,6px) clamp(6px,1.6vw,12px);margin:0;max-width:100%;background-color:#ffffff14;border-radius:999px}}.about .content .technologies .groups .category .tech-item .tech-logo{width:20px;height:20px;object-fit:contain}@media(max-width:738px){.about .content .technologies .groups .category .tech-item .tech-logo{width:clamp(10px,1.7vh,18px);height:clamp(10px,1.7vh,18px);flex-shrink:0}}.about .content .technologies .groups .category .tech-item .tech-name{margin-left:6px;font-size:14px}@media(max-width:738px){.about .content .technologies .groups .category .tech-item .tech-name{margin-left:clamp(3px,.8vw,7px);font-size:clamp(10px,1.5vh,14px);line-height:1.15}}.about .slidingTextContainer{position:absolute;opacity:.8;white-space:nowrap;color:#ffffff09;width:50%;rotate:-25deg;font-weight:700;-webkit-user-select:none;user-select:none}@media(max-width:738px){.about .slidingTextContainer{opacity:1}}.about .slidingTextContainer .top{font-size:20vh;margin-left:500px;bottom:0}.about .slidingTextContainer .bottom{font-size:50vh;bottom:100px}@media(max-width:738px){.recaptcha-container{transform:scale(.65);transform-origin:left}}.contact{height:100%;overflow:hidden;background:linear-gradient(180deg,#13133a,#0c0c1d)}@media(max-width:738px){.contact{height:120vh}}.contact .content{margin:auto;display:flex;align-items:center;height:100vh;max-width:min(80%,1366px);gap:50px}@media(max-width:738px){.contact .content{width:100%;padding:10px;flex-direction:column}}.contact .content .social{margin-top:15px;margin-left:15px;display:flex;gap:25px}.contact .content .social img{width:25px;height:25px}.contact .content .textContainer{flex:1;display:flex;flex-direction:column;gap:40px;margin-top:45px}@media(max-width:738px){.contact .content .textContainer{gap:10px;text-align:center;align-items:center}}.contact .content .textContainer h1{font-size:100px;line-height:88px}@media(max-width:738px){.contact .content .textContainer h1{font-size:36px}}.contact .content .textContainer span{font-weight:300}.contact .content .formContainer{flex:1;margin-top:70px;align-items:center;position:relative}@media(max-width:738px){.contact .content .formContainer{margin-top:-50px;padding:50px;width:100%}}.contact .content .formContainer .phoneSvg{stroke:orange;position:absolute;margin-top:40px;animation:zindexChange 5s forwards}@media(max-width:738px){.contact .content .formContainer .phoneSvg svg{margin-top:0lvb;width:300px;height:500px}}@keyframes zindexChange{0%{z-index:10}to{z-index:-1}}.contact .content .formContainer form{display:flex;flex-direction:column;background-color:transparent;gap:20px}.contact .content .formContainer form input,.contact .content .formContainer form textarea{padding:20px;background-color:transparent;border:1px solid white;color:#fff;border-radius:5px}@media(max-width:738px){.contact .content .formContainer form input,.contact .content .formContainer form textarea{padding:10px}}.contact .content .formContainer form .error{background-color:#ff6060;padding:30px;border-radius:25px;text-align:center;font-size:20px;color:#0c0c1d;animation:fadeIn 1s;position:fixed;right:1%;bottom:1%;z-index:1000}@media(max-width:738px){.contact .content .formContainer form .error{font-size:13px;padding:15px}}.contact .content .formContainer form .success{background-color:#5bfb4a;padding:30px;border-radius:25px;text-align:center;font-size:20px;color:#0c0c1d;animation:fadeIn 1s;position:fixed;right:1%;bottom:1%;z-index:1000}@media(max-width:738px){.contact .content .formContainer form .success{font-size:13px;padding:15px}}.contact .content .formContainer form button{padding:20px;border:none;color:#0c0c1d;background-color:orange;cursor:pointer;font-weight:550}@media(max-width:738px){.contact .content .formContainer form button{padding:10px}}.home{height:calc(100vh - 100px);background:linear-gradient(180deg,#0c0c1d,#13133a);overflow:hidden;position:relative}.home .wrapper{max-width:min(80%,1366px);height:100%;margin:auto}.home .wrapper .textContainer{position:absolute;width:50%;height:100%;display:flex;flex-direction:column;justify-content:center;gap:40px;z-index:1}@media(max-width:738px){.home .wrapper .textContainer{position:relative;max-width:100%;height:80%;width:100%;gap:20px;align-items:center;text-align:center}}.home .wrapper .textContainer h2{font-size:30px;color:#639;letter-spacing:10px}@media(max-width:738px){.home .wrapper .textContainer h2{font-size:36px}}.home .wrapper .textContainer h1{font-size:50px}@media(max-width:738px){.home .wrapper .textContainer h1{font-size:36px}}.home .wrapper .buttons button{padding:20px;border:1px solid white;border-radius:10px;background-color:transparent;color:#fff;margin-right:20px;cursor:pointer;font-weight:300}.home .wrapper .buttons .secondary{background-color:#fff;color:#13133a;font-weight:700;cursor:pointer}.home .wrapper .buttons .articles-link{color:#fff;text-decoration:underline;font-weight:600;display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:1.1em;transition:opacity .3s ease}@media(max-width:738px){.home .wrapper .buttons .articles-link{margin-top:20px}}.home .wrapper .buttons .articles-link .external-link{width:18px;height:18px;animation:float 1.5s ease-in-out infinite}.home .wrapper .buttons .articles-link:hover{opacity:.8}.home .wrapper img{width:50px}.home .slidingTextContainer{position:absolute;font-size:50vh;bottom:-80px;white-space:nowrap;color:#ffffff09;width:50%;font-weight:700;-webkit-user-select:none;user-select:none}.container{position:relative;width:24px;height:24px;margin-left:min(19%,115px)}@media(max-width:738px){.container{margin-left:0;justify-content:center}}.chevron{position:absolute;width:28px;height:8px;opacity:0;transform:scale3d(.5,.5,.5);animation:move 3s ease-out infinite}.chevron:first-child{animation:move 3s ease-out 1s infinite}.chevron:nth-child(2){animation:move 3s ease-out 2s infinite}.chevron:before,.chevron:after{content:" ";position:absolute;top:0;height:100%;width:51%;background:#fff}.chevron:before{left:0;transform:skew(0,30deg)}.chevron:after{right:0;width:50%;transform:skew(0,-30deg)}@keyframes move{25%{opacity:1}33%{opacity:1;transform:translateY(30px)}67%{opacity:1;transform:translateY(40px)}to{opacity:0;transform:translateY(55px) scale3d(.5,.5,.5)}}.text{display:block;margin-top:75px;margin-left:-30px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;color:#fff;text-transform:uppercase;white-space:nowrap;opacity:.25;animation:pulse 2s linear alternate infinite}@keyframes pulse{to{opacity:1}}@keyframes float{0%{transform:translate(0)}50%{transform:translate(3px,-3px)}to{transform:translate(0)}}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000;z-index:998}.sidebar{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#fff;color:#000}.sidebar .bg{z-index:999;position:fixed;top:0;left:0;bottom:0;width:400px;background:#fff}@media(max-width:738px){.sidebar .bg{width:200px}}.sidebar .bg .links{position:absolute;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.sidebar .bg .links a{font-size:40px}@media(max-width:738px){.sidebar .bg .links a{font-size:20px}}.sidebar .bg .links .articles-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;position:relative}.sidebar .bg .links .articles-link:after{content:"";position:absolute;left:-10px;right:-10px;bottom:4px;height:2px;background-color:currentColor}@media(max-width:738px){.sidebar .bg .links .articles-link:after{bottom:-2px}}.sidebar .bg .links .articles-link svg{width:24px;height:24px}@media(max-width:738px){.sidebar .bg .links .articles-link svg{width:16px;height:16px}}.sidebar button{z-index:999;width:50px;height:50px;border-radius:50%;position:fixed;top:28px;left:25px;background-color:transparent;border:none;cursor:pointer}.navbar{height:100px}.navbar .wrapper{max-width:min(80%,1366px);margin:auto;display:flex;align-items:center;justify-content:space-between;height:100%}@media(max-width:738px){.navbar .wrapper{max-width:100%;justify-content:flex-end;padding:20px}}.navbar .wrapper span{font-weight:700;font-size:25px}@media(max-width:738px){.navbar .wrapper span{display:none}}.navbar .wrapper .social{display:flex;gap:25px}.navbar .wrapper .social img{width:25px;height:25px}.parallax{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.parallax h1{font-size:100px;z-index:5}@media(max-width:738px){.parallax h1{font-size:72px;text-align:center}}.parallax .sideText{left:-3%;top:50%;position:absolute;rotate:90deg;font-size:200px;font-weight:700;z-index:3;background:-webkit-linear-gradient(rgba(122,122,122,.5),rgba(0,0,0,0));-webkit-background-clip:text;-webkit-text-fill-color:transparent;-webkit-user-select:none;user-select:none}@media(max-width:738px){.parallax .sideText{font-size:200px}}.parallax .circles{background-image:url(/parallax-01.png);top:15%;scale:1.2;background-size:cover;background-position:bottom;width:100%;height:100%;position:absolute;z-index:2}@media(max-width:738px){.parallax .circles{top:0;background-size:contain;scale:3}}.parallax .triangles{background-image:url(/parallax-0.png);top:15%;scale:1.2;background-size:cover;background-position:bottom;width:100%;height:100%;position:absolute;z-index:1}@media(max-width:738px){.parallax .triangles{top:0;background-size:contain;scale:3}}.portfolio{position:relative;background:linear-gradient(180deg,#111132,#0c0c1d)}.portfolio .progress{position:sticky;margin:auto;align-items:center;width:100%;top:0;left:0;padding-top:20px;text-align:center;color:orange;font-size:30px;z-index:100}@media(max-width:738px){.portfolio .progress{padding-top:calc(100vh - 100px);font-size:24px}}.portfolio .progress .progressBar{height:8px;background-color:#fff}.portfolio .container{display:flex;align-items:center;justify-content:center;width:80%;height:100%;overflow:hidden}@media(max-width:738px){.portfolio .container{width:100%}}.portfolio .container .wrapper{max-width:1366px;height:100%;margin:auto;display:flex;align-items:center;justify-content:center;gap:50px}@media(max-width:738px){.portfolio .container .wrapper{flex-direction:column;margin-top:30px}}.portfolio .container .wrapper .imageContainer{flex:1;overflow:hidden}@media(max-width:738px){.portfolio .container .wrapper .imageContainer{width:100%;max-height:35%;padding:10px}}.portfolio .container .wrapper .imageContainer img{width:100%;height:100%;border-radius:15px}.portfolio .container .wrapper .textContainer{flex:1;display:flex;flex-direction:column;gap:30px}@media(max-width:738px){.portfolio .container .wrapper .textContainer{margin-top:-50px;transform:none!important;padding:10px;align-items:center;text-align:center}}.portfolio .container .wrapper .textContainer h2{font-size:34px}@media(max-width:738px){.portfolio .container .wrapper .textContainer h2{font-size:28px}}.portfolio .container .wrapper .textContainer p{color:gray;font-size:20px}@media(max-width:738px){.portfolio .container .wrapper .textContainer p{font-size:16px}}.portfolio .container .wrapper .textContainer .tech-list{display:flex;flex-wrap:wrap;justify-content:left;gap:10px}@media(max-width:738px){.portfolio .container .wrapper .textContainer .tech-list{gap:5px}}.portfolio .container .wrapper .textContainer .tech-item{display:flex;flex-direction:row;align-items:center;padding:8px;background-color:#6969694d;border-radius:10px;border:1px solid #929292;margin-left:5px}@media(max-width:738px){.portfolio .container .wrapper .textContainer .tech-item{padding:5px}}.portfolio .container .wrapper .textContainer .tech-item .tech-logo{width:25px;height:25px}@media(max-width:738px){.portfolio .container .wrapper .textContainer .tech-item .tech-logo{width:15px;height:15px}}.portfolio .container .wrapper .textContainer .tech-item .tech-name{margin-left:4px;font-size:16px}@media(max-width:738px){.portfolio .container .wrapper .textContainer .tech-item .tech-name{margin-left:4px;font-size:12px}}.portfolio .container .wrapper .textContainer button{background-color:orange;text-decoration:none;color:#0c0c1d;border:none;border-radius:10px;padding:10px;width:200px;cursor:pointer;z-index:150}.featured{position:relative;background:linear-gradient(180deg,#0c0c1d,#131334,#111132);color:#e6e8ee;padding:64px 0 72px;overflow:hidden;z-index:1}.featured--embed{padding:24px 0 32px;background:transparent}.featured-decor{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.featured-blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;will-change:transform}.featured-blob-1{top:-10%;right:-8%;width:520px;height:520px;background:radial-gradient(circle,rgba(125,211,252,.4),transparent 70%);animation:feat-blob-drift 18s ease-in-out infinite alternate}.featured-blob-2{bottom:-15%;left:-10%;width:480px;height:480px;background:radial-gradient(circle,rgba(180,130,255,.32),transparent 70%);animation:feat-blob-drift 22s ease-in-out infinite alternate-reverse}@keyframes feat-blob-drift{0%{transform:translate(0) scale(1)}50%{transform:translate(-30px,20px) scale(1.05)}to{transform:translate(20px,-10px) scale(.95)}}.featured-grid-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 80%);opacity:.6}.featured-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 28px}.featured--embed .featured-inner{padding:0 16px}.featured-header{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:36px}.featured--embed .featured-header{margin-bottom:20px;gap:6px}.feat-eyebrow-line{display:inline-flex;align-items:center;gap:12px}.feat-eyebrow-bar{display:inline-block;width:36px;height:2px;border-radius:2px;background:linear-gradient(90deg,#7dd3fc,#c4b5fd);transform-origin:left center}.feat-eyebrow-text{font-size:11px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:#b8bdcb}.feat-eyebrow{display:inline-block;padding:5px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#7dd3fc;background:#7dd3fc1a;border:1px solid rgba(125,211,252,.3)}.feat-eyebrow.inverse{background:#0000008c;color:#fff;border-color:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.featured-heading{margin:0;font-size:clamp(32px,4vw,46px);font-weight:800;line-height:1.04;letter-spacing:-.5px;background:linear-gradient(180deg,#fff,#c8ccd6);-webkit-background-clip:text;background-clip:text;color:transparent}.featured--embed .featured-heading{font-size:22px;background:none;color:#fff;-webkit-text-fill-color:#fff}.featured-subhead{margin:0;color:#9aa1b1;font-size:16px;max-width:540px}.featured--embed .featured-subhead{font-size:13px}.featured-block{margin-top:48px}.featured-block:first-of-type{margin-top:0}.featured--embed .featured-block{margin-top:32px}.featured-block-rule{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:26px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1)}.featured--embed .featured-block-rule{margin-bottom:16px;padding-bottom:10px}.featured-block-label{font-size:14px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#c8ccd6}.featured-block-link{display:inline-flex;align-items:center;gap:7px;color:#b8bdcb;font-size:13px;font-weight:600;text-decoration:none;transition:color .14s ease,transform .14s ease}.featured-block-link:hover{color:#fff}.featured-block-link:hover svg{transform:translate(2px)}.featured-block-link svg{transition:transform .16s ease}.featured-articles{display:grid;gap:22px}.featured-articles--solo{grid-template-columns:minmax(0,1fr)}.featured-articles--split{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}@media(max-width:880px){.featured-articles--split{grid-template-columns:minmax(0,1fr)}}.feat-article-spotlight{position:relative;display:flex;align-items:stretch;gap:0;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;cursor:pointer;padding:16px;transition:border-color .24s ease,box-shadow .24s ease,background .24s ease}.feat-article-spotlight:hover{border-color:#7dd3fc59;background:#ffffff0b;box-shadow:0 14px 44px #0000004d,0 0 0 1px #7dd3fc14 inset}.feat-article-spotlight:hover .feat-cta{color:#7dd3fc}.feat-article-spotlight:hover .feat-cta svg{transform:translate(3px)}.feat-article-spotlight:hover .feat-article-spotlight-cover img{transform:scale(1.04)}@media(max-width:720px){.feat-article-spotlight{flex-direction:column;padding:12px}}.feat-article-spotlight-cover{position:relative;width:220px;flex-shrink:0;aspect-ratio:16/9;align-self:center;background:#0a0a1a;border-radius:12px;overflow:hidden}.feat-article-spotlight-cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.feat-article-spotlight-cover .feat-eyebrow{position:absolute;top:10px;left:10px;z-index:2;font-size:9px;padding:4px 8px;letter-spacing:1.4px}@media(max-width:720px){.feat-article-spotlight-cover{width:100%;align-self:stretch}}.feat-article-spotlight-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:4px 6px 4px 22px;gap:8px}@media(max-width:720px){.feat-article-spotlight-body{padding:14px 6px 4px}}.feat-article-spotlight-foot{display:flex;flex-direction:column;gap:6px;margin-top:6px}.feat-article-spotlight-title{margin:0;font-size:19px;font-weight:700;line-height:1.28;color:#fff;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feat-article-spotlight-excerpt{margin:0;font-size:13.5px;line-height:1.55;color:#b8bdcb;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.feat-article-spotlight-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#9aa1b1}.feat-dot{opacity:.5}.featured-articles-side{display:flex;flex-direction:column;gap:14px}.feat-article-side{display:flex;gap:14px;padding:12px;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.feat-article-side:hover{background:#ffffff0d;border-color:#7dd3fc4d;transform:translateY(-1px)}.feat-article-side-cover{width:96px;height:96px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#0a0a1a}.feat-article-side-cover img{width:100%;height:100%;object-fit:cover;display:block}.feat-article-side-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.feat-article-side-title{margin:0 0 8px;font-size:14.5px;font-weight:600;color:#fff;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.feat-article-side-meta{font-size:12px;color:#9aa1b1}.featured-articles-overflow{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:18px}.featured-projects{display:flex;flex-direction:column;gap:14px}.feat-project{position:relative;display:flex;align-items:stretch;gap:0;background:linear-gradient(180deg,#ffffff0a,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;padding:16px;transition:border-color .24s ease,box-shadow .24s ease,background .24s ease}.feat-project.is-clickable{cursor:pointer}.feat-project:hover{border-color:#c4b5fd59;background:linear-gradient(180deg,#ffffff0f,#ffffff08);box-shadow:0 14px 44px #0000004d,0 0 0 1px #c4b5fd1a inset}.feat-project:hover .feat-project-cover img{transform:scale(1.04)}.feat-project:hover .feat-cta{color:#c4b5fd}.feat-project:hover .feat-cta svg{transform:translate(3px,-3px)}@media(max-width:720px){.feat-project{flex-direction:column;padding:12px}}.feat-project-cover{position:relative;width:220px;aspect-ratio:16/9;flex-shrink:0;align-self:center;background:#0a0a1a;border-radius:12px;overflow:hidden}.feat-project-cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}@media(max-width:720px){.feat-project-cover{width:100%;align-self:stretch}}.feat-project-cover-fade{display:none}.feat-project-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:4px 6px 4px 22px}@media(max-width:720px){.feat-project-body{padding:14px 6px 4px}}.feat-project-title{margin:0;font-size:19px;font-weight:700;line-height:1.25;color:#fff;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.feat-project-tagline{margin:0;color:#b8bdcb;font-size:13.5px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feat-project-tech{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.feat-tech-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#d8dce5;font-size:11.5px;font-weight:500}.feat-tech-chip img{width:12px;height:12px;object-fit:contain}.feat-cta{display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-size:13.5px;font-weight:700;letter-spacing:.2px;color:#d8dce5;transition:color .18s ease}.feat-cta svg{transition:transform .18s ease}*{padding:0;margin:0;box-sizing:border-box;font-family:DM Sans,sans-serif}a{text-decoration:none;color:inherit}body{background-color:#0c0c1d;color:#d3d3d3}html{scroll-snap-type:y mandatory;scroll-behavior:smooth;overflow-y:scroll}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:#ffffff38;border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:#ffffff73;background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}section{height:100vh;scroll-snap-align:center}@media(max-width:738px){section#Contact{height:auto;margin-bottom:50px;scroll-snap-align:center}}.education{background:linear-gradient(180deg,#0c0c1d,#13133a);height:100vh;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;flex-direction:column}.education h1{font-size:50px;color:orange;margin-top:30px}.education .svg-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:reveal 8s ease forwards}@media(max-width:738px){.education .svg-container{transform:translate(-125%,-50%) rotate(90deg);scale:.5}}@media(max-width:1024px){.education .svg-container{transform:translate(-125%,-50%) rotate(90deg);scale:.5}}.education .education-timeline{height:100vh}.education .education-timeline .education-point{width:40%}.education .education-timeline .education-point .point1{position:absolute;top:calc(50% - 180px);left:min(0% + (100vw - 1366px) / 2,80vw - 30px);z-index:1}@media(max-width:1024px){.education .education-timeline .education-point .point1{width:400px;top:25%;left:30%;scale:.6}}@media(max-width:738px){.education .education-timeline .education-point .point1{width:400px;top:15%;left:8%;scale:.6}}.education .education-timeline .education-point .point2{position:absolute;top:calc(50% + 80px);left:50%;transform:translate(-50%);z-index:1}@media(max-width:1024px){.education .education-timeline .education-point .point2{width:400px;top:45%;left:45%;scale:.6}}@media(max-width:738px){.education .education-timeline .education-point .point2{width:400px;top:45%;left:35%;scale:.6}}.education .education-timeline .education-point .point3{position:absolute;top:calc(50% - 160px);right:min(0% + (100vw - 1366px) / 2,80vw - 30px);z-index:1}@media(max-width:1024px){.education .education-timeline .education-point .point3{width:400px;top:75%;right:22%;scale:.6}}@media(max-width:738px){.education .education-timeline .education-point .point3{width:400px;top:80%;right:-5%;scale:.6}}.education .education-timeline .education-point .date-location{display:flex;width:100%;justify-content:space-between;align-items:center;font-size:20px}@media(max-width:738px){.education .education-timeline .education-point .date-location{font-size:16px}}.education .education-timeline .education-point .date-location .date{color:#fff;opacity:.3}@media(max-width:738px){.education .education-timeline .education-point .date-location .date{font-size:14px}}.education .education-timeline .education-point .date-location .location{color:#fff;opacity:.5}.education .education-timeline .education-point .title{font-size:25px;color:#fff}@media(max-width:738px){.education .education-timeline .education-point .title{font-size:20px}}.education .education-timeline .education-point .description{color:#fff;opacity:.5}@media(max-width:738px){.education .education-timeline .education-point .description{font-size:14px}}@keyframes reveal{0%{clip-path:inset(0 100% 0 0)}10%{clip-path:inset(0 100% 0 0)}60%{clip-path:inset(0 50% 0 0)}70%{clip-path:inset(0 50% 0 0)}to{clip-path:inset(0 0 0 0)}}.articles-page{background:linear-gradient(180deg,#0c0c1d,#13133a);position:relative;z-index:1}@keyframes skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{display:block;background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a);background-size:800px 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:6px}.skeleton-card{background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:12px;overflow:hidden;display:flex;flex-direction:row;align-items:stretch;position:relative}.skeleton-card .skeleton-image{width:30%;min-width:120px;flex-shrink:0;border-radius:0;border-right:2px solid rgba(255,255,255,.2)}.skeleton-card .skeleton-body{flex:1;padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;position:relative}.skeleton-card .skeleton-body-top{display:flex;flex-direction:column;gap:10px}.skeleton-card .skeleton-body-bottom{display:flex;flex-direction:column;gap:6px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.skeleton-card .skeleton-line{height:14px;border-radius:4px}.skeleton-card .skeleton-line.title{height:28px;width:80%}.skeleton-card .skeleton-line.title-2{height:28px;width:55%}.skeleton-card .skeleton-line.authors{height:18px;width:45%}.skeleton-card .skeleton-line.date{height:14px;width:30%}.skeleton-card .skeleton-share{position:absolute;bottom:20px;right:20px;width:140px;height:46px;border-radius:999px}.skeleton-detail{display:flex;flex-direction:column;gap:18px;padding:20px 0}.skeleton-detail .skeleton-line{height:16px;border-radius:4px}.skeleton-detail .skeleton-line.title{height:38px;width:70%}.skeleton-detail .skeleton-meta{display:flex;flex-direction:column;gap:6px;margin-top:6px}.skeleton-detail .skeleton-line.authors{height:16px;width:35%}.skeleton-detail .skeleton-line.date{height:14px;width:25%}.skeleton-detail .skeleton-cover{width:100%;height:400px;border-radius:10px;margin-top:9px}.skeleton-detail .skeleton-paragraph{display:flex;flex-direction:column;gap:10px;margin-top:8px}.skeleton-detail .skeleton-line.full{width:100%}.skeleton-detail .skeleton-line.w90{width:90%}.skeleton-detail .skeleton-line.w75{width:75%}.skeleton-detail .skeleton-line.w60{width:60%}.articles-container{padding-top:150px;max-width:min(80%,1366px);margin:0 auto;min-height:100vh;position:relative;z-index:1}.articles-header{margin-bottom:32px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.2);background:#0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:fixed;top:0;left:0;right:0;z-index:100}.articles-header .header-content{display:flex;justify-content:space-between;align-items:center;max-width:min(80%,1366px);margin:auto}.articles-header .header-content h1{font-size:40px;color:#fff;margin:0}.articles-header .header-content .back-to-portfolio{color:#fff;text-decoration:none;font-weight:600;display:flex;align-items:center;transition:color .3s ease}.articles-header .header-content .back-to-portfolio .arrow{margin-right:8px;font-size:20px}.articles-header .header-content .back-to-portfolio:hover{color:#818181}.articles-grid{display:grid;grid-template-columns:1fr;gap:24px;padding-top:20px}.article-card{transition:all .3s ease;display:flex;flex-direction:row;cursor:pointer;background:#ffffff0d;border-radius:12px;padding:0;gap:0;align-items:stretch;border:2px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.article-card:hover{background:#ffffff14;border-color:#fff3;box-shadow:0 8px 32px #0003}.article-card:hover .article-image img{transform:scale(1.05)}.article-card .article-image{width:30%;min-width:120px;border-radius:0;overflow:hidden;flex-shrink:0;border:none;border-right:2px solid rgba(255,255,255,.2)}.article-card .article-image img{width:100%;height:100%;object-fit:cover;display:block;background-color:#0000001a;transition:transform .3s ease}.article-card .article-content{flex:1;display:flex;flex-direction:column;padding:20px;position:relative;justify-content:space-between}.article-card h2{font-size:28px;margin:0;color:#fff;position:relative;display:inline-block;font-weight:600;line-height:1.3}.article-card h2:after{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#fff;transition:width .3s ease}.article-card h2:hover:after{width:100%}.article-card .article-meta{margin:auto 0 0;color:#888;display:flex;flex-direction:column;gap:4px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.article-card .article-meta .authors{font-size:20px;color:#dfdfdf}.article-card .article-meta .date{font-size:16px;color:#4a9eff;font-weight:500}.article-card .share-button{position:absolute;bottom:20px;right:20px;display:inline-flex;align-items:center;gap:10px;padding:12px 22px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.22);color:#fff;font-size:16px;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}.article-card .share-button svg{display:block;width:20px;height:20px}.article-card .share-button:hover{background:#ffffff29;border-color:#fff6;color:#fff;transform:translateY(-1px);box-shadow:0 8px 22px #0000004d}.article-card .share-button:active{transform:translateY(0)}.article-card .share-button.is-copied{background:#4caf502e;border-color:#4caf5080;color:#6fe6a8}.article-detail-container{padding:32px;max-width:800px;margin:0 auto;min-height:100vh}.article-detail-container .article-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.2)}.article-detail-container .back-link{color:#fff;text-decoration:none;font-weight:600;display:flex;align-items:center;transition:color .3s ease}.article-detail-container .back-link:hover{color:#818181}.article-detail-container .share-button{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.18);color:#cfd6e4;font-size:14px;font-weight:600;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.article-detail-container .share-button svg{display:block;width:16px;height:16px}.article-detail-container .share-button:hover{background:#ffffff1f;border-color:#ffffff4d;color:#fff;transform:translateY(-1px)}.article-detail-container .share-button:active{transform:translateY(0)}.article-detail-container .share-button .share-icon{display:inline-flex;align-items:center;gap:8px;font-size:14px}.article-detail-container .share-button .copied{color:#6fe6a8;font-weight:600;font-size:14px}.article-content h2{font-size:38px;margin-bottom:16px;color:#fff;position:relative}.article-content h2:after{content:"";position:absolute;width:0;height:2px;bottom:-4px;left:0;background-color:#fff;transition:width .3s ease}.article-content h2:hover:after{width:100%}.article-content .article-meta{color:#888;font-size:16px}.article-content .article-meta .authors{margin-top:15px;display:block}.article-content .article-meta .date{margin-top:5px;display:block}.article-content .article-cover{width:100%;height:400px;margin-bottom:32px;margin-top:25px;border-radius:10px;overflow:hidden}.article-content .article-cover img{width:100%;height:100%;object-fit:cover}.article-content .article-text{color:#ccc;line-height:1.8}.article-content .article-text h2{font-size:29px;margin:32px 0 16px;color:#fff}.article-content .article-text p{margin-bottom:24px}.article-content .article-text img{height:auto;border-radius:8px;background:#ffffff26;padding:12px;margin:16px auto;display:block;max-width:100%}.article-content .article-text hr{margin:20px 0}.article-content .article-text ul,.article-content .article-text ol{margin-bottom:24px;padding-left:24px}.article-content .article-text ul li,.article-content .article-text ol li{margin-bottom:8px}.article-content .article-text .code-block-wrapper{margin:24px 0;border-radius:12px;overflow:hidden;background:#1e1e1e;box-shadow:0 4px 6px #0000001a}.article-content .article-text .code-block-wrapper .code-block-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#2d2d2d;border-bottom:1px solid #3d3d3d}.article-content .article-text .code-block-wrapper .code-block-header .code-label{color:#888;font-size:14px;font-weight:500}.article-content .article-text .code-block-wrapper .code-block-header .copy-button{background:transparent;border:none;color:#888;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.article-content .article-text .code-block-wrapper .code-block-header .copy-button:hover{color:#fff;background:#ffffff1a}.article-content .article-text .code-block-wrapper .code-block-header .copy-button.copied{color:#4caf50;animation:fadeIn .2s ease}.article-content .article-text .code-block-wrapper pre{margin:0!important;border-radius:0!important;background:transparent!important;padding:16px!important;overflow-x:auto}.article-content .article-text .code-block-wrapper pre::-webkit-scrollbar{width:8px;height:8px}.article-content .article-text .code-block-wrapper pre::-webkit-scrollbar-track{background:transparent;margin:1px}.article-content .article-text .code-block-wrapper pre::-webkit-scrollbar-thumb{background:#666;border-radius:4px;border:1px solid transparent;background-clip:padding-box}.article-content .article-text .code-block-wrapper pre::-webkit-scrollbar-thumb:hover{background:#888}.article-content .article-text .code-block-wrapper pre code{background:none;padding:0;font-family:Fira Code,monospace;font-size:14px;line-height:1.6}.article-content .article-text code{border-radius:4px;font-family:Fira Code,monospace}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.loading,.error{text-align:center;padding:32px;color:#fff;font-size:19px}.error{color:#ff6b6b}@media screen and (max-width:768px){.articles-container{padding-top:120px;max-width:95%}.articles-header .header-content h1{font-size:32px}.articles-grid{grid-template-columns:1fr;gap:16px}.skeleton-card{flex-direction:column}.skeleton-card .skeleton-image{width:100%;min-width:unset;height:200px;border-right:none;border-bottom:2px solid rgba(255,255,255,.2)}.skeleton-card .skeleton-body{padding:16px}.skeleton-card .skeleton-line.title,.skeleton-card .skeleton-line.title-2{height:22px}.article-card{flex-direction:column}.article-card .article-image{width:100%;min-width:unset;height:200px;border-right:none;border-bottom:2px solid rgba(255,255,255,.2)}.article-card .article-content{padding:16px}.article-card .article-content h2{font-size:22px}.article-card .article-content .article-meta .authors{font-size:16px}.article-card .article-content .article-meta .date{font-size:14px}.article-card .share-button{margin-right:16px}.article-detail-container{padding:20px}.article-detail-container .article-header{margin-bottom:25px;padding-bottom:15px}.article-content h2{font-size:28px}.article-content .article-meta{font-size:14px}.article-content .article-cover{height:250px;margin-top:15px;margin-bottom:25px}.article-content .article-text h2{font-size:24px;margin:24px 0 12px}.article-content .article-text p{margin-bottom:16px;font-size:15px}.article-content .article-text ul,.article-content .article-text ol{margin-bottom:16px;padding-left:20px}.article-content .article-text ul li,.article-content .article-text ol li{margin-bottom:6px;font-size:15px}.article-content .article-text .code-block-wrapper{margin:16px 0}.article-content .article-text .code-block-wrapper .code-block-header{padding:6px 12px}.article-content .article-text .code-block-wrapper .code-block-header .code-label{font-size:12px}.article-content .article-text .code-block-wrapper pre{padding:12px!important}.article-content .article-text .code-block-wrapper pre code{font-size:13px}}html:has(.admin-page){scroll-snap-type:none}@keyframes admin-skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.admin-skeleton{display:block;background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a);background-size:800px 100%;animation:admin-skeleton-shimmer 1.4s ease-in-out infinite;border-radius:6px;height:14px}.admin-skeleton.title{height:22px;width:60%}.admin-skeleton.short{width:40%}.admin-skeleton.medium{width:70%}.admin-skeleton.full{width:100%}.admin-skeleton.pill{height:20px;width:70px;border-radius:999px}.admin-skeleton.thumb{width:56px;height:56px;border-radius:6px}.admin-skeleton.cover{width:100%;height:200px;border-radius:8px}.admin-skeleton.input{height:40px;border-radius:6px}.admin-skeleton.textarea{height:240px;border-radius:6px}.admin-skeleton.button{height:32px;width:100px;border-radius:6px}.admin-skeleton-stack{display:flex;flex-direction:column;gap:10px}.admin-table .admin-skeleton-row td{vertical-align:middle}.admin-page{background:linear-gradient(180deg,#0c0c1d,#13133a);min-height:100vh;color:#ddd;font-family:inherit}.admin-topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 32px;border-bottom:1px solid rgba(255,255,255,.08);background:#080816b3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0;z-index:100}.admin-topbar .admin-brand{color:#fff;text-decoration:none;font-weight:700;font-size:18px;letter-spacing:.2px}.admin-topbar .admin-nav{display:flex;gap:6px;align-items:center}.admin-nav-link{color:#b8bdcb;text-decoration:none;background:transparent;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:color .14s ease,background .14s ease}.admin-nav-link:hover{color:#fff;background:#ffffff0f}.admin-nav-link.active{color:#fff;background:#6366f124;box-shadow:inset 0 0 0 1px #6366f14d}.admin-user-menu{position:relative;margin-left:8px}.admin-user-menu .admin-user-trigger{display:inline-flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#e6e8ee;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;transition:background .14s ease,border-color .14s ease}.admin-user-menu .admin-user-trigger:hover{background:#ffffff14;border-color:#ffffff38}.admin-user-menu.open .admin-user-trigger{background:#6366f11f;border-color:#6366f166}.admin-user-menu .admin-user-avatar{width:28px;height:28px;border-radius:999px;background:linear-gradient(135deg,#6366f1,#8b5cff);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;letter-spacing:.3px}.admin-user-menu .admin-user-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-menu .admin-user-caret{font-size:10px;color:#9aa3b2;transition:transform .16s ease}.admin-user-menu.open .admin-user-caret{transform:rotate(180deg)}.admin-user-dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;background:#141426f5;border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 16px 40px #00000073;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:8px;z-index:200;animation:admin-dropdown-in .14s ease}@keyframes admin-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.admin-user-info{padding:10px 12px 12px}.admin-user-info .admin-user-info-name{color:#fff;font-weight:600;font-size:14px}.admin-user-info .admin-user-info-email{color:#9aa3b2;font-size:12px;margin-top:2px}.admin-user-info .admin-user-info-role{margin-top:8px}.admin-role-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.35)}.admin-user-divider{height:1px;background:#ffffff14;margin:4px 0}.admin-user-action{width:100%;text-align:left;display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:none;color:#e6e8ee;font-family:inherit;font-size:13px;font-weight:500;border-radius:8px;cursor:pointer;transition:background .14s ease,color .14s ease}.admin-user-action svg{width:14px;height:14px;color:#9aa3b2;transition:color .14s ease}.admin-user-action:hover{background:#ff5a5a1f;color:#ff9090}.admin-user-action:hover svg{color:#ff9090}.admin-home-header{margin-bottom:28px}.admin-home-header h1{margin:0;color:#fff;font-size:28px}.admin-home-header .admin-home-subtitle{color:#9aa3b2;font-size:14px;margin-top:6px}.admin-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.admin-home-card{display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,#ffffff0a,#ffffff05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:22px;text-decoration:none;color:inherit;min-height:180px;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.admin-home-card:hover{transform:translateY(-2px);border-color:#6366f166;background:linear-gradient(180deg,#6366f114,#ffffff05);box-shadow:0 12px 28px #00000059}.admin-home-card.is-disabled{cursor:not-allowed;opacity:.65}.admin-home-card.is-disabled:hover{transform:none;border-color:#ffffff14;background:linear-gradient(180deg,#ffffff0a,#ffffff05);box-shadow:none}.admin-home-card .admin-home-card-body h2{margin:0 0 8px;color:#fff;font-size:18px;font-weight:600}.admin-home-card .admin-home-card-body p{margin:0;color:#9aa3b2;font-size:13px;line-height:1.55}.admin-home-card .admin-home-card-footer{margin-top:20px}.admin-home-card .admin-home-cta{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;background:#ffffff0f;color:#b8bdcb;border:1px solid rgba(255,255,255,.12)}.admin-home-card .admin-home-cta.primary{background:#6366f126;color:#a5b4fc;border-color:#6366f166}.admin-coming-soon{display:flex;align-items:center;justify-content:center;padding:60px 20px}.admin-coming-soon-card{max-width:480px;width:100%;text-align:center;background:linear-gradient(180deg,#ffffff0a,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:40px 32px}.admin-coming-soon-card h1{margin:12px 0 8px;color:#fff;font-size:26px}.admin-coming-soon-card p{color:#9aa3b2;font-size:14px;line-height:1.6;margin:0 0 24px}.admin-coming-soon-card .admin-button{display:inline-flex}.admin-coming-soon-badge{display:inline-block;padding:4px 14px;border-radius:999px;background:#ffa5001f;color:orange;border:1px solid rgba(255,165,0,.3);font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.admin-main{max-width:1400px;margin:0 auto;padding:32px}.admin-loading,.admin-empty,.admin-hint{color:#888;padding:16px 0;font-size:14px}.admin-hint{font-size:13px;line-height:1.5}.admin-table td .admin-hint,.admin-tracking .admin-hint{padding:0;margin-top:2px;font-size:12px}.admin-error{color:#f77;background:#ff000014;border:1px solid rgba(255,0,0,.2);padding:10px 14px;border-radius:6px;margin:12px 0;font-size:14px}.admin-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#ffffff0a;color:#e6e8ee;cursor:pointer;text-decoration:none;font-size:13px;font-weight:600;font-family:inherit;letter-spacing:.1px;transition:background .14s ease,color .14s ease,border-color .14s ease}.admin-button:hover{background:#ffffff1a;border-color:#ffffff47;color:#fff}.admin-button.primary{background:#ffffff0a;border:1.5px solid #ffffff;color:#fff}.admin-button.primary:hover{background:#ffffff24;border-color:#fff;color:#fff}.admin-button.danger{background:#7a1212;border-color:#7a1212;color:#fff}.admin-button.danger:hover{background:#5e0d0d;border-color:#5e0d0d;color:#fff}.admin-button.warning{background:orange;border-color:orange;color:#1c1c1c}.admin-button.warning:hover{background:#e09400;border-color:#e09400;color:#1c1c1c}.admin-button.ghost{background:transparent;border-color:#ffffff2e;color:#cfd6e4}.admin-button.ghost:hover{background:#ffffff0f;border-color:#ffffff52;color:#fff}.admin-button.small{padding:5px 11px;font-size:12px;border-radius:6px}.admin-button:disabled,.admin-button[disabled]{opacity:.45;cursor:not-allowed}.admin-segmented{display:inline-flex;background:#ffffff0a;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:3px;gap:2px}.admin-segmented-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:6px 14px;border-radius:6px;color:#9aa3b2;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .14s ease,color .14s ease}.admin-segmented-btn:hover{color:#fff}.admin-segmented-btn.active{background:#6366f12e;color:#fff;box-shadow:inset 0 0 0 1px #6366f166}.admin-segmented-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes admin-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes admin-modal-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#080816a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:500;padding:24px;animation:admin-modal-fade .16s ease}.admin-modal{width:100%;max-width:460px;background:linear-gradient(180deg,#181833,#121226);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px 28px 22px;box-shadow:0 24px 60px #0009;text-align:center;animation:admin-modal-pop .18s ease}.admin-modal .admin-modal-icon{width:52px;height:52px;border-radius:999px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff}.admin-modal .admin-modal-title{margin:0 0 8px;color:#fff;font-size:19px;font-weight:600}.admin-modal .admin-modal-message{margin:0 0 16px;color:#b8bdcb;font-size:14px;line-height:1.55}.admin-modal .admin-modal-details{background:#00000047;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 12px;margin:0 0 18px;text-align:left;color:#c8ccd6;font-size:12.5px;line-height:1.5}.admin-modal .admin-modal-actions{display:flex;gap:10px;justify-content:center}.admin-modal .admin-modal-actions .admin-button{min-width:110px}.admin-modal.admin-modal--primary .admin-modal-icon{background:#ffffff0a;border:1.5px solid #ffffff;color:#fff}.admin-modal.admin-modal--danger .admin-modal-icon{background:linear-gradient(135deg,#a01818,#5e0d0d);box-shadow:0 6px 18px #7a121280}.admin-modal.admin-modal--warning .admin-modal-icon{background:linear-gradient(135deg,#ffb733,#e09400);color:#1c1c1c;box-shadow:0 6px 18px #ffa50059}.admin-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#ccc;cursor:pointer}.admin-login{display:flex;align-items:center;justify-content:center}.admin-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:32px;width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}.admin-card h1{margin:0 0 8px;color:#fff;font-size:24px}.admin-card label{display:flex;flex-direction:column;gap:6px;font-size:14px}.admin-card label span{color:#aaa}.admin-card input{background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;padding:10px 12px;font-size:14px;font-family:inherit}.admin-card input:focus{outline:none;border-color:#6366f1}.admin-card button{margin-top:8px;padding:12px;background:#ffffff0a;color:#fff;border:1.5px solid #ffffff;border-radius:6px;font-weight:600;cursor:pointer;font-size:15px}.admin-card button:hover:not(:disabled){background:#ffffff24}.admin-card button:disabled{opacity:.6;cursor:not-allowed}.admin-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-list-header h1{margin:0;color:#fff}.admin-table{width:100%;border-collapse:collapse;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px;vertical-align:middle}.admin-table tbody tr:last-child th,.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background .14s ease}.admin-table tbody tr:hover{background:#ffffff06}.admin-table th{color:#9aa3b2;font-weight:500;background:#00000040;text-transform:uppercase;font-size:11px;letter-spacing:.6px;padding-top:12px;padding-bottom:12px}.admin-table td a{color:#fff;text-decoration:none;font-weight:500}.admin-table td a:hover{text-decoration:underline}.admin-table .admin-slug{font-size:12px;color:#777;margin-top:2px}.admin-table td:last-child{text-align:right}.admin-actions-cell{display:inline-flex;gap:8px;justify-content:flex-end}.admin-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500;text-transform:capitalize}.admin-badge.published{background:#00c86426;color:#6fe6a8;border:1px solid rgba(0,200,100,.3)}.admin-badge.draft{background:#ffa5001a;color:orange;border:1px solid rgba(255,165,0,.25)}.admin-badge.retired{background:#b4b4b41a;color:#aaa;border:1px solid rgba(180,180,180,.25)}.admin-pending-dot{display:inline-block;margin-left:6px;color:orange;font-size:14px;vertical-align:middle}.admin-pending-pill,.admin-dirty-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:500;margin-left:8px}.admin-pending-pill{background:#ffa5001f;color:orange;border:1px solid rgba(255,165,0,.3)}.admin-dirty-pill{background:#ff64641f;color:#ff9090;border:1px solid rgba(255,100,100,.3)}.admin-info-banner{background:#6366f114;border:1px solid rgba(99,102,241,.25);color:#b8d4ff;padding:10px 14px;border-radius:6px;margin-bottom:12px;font-size:13px}.admin-info-banner b{color:#fff}.admin-editor-title{display:flex;flex-direction:column;gap:4px}.admin-editor-title h1{margin:0}.admin-editor-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.admin-tracking{margin-top:24px;padding:14px 18px;background:#0003;border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:12px;color:#aaa;display:flex;flex-direction:column;gap:6px}.admin-tracking b{color:#ddd;font-weight:500}.admin-history-list{list-style:none;margin:8px 0 0;padding:0;max-height:240px;overflow-y:auto}.admin-history-list li{display:grid;grid-template-columns:160px 1fr 80px;gap:8px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:12px}.admin-history-list .admin-history-event{color:#ddd}.admin-history-list .admin-history-actor{color:#888}.admin-history-list .admin-history-time{color:#666;text-align:right}fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}fieldset:disabled{opacity:.6}fieldset:disabled input,fieldset:disabled textarea,fieldset:disabled button{cursor:not-allowed}.admin-editor-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.admin-editor-header h1{margin:0;color:#fff}.admin-editor-header .admin-editor-actions{display:flex;gap:12px;align-items:center}.admin-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}@media(max-width:1100px){.admin-editor-grid{grid-template-columns:minmax(0,1fr)}}.admin-editor-chat,.admin-editor-pane{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:10px}.admin-editor-pane{order:1}.admin-editor-chat{order:2}.admin-editor-pane{display:flex;flex-direction:column;min-height:520px;min-width:0;height:auto;overflow:visible}.admin-pane-tabs{display:flex;gap:4px;padding:8px 8px 0;border-bottom:1px solid rgba(255,255,255,.08);background:#0003}.admin-pane-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:#9aa3b2;padding:10px 18px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;border-radius:6px 6px 0 0;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s ease,background .14s ease,border-color .14s ease}.admin-pane-tab:hover{color:#fff;background:#ffffff0a}.admin-pane-tab.active{color:#fff;background:#6366f114;border-bottom-color:#6366f1}.admin-pane-body{flex:1 1 auto;overflow:visible;padding:20px 22px;display:flex;flex-direction:column;gap:16px;min-height:0}.admin-pane-body label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#aaa}.admin-pane-body input[type=text],.admin-pane-body textarea{background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;padding:10px 12px;font-family:inherit;font-size:14px}.admin-pane-body input[type=text]:focus,.admin-pane-body textarea:focus{outline:none;border-color:#6366f1}.admin-pane-body .admin-body-textarea{font-family:Fira Code,ui-monospace,monospace;font-size:13px;line-height:1.6;min-height:520px;height:auto;resize:vertical;overflow-y:hidden;box-sizing:border-box;field-sizing:content}.admin-pane-body--preview{padding:24px 28px;overflow-x:hidden}.admin-pane-body--preview .article-content{max-width:100%;min-width:0;overflow-wrap:break-word;word-break:break-word}.admin-pane-body--preview .article-content h1{color:#fff;font-size:28px;margin-top:0;overflow-wrap:break-word}.admin-pane-body--preview .article-content img{max-width:100%;height:auto}.admin-pane-body--preview .article-content pre{max-width:100%;overflow-x:auto;white-space:pre}.admin-pane-body--preview .article-content code{word-break:break-word}.admin-pane-body--preview .article-content pre code{word-break:normal}.admin-pane-body--preview .article-cover{width:100%;margin:16px 0;border-radius:8px;overflow:hidden;height:auto}.admin-pane-body--preview .article-cover img{width:100%;height:auto;display:block;object-fit:contain}.admin-cover-row{display:flex;gap:8px;align-items:center}.admin-cover-row input[type=text]{flex:1}.admin-cover-row .admin-cover-preview{width:56px;height:56px;object-fit:cover;border-radius:4px;border:1px solid rgba(255,255,255,.15)}.admin-body-toolbar{display:flex;gap:8px}.admin-editor-chat{display:flex;flex-direction:column;max-height:calc(100vh - 120px);min-height:520px;position:sticky;top:96px;padding:0;overflow:hidden}.admin-editor-chat-header{padding:12px 16px;font-weight:600;color:#fff;border-bottom:1px solid rgba(255,255,255,.1);background:#0003;display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-editor-chat-header .admin-model-select{background:#0006;border:1px solid rgba(255,255,255,.2);color:#ddd;border-radius:4px;padding:4px 8px;font-size:12px;font-family:inherit;font-weight:400;cursor:pointer}.admin-editor-chat-header .admin-model-select:focus{outline:none;border-color:#6366f1}.admin-editor-chat-header .admin-model-select:disabled{opacity:.5;cursor:not-allowed}.admin-editor-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.admin-chat-message{display:flex;flex-direction:column;min-width:0}.admin-chat-message .admin-chat-role{font-size:10px;text-transform:uppercase;color:#7a8395;letter-spacing:.6px;margin-bottom:6px;font-weight:600}.admin-chat-message .admin-chat-bubble{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:12px 14px;border-radius:12px;font-size:13.5px;line-height:1.55;color:#e2e6ee;box-shadow:0 1px #0000004d;overflow:hidden}.admin-chat-message .admin-chat-bubble>*:first-child{margin-top:0}.admin-chat-message .admin-chat-bubble>*:last-child{margin-bottom:0}.admin-chat-message .admin-chat-bubble p{margin:0 0 8px}.admin-chat-message .admin-chat-bubble p:last-child{margin-bottom:0}.admin-chat-message .admin-chat-bubble h1,.admin-chat-message .admin-chat-bubble h2,.admin-chat-message .admin-chat-bubble h3,.admin-chat-message .admin-chat-bubble h4{color:#fff;margin:12px 0 6px;font-weight:600;line-height:1.3}.admin-chat-message .admin-chat-bubble h1{font-size:16px}.admin-chat-message .admin-chat-bubble h2{font-size:15px}.admin-chat-message .admin-chat-bubble h3{font-size:14px}.admin-chat-message .admin-chat-bubble ul,.admin-chat-message .admin-chat-bubble ol{margin:6px 0 8px;padding-left:20px}.admin-chat-message .admin-chat-bubble li{margin:2px 0}.admin-chat-message .admin-chat-bubble code{font-family:Fira Code,ui-monospace,monospace;font-size:12px;background:#ffffff14;padding:1px 5px;border-radius:4px;word-break:break-word}.admin-chat-message .admin-chat-bubble pre{margin:8px -2px;max-width:100%}.admin-chat-message .admin-chat-bubble pre code{background:transparent;padding:0}.admin-chat-message .admin-chat-bubble .code-block-wrapper{margin:8px 0;max-width:100%}.admin-chat-message .admin-chat-bubble .code-block-wrapper pre{max-width:100%;overflow-x:auto;font-size:12px}.admin-chat-message .admin-chat-bubble button{margin-top:10px}.admin-chat-message.user .admin-chat-bubble{background:linear-gradient(180deg,#6366f12e,#6366f11a);border-color:#6366f159;color:#f1f3fb}.admin-editor-chat-input{display:flex;flex-direction:column;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.1);background:#0003}.admin-editor-chat-input textarea{background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;padding:8px 10px;font-size:13px;font-family:inherit;resize:none}.admin-editor-chat-input textarea:focus{outline:none;border-color:#6366f1}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080a16b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:32px;animation:admin-modal-fade .16s ease}.admin-modal-wide{background:#0f1024;border:1px solid rgba(255,255,255,.12);border-radius:12px;width:min(1100px,95vw);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:admin-modal-pop .18s ease}.admin-modal-wide .admin-modal-header{padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-modal-wide .admin-modal-header h3{margin:0 0 4px;color:#fff;font-size:16px}.admin-modal-wide .admin-modal-header p{margin:0;color:#9aa3b2;font-size:13px}.admin-modal-wide .admin-modal-body{flex:1;overflow:auto;padding:16px 22px}.admin-modal-wide .admin-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid rgba(255,255,255,.08);background:#0003}.admin-diff-empty{color:#888;text-align:center;padding:40px;font-size:14px}.admin-pane-tabs--inline{margin-top:12px;display:flex;gap:6px;border-bottom:none}.admin-apply-preview{background:#0a0d1c;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:24px 28px;color:#d6dae6}.admin-apply-preview h1{color:#fff;font-size:22px;margin:0 0 16px}.admin-apply-preview h2{color:#fff;font-size:18px;margin:18px 0 8px}.admin-apply-preview h3{color:#fff;font-size:16px;margin:16px 0 6px}.admin-apply-preview .article-text{color:#cfd6e4}.admin-apply-side{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-apply-side .admin-apply-side-pane{display:flex;flex-direction:column;gap:8px;min-width:0}.admin-apply-side .admin-apply-side-label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#6c7484;padding:4px 10px;border-radius:999px;background:#ffffff0a;align-self:flex-start;font-weight:600}.admin-apply-side .admin-apply-side-label.new{color:#6fe6a8;background:#2ea04324;border:1px solid rgba(46,160,67,.3)}@media(max-width:900px){.admin-apply-side{grid-template-columns:1fr}}.admin-diff{display:flex;flex-direction:column;gap:8px}.admin-diff-stats{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600}.admin-diff-stats .admin-diff-stat{padding:3px 10px;border-radius:999px;font-family:Fira Code,ui-monospace,monospace}.admin-diff-stats .admin-diff-stat.added{background:#2ea0432e;color:#6fe6a8;border:1px solid rgba(46,160,67,.35)}.admin-diff-stats .admin-diff-stat.removed{background:#f8514929;color:#ff9b95;border:1px solid rgba(248,81,73,.35)}.admin-diff-stats .admin-diff-legend{color:#6c7484;font-weight:400;font-size:11px}.admin-diff-body{margin:0;background:#0a0d1c;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-family:Fira Code,ui-monospace,monospace;font-size:12.5px;line-height:1.55;overflow-x:auto;white-space:pre;padding:6px 0}.admin-diff-line{display:grid;grid-template-columns:44px 44px 18px 1fr;align-items:center;padding:0 10px;min-height:20px}.admin-diff-line.added{background:#2ea0431f;color:#c0f5d3}.admin-diff-line.added .admin-diff-marker{color:#6fe6a8}.admin-diff-line.removed{background:#f851491f;color:#ffc8c4}.admin-diff-line.removed .admin-diff-marker{color:#ff9b95}.admin-diff-line.context{color:#9aa3b2}.admin-diff-line .admin-diff-num{color:#4a5060;text-align:right;padding-right:8px;-webkit-user-select:none;user-select:none;font-size:11px}.admin-diff-line .admin-diff-marker{text-align:center;-webkit-user-select:none;user-select:none;font-weight:700}.admin-diff-line .admin-diff-text{white-space:pre-wrap;word-break:break-word}.admin-chat-edits-pill{margin-top:10px;padding:6px 10px;border-radius:999px;background:#6366f129;border:1px solid rgba(99,102,241,.4);color:#c8cdfb;font-size:11px;font-weight:600;display:inline-block}.admin-review{display:flex;flex-direction:column;border:1px solid rgba(99,102,241,.45);border-radius:10px;background:#0a0d1c;overflow:hidden;box-shadow:0 0 0 1px #6366f114,0 4px 18px #00000059}.admin-review-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 16px;background:linear-gradient(180deg,#6366f12e,#6366f114);border-bottom:1px solid rgba(99,102,241,.35);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-review-toolbar .admin-review-stats{font-size:13px;color:#c0c5d4;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.admin-review-toolbar .admin-review-stats strong{color:#fff;font-weight:700}.admin-review-toolbar .admin-review-stats .admin-review-stat-divider{color:#3d4458;margin:0 4px}.admin-review-toolbar .admin-review-stats .admin-review-stat{font-weight:500}.admin-review-toolbar .admin-review-stats .admin-review-stat.accepted{color:#6fe6a8}.admin-review-toolbar .admin-review-stats .admin-review-stat.rejected{color:#ff9b95}.admin-review-toolbar .admin-review-stats .admin-review-stat.orphan{color:#f5d36b}.admin-review-toolbar .admin-review-toolbar-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.admin-preview-banner{margin-bottom:16px;padding:10px 14px}.admin-review-body-wrap{position:relative}.admin-review-body-wrap:before{content:"";position:absolute;top:0;left:0;right:0;height:18px;background:linear-gradient(180deg,#0a0d1cf2,#0a0d1c00);pointer-events:none;z-index:1;opacity:0;transition:opacity .16s ease}.admin-review-body-wrap.is-scrolled:before{opacity:1}.admin-review-body{margin:0;padding:18px 20px 22px;font-family:Fira Code,ui-monospace,monospace;font-size:13px;line-height:1.7;color:#d6dae6;white-space:pre-wrap;word-wrap:break-word;max-height:70vh;overflow-y:auto;scroll-padding-top:40px}.admin-review-edit{position:relative}.admin-review-edit .admin-review-removed{background:#f851492e;color:#ffc8c4;text-decoration:line-through;text-decoration-color:#f85149b3;border-radius:3px;padding:0 2px}.admin-review-edit .admin-review-added{background:#2ea04338;color:#c0f5d3;border-radius:3px;padding:0 2px;margin-left:1px}.admin-review-edit .admin-review-applied{background:#2ea0431a;color:#b8e8c8;border-radius:3px;padding:0 2px}.admin-review-edit .admin-review-edit-controls{display:inline-flex;gap:4px;margin:0 4px;vertical-align:baseline;-webkit-user-select:none;user-select:none}.admin-review-edit.is-active{outline:2px solid rgba(99,102,241,.6);outline-offset:2px;border-radius:4px}.admin-review-edit--accepted .admin-review-edit-controls{display:none}.admin-review-edit--rejected{opacity:.55}.admin-review-edit--rejected .admin-review-edit-controls{display:none}.admin-review-mini-btn{font-family:inherit;font-size:11px;font-weight:600;padding:1px 8px;border-radius:4px;cursor:pointer;border:1px solid transparent;line-height:1.5}.admin-review-mini-btn.accept{background:#2ea04340;border-color:#2ea0438c;color:#6fe6a8}.admin-review-mini-btn.accept:hover{background:#2ea04366}.admin-review-mini-btn.reject{background:#f851492e;border-color:#f8514973;color:#ff9b95}.admin-review-mini-btn.reject:hover{background:#f8514952}.admin-review-orphans{padding:12px 14px;border-top:1px solid rgba(245,211,107,.3);background:#f5d36b0f;display:flex;flex-direction:column;gap:10px}.admin-review-orphans .admin-review-orphans-title{font-size:12px;color:#f5d36b;font-weight:600}.admin-review-orphan{background:#00000040;border:1px solid rgba(245,211,107,.25);border-radius:6px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;font-size:12px}.admin-review-orphan .admin-review-orphan-reason{color:#c0c5d4;font-style:italic}.admin-review-orphan .admin-review-orphan-label{color:#6c7484;margin-right:6px}.admin-review-orphan .admin-review-orphan-text{font-family:Fira Code,ui-monospace,monospace}.admin-review-orphan .admin-review-orphan-text code{background:#ffffff0d;padding:2px 6px;border-radius:4px;color:#d6dae6}.admin-review-orphan .admin-review-orphan-actions{display:flex;gap:6px;justify-content:flex-end}.admin-danger-zone{margin-top:32px;border:1px solid rgba(160,24,24,.4);border-radius:10px;background:#7a12120f;overflow:hidden}.admin-danger-zone-header{padding:14px 18px;border-bottom:1px solid rgba(160,24,24,.25);background:#7a12121a}.admin-danger-zone-header h3{margin:0;color:#ff9b9b;font-size:14px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.admin-danger-zone-header p{margin:4px 0 0;color:#c9a4a4;font-size:12.5px}.admin-danger-zone-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px}.admin-danger-zone-row+.admin-danger-zone-row{border-top:1px solid rgba(160,24,24,.18)}.admin-danger-zone-text{display:flex;flex-direction:column;gap:3px}.admin-danger-zone-text strong{color:#fff;font-size:14px;font-weight:600}.admin-danger-zone-text span{color:#b8bdcb;font-size:12.5px}.admin-subtitle{margin:4px 0 0;color:#9aa1b1;font-size:13px;font-weight:400}.admin-saved-flag{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#78c88c1a;border:1px solid rgba(120,200,140,.35);color:#b6e8c4;font-size:12px;font-weight:600}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid rgba(255,255,255,.1);margin:14px 0 18px}.admin-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:none;background:transparent;color:#9aa1b1;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.2px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s ease,border-color .14s ease}.admin-tab:hover:not(:disabled){color:#e6e8ee}.admin-tab.active{color:#fff;border-bottom-color:#fff}.admin-tab:disabled{opacity:.5;cursor:not-allowed}.admin-tab-soon{font-size:10px;text-transform:uppercase;padding:2px 6px;border-radius:999px;background:#ffffff14;color:#b8bdcb;font-weight:700;letter-spacing:.5px}.admin-featured-page{display:flex;flex-direction:column;gap:8px}.admin-featured-header-actions{display:inline-flex;align-items:center;gap:12px}.admin-toggle-pill{display:inline-flex;align-items:center;gap:10px;padding:7px 14px 7px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#ffffff0a;color:#c8ccd6;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;transition:all .16s ease}.admin-toggle-pill:disabled{opacity:.6;cursor:progress}.admin-toggle-pill.on{background:#7dd3fc1a;border-color:#7dd3fc59;color:#7dd3fc}.admin-toggle-pill.on .admin-toggle-track{background:#7dd3fc4d;border-color:#7dd3fc8c}.admin-toggle-pill.on .admin-toggle-thumb{transform:translate(18px);background:#7dd3fc}.admin-toggle-pill.off{background:#ffffff08;color:#9aa1b1}.admin-toggle-pill.off .admin-toggle-track{background:#ffffff0f;border-color:#ffffff29}.admin-toggle-pill.off .admin-toggle-thumb{transform:translate(0);background:#9aa1b1}.admin-toggle-track{position:relative;width:38px;height:20px;border-radius:999px;border:1px solid;transition:background .16s ease,border-color .16s ease}.admin-toggle-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;transition:transform .22s cubic-bezier(.22,1,.36,1),background .16s ease}.feat-section-off-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;margin:14px 0 4px;border-radius:10px;background:#ffc85014;border:1px solid rgba(255,200,80,.3);color:#f0c674;font-size:13px;font-weight:500}.feat-section-off-banner strong{color:#ffd87a}.feat-list{display:flex;flex-direction:column;gap:6px;margin-top:4px}.feat-row{display:flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;transition:background .12s ease,border-color .12s ease}.feat-row.feat-row-skeleton:hover{background:#ffffff05;border-color:#ffffff0f}.feat-row:hover{background:#ffffff09;border-color:#ffffff1f}.feat-row.is-featured{background:#7dd3fc0a;border-color:#7dd3fc47;cursor:grab}.feat-row.is-featured:active{cursor:grabbing}.feat-row-handle{width:30px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.feat-position{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#7dd3fc2e;color:#7dd3fc;font-size:11px;font-weight:700}.feat-handle-empty{opacity:.25;color:#9aa1b1;font-weight:700}.feat-row-thumb{width:52px;height:52px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.feat-row-thumb img{width:100%;height:100%;object-fit:cover;display:block}.feat-thumb-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:20px;opacity:.5}.feat-row-body{flex:1;min-width:0}.feat-row-title{color:#fff;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feat-row-meta{display:flex;align-items:center;gap:8px;margin-top:3px;font-size:12px}.feat-row-actions{flex-shrink:0}.feat-star-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:transparent;color:#c8ccd6;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;transition:all .14s ease}.feat-star-btn:disabled{opacity:.35;cursor:not-allowed}.feat-star-btn:disabled:hover{background:transparent;border-color:#ffffff24;color:#c8ccd6}.feat-star-btn:hover{background:#7dd3fc14;border-color:#7dd3fc59;color:#7dd3fc}.feat-star-btn.active{background:#7dd3fc1f;border-color:#7dd3fc73;color:#7dd3fc}.feat-star-btn.active:hover{background:#ff6e6e1a;border-color:#ff6e6e66;color:#ff9b9b}.feat-star{font-size:14px;line-height:1}.feat-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:999px;background:#7dd3fc29;color:#7dd3fc;font-size:10px;font-weight:700;letter-spacing:.3px}.feat-preview-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.feat-preview-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.feat-preview-heading h2{margin:0;font-size:16px;font-weight:700;color:#fff;letter-spacing:.2px}.feat-browser{border:1px solid rgba(255,255,255,.12);border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#0c0c1d,#13133a);box-shadow:0 12px 40px #00000059}.feat-browser-chrome{display:flex;align-items:center;gap:8px;padding:9px 14px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08)}.feat-browser-dot{width:11px;height:11px;border-radius:999px;display:inline-block}.feat-browser-dot.red{background:#ff5f57}.feat-browser-dot.yellow{background:#febc2e}.feat-browser-dot.green{background:#28c840}.feat-browser-url{margin-left:10px;flex:1;text-align:center;padding:4px 12px;border-radius:6px;background:#ffffff0d;color:#9aa1b1;font-size:11.5px;font-family:ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.2px}.feat-browser-viewport{max-height:620px;overflow:auto;padding:8px 0 24px}.feat-preview-empty{padding:60px 24px;text-align:center;color:#9aa1b1}.feat-preview-empty-title{font-size:16px;font-weight:600;color:#d8dce5;margin-bottom:6px}.feat-preview-empty-sub{font-size:13px}.admin-status-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;border:1px solid transparent}.admin-status-pill.draft{background:#ffc8501a;border-color:#ffc85059;color:#f0c674}.admin-status-pill.published{background:#78c88c1a;border-color:#78c88c59;color:#b6e8c4}.admin-status-pill.retired{background:#b4b4b41a;border-color:#b4b4b44d;color:#b8bdcb}.admin-warn-text{color:#f0c674;font-size:12px}.admin-muted{color:#9aa1b1;font-size:12px}
