@import url('https://cdn.jsdelivr.net/gh/rastikerdar/vazir-font@v30.1.0/dist/font-face.css');
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800&display=swap');
:root{--bg:#090b10;--bg2:#0e121a;--surface:#121722;--raised:#171e2b;--text:#f5f7fa;--muted:#a1aab8;--faint:#737f90;--border:rgba(255,255,255,.09);--accent:#8aa2ff;--accent2:#5eead4;--danger:#fb7185;--success:#34d399;--radius:22px;--shadow:0 22px 70px rgba(0,0,0,.2);font-family:Vazirmatn,system-ui,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:radial-gradient(ellipse at 50% -20%,rgba(108,140,255,.10),transparent 50%),var(--bg);color:var(--text);font-family:Vazirmatn,system-ui,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a,button{transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-header{height:86px;max-width:1200px;padding:0 28px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:800;letter-spacing:-.8px}.brand-mark{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid rgba(138,162,255,.5);border-radius:13px;background:linear-gradient(145deg,rgba(138,162,255,.2),rgba(94,234,212,.06));color:var(--accent);font-size:15px;font-weight:800}.brand>span:last-child{direction:ltr}.site-header nav{display:flex;align-items:center;gap:25px;font-size:13px;color:var(--muted)}.site-header nav>a:not(.button):hover{color:var(--text)}.icon-button{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;width:38px;height:38px;cursor:pointer}.hero{min-height:620px;max-width:1200px;margin:auto;padding:140px 28px 45px;position:relative;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:700;direction:ltr;text-align:right}.hero h1{font-size:clamp(36px,6vw,70px);line-height:1.35;letter-spacing:-2px;max-width:850px;margin:16px 0}.hero h1 span,.section-heading h2 span,.contact-section h2 span{color:var(--accent)}.hero-copy{font-size:18px;color:var(--muted);max-width:610px}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 18px;border:1px solid var(--border);border-radius:13px;cursor:pointer;font-weight:600;font-size:13px;background:var(--surface);color:var(--text)}.button:hover{transform:translateY(-2px);border-color:rgba(138,162,255,.5)}.button.primary{background:var(--accent);color:#090b10;border-color:var(--accent)}.button.ghost{background:transparent}.button.danger{color:var(--danger)}.button.small{font-size:11px;padding:6px 10px;border-radius:9px}.hero-foot{display:flex;justify-content:space-between;max-width:800px;color:var(--faint);font-size:11px;margin-top:100px}.hero-foot i{display:inline-block;width:7px;height:7px;background:var(--success);border-radius:50%;margin-left:8px;box-shadow:0 0 16px var(--success)}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.orb-one{width:260px;height:260px;border:1px solid rgba(138,162,255,.13);left:8%;top:100px;box-shadow:inset 0 0 70px rgba(108,140,255,.06),0 0 100px rgba(108,140,255,.04)}.orb-two{width:110px;height:110px;border:1px solid rgba(94,234,212,.14);left:23%;top:180px}.section{max-width:1200px;padding:90px 28px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px}.section-heading h2,.contact-section h2{font-size:clamp(28px,4vw,42px);line-height:1.5;margin:0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card,.feature-card,.stat-card,.panel,.file-card,.about-panel,.contact-form{background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 65%),var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.project-card{min-height:240px;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}.project-card:hover{transform:translateY(-5px);border-color:rgba(138,162,255,.4)}.project-top{display:flex;justify-content:space-between;align-items:center}.project-symbol{direction:ltr;color:var(--accent);font-weight:800;font-size:24px}.pill{font-size:10px;color:var(--accent2);border:1px solid rgba(94,234,212,.2);padding:3px 10px;border-radius:100px}.project-card h3{font-size:19px;margin:22px 0 5px}.project-card p{color:var(--muted);font-size:13px;margin:0 0 20px}.project-links{display:flex;gap:15px;margin-top:auto;color:var(--accent);font-size:12px}.about-panel{display:flex;align-items:flex-start;gap:26px;max-width:900px}.about-mark{min-width:90px;height:90px;display:grid;place-items:center;border-radius:22px;background:var(--raised);color:var(--accent);font-weight:800;font-size:20px;direction:ltr}.about-panel p{color:var(--muted);margin-top:0}.credit{font-size:11px;color:var(--faint);direction:ltr}.skill-list{display:flex;flex-wrap:wrap;gap:10px}.skill-chip{padding:10px 16px;background:var(--surface);border:1px solid var(--border);border-radius:13px;font-size:13px}.skill-chip small{color:var(--accent);margin-left:9px;font-size:10px}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;border-top:1px solid var(--border)}.contact-section h2{margin:10px 0 15px}.contact-form{display:grid;gap:14px}.contact-form label,.form-grid label,.auth-card label,.install-card label{display:grid;gap:7px;color:var(--muted);font-size:12px}.contact-form input,.contact-form textarea,.form-grid input,.form-grid textarea,.form-grid select,.auth-card input,.install-card input,.search-bar input,.rename-form input{width:100%;background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:11px;padding:11px 13px;min-width:0}.contact-form textarea,.form-grid textarea{resize:vertical}.site-footer{max-width:1200px;margin:auto;border-top:1px solid var(--border);padding:30px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--faint);font-size:11px}.admin-body{min-height:100vh}.admin-sidebar{position:fixed;right:0;top:0;bottom:0;width:245px;background:var(--bg2);border-left:1px solid var(--border);padding:25px 17px;display:flex;flex-direction:column;gap:7px;z-index:5}.admin-sidebar .brand{padding:0 10px 25px;border-bottom:1px solid var(--border);margin-bottom:10px}.admin-sidebar>a:not(.brand){padding:12px 13px;border-radius:12px;color:var(--muted);font-size:13px}.admin-sidebar>a:hover{background:var(--surface);color:var(--text)}.sidebar-label{font-size:10px;letter-spacing:1.6px;color:var(--faint);padding:0 13px}.sidebar-credit{margin-top:auto;border-top:1px solid var(--border);padding:20px 8px 0;color:var(--faint);font-size:10px;direction:ltr;line-height:1.8}.admin-main{margin-right:245px;padding:35px clamp(20px,4vw,55px);max-width:1600px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-head h1{font-size:30px;margin:0}.muted{color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:25px}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{font-size:35px;display:block;margin-top:8px;direction:ltr;text-align:right}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.feature-card{display:block}.feature-card:hover{border-color:rgba(138,162,255,.4);transform:translateY(-3px)}.feature-card .icon{color:var(--accent);font-size:25px}.feature-card h2{font-size:17px;margin:8px 0}.feature-card p{color:var(--muted);font-size:12px;margin:0}.notice{padding:13px 16px;background:rgba(138,162,255,.08);border:1px solid rgba(138,162,255,.2);border-radius:12px;font-size:12px;margin:18px 0;color:var(--muted)}.notice.success{background:rgba(52,211,153,.08);border-color:rgba(52,211,153,.2);color:var(--success)}.notice.error{background:rgba(251,113,133,.08);border-color:rgba(251,113,133,.2);color:var(--danger)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px}.form-grid .full{grid-column:1/-1}.form-grid .check{display:flex;align-items:center;gap:10px}.form-grid .check input{width:auto}.table-wrap{overflow:auto;margin-top:20px}table{width:100%;border-collapse:collapse;min-width:600px;font-size:12px}th,td{text-align:right;padding:14px 12px;border-bottom:1px solid var(--border);vertical-align:top}th{color:var(--muted);font-weight:500}td{max-width:450px}.inline{display:inline-flex;gap:6px;vertical-align:middle}.upload-bar,.search-bar{display:flex;gap:12px;align-items:center;background:var(--surface);padding:15px;border:1px solid var(--border);border-radius:16px;margin-bottom:15px}.upload-bar input[type=file]{flex:1;min-width:0;color:var(--muted);font-size:12px}.search-bar input{max-width:340px}.file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.file-card{padding:18px;min-width:0}.file-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;background:var(--raised);color:var(--accent);font-size:9px;font-weight:800;overflow:hidden}.file-card h3{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-card .muted{margin-bottom:14px}.rename-form{display:flex;gap:5px;margin-top:10px}.rename-form input{padding:6px;font-size:11px}.auth,.install-body{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card,.install-card{width:min(100%,480px);background:var(--surface);border:1px solid var(--border);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.auth-card .brand-mark,.install-card .brand-mark{margin-bottom:10px}.auth-card h1,.install-card h1{font-size:25px}.auth-card form,.install-card form{display:grid;gap:15px}.install-card{width:min(100%,560px)}.install-card .credit{margin-top:25px}.install-card code{direction:ltr;display:inline-block}.admin-main .page-head .eyebrow{margin:0}.public-body main{overflow:hidden}body.light{--bg:#f5f5f2;--bg2:#eeefeb;--surface:#fff;--raised:#f0f1f5;--text:#171a22;--muted:#5c6472;--faint:#7d8592;--border:rgba(20,25,40,.12);--accent:#4e68d7;--accent2:#087f72;--shadow:0 22px 70px rgba(20,25,40,.08);background:radial-gradient(ellipse at 50% -20%,rgba(108,140,255,.12),transparent 50%),var(--bg)}body.light .button.primary{color:white}body.light .orb-one,body.light .orb-two{opacity:.5} @media(max-width:1000px){.site-header nav{gap:13px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar{width:205px}.admin-main{margin-right:205px}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.site-header{height:auto;min-height:75px;padding:15px 20px;align-items:flex-start;gap:15px}.site-header nav{justify-content:flex-end;flex-wrap:wrap;gap:9px 14px;font-size:11px}.site-header nav>a:nth-child(2),.site-header nav>a:nth-child(3){display:none}.hero{padding:100px 22px 35px;min-height:550px}.hero-copy{font-size:15px}.hero-foot{margin-top:75px;gap:15px;flex-wrap:wrap}.orb-one{left:-90px}.orb-two{left:20px}.section{padding:65px 20px}.project-grid{grid-template-columns:1fr}.contact-section{grid-template-columns:1fr;gap:25px}.site-footer{padding:25px 20px;flex-wrap:wrap}.about-panel{display:block}.about-mark{margin-bottom:20px}.admin-sidebar{position:relative;width:auto;bottom:auto;display:flex;flex-direction:row;flex-wrap:wrap;padding:12px;gap:5px;border-left:0;border-bottom:1px solid var(--border)}.admin-sidebar .brand{width:100%;padding:0 7px 10px;margin:0}.admin-sidebar>a:not(.brand){font-size:11px;padding:8px}.sidebar-label,.sidebar-credit{display:none}.admin-main{margin:0;padding:24px 16px}.page-head h1{font-size:24px}.admin-grid{grid-template-columns:1fr}.stats-grid{gap:8px}.stat-card{padding:16px}.stat-card strong{font-size:28px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.file-grid{grid-template-columns:1fr 1fr}.upload-bar{align-items:stretch;flex-direction:column}.search-bar input{max-width:none;flex:1}.auth-card,.install-card{padding:23px}}@media(max-width:390px){.file-grid,.stats-grid{grid-template-columns:1fr}.site-header nav{max-width:230px}.hero h1{letter-spacing:-1px}.button{padding:10px 12px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ESCode visual refresh — editorial, premium, responsive-first */
:root{--bg:#0b0d12;--bg2:#11141c;--surface:#151923;--raised:#1b202c;--text:#f4f2ed;--muted:#a5a9b4;--faint:#747b89;--border:rgba(235,239,255,.105);--accent:#c5f277;--accent2:#8cded0;--danger:#fb7185;--success:#b8ef79;--radius:22px;--shadow:0 28px 90px rgba(0,0,0,.28);font-family:Vazirmatn,system-ui,sans-serif;color:var(--text);background:var(--bg)}
html{scroll-behavior:smooth;scroll-padding-top:100px}body{min-height:100vh;background:var(--bg);line-height:1.85;font-size:14px;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 82% 0%,rgba(197,242,119,.055),transparent 33%),radial-gradient(ellipse at 5% 40%,rgba(140,222,208,.045),transparent 35%)}a,button{transition:color .24s ease,background .24s ease,border-color .24s ease,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}::selection{background:var(--accent);color:#12160d}.site-header{position:sticky;top:0;z-index:30;height:78px;max-width:none;padding:0 max(28px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.brand{gap:11px;font-size:19px;letter-spacing:-.5px}.brand-mark{width:37px;height:37px;border:1px solid rgba(197,242,119,.4);border-radius:12px;background:linear-gradient(145deg,rgba(197,242,119,.17),rgba(140,222,208,.04));color:var(--accent);font-size:17px;font-weight:800;letter-spacing:-2px}.brand-word{direction:ltr!important}.brand-dot{color:var(--accent)}.site-nav{display:flex;align-items:center;gap:clamp(15px,2.2vw,30px);font-size:12px;color:var(--muted)}.site-nav>a:not(.button):hover{color:var(--accent)}.lang-switch{display:grid;place-items:center;min-width:39px;height:37px;border:1px solid var(--border);border-radius:12px;color:var(--text);font-weight:700;direction:ltr}.icon-button{width:38px;height:38px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer}.mobile-menu-toggle{display:none}.page-shell{width:100%;max-width:1180px;margin:0 auto;padding:0 28px}.hero-v2{max-width:none;min-height:620px;padding:112px 0 80px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center;gap:60px;isolation:isolate}.hero-content{position:relative;z-index:2}.hero-grid-bg{position:absolute;inset:0;z-index:-1;opacity:.23;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to left,black,transparent 80%)}.status-line{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:99px;padding:7px 13px;color:var(--muted);font-size:11px;margin-bottom:32px;background:rgba(255,255,255,.025)}.status-pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(197,242,119,.1);animation:softPulse 2.4s ease-in-out infinite}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--accent);font-weight:700;margin:0 0 15px}.hero-v2 h1{font-size:clamp(38px,5.1vw,66px);font-weight:600;line-height:1.38;letter-spacing:-1.8px;max-width:680px;margin:0 0 22px}.hero-v2 h1:after{content:"";display:block;width:72px;height:4px;border-radius:4px;background:var(--accent);margin-top:23px}.hero-copy{font-size:15px;line-height:2.1;color:var(--muted);max-width:530px;margin:0}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin-top:30px}.button{min-height:45px;border-radius:13px;padding:11px 17px;font-size:12px;gap:12px}.button.primary{background:var(--accent);border-color:var(--accent);color:#151a0d}.button.primary:hover{box-shadow:0 8px 26px rgba(197,242,119,.17);transform:translateY(-2px);background:#d2ff8a}.button.ghost{background:transparent;border-color:var(--border)}.button.ghost:hover{border-color:rgba(197,242,119,.5);background:rgba(197,242,119,.04)}.hero-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:52px;padding-top:21px;border-top:1px solid var(--border);color:var(--faint);font-size:10px}.hero-meta b{color:var(--accent);font-weight:600;margin-left:7px;direction:ltr;display:inline-block}.is-en .hero-meta b{margin-left:0;margin-right:7px}.hero-art{min-width:0;min-height:390px;position:relative;display:grid;place-items:center;perspective:1000px}.art-halo{position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(197,242,119,.09);filter:blur(80px)}.art-window{position:relative;width:min(100%,420px);border:1px solid rgba(255,255,255,.13);border-radius:20px;background:linear-gradient(145deg,#1a1f2a,#10131a);box-shadow:0 40px 100px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.05);overflow:hidden;transform:rotateY(-7deg) rotateX(3deg);animation:floatWindow 7s ease-in-out infinite}.is-en .art-window{transform:rotateY(7deg) rotateX(3deg)}.window-top{height:48px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:6px;padding:0 17px;color:#7e8795;font-size:10px;direction:ltr}.window-top i{width:7px;height:7px;border-radius:50%;background:#414958}.window-top i:first-child{background:#ef8c8c}.window-top i:nth-child(2){background:#e9c879}.window-top i:nth-child(3){background:#9bcf83}.window-top span{margin-left:auto}.window-code{font:12px/2.2 ui-monospace,SFMono-Regular,Consolas,monospace;color:#d7dce5;direction:ltr;text-align:left;padding:28px 27px 35px}.code-muted{color:#586271}.code-purple{color:#d4a7ff}.code-blue{color:#9bc6ff}.code-green{color:#c5f277}.cursor{display:inline-block;width:7px;height:14px;background:var(--accent);vertical-align:middle;animation:cursorBlink 1s steps(2,start) infinite}.floating-chip{position:absolute;z-index:2;padding:11px 15px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(15px);box-shadow:0 12px 35px rgba(0,0,0,.15);font-size:10px;color:var(--text);animation:floatChip 6s ease-in-out infinite}.chip-one{top:56px;right:-6px}.chip-two{bottom:55px;left:-5px;animation-delay:-2s}.section-v2{max-width:none;padding:94px 0;margin:0}.section-heading{align-items:end;margin-bottom:28px;gap:20px}.section-heading h2{font-size:clamp(26px,3.3vw,38px);font-weight:600;letter-spacing:-.8px;line-height:1.5;margin:0}.heading-dot{color:var(--accent)}.section-subtitle{color:var(--muted);font-size:12px;margin:7px 0 0}.text-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:var(--accent);white-space:nowrap}.text-link:hover{gap:15px}.project-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card-v2{padding:10px;min-width:0;min-height:0;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:20px;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .3s}.project-card-v2:hover{transform:translateY(-6px);border-color:rgba(197,242,119,.34);box-shadow:0 18px 50px rgba(0,0,0,.18)}.project-cover{position:relative;display:flex;align-items:center;justify-content:center;min-height:180px;overflow:hidden;border-radius:13px;background:radial-gradient(circle at 72% 28%,rgba(197,242,119,.14),transparent 35%),linear-gradient(135deg,#222a35,#141821)}.project-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 45%,rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.05);border-radius:inherit}.cover-2{background:radial-gradient(circle at 30% 70%,rgba(140,222,208,.17),transparent 36%),linear-gradient(135deg,#202c31,#14191e)}.cover-3{background:radial-gradient(circle at 70% 30%,rgba(193,164,255,.15),transparent 36%),linear-gradient(135deg,#2a2437,#171620)}.cover-index{position:absolute;top:14px;left:15px;color:rgba(255,255,255,.48);font:10px ui-monospace,monospace;direction:ltr}.cover-glyph{font-size:65px;font-weight:300;color:var(--accent);text-shadow:0 0 45px rgba(197,242,119,.15);transition:transform .5s cubic-bezier(.2,.7,.2,1)}.project-card-v2:hover .cover-glyph{transform:scale(1.12) rotate(-6deg)}.cover-label{position:absolute;bottom:12px;right:14px;font:9px ui-monospace,monospace;letter-spacing:1px;color:rgba(255,255,255,.48);direction:ltr}.project-card-content{padding:15px 8px 10px}.project-top{display:flex;align-items:center;justify-content:space-between}.pill{font-size:9px;padding:4px 9px;border-radius:99px;color:var(--accent2);border-color:rgba(140,222,208,.22);background:rgba(140,222,208,.04)}.project-arrow{color:var(--faint);font-size:17px}.project-card-v2 h3{font-size:18px;font-weight:600;margin:12px 0 5px}.project-card-v2 p{min-height:48px;font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 16px}.project-links{display:flex;gap:15px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:13px;font-size:10px;color:var(--muted)}.project-links a:hover{color:var(--accent)}.home-about-band{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 32px;margin:20px 0 80px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(110deg,rgba(197,242,119,.055),transparent 55%),var(--surface)}.home-about-band h2{font-size:clamp(21px,3vw,30px);font-weight:500;margin:0;line-height:1.6}.inner-hero{padding:100px 0 55px;max-width:850px}.inner-hero h1{font-size:clamp(36px,5.3vw,60px);line-height:1.4;letter-spacing:-1.3px;font-weight:600;margin:12px 0 20px}.inner-lead{max-width:720px;color:var(--muted);font-size:15px;line-height:2.15;margin:0}.about-details{display:grid;grid-template-columns:.65fr 1.35fr;gap:50px;border-top:1px solid var(--border)}.about-number{font:12px ui-monospace,monospace;color:var(--accent);direction:ltr;text-align:start}.about-number span{color:var(--faint);font-size:10px}.about-copy h2{font-size:25px;margin:0 0 20px;font-weight:600}.about-copy p{color:var(--muted);font-size:13px;line-height:2.2}.skill-list{margin-top:25px;gap:8px}.skill-chip{background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:7px 12px;font-size:11px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;border-top:1px solid var(--border)}.contact-aside{padding:10px 0}.contact-icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(197,242,119,.25);border-radius:17px;color:var(--accent);font-size:23px;background:rgba(197,242,119,.06)}.contact-aside h2{font-size:24px;line-height:1.7;margin:23px 0 10px}.contact-aside p{color:var(--muted);font-size:12px;margin-bottom:22px}.contact-form-v2{gap:17px;padding:25px;border-radius:19px;background:var(--surface);border:1px solid var(--border)}.contact-form-v2 label{gap:8px;color:var(--muted);font-size:11px}.contact-form-v2 input,.contact-form-v2 textarea{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:12px 14px;font-size:13px;color:var(--text);outline:none;min-height:46px}.contact-form-v2 textarea{min-height:125px;resize:vertical}.contact-form-v2 input:focus,.contact-form-v2 textarea:focus{border-color:rgba(197,242,119,.55);box-shadow:0 0 0 3px rgba(197,242,119,.06)}.contact-form-v2 button{justify-self:start}.project-detail-hero{max-width:900px}.project-detail-hero>.text-link{margin-bottom:35px}.project-detail-cover{position:relative;min-height:270px;margin-top:35px;border:1px solid var(--border);border-radius:22px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(197,242,119,.12),transparent 42%),linear-gradient(135deg,#202631,#11141b)}.project-detail-cover .cover-glyph{font-size:100px}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.site-footer{max-width:1180px;padding:28px;margin-top:35px;border-top:1px solid var(--border);font-size:10px;flex-wrap:wrap;color:var(--faint)}.site-footer .brand{font-size:16px;color:var(--text)}.site-footer .brand-mark{width:30px;height:30px;font-size:14px;border-radius:10px}.site-footer .credit{font-size:9px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}body.light{--bg:#f5f5f0;--bg2:#eeefe9;--surface:#fffefa;--raised:#f0f1e9;--text:#20251c;--muted:#60685c;--faint:#858c7f;--border:rgba(34,43,26,.13);--accent:#527b28;--accent2:#217e70;--shadow:0 22px 70px rgba(30,40,20,.08);background:var(--bg)}body.light:before{background:radial-gradient(ellipse at 82% 0%,rgba(128,173,72,.09),transparent 35%),radial-gradient(ellipse at 5% 40%,rgba(65,160,142,.055),transparent 35%)}body.light .art-window{background:linear-gradient(145deg,#fff,#f2f4ee);box-shadow:0 30px 80px rgba(35,45,25,.12),inset 0 1px white}body.light .window-code{color:#343b32}body.light .window-top{border-color:var(--border)}body.light .project-cover,body.light .project-detail-cover{background-color:#e7ebdf}body.light .button.primary{color:#fff}body.light .floating-chip{box-shadow:0 12px 35px rgba(30,40,20,.1)}body.light .hero-grid-bg{background-image:linear-gradient(rgba(30,40,20,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(30,40,20,.05) 1px,transparent 1px)}
@keyframes softPulse{0%,100%{box-shadow:0 0 0 4px rgba(197,242,119,.08)}50%{box-shadow:0 0 0 7px rgba(197,242,119,.015)}}@keyframes floatWindow{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes floatChip{0%,100%{translate:0 0}50%{translate:0 -7px}}@keyframes cursorBlink{to{opacity:0}}
@media(max-width:900px){.hero-v2{gap:28px;grid-template-columns:minmax(0,1fr) minmax(270px,.85fr);padding-top:80px}.hero-art{min-height:320px}.art-window{transform:none}.is-en .art-window{transform:none}.chip-one{right:0}.chip-two{left:0}.project-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{gap:35px}.site-header{padding-inline:24px}}
@media(max-width:680px){.site-header{height:68px;padding:0 18px}.mobile-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer}.mobile-menu-toggle span{display:block;width:15px;height:1.5px;background:currentColor;margin:auto;transition:transform .2s}.mobile-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.25px) rotate(45deg)}.mobile-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:calc(100% + 1px);left:12px;right:12px;flex-direction:column;align-items:stretch;gap:0;padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--bg2);box-shadow:var(--shadow);font-size:13px}.site-nav.is-open{display:flex;animation:menuIn .22s ease both}.site-nav>a{padding:12px 13px;border-radius:10px}.site-nav>a:hover{background:var(--surface)}.site-nav .icon-button{width:100%;height:42px;margin:5px 0}.site-nav .lang-switch{display:flex;width:100%;height:42px;margin-top:4px}.page-shell{padding:0 19px}.hero-v2{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:72px 0 35px;min-height:0}.hero-content{width:100%}.status-line{margin-bottom:23px;font-size:10px}.hero-v2 h1{font-size:clamp(35px,10vw,49px);line-height:1.5;letter-spacing:-1px;margin-bottom:17px}.hero-v2 h1:after{margin-top:18px;width:54px}.hero-copy{font-size:13px;line-height:2.15}.hero-actions{margin-top:24px}.hero-actions .button{flex:1}.hero-meta{gap:11px 18px;margin-top:29px;font-size:9px}.hero-art{min-height:270px;margin:8px 0 0}.art-window{width:calc(100% - 22px);max-width:390px;border-radius:16px}.window-top{height:39px}.window-code{font-size:11px;padding:20px 19px 24px}.art-halo{width:210px;height:210px}.floating-chip{font-size:9px;padding:8px 10px}.chip-one{top:14px;right:-1px}.chip-two{bottom:15px;left:-1px}.section-v2{padding:62px 0}.section-heading{align-items:flex-start;margin-bottom:22px}.section-heading h2{font-size:26px}.section-subtitle{font-size:11px}.section-heading>.text-link{font-size:10px;margin-top:10px}.project-grid-v2{grid-template-columns:1fr;gap:14px}.project-card-v2{padding:9px;border-radius:17px}.project-cover{min-height:170px}.project-card-content{padding:13px 8px 9px}.project-card-v2 h3{font-size:17px}.project-card-v2 p{min-height:0;margin-bottom:14px}.home-about-band{margin:0 0 45px;padding:22px;align-items:flex-start;flex-direction:column;gap:15px}.home-about-band h2{font-size:23px}.home-about-band .button{width:100%}.inner-hero{padding:70px 0 28px}.inner-hero h1{font-size:clamp(34px,9vw,46px);letter-spacing:-.8px}.inner-lead{font-size:13px;line-height:2.1}.about-details{grid-template-columns:1fr;gap:20px}.about-number{font-size:11px}.about-copy h2{font-size:22px}.about-copy p{font-size:12px}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-aside h2{font-size:22px}.contact-form-v2{padding:17px}.contact-form-v2 button{width:100%}.project-detail-cover{min-height:200px}.project-detail-cover .cover-glyph{font-size:75px}.site-footer{padding:22px 19px;margin-top:20px;gap:13px}.site-footer>span{width:100%}.site-footer .credit{font-size:9px}.reveal{transform:translateY(10px)}}
@media(max-width:360px){.page-shell{padding-inline:15px}.hero-v2 h1{font-size:34px}.hero-actions{flex-direction:column;align-items:stretch}.hero-meta{display:grid;grid-template-columns:1fr 1fr}.section-heading>.text-link{white-space:normal}.project-cover{min-height:150px}}
@keyframes menuIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transform:none!important;translate:none!important}}

/* ESCode Motion System — layered, restrained, and responsive */
:root{--ease-out:cubic-bezier(.16,1,.3,1);--ease-spring:cubic-bezier(.22,1.25,.36,1)}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{transition:background-color .45s ease,color .35s ease}
body:not(.is-ready) .site-header,body:not(.is-ready) .hero-content,body:not(.is-ready) .hero-art{opacity:0;transform:translateY(10px)}
body.is-ready .site-header{animation:headerEnter .7s var(--ease-out) both}
body.is-ready .hero-content{animation:heroEnter .85s .08s var(--ease-out) both}
body.is-ready .hero-art{animation:artEnter 1s .16s var(--ease-out) both}
@keyframes headerEnter{from{opacity:0;transform:translateY(-14px);backdrop-filter:blur(0)}to{opacity:1;transform:translateY(0);backdrop-filter:blur(18px)}}
@keyframes heroEnter{from{opacity:0;transform:translateY(22px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes artEnter{from{opacity:0;transform:translateY(25px) scale(.975);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
.brand{gap:11px}.brand-logo{width:42px;height:42px;display:block;flex:0 0 auto;filter:drop-shadow(0 5px 14px rgba(124,143,255,.18));transition:transform .55s var(--ease-spring),filter .35s ease}.brand:hover .brand-logo{transform:rotate(-7deg) scale(1.07);filter:drop-shadow(0 8px 22px rgba(94,234,212,.24))}.brand-word{letter-spacing:-.9px}.brand-dot{color:var(--accent);display:inline-block;transition:transform .35s var(--ease-spring)}.brand:hover .brand-dot{transform:translate(2px,-2px)}
.site-header{position:sticky;top:0;z-index:20;max-width:none;padding-inline:max(24px,calc((100vw - 1200px)/2 + 28px));background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);transition:background .4s ease,border-color .4s ease,box-shadow .4s ease}.site-header nav>a:not(.lang-switch){position:relative}.site-header nav>a:not(.button):not(.lang-switch)::after{content:"";position:absolute;bottom:-5px;right:0;width:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .35s var(--ease-out)}.site-header nav>a:not(.button):not(.lang-switch):hover::after{width:100%}
.icon-button,.lang-switch,.button{transition:transform .35s var(--ease-out),border-color .3s ease,background .35s ease,color .3s ease,box-shadow .35s ease}.icon-button:hover,.lang-switch:hover{transform:translateY(-2px) rotate(-3deg);box-shadow:0 8px 22px rgba(0,0,0,.12)}.button.primary{box-shadow:0 7px 22px color-mix(in srgb,var(--accent) 20%,transparent)}.button.primary:hover{box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 28%,transparent);transform:translateY(-3px)}
.hero-grid-bg{animation:gridDrift 30s linear infinite;mask-image:linear-gradient(to bottom,#000,transparent 88%)}.art-halo{animation:haloBreathe 7s ease-in-out infinite}.art-window{transform-origin:center;animation:windowFloat 8s ease-in-out infinite}.floating-chip{transition:transform .45s var(--ease-spring),border-color .35s ease,box-shadow .35s ease}.floating-chip:hover{transform:translateY(-5px) scale(1.04);border-color:var(--accent);box-shadow:0 14px 38px rgba(0,0,0,.18)}.status-pulse{animation:statusPulse 2.4s ease-in-out infinite}.cursor{animation:cursorBlink 1s steps(2,start) infinite}
@keyframes gridDrift{from{background-position:0 0,0 0}to{background-position:0 44px,44px 0}}@keyframes haloBreathe{0%,100%{transform:scale(.96);opacity:.55}50%{transform:scale(1.06);opacity:1}}@keyframes windowFloat{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -7px;rotate:-.4deg}}@keyframes statusPulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent2) 25%,transparent)}50%{box-shadow:0 0 0 7px transparent}}
.reveal{transition:opacity .8s var(--ease-out),transform .8s var(--ease-out),filter .8s var(--ease-out);transition-delay:var(--reveal-delay,0ms);filter:blur(3px)}.reveal.is-visible{filter:blur(0)}.project-card-v2{will-change:transform;transition:transform .5s var(--ease-out),border-color .4s ease,box-shadow .5s ease}.project-card-v2:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(0,0,0,.15)}.project-cover{isolation:isolate}.project-cover::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.1) 48%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease-out)}.project-card:hover .project-cover::after{transform:translateX(120%)}.project-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out),filter .6s ease;z-index:0}.project-card:hover .project-cover-image{transform:scale(1.055);filter:saturate(1.08)}.project-detail-image{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.project-description{max-width:850px;margin:28px auto 0;padding:24px 28px;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--muted);font-size:15px;line-height:2.2;white-space:normal;overflow-wrap:anywhere;box-shadow:var(--shadow)}
/* Mobile-first admin drawer */
.admin-mobile-toggle{display:none}.admin-sidebar-backdrop{display:none}.admin-sidebar .brand-logo{width:37px;height:37px}.admin-sidebar>a:not(.brand){display:flex;align-items:center;gap:10px;min-height:45px;transition:background .25s ease,transform .25s var(--ease-out),color .25s ease}.admin-sidebar>a:not(.brand):hover{transform:translateX(-3px)}.admin-sidebar>a[href$="/projects"]::before{content:""}.admin-main{min-width:0}.page-head{flex-wrap:wrap}.page-head .button{white-space:nowrap}.admin-body .panel,.admin-body .stat-card,.admin-body .feature-card,.admin-body .file-card{box-shadow:0 12px 35px rgba(0,0,0,.06);transition:transform .45s var(--ease-out),border-color .3s ease,box-shadow .4s ease}.admin-body .feature-card:hover,.admin-body .file-card:hover{box-shadow:0 17px 42px rgba(0,0,0,.12)}.form-grid{align-items:start}.form-grid input,.form-grid textarea,.form-grid select,.auth-card input{min-height:46px}.form-grid textarea{min-height:130px}.upload-field small{font-size:11px;color:var(--faint)}.admin-cover-preview{display:block;width:min(100%,480px);max-height:260px;object-fit:cover;border:1px solid var(--border);border-radius:15px;margin-top:9px;background:var(--bg2);transition:opacity .3s ease,transform .4s var(--ease-out)}.admin-cover-preview[hidden]{display:none}.admin-cover-preview.preview-loaded{animation:previewIn .45s var(--ease-out) both}@keyframes previewIn{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}
@media (max-width:1000px) and (min-width:681px){.admin-sidebar{width:215px}.admin-main{margin-right:215px;padding:28px 22px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
 .site-header{padding:10px 16px;height:70px;min-height:70px;align-items:center;gap:10px}.brand{font-size:19px;gap:8px}.brand-logo{width:37px;height:37px}.site-nav{z-index:25}
 .admin-mobile-toggle{position:sticky;top:0;z-index:42;display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:58px;padding:10px 17px;border:0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg2) 86%,transparent);backdrop-filter:blur(18px);color:var(--text);cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.08)}.admin-mobile-toggle span{display:block;width:17px;height:2px;border-radius:2px;background:var(--accent);transition:transform .3s ease,opacity .25s ease}.admin-mobile-toggle b{font-size:13px;font-weight:600;margin-right:5px}.admin-menu-open .admin-mobile-toggle span:first-child{transform:translateY(7px) rotate(45deg)}.admin-menu-open .admin-mobile-toggle span:nth-child(2){opacity:0}.admin-menu-open .admin-mobile-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .admin-sidebar{position:fixed;z-index:41;top:0;right:0;bottom:0;width:min(84vw,330px);height:100dvh;padding:calc(env(safe-area-inset-top) + 22px) 17px calc(env(safe-area-inset-bottom) + 18px);display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:7px;border:0;border-left:1px solid var(--border);border-radius:0 0 0 24px;background:var(--bg2);box-shadow:-25px 0 70px rgba(0,0,0,.2);overflow-y:auto;transform:translateX(105%);visibility:hidden;transition:transform .45s var(--ease-out),visibility .45s;will-change:transform}.admin-menu-open .admin-sidebar{transform:translateX(0);visibility:visible}.admin-sidebar .brand{width:100%;padding:0 8px 22px;margin:0 0 12px;flex:0 0 auto}.admin-sidebar>a:not(.brand){padding:13px 14px;min-height:48px;font-size:13px;border:1px solid transparent}.admin-sidebar>a:not(.brand):active{transform:scale(.98)}.sidebar-label{display:block;margin:8px 0 0;padding:0 14px;font-size:10px}.sidebar-credit{display:block;margin-top:auto;padding:18px 8px 0;font-size:9px}.admin-sidebar-backdrop{position:fixed;inset:0;z-index:40;display:block;background:rgba(3,5,10,.58);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s}.admin-menu-open .admin-sidebar-backdrop{opacity:1;visibility:visible}.admin-main{margin:0;padding:22px 15px calc(30px + env(safe-area-inset-bottom));width:100%;max-width:none}.page-head{align-items:flex-start;gap:14px;margin-bottom:20px}.page-head h1{font-size:25px;line-height:1.45}.page-head .button{min-height:42px;padding:9px 12px;font-size:11px}.eyebrow{font-size:9px;letter-spacing:1.2px}.muted{line-height:1.9}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:15px;border-radius:17px}.stat-card span{font-size:11px;line-height:1.7}.stat-card strong{font-size:29px;margin-top:4px}.admin-grid{grid-template-columns:1fr;gap:11px}.feature-card{padding:19px;border-radius:18px}.feature-card h2{font-size:15px}.panel{padding:16px;border-radius:18px}.form-grid{grid-template-columns:minmax(0,1fr);gap:15px;padding:16px}.form-grid .full{grid-column:1}.form-grid label{font-size:12px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px;min-height:48px;padding:12px}.form-grid textarea{min-height:150px}.form-grid .check{flex-direction:row;justify-content:flex-start;align-items:center}.form-grid .check input{width:21px;height:21px;min-height:21px}.form-grid button[type=submit],.project-editor>.button{width:100%;min-height:48px}.upload-bar,.search-bar{flex-direction:column;align-items:stretch;padding:13px;gap:10px}.upload-bar input[type=file]{width:100%;font-size:12px}.upload-bar .button,.search-bar .button{min-height:45px;width:100%}.search-bar input{max-width:none;width:100%;min-height:46px;font-size:16px}.file-grid{grid-template-columns:1fr;gap:10px}.file-card{padding:16px;border-radius:17px}.file-card h3{white-space:normal;overflow-wrap:anywhere;line-height:1.8}.rename-form{flex-wrap:wrap}.rename-form input{min-height:42px;font-size:14px;flex:1 1 130px}.table-wrap{overflow:visible;border:0;background:transparent;padding:0;box-shadow:none}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%;min-width:0}.table-wrap thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.table-wrap tr{margin:0 0 12px;padding:13px;border:1px solid var(--border);border-radius:15px;background:var(--surface);overflow-wrap:anywhere}.table-wrap td{display:grid;grid-template-columns:minmax(72px, .36fr) minmax(0,1fr);gap:10px;max-width:none;padding:9px 4px;border-bottom:1px solid var(--border);text-align:right}.table-wrap td:last-child{border-bottom:0}.table-wrap td::before{content:attr(data-label);color:var(--muted);font-size:10px}.table-wrap td .inline{flex-wrap:wrap}.table-wrap td .button{min-height:36px}.auth,.install-body{padding:16px}.auth-card,.install-card{padding:22px;border-radius:22px}.auth-logo{width:60px;height:60px}.admin-body .notice{font-size:11px;line-height:1.9}.admin-cover-preview{max-height:220px}.project-description{padding:18px;font-size:13px;line-height:2.1}
}
@media(max-width:380px){.admin-main{padding-inline:11px}.stats-grid{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:stretch}.page-head .button{width:100%}.admin-sidebar{width:min(90vw,310px)}.table-wrap td{grid-template-columns:70px minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){body:not(.is-ready) .site-header,body:not(.is-ready) .hero-content,body:not(.is-ready) .hero-art{opacity:1;transform:none}body.is-ready .site-header,body.is-ready .hero-content,body.is-ready .hero-art{animation:none} .art-window,.art-halo,.hero-grid-bg,.status-pulse{animation:none!important}}
::view-transition-old(root),::view-transition-new(root){animation-duration:.42s;animation-timing-function:cubic-bezier(.16,1,.3,1)}

/* ESCode 1.2.2 — refined motion, resilient mobile navigation and contact socials */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-spring:cubic-bezier(.2,.85,.25,1);--motion-fast:180ms;--motion-base:320ms;--motion-slow:560ms}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{transition:background-color .45s var(--ease-out),color .35s ease}
.site-header{position:relative;z-index:60;isolation:isolate;transition:background .35s ease,border-color .35s ease}
.brand-logo{transition:transform .55s var(--ease-out),filter .45s ease}
.brand:hover .brand-logo{transform:rotate(-5deg) scale(1.055);filter:drop-shadow(0 5px 14px color-mix(in srgb,var(--accent) 22%,transparent))}
.site-nav>a,.site-nav>button{transition:color .24s ease,background .28s ease,border-color .28s ease,transform .35s var(--ease-out)}
.site-nav>a:not(.lang-switch):hover{transform:translateY(-1px)}
.button,.social-link,.project-card-v2,.feature-card,.file-card{transition-timing-function:var(--ease-out)}
.button:active,.social-link:active{transform:scale(.975)}
::selection{background:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--text)}
.contact-layout{align-items:start}
.contact-aside{min-width:0}
.social-links{display:grid;grid-template-columns:1fr;gap:10px;max-width:380px;margin-top:24px}
.social-link{display:flex;align-items:center;gap:13px;min-height:58px;padding:12px 15px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(115deg,color-mix(in srgb,var(--surface) 95%,var(--accent) 5%),var(--surface));color:var(--text);box-shadow:0 8px 25px rgba(0,0,0,.045)}
.social-link svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.social-link span{font-size:13px;font-weight:650;direction:ltr}
.social-link b{margin-inline-start:auto;color:var(--muted);font-size:15px;font-weight:500;transition:transform .35s var(--ease-out),color .25s ease}
.social-link:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 16px 36px rgba(0,0,0,.11)}
.social-link:hover b{transform:translate(2px,-2px);color:var(--accent)}
.social-note{font-size:11px!important;margin-top:14px!important;opacity:.8}
/* Mobile site menu: fixed to the viewport, animated closed state, bounded height and reliable stacking. */
@media(max-width:680px){
 .site-header{position:relative;z-index:100;overflow:visible}
 .mobile-menu-toggle{position:relative;z-index:102;flex:0 0 42px;width:42px;height:42px;border-radius:14px;transition:background .25s ease,border-color .25s ease,transform .25s ease}
 .mobile-menu-toggle[aria-expanded="true"]{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
 .site-nav,.site-nav.is-open{position:fixed;top:calc(env(safe-area-inset-top, 0px) + 78px);left:14px;right:14px;bottom:auto;z-index:101;display:flex;flex-direction:column;align-items:stretch;gap:5px;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 96px);overflow-y:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--bg2) 94%,transparent);-webkit-backdrop-filter:blur(24px) saturate(1.3);backdrop-filter:blur(24px) saturate(1.3);box-shadow:0 24px 70px rgba(0,0,0,.34);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-9px) scale(.985);transform-origin:top center;transition:opacity .24s ease,transform .32s var(--ease-out),visibility .24s ease}
 .site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
 .site-nav>a,.site-nav>button{display:flex;align-items:center;justify-content:flex-start;min-height:47px;padding:11px 14px;border-radius:12px;text-align:start}
 .site-nav>a:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
 .site-nav .icon-button,.site-nav .lang-switch{width:100%;height:46px;margin:0;justify-content:center}
 .public-menu-open{overflow:hidden;overscroll-behavior:none}
 .social-links{grid-template-columns:1fr;max-width:none;gap:9px}
 .social-link{min-height:56px}
 .contact-layout{gap:30px}
}
@media(min-width:681px){.site-nav{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}.mobile-menu-toggle{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}}

/* ESCode 1.2.3 — polished social actions, motion, mobile navigation and cloud workspace */
:root{--motion-smooth:cubic-bezier(.16,1,.3,1);--motion-soft:cubic-bezier(.2,.75,.25,1)}
.site-header{position:relative;z-index:120;isolation:isolate;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
.brand-logo{transition:transform .55s var(--motion-smooth),filter .4s ease}.brand:hover .brand-logo{transform:rotate(-7deg) scale(1.07);filter:drop-shadow(0 0 13px color-mix(in srgb,var(--accent) 35%,transparent))}
.mobile-menu-toggle{display:none;position:relative;z-index:122;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:44px;height:44px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(145deg,var(--surface),var(--bg2));box-shadow:0 7px 20px rgba(0,0,0,.12);cursor:pointer;transition:transform .35s var(--motion-smooth),border-color .3s ease,box-shadow .35s ease}
.mobile-menu-toggle:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 10px 27px rgba(0,0,0,.18)}
.mobile-menu-toggle span{display:block;width:18px;height:2px;margin:0;border-radius:9px;background:var(--text);transform-origin:center;transition:transform .42s var(--motion-smooth),opacity .22s ease,width .3s ease,background .3s ease}
.mobile-menu-toggle span:nth-child(2){width:12px;align-self:flex-start;margin-inline-start:12px}
.mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg);width:19px}
.mobile-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0;transform:scaleX(.2)}
.mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg);width:19px}
.home-socials{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px;max-width:590px}
.home-social-link{position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:10px;min-height:43px;padding:8px 12px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(140deg,color-mix(in srgb,var(--surface) 90%,transparent),var(--bg2));color:var(--muted);font-size:11px;font-weight:600;overflow:hidden;transition:transform .4s var(--motion-smooth),border-color .35s ease,color .3s ease,box-shadow .4s ease}
.home-social-link:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,transparent 15%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 78%);transform:translateX(-120%);transition:transform .7s var(--motion-smooth)}
.home-social-link:hover{transform:translateY(-4px);color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 12px 28px rgba(0,0,0,.12)}.home-social-link:hover:before{transform:translateX(120%)}
.social-mini-icon{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--border);border-radius:9px;background:var(--raised);color:var(--accent);font-size:10px;font-weight:800;direction:ltr;transition:transform .4s var(--motion-smooth),background .3s ease}
.home-social-link:hover .social-mini-icon{transform:rotate(-8deg) scale(1.08);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.home-social-link b{font-size:13px;font-weight:500;color:var(--accent);margin-inline-start:3px;transition:transform .3s var(--motion-smooth)}.home-social-link:hover b{transform:translate(2px,-2px)}
.social-telegram .social-mini-icon,.social-bot .social-mini-icon{color:#64b5f6}.social-instagram .social-mini-icon{color:#f3a4cf}.social-bot{border-color:color-mix(in srgb,#64b5f6 30%,var(--border))}
.social-link{position:relative;overflow:hidden;transition:transform .4s var(--motion-smooth),background .35s ease,border-color .35s ease,box-shadow .35s ease}.social-link:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.07),transparent 80%);transform:translateX(-120%);transition:transform .65s var(--motion-smooth);pointer-events:none}.social-link:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(0,0,0,.12)}.social-link:hover:after{transform:translateX(120%)}.social-link svg{transition:transform .35s var(--motion-smooth)}.social-link:hover svg{transform:scale(1.12) rotate(-5deg)}.social-link-bot{border-color:color-mix(in srgb,#64b5f6 35%,var(--border))}.social-bot-symbol{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(100,181,246,.12);color:#64b5f6}
/* A smooth mobile menu that never leaves an invisible overlay behind. */
@media(max-width:680px){
 .site-header{position:sticky;top:0;z-index:120;height:68px;min-height:68px;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35)}
 .mobile-menu-toggle{display:flex;flex:0 0 44px}
 .site-nav,.site-nav.is-open{position:fixed;top:calc(env(safe-area-inset-top,0px) + 78px);left:14px;right:14px;bottom:auto;z-index:121;display:flex;flex-direction:column;align-items:stretch;gap:5px;max-height:calc(100dvh - env(safe-area-inset-top,0px) - 94px);overflow-y:auto;overscroll-behavior:contain;padding:11px;border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--bg2) 94%,transparent);-webkit-backdrop-filter:blur(28px) saturate(1.4);backdrop-filter:blur(28px) saturate(1.4);box-shadow:0 28px 80px rgba(0,0,0,.32);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px) scale(.975);transform-origin:top center;transition:opacity .28s ease,transform .42s var(--motion-smooth),visibility .28s ease}
 .site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
 .site-nav>a,.site-nav>button{min-height:47px;border-radius:13px;padding:11px 14px;transition:background .25s ease,transform .3s var(--motion-smooth),color .25s ease}
 .site-nav.is-open>a,.site-nav.is-open>button{animation:navItemIn .42s var(--motion-smooth) both}.site-nav.is-open>*:nth-child(1){animation-delay:25ms}.site-nav.is-open>*:nth-child(2){animation-delay:55ms}.site-nav.is-open>*:nth-child(3){animation-delay:85ms}.site-nav.is-open>*:nth-child(4){animation-delay:115ms}.site-nav.is-open>*:nth-child(5){animation-delay:145ms}.site-nav.is-open>*:nth-child(6){animation-delay:175ms}
 .site-nav>a:active,.site-nav>button:active{transform:scale(.985);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}
 .home-socials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.home-social-link{justify-content:flex-start;min-width:0;padding:8px 10px;min-height:45px}.home-social-link span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-social-link b{margin-inline-start:auto}
 .social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.social-link{min-width:0;padding:12px}.social-link-bot{grid-column:1/-1}
 .file-grid{grid-template-columns:minmax(0,1fr)}.file-card{min-width:0;overflow:hidden}.file-card h3{overflow-wrap:anywhere}.file-card .button{min-height:40px}.rename-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.rename-form input{min-width:0;width:100%}.file-card>form.inline{display:inline-flex;max-width:100%;margin:5px 5px 0 0}.upload-bar input[type=file]{max-width:100%;white-space:normal}.admin-sidebar{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.admin-menu-open,.public-menu-open{overscroll-behavior:none}
}
@keyframes navItemIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
/* Admin workspace motion */
.admin-sidebar{transition:box-shadow .4s ease,border-color .35s ease}.admin-sidebar>a:not(.brand){transition:transform .35s var(--motion-smooth),background .3s ease,color .3s ease,border-color .3s ease}.admin-sidebar>a:not(.brand):hover{transform:translateX(-4px);border-color:var(--border)}
.admin-mobile-toggle{transition:background .3s ease,box-shadow .35s ease}.admin-sidebar-backdrop{touch-action:manipulation}.admin-menu-open .admin-sidebar{box-shadow:-30px 0 85px rgba(0,0,0,.28)}
.admin-body .page-head,.admin-body .stats-grid,.admin-body .admin-grid,.admin-body .panel,.admin-body .file-grid{animation:adminContentIn .62s var(--motion-smooth) both}.admin-body .stats-grid{animation-delay:45ms}.admin-body .admin-grid,.admin-body .file-grid{animation-delay:90ms}.admin-body .stat-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.admin-body .button{transition:transform .3s var(--motion-smooth),box-shadow .3s ease,background .25s ease}.admin-body .button:active{transform:scale(.98)}
@keyframes adminContentIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
/* Cloud cards: better wrapping and touch ergonomics at every width */
.file-grid{align-items:stretch;gap:15px}.file-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px;transition:transform .4s var(--motion-smooth),border-color .3s ease,box-shadow .4s ease}.file-card h3{width:100%;overflow-wrap:anywhere;word-break:break-word}.file-card .muted{overflow-wrap:anywhere}.file-card .rename-form{width:100%;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.file-card .rename-form input{flex:1 1 140px;min-width:0}.file-card .rename-form button{flex:0 0 auto}.file-card .inline{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.file-icon{display:grid;place-items:center;min-width:54px;height:48px;padding:0 10px;border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 15%,var(--surface)),var(--raised));border:1px solid var(--border);color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.5px;transition:transform .4s var(--motion-smooth)}.file-card:hover .file-icon{transform:translateY(-2px) rotate(-3deg)}
@media(max-width:420px){.home-socials{grid-template-columns:1fr 1fr}.home-social-link{gap:7px;font-size:10px}.social-links{grid-template-columns:1fr}.social-link-bot{grid-column:auto}.file-card .button{max-width:100%}.rename-form{grid-template-columns:minmax(0,1fr)}.rename-form button{width:100%}}
@media(prefers-reduced-motion:reduce){.home-social-link,.home-social-link:before,.social-link,.social-link:after,.mobile-menu-toggle span,.admin-body .page-head,.admin-body .stats-grid,.admin-body .admin-grid,.admin-body .panel,.admin-body .file-grid{animation:none!important;transition:none!important}}

/* ESCode 1.3.0 visual system */
:root{--es-glow:rgba(120,145,255,.18);--es-glow-2:rgba(110,235,210,.12)}
body{overflow-x:hidden}
.ambient-bg{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:-1;background:radial-gradient(circle at 12% 18%,var(--es-glow),transparent 28%),radial-gradient(circle at 88% 72%,var(--es-glow-2),transparent 30%)}
.ambient-bg span{position:absolute;width:34vw;height:34vw;border:1px solid color-mix(in srgb,var(--accent) 9%,transparent);border-radius:50%;filter:blur(.2px);animation:ambientFloat 18s ease-in-out infinite alternate}.ambient-bg span:nth-child(1){top:-12%;left:-8%}.ambient-bg span:nth-child(2){right:-12%;top:25%;width:28vw;height:28vw;animation-delay:-6s}.ambient-bg span:nth-child(3){left:35%;bottom:-25%;width:24vw;height:24vw;animation-delay:-11s}@keyframes ambientFloat{from{transform:translate3d(0,0,0) scale(.96)}to{transform:translate3d(2vw,-3vh,0) scale(1.08)}}
.scroll-progress{position:fixed;z-index:9999;top:0;left:0;width:100%;height:2px;background:var(--accent);transform-origin:left center;transform:scaleX(0);box-shadow:0 0 18px var(--accent)}
.animated-logo{transform-origin:center;animation:logoBreathe 4.5s ease-in-out infinite;filter:drop-shadow(0 0 0 transparent);transition:filter .35s ease,transform .35s ease}.brand:hover .animated-logo{animation:none;transform:rotate(-4deg) scale(1.08);filter:drop-shadow(0 8px 22px var(--es-glow))}@keyframes logoBreathe{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.035) rotate(.7deg)}}
.icon-button,.lang-switch{position:relative;overflow:hidden;backdrop-filter:blur(14px);border:1px solid var(--border);box-shadow:0 8px 30px rgba(0,0,0,.08);transition:transform .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease}.icon-button:hover,.lang-switch:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 10px 34px var(--es-glow)}
.about-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,340px);gap:clamp(30px,7vw,100px);align-items:center}.about-photo-wrap{position:relative;justify-self:end;width:min(100%,330px);aspect-ratio:1;border-radius:32px;padding:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 30%,transparent),transparent 55%);box-shadow:0 30px 80px rgba(0,0,0,.18)}.about-photo-wrap:after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.16);border-radius:26px;pointer-events:none}.about-photo{width:100%;height:100%;display:block;object-fit:cover;border-radius:25px}.about-role{display:inline-flex;padding:8px 13px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:color-mix(in srgb,var(--surface) 82%,transparent);margin-top:14px}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:28px}.tech-card{display:flex;align-items:center;gap:11px;min-height:68px;padding:12px 14px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--raised) 80%,transparent));box-shadow:0 12px 30px rgba(0,0,0,.05);transition:transform .35s ease,border-color .35s ease}.tech-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.tech-card img{width:30px;height:30px;object-fit:contain}.tech-card span{font-weight:700;font-size:13px}
.cloud-thumb{width:100%;height:150px;object-fit:cover;border-radius:18px;border:1px solid var(--border);background:var(--raised);display:block}
.profile-admin-preview,.note-cover-preview{display:block;width:min(100%,320px);max-height:260px;object-fit:cover;border-radius:20px;border:1px solid var(--border);margin-top:10px}.note-editor{display:grid;gap:16px}.note-toolbar{display:flex;flex-wrap:wrap;gap:7px;padding:9px;border:1px solid var(--border);border-radius:18px;background:var(--raised);position:sticky;top:12px;z-index:5}.note-toolbar button{min-width:42px;height:40px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer;transition:transform .2s ease,border-color .2s ease}.note-toolbar button:hover{transform:translateY(-2px);border-color:var(--accent)}.note-textarea{min-height:300px;line-height:1.95;resize:vertical}.table-thumb{width:48px;height:38px;object-fit:cover;border-radius:9px;vertical-align:middle;margin-inline-end:8px}
.settings-editor{position:relative}.settings-editor:before,.note-editor:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,transparent,rgba(255,255,255,.025),transparent);background-size:220% 100%;animation:panelSheen 9s linear infinite}@keyframes panelSheen{from{background-position:200% 0}to{background-position:-20% 0}}
@media(max-width:760px){.about-hero{grid-template-columns:1fr}.about-photo-wrap{justify-self:start;width:min(72vw,280px)}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ambient-bg span{width:55vw;height:55vw}.note-toolbar{top:6px}}
@media(max-width:430px){.tech-grid{grid-template-columns:1fr 1fr}.tech-card{min-height:60px;padding:10px}.tech-card img{width:25px;height:25px}.about-photo-wrap{width:74vw}.cloud-thumb{height:125px}}
@media(prefers-reduced-motion:reduce){.ambient-bg span,.animated-logo,.settings-editor:before,.note-editor:before{animation:none!important}.scroll-progress{display:none}}

/* ESCode 1.3.1 — Profile Studio, ES monogram, polished responsive cards */
.brand-logo{width:42px;height:42px;filter:drop-shadow(0 4px 12px rgba(145,164,255,.13))}.animated-logo{animation:esLogoBreathe 7s ease-in-out infinite}@keyframes esLogoBreathe{0%,100%{filter:drop-shadow(0 3px 8px rgba(145,164,255,.08))}50%{filter:drop-shadow(0 5px 16px rgba(145,164,255,.23))}}
.social-mini-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--border)}.social-mini-icon svg,.profile-socials svg,.profile-brand-icon svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.social-github .social-mini-icon{color:var(--text)}.social-telegram .social-mini-icon,.telegram-icon{color:#35a9e8}.social-instagram .social-mini-icon,.instagram-icon{color:#d56ab4}
.home-tech{padding-top:22px!important;padding-bottom:65px!important}.tech-showcase-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.tech-showcase-item{min-height:90px;padding:17px 13px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid var(--border);border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--raised) 72%,transparent));box-shadow:0 10px 30px rgba(0,0,0,.045);transition:transform .45s var(--ease-out),border-color .3s,box-shadow .35s}.tech-showcase-item:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 48%,var(--border));box-shadow:0 16px 35px rgba(0,0,0,.11)}.tech-showcase-item img{width:29px;height:29px;object-fit:contain}.tech-showcase-item span{font-size:13px;font-weight:700}
.github-profile-page{padding-bottom:80px}.profile-cover{height:190px;position:relative;overflow:hidden;border:1px solid var(--border);border-radius:0 0 26px 26px;background:radial-gradient(ellipse at 70% 15%,rgba(145,164,255,.28),transparent 36%),radial-gradient(ellipse at 18% 90%,rgba(94,234,212,.13),transparent 34%),linear-gradient(120deg,var(--surface),var(--bg2));isolation:isolate}.profile-cover:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 80%,transparent);animation:gridDrift 32s linear infinite}.cover-mark{position:absolute;right:9%;top:50%;transform:translateY(-50%);font-size:clamp(74px,15vw,150px);font-weight:800;letter-spacing:-.1em;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--text) 24%,transparent);opacity:.65;direction:ltr}.cover-orbit{position:absolute;border:1px solid rgba(145,164,255,.2);border-radius:50%;aspect-ratio:1;animation:profileOrbit 24s linear infinite}.orbit-a{width:230px;right:20%;top:-110px}.orbit-b{width:340px;right:12%;top:-160px;animation-direction:reverse}@keyframes profileOrbit{to{transform:rotate(360deg)}}.github-profile-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:28px;align-items:start;margin-top:-55px;position:relative}.github-profile-sidebar{padding:0 8px 20px;min-width:0}.profile-avatar-wrap{position:relative;width:142px;height:142px;margin-bottom:17px;padding:6px;border:1px solid var(--border);border-radius:50%;background:var(--bg);box-shadow:0 10px 40px rgba(0,0,0,.18)}.profile-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;display:grid;place-items:center}.profile-avatar-placeholder{background:radial-gradient(circle at 28% 20%,rgba(94,234,212,.22),transparent 40%),linear-gradient(145deg,#222b40,#11151e);border:1px solid rgba(145,164,255,.35);color:#f8fafc;font-size:43px;font-weight:800;letter-spacing:-5px;padding-right:5px;direction:ltr}.avatar-status{position:absolute;bottom:10px;right:9px;width:19px;height:19px;border:4px solid var(--bg);border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.12)}.profile-name{font-size:24px;line-height:1.4;margin:0;overflow-wrap:anywhere}.profile-username{font-size:15px;color:var(--muted);margin:2px 0 16px;direction:ltr;text-align:right}.profile-bio{font-size:13px;color:var(--muted);line-height:2.1;overflow-wrap:anywhere}.profile-role{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:7px 12px;font-size:11px;color:var(--muted);background:var(--surface);margin:5px 0 16px}.profile-socials{display:flex;gap:10px;margin:6px 0 19px}.profile-socials a{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);transition:transform .3s,border-color .3s,background .3s}.profile-socials a:hover{transform:translateY(-4px);border-color:var(--accent);background:var(--raised)}.profile-contact{width:100%;justify-content:center}.github-profile-main{min-width:0;padding-top:65px}.profile-tabbar{display:flex;gap:22px;align-items:center;border-bottom:1px solid var(--border);margin-bottom:22px;overflow-x:auto;white-space:nowrap}.profile-tabbar>a,.profile-tabbar>span{display:flex;align-items:center;gap:8px;padding:13px 2px;color:var(--muted);font-size:12px;border-bottom:2px solid transparent}.profile-tabbar b{font-size:15px}.profile-tabbar .active{color:var(--text);border-bottom-color:var(--accent);font-weight:700}.profile-readme{padding:0;overflow:hidden;border-radius:18px}.readme-top{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid var(--border);font-size:12px;color:var(--muted);background:color-mix(in srgb,var(--surface) 85%,transparent)}.readme-icon{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--border);border-radius:7px}.readme-dots{margin-inline-start:auto;letter-spacing:2px}.readme-content{padding:clamp(20px,3.4vw,36px)}.readme-content .eyebrow{text-align:inherit}.readme-content h2{font-size:clamp(21px,2.6vw,31px);line-height:1.65;margin:8px 0 13px;letter-spacing:-.5px}.readme-content>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:2.2;overflow-wrap:anywhere}.profile-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:25px}.profile-highlights>div{display:flex;flex-direction:column;gap:7px;padding:13px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface) 70%,transparent)}.profile-highlights span{font-size:10px;color:var(--accent);font-weight:800;direction:ltr;text-align:start}.profile-highlights b{font-size:11px;line-height:1.8}.profile-section-block{margin-top:30px}.profile-section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:15px}.profile-section-heading .eyebrow{text-align:inherit;margin:0 0 5px}.profile-section-heading h2{font-size:21px;margin:0}.count-pill{padding:5px 10px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:10px;white-space:nowrap}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tech-card{min-width:0;min-height:74px;padding:11px 12px;border-radius:15px;gap:10px;overflow:hidden}.tech-card .tech-icon-wrap{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--bg) 65%,transparent)}.tech-card img{width:25px;height:25px}.tech-card>span:last-child{overflow-wrap:anywhere}.tech-card .icon-fallback:after{content:"ES";font-size:11px;font-weight:800;color:var(--accent)}.profile-link-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.profile-link-cards>a{display:flex;align-items:center;gap:10px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);transition:transform .35s var(--ease-out),border-color .3s,box-shadow .3s}.profile-link-cards>a:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 15px 32px rgba(0,0,0,.09)}.profile-brand-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.profile-brand-icon.github-icon{color:var(--text)}.profile-link-cards>a>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.profile-link-cards b{font-size:12px}.profile-link-cards small{font-size:10px;color:var(--muted);white-space:normal}.profile-link-cards strong{margin-inline-start:auto;color:var(--muted)}
/* Notes administration: replace cramped table presentation with composed responsive rows. */
.admin-main .notes-table{padding:12px;border-radius:20px}.admin-main .notes-table table{border-collapse:separate;border-spacing:0 9px}.admin-main .notes-table thead th{border:0;color:var(--muted);font-size:11px}.admin-main .notes-table tbody tr{background:var(--raised)}.admin-main .notes-table tbody td{padding:14px 13px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.admin-main .notes-table tbody td:first-child{border-inline-start:1px solid var(--border);border-radius:14px 0 0 14px;min-width:200px}.admin-main .notes-table tbody td:last-child{border-inline-end:1px solid var(--border);border-radius:0 14px 14px 0;white-space:nowrap}.table-thumb{width:56px;height:44px;object-fit:cover;border-radius:9px;vertical-align:middle;margin-inline-end:10px;border:1px solid var(--border)}.note-editor{gap:18px}.note-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--raised)}.note-toolbar button{min-width:40px;min-height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.note-toolbar button:hover{border-color:var(--accent);transform:translateY(-2px)}.note-cover-preview{max-width:min(100%,360px);max-height:230px;object-fit:cover;border-radius:15px;margin-top:12px;border:1px solid var(--border)}
body.light .profile-avatar-placeholder{background:linear-gradient(145deg,#edf1ff,#dce5f7);color:#20283a}body.light .profile-avatar-wrap{background:var(--bg)}body.light .profile-link-cards>a:hover{box-shadow:0 14px 30px rgba(30,45,75,.08)}
@media(max-width:900px){.tech-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.github-profile-layout{grid-template-columns:220px minmax(0,1fr);gap:18px}.profile-link-cards{grid-template-columns:1fr}.profile-link-cards>a{padding:11px}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-highlights{grid-template-columns:1fr}.profile-highlights>div{flex-direction:row;align-items:center}.profile-highlights span{min-width:24px}}
@media(max-width:680px){.profile-cover{height:145px;border-radius:0 0 19px 19px}.cover-mark{right:7%;font-size:84px}.github-profile-layout{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:-48px}.github-profile-sidebar{padding:0 5px 18px;border-bottom:1px solid var(--border)}.profile-avatar-wrap{width:116px;height:116px}.profile-name{font-size:22px}.profile-bio{max-width:680px;margin-bottom:8px}.profile-socials{margin-bottom:13px}.profile-contact{max-width:100%}.github-profile-main{padding-top:0}.profile-tabbar{gap:18px;margin-bottom:16px}.profile-tabbar>a,.profile-tabbar>span{font-size:11px}.readme-content{padding:19px}.readme-content h2{font-size:22px}.profile-highlights{grid-template-columns:1fr}.profile-section-block{margin-top:24px}.profile-section-heading h2{font-size:18px}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-link-cards{grid-template-columns:1fr}.tech-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tech-showcase-item{min-height:70px;padding:12px 8px;gap:8px}.tech-showcase-item img{width:25px;height:25px}.tech-showcase-item span{font-size:12px}.home-tech{padding-bottom:42px!important}.admin-main .notes-table{padding:7px}.admin-main .notes-table table,.admin-main .notes-table tbody,.admin-main .notes-table tr,.admin-main .notes-table td{display:block;width:100%}.admin-main .notes-table thead{display:none}.admin-main .notes-table tbody tr{padding:10px;border:1px solid var(--border);border-radius:15px;margin-bottom:10px}.admin-main .notes-table tbody td{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 5px;border:0;border-bottom:1px solid var(--border);border-radius:0!important;min-width:0!important;white-space:normal!important}.admin-main .notes-table tbody td:last-child{border-bottom:0;justify-content:flex-start;flex-wrap:wrap}.admin-main .notes-table tbody td:first-child{justify-content:flex-start;overflow-wrap:anywhere}}
@media(max-width:360px){.profile-avatar-wrap{width:100px;height:100px}.profile-name{font-size:20px}.tech-card{padding:9px;gap:7px}.tech-card .tech-icon-wrap{width:32px;height:32px;flex-basis:32px}.tech-card img{width:22px;height:22px}.tech-showcase-item{flex-direction:column;gap:4px}.profile-section-heading{align-items:start}}
@media(prefers-reduced-motion:reduce){.animated-logo,.cover-orbit,.profile-cover:before{animation:none!important}.tech-showcase-item,.profile-link-cards>a,.profile-socials a{transition:none!important}}

/* ESCode 1.4 — progress toolkit, repository explorer, and polished editors */
.tech-showcase-item{position:relative;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;text-decoration:none;overflow:hidden}.tech-showcase-item>b{font-size:11px;color:var(--accent);direction:ltr}.tech-showcase-item>i{grid-column:1/-1;display:block;height:4px;border-radius:99px;background:var(--border);overflow:hidden;font-style:normal}.tech-showcase-item>i>span{display:block;width:var(--skill-progress,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#7c8cff);transform:scaleX(.05);transform-origin:left;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.tech-showcase-item.is-visible>i>span{transform:scaleX(1)}.skill-progress-card{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:16px!important;position:relative;overflow:hidden;transition:transform .35s,border-color .35s,box-shadow .35s}.skill-progress-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 18px 40px rgba(0,0,0,.13)}.skill-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.skill-progress-number{font-size:14px;font-weight:800;direction:ltr;color:var(--accent)}.skill-name-label{font-size:13px;font-weight:750}.skill-progress-track{height:6px;background:var(--border);border-radius:99px;overflow:hidden}.skill-progress-track>span{display:block;width:var(--target-progress,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#7c8cff);transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.16,1,.3,1)}.skill-progress-card.is-visible .skill-progress-track>span{transform:scaleX(1)}.skill-progress-card>small{font-size:10px;color:var(--muted)}
.github-projects-page{max-width:1120px;margin:0 auto;padding:54px 0 90px}.github-projects-hero{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:clamp(24px,5vw,52px);border:1px solid var(--border);border-radius:26px;background:radial-gradient(ellipse at 10% 0%,rgba(100,116,255,.17),transparent 48%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface) 70%,transparent));position:relative;overflow:hidden}.github-projects-hero:after{content:"";position:absolute;width:240px;height:240px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:50%;inset:auto -60px -155px auto;box-shadow:0 0 0 25px color-mix(in srgb,var(--accent) 5%,transparent),0 0 0 55px color-mix(in srgb,var(--accent) 3%,transparent);animation:repo-orbit 18s linear infinite}.github-projects-hero h1{max-width:720px;font-size:clamp(30px,5vw,53px);line-height:1.4;letter-spacing:-1.2px;margin:9px 0 12px}.github-projects-hero p:not(.eyebrow){max-width:660px;color:var(--muted);line-height:2}.repo-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:120px;min-height:120px;border:1px solid var(--border);border-radius:24px;background:color-mix(in srgb,var(--bg) 62%,transparent);position:relative;z-index:1;animation:repo-float 5s ease-in-out infinite}.repo-stat strong{font-size:38px;line-height:1.2}.repo-stat span{font-size:11px;color:var(--muted)}.repo-stat i{position:absolute;top:12px;right:14px;color:var(--accent);font-style:normal}.repo-toolbar{display:flex;align-items:center;gap:14px;margin:24px 0 15px;padding:12px;border:1px solid var(--border);border-radius:18px;background:var(--surface);flex-wrap:wrap}.repo-search{display:flex;align-items:center;gap:10px;flex:1;min-width:200px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.repo-search>span{font-size:23px;color:var(--muted)}.repo-search input{width:100%;min-height:43px;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important}.repo-filter{display:flex;gap:5px;padding:4px;border-radius:12px;background:var(--bg)}.repo-filter button{padding:9px 13px;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:11px;transition:background .25s,color .25s,transform .25s}.repo-filter button:hover{transform:translateY(-1px)}.repo-filter button.is-active{background:var(--raised);color:var(--text);box-shadow:0 2px 9px rgba(0,0,0,.09)}.repo-count{font-size:11px;color:var(--muted);white-space:nowrap}.github-repo-list{display:grid;gap:12px}.github-repo-card{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:22px 24px;border:1px solid var(--border);border-radius:19px;background:var(--surface);position:relative;overflow:hidden;transition:transform .35s,border-color .35s,box-shadow .35s,background .35s}.github-repo-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--accent),#7c8cff);transform:scaleY(0);transform-origin:bottom;transition:transform .35s}.github-repo-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:0 18px 42px rgba(0,0,0,.10);background:color-mix(in srgb,var(--surface) 88%,var(--accent) 2%)}.github-repo-card:hover:before{transform:scaleY(1)}.repo-card-main{min-width:0;flex:1}.repo-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.repo-symbol{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--border);border-radius:11px;background:var(--bg);color:var(--accent);font-size:17px;transition:transform .4s}.github-repo-card:hover .repo-symbol{transform:rotate(-9deg) scale(1.07)}.repo-title-row h2{font-size:18px;margin:0}.repo-title-row h2 a{color:var(--accent);text-decoration:none}.repo-title-row h2 a:hover{text-decoration:underline;text-underline-offset:4px}.repo-public,.repo-featured{border:1px solid var(--border);border-radius:99px;padding:3px 9px;font-size:10px;color:var(--muted)}.repo-featured{color:#d6ad58;border-color:color-mix(in srgb,#d6ad58 35%,var(--border))}.repo-card-main>p{margin:12px 0;color:var(--muted);font-size:12px;line-height:1.9;max-width:740px}.repo-meta{display:flex;align-items:center;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:10px}.repo-language-dot{width:9px;height:9px;border-radius:50%;background:#8b7cf6;box-shadow:0 0 0 3px rgba(139,124,246,.13)}.repo-card-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.repo-card-actions .button{white-space:nowrap}.repo-empty{padding:35px;text-align:center;border:1px dashed var(--border);border-radius:18px;color:var(--muted)}.repo-bottom-note{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:27px;color:var(--muted);font-size:12px}.repo-bottom-note span{color:var(--accent)}.repo-bottom-note p{margin:0}.project-repository-files{margin:26px 0;padding:22px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.project-files-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.project-files-heading h2,.project-files-heading h3{margin:0;font-size:19px}.public-project-files,.project-file-admin-list{display:grid;gap:8px}.public-project-file,.project-file-admin-list>div{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--bg);transition:border-color .25s,transform .25s}.public-project-file:hover,.project-file-admin-list>div:hover{border-color:var(--accent);transform:translateX(-2px)}.file-type-badge{display:grid;place-items:center;min-width:43px;height:36px;padding:0 6px;border:1px solid var(--border);border-radius:9px;background:var(--raised);font-size:9px;font-weight:800;color:var(--accent);direction:ltr}.public-file-name,.project-file-admin-list>div>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.public-file-name b,.project-file-admin-list b{font-size:12px;overflow-wrap:anywhere}.public-file-name small,.project-file-admin-list small{font-size:10px;color:var(--muted)}.project-files-admin{margin-top:18px}.project-files-admin h3{margin:0 0 15px}.project-file-admin-list form{margin-inline-start:auto}.project-files-upload{border:1px dashed color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:16px;padding:18px;background:color-mix(in srgb,var(--surface) 75%,transparent)}
.skills-manager{padding:clamp(16px,3vw,28px);gap:20px}.skills-manager-head,.skills-manager-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.skills-manager-head h2{margin:0 0 5px}.skills-manager-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.9}.skills-manager-list{display:grid;gap:10px}.skill-admin-row{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(180px,1fr) auto auto;gap:13px;align-items:end;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--bg);animation:skill-row-in .35s both}.skill-admin-row label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--muted)}.skill-admin-row .skill-percent-field{direction:rtl}.skill-percent-field span{color:var(--accent);font-weight:800}.skill-percent-field input[type=range]{width:100%;accent-color:var(--accent)}.skill-admin-row .skill-enable{flex-direction:row;align-items:center;gap:7px;white-space:nowrap;padding-bottom:10px}.skill-enable input{accent-color:var(--accent)}.remove-skill-row{margin-bottom:2px}.skills-manager-footer{padding-top:15px;border-top:1px solid var(--border)}.note-editor{padding:clamp(15px,3vw,28px)!important;gap:19px!important;border-radius:22px!important;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--accent) 4%))!important}.note-toolbar{position:sticky;top:10px;z-index:5;display:flex;align-items:center;gap:7px;padding:10px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(18px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.note-toolbar button{padding:0 12px;min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:11px;transition:transform .25s,border-color .25s,background .25s}.note-toolbar button:active{transform:scale(.96)}.note-content-field{display:flex;flex-direction:column;gap:10px}.note-writing-hint{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px}.note-writing-hint span:first-child{color:var(--accent);font-weight:800}.note-rich-editor{min-height:380px;padding:clamp(18px,3vw,30px);border:1px solid var(--border);border-radius:18px;background:var(--bg);color:var(--text);font-size:15px;line-height:2.15;outline:0;white-space:pre-wrap;overflow-wrap:anywhere;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:border-color .25s,box-shadow .25s}.note-rich-editor:focus{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.note-rich-editor:empty:before{content:'اینجا شروع به نوشتن کن…';color:var(--muted);pointer-events:none}.note-rich-editor h2,.note-rich-editor h3{line-height:1.6;margin:1.2em 0 .5em}.note-rich-editor blockquote{margin:1em 0;padding:10px 18px;border-inline-start:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--raised);color:var(--muted)}.note-rich-editor ul,.note-rich-editor ol{padding-inline-start:25px}.note-editor>label input,.note-editor input:not([type=checkbox]):not([type=file]),.note-editor select{min-height:49px}.note-editor .note-textarea[hidden]{display:none!important}
@keyframes repo-orbit{to{transform:rotate(360deg)}}@keyframes repo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes skill-row-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.github-projects-hero{align-items:flex-start}.repo-stat{min-width:90px;min-height:90px}.repo-stat strong{font-size:30px}.github-repo-card{align-items:flex-start;flex-direction:column}.repo-card-actions{justify-content:flex-start;width:100%}.skill-admin-row{grid-template-columns:1fr 1fr}.skill-admin-row .skill-enable{padding:0;align-self:center}.skill-admin-row .remove-skill-row{justify-self:start}.repo-toolbar{align-items:stretch}.repo-count{width:100%}}
@media(max-width:520px){.github-projects-page{padding-top:28px}.github-projects-hero{flex-direction:column;border-radius:20px}.repo-stat{align-self:flex-end;min-height:78px;min-width:100px}.repo-filter{width:100%;justify-content:space-between}.repo-filter button{flex:1}.github-repo-card{padding:17px}.repo-title-row h2{font-size:16px}.repo-meta{gap:10px}.skill-admin-row{grid-template-columns:1fr}.skill-admin-row .skill-enable{align-self:auto}.note-rich-editor{min-height:300px}.note-toolbar{position:static}.public-project-file{gap:8px;padding:9px}.public-project-file .button{padding-inline:9px}}
@media(prefers-reduced-motion:reduce){.github-projects-hero:after,.repo-stat{animation:none!important}.tech-showcase-item>i>span,.skill-progress-track>span{transition:none!important;transform:scaleX(1)!important}.github-repo-card,.skill-admin-row{animation:none!important;transition:none!important}}
[data-project-card][hidden]{display:none!important}

/* ESCode 1.4.1 — quiet monochrome identity, repository detail, refined editors and secure login */
:root{--motion-soft:cubic-bezier(.22,1,.36,1)}
.brand-logo,.auth-logo{filter:grayscale(1)}
.editor-field{display:flex;flex-direction:column;gap:9px;min-width:0}.editor-field-title{font-size:12px;font-weight:750;color:var(--text);letter-spacing:.01em}.editor-field small,.note-meta-grid small{font-size:10px;line-height:1.8;color:var(--muted)}.editor-field input,.editor-field textarea{width:100%;transition:border-color .3s var(--motion-soft),box-shadow .3s var(--motion-soft),background .3s var(--motion-soft),transform .3s var(--motion-soft)}.editor-field input:focus,.editor-field textarea:focus{transform:translateY(-1px)}.editor-field [dir=ltr]{text-align:left;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.01em}
/* Repository detail: familiar source-hosting layout with calm, precise surfaces. */
.repo-detail-page{max-width:1100px;margin:30px auto 75px;padding:clamp(20px,4vw,42px)!important;border:1px solid var(--border);border-radius:25px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 94%,var(--accent) 3%));box-shadow:var(--shadow);overflow:hidden;animation:repo-detail-in .7s var(--motion-soft) both}.repo-detail-topline{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding-bottom:24px;margin-bottom:27px;border-bottom:1px solid var(--border)}.repo-detail-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--border);border-radius:13px;background:var(--bg);font-weight:800;font-size:19px;color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.repo-detail-owner{font-size:13px;color:var(--muted);direction:ltr}.repo-detail-owner b{color:var(--accent);font-weight:750}.repo-detail-page>.eyebrow{margin-bottom:8px}.repo-detail-page>h1{font-size:clamp(31px,5vw,51px);letter-spacing:-.045em;line-height:1.2;margin:8px 0 15px}.repo-detail-page>.inner-lead{max-width:780px;margin:0 0 28px;font-size:15px;line-height:2;color:var(--muted)}.repo-detail-page .project-detail-cover{height:clamp(220px,40vw,430px);border:1px solid var(--border);border-radius:20px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 80% 10%,rgba(255,255,255,.075),transparent 45%),linear-gradient(135deg,#17191d,#202329 50%,#101114);box-shadow:0 20px 50px rgba(0,0,0,.12);position:relative}.repo-detail-page .project-detail-cover:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 15%,rgba(255,255,255,.12) 45%,transparent 60%);transform:translateX(-120%);animation:repo-cover-sheen 1.2s .35s var(--motion-soft) both}.repo-detail-page .cover-glyph{font-size:clamp(70px,12vw,140px);color:rgba(255,255,255,.82);font-weight:300}.repo-detail-page .cover-label{font-size:11px;letter-spacing:.24em;color:rgba(255,255,255,.48)}.repo-description{max-width:none;margin:23px 0 0;padding:0;overflow:hidden;border-radius:17px}.repo-description-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 19px;background:var(--raised);border-bottom:1px solid var(--border);font-size:11px;color:var(--muted)}.repo-description-head span:first-child{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text);font-weight:700}.repo-description-content{padding:clamp(18px,3vw,28px);line-height:2.1;color:var(--text);font-size:14px;overflow-wrap:anywhere}.repo-detail-page .project-repository-files{margin:23px 0 0;padding:0;border-radius:17px;overflow:hidden}.repo-detail-page .project-files-heading{margin:0;padding:18px 20px;border-bottom:1px solid var(--border);background:var(--raised)}.repo-detail-page .public-project-files{gap:0}.repo-detail-page .public-project-file{padding:13px 18px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;transform:none!important}.repo-detail-page .public-project-file:last-child{border-bottom:0}.repo-detail-page .public-project-file:hover{background:color-mix(in srgb,var(--accent) 5%,var(--surface));border-color:var(--border)}.file-row-glyph{width:26px;height:28px;flex:0 0 26px;display:grid;place-items:center;color:var(--muted);font-size:14px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.repo-detail-page .file-type-badge{min-width:42px;height:29px;font-size:8px;border-radius:7px}.repo-detail-page .public-file-name b{font-size:12px}.repo-detail-page .public-file-name small{direction:ltr;text-align:start}.repo-detail-page .detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px;padding-top:22px;border-top:1px solid var(--border)}
@keyframes repo-detail-in{from{opacity:0;transform:translateY(15px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes repo-cover-sheen{to{transform:translateX(120%)}}
/* Journal editor — title, slug and writing canvas share one coherent system. */
.note-editor{position:relative;overflow:hidden}.note-editor:before{content:"";position:absolute;top:0;inset-inline:0;height:2px;background:linear-gradient(90deg,transparent,var(--text),transparent);opacity:.35}.note-editor-heading{display:flex;align-items:center;gap:15px;padding-bottom:20px;border-bottom:1px solid var(--border)}.note-editor-mark{width:49px;height:49px;flex:0 0 49px;display:grid;place-items:center;border:1px solid var(--border);border-radius:15px;background:var(--bg);font-size:17px;font-weight:800;letter-spacing:-.08em}.note-editor-heading>div{min-width:0;flex:1}.note-editor-heading .eyebrow{margin:0 0 5px}.note-editor-heading h2{margin:0;font-size:22px;letter-spacing:-.025em}.note-editor-heading p:last-child{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.8}.note-status-chip{padding:6px 10px;border:1px solid var(--border);border-radius:99px;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);letter-spacing:.04em}.note-meta-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:17px}.note-meta-grid .editor-field input{min-height:54px;padding-inline:16px;font-size:14px;border-radius:13px}.note-toolbar{top:8px;gap:6px;flex-wrap:wrap}.note-toolbar button{border:1px solid transparent;border-radius:10px;background:var(--bg);color:var(--text);min-height:39px}.note-toolbar button:hover{border-color:var(--border);background:var(--raised);transform:translateY(-1px)}.note-rich-editor{min-height:440px;padding:clamp(20px,4vw,38px);font-size:15px;line-height:2.2;border-radius:16px;background:color-mix(in srgb,var(--bg) 95%,var(--surface));caret-color:var(--text)}.note-rich-editor:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--text) 5%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--text) 20%,transparent)}.note-rich-editor p{margin:.6em 0}.note-rich-editor h2{font-size:1.55em}.note-rich-editor h3{font-size:1.25em}.note-rich-editor code{direction:ltr;display:inline-block;padding:2px 6px;border-radius:6px;background:var(--raised);font: .88em ui-monospace,SFMono-Regular,Consolas,monospace}.note-editor>button[type=submit]{min-height:48px;min-width:190px;justify-self:start;box-shadow:0 8px 25px rgba(0,0,0,.1)}
/* Minimal secure login, animated only with transform/opacity for smooth rendering. */
body.auth{position:relative;isolation:isolate;min-height:100vh;display:grid;place-items:center;overflow-x:hidden;background:var(--bg);padding:24px}.auth-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--border) 24%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--border) 24%,transparent) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(ellipse at center,#000 10%,transparent 76%)}.auth-atmosphere span{position:absolute;width:280px;height:280px;border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:50%;animation:auth-orbit 23s linear infinite}.auth-atmosphere span:first-child{top:-100px;left:-70px;box-shadow:0 0 0 25px color-mix(in srgb,var(--text) 2%,transparent),0 0 0 60px color-mix(in srgb,var(--text) 1%,transparent)}.auth-atmosphere span:nth-child(2){right:-120px;bottom:-150px;width:410px;height:410px;animation-direction:reverse;animation-duration:31s}.auth-atmosphere span:nth-child(3){left:42%;top:8%;width:90px;height:90px;border-radius:28px;transform:rotate(30deg);animation:auth-drift 7s ease-in-out infinite}.auth-card-premium{width:min(100%,440px);padding:clamp(26px,5vw,42px);border:1px solid var(--border);border-radius:26px;background:color-mix(in srgb,var(--surface) 91%,transparent);backdrop-filter:blur(24px);box-shadow:0 30px 100px rgba(0,0,0,.18);animation:auth-card-in .75s var(--motion-soft) both}.auth-brand-lockup{display:flex;align-items:center;gap:12px;margin-bottom:31px}.auth-brand-lockup>span{display:flex;flex-direction:column;gap:3px}.auth-brand-lockup b{font-size:17px;letter-spacing:-.03em}.auth-brand-lockup small{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);letter-spacing:.12em}.auth-card-premium .auth-logo{width:47px;height:47px;border-radius:13px}.auth-card-premium>.eyebrow{font-size:9px;letter-spacing:.18em;color:var(--muted);margin-bottom:8px}.auth-card-premium h1{margin:0;font-size:clamp(29px,5vw,36px);letter-spacing:-.055em;line-height:1.35}.auth-intro{margin:9px 0 25px;color:var(--muted);font-size:12px;line-height:2}.auth-card-premium form{display:grid;gap:17px}.auth-card-premium label{display:grid;gap:8px;font-size:11px;color:var(--muted)}.auth-card-premium input{width:100%;min-height:51px;padding:13px 15px;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);outline:none;transition:border-color .25s,box-shadow .25s,transform .25s}.auth-card-premium input:focus{border-color:color-mix(in srgb,var(--text) 35%,var(--border));box-shadow:0 0 0 4px color-mix(in srgb,var(--text) 6%,transparent);transform:translateY(-1px)}.auth-submit{display:flex;align-items:center;justify-content:space-between;min-height:51px;margin-top:5px;padding:0 17px;border-radius:12px;background:var(--text)!important;color:var(--bg)!important;border-color:var(--text)!important;transition:transform .3s var(--motion-soft),box-shadow .3s}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(0,0,0,.16)}.auth-submit span{font-size:17px}.auth-footnote{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:25px;padding-top:19px;border-top:1px solid var(--border);color:var(--muted);font-size:9px}.auth-lock{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;color:var(--text)}.auth-error{margin-bottom:17px;font-size:11px;line-height:1.9}
@keyframes auth-card-in{from{opacity:0;transform:translateY(18px) scale(.985);filter:blur(7px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes auth-orbit{to{transform:rotate(360deg)}}@keyframes auth-drift{0%,100%{translate:0 0;rotate:25deg}50%{translate:0 -15px;rotate:45deg}}
@media(max-width:680px){.repo-detail-page{margin:18px 12px 45px;padding:17px!important;border-radius:19px}.repo-detail-topline{gap:8px;padding-bottom:18px;margin-bottom:20px}.repo-detail-page .project-detail-cover{height:220px;border-radius:15px}.repo-detail-page .public-project-file{padding:12px 10px;flex-wrap:wrap}.repo-detail-page .public-file-name{flex-basis:calc(100% - 90px)}.repo-detail-page .public-project-file .button{min-height:34px}.note-meta-grid{grid-template-columns:1fr}.note-editor-heading{align-items:flex-start}.note-editor-heading h2{font-size:19px}.note-status-chip{font-size:8px}.note-rich-editor{min-height:320px}.note-editor>button[type=submit]{width:100%}.auth-card-premium{border-radius:21px}.auth-atmosphere{background-size:32px 32px}}
@media(prefers-reduced-motion:reduce){.repo-detail-page,.repo-detail-page .project-detail-cover:after,.auth-card-premium,.auth-atmosphere span,.note-editor-heading,.github-repo-card,.note-toolbar button{animation:none!important;transition:none!important}.repo-detail-page .project-detail-cover:after{display:none}}
.repo-files-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:170px;padding:25px;text-align:center;color:var(--muted)}.repo-files-empty>span{width:43px;height:43px;display:grid;place-items:center;border:1px solid var(--border);border-radius:13px;background:var(--bg);font-size:24px;color:var(--text)}.repo-files-empty b{font-size:12px;color:var(--text)}.repo-files-empty small{font-size:10px;line-height:1.8;max-width:380px}

/* ESCode 1.5 — Community, repository tree, learning hub and account studio */
:root{--motion-smooth:cubic-bezier(.22,1,.36,1);--motion-soft:cubic-bezier(.16,1,.3,1)}
.nav-account-link{font-weight:700!important}
.github-repository-shell{overflow:hidden;border-radius:20px!important;background:var(--surface);border:1px solid var(--border);box-shadow:0 24px 70px rgba(0,0,0,.07)}
.github-repository-shell .project-files-heading{background:linear-gradient(180deg,color-mix(in srgb,var(--raised) 92%,transparent),var(--surface));padding:20px 22px}.github-repository-shell .project-files-heading h2{margin:4px 0 4px}.github-repository-shell .project-files-heading small{color:var(--muted);font-size:10px}.repo-breadcrumb{display:flex;align-items:center;gap:9px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--bg);font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);direction:ltr}.repo-breadcrumb span:nth-child(3){color:var(--text);font-weight:700}.repo-branch{margin-left:auto;padding:5px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);font:10px ui-monospace,SFMono-Regular,Consolas,monospace}.repository-tree-wrap{padding:8px;background:var(--surface)}.github-tree{font-size:12px;direction:ltr;text-align:left}.tree-dir,.tree-file{position:relative}.tree-toggle,.tree-file{width:100%;display:flex;align-items:center;gap:9px;min-height:39px;padding:6px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left}.tree-toggle{cursor:pointer}.tree-toggle:hover,.tree-file:hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.tree-chevron{width:14px;color:var(--muted);transition:transform .35s var(--motion-smooth)}.tree-toggle[aria-expanded=false] .tree-chevron{transform:rotate(-90deg)}.tree-folder{width:19px;color:#d5a84c}.tree-children{margin-left:18px;padding-left:10px;border-left:1px solid var(--border);overflow:hidden;transition:max-height .45s var(--motion-smooth),opacity .3s}.tree-toggle[aria-expanded=false]+.tree-children{max-height:0!important;opacity:0}.tree-file-icon{width:38px;height:25px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--bg);font:8px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);flex:0 0 38px}.tree-file-name{color:var(--text);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.tree-file-size{margin-left:auto;color:var(--muted);font-size:9px;direction:ltr}.tree-file-view{margin-left:12px;color:var(--muted);font-size:10px;text-decoration:none;opacity:0;transform:translateX(4px);transition:.25s var(--motion-smooth)}.tree-file:hover .tree-file-view{opacity:1;transform:none}.tree-dir>.tree-toggle b{font-weight:650}
.auth-page{min-height:100vh;width:100%;display:grid;place-items:center;position:relative;isolation:isolate;overflow:hidden;padding:30px}.public-auth-card{position:relative;width:min(100%,480px);padding:36px;border:1px solid var(--border);border-radius:30px;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(28px);box-shadow:0 40px 120px rgba(0,0,0,.2);animation:auth-card-in .8s var(--motion-soft) both}.public-auth-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 35%,transparent 68%,rgba(255,255,255,.03));opacity:.7}.public-auth .auth-orbit{position:absolute;inset:-20%;z-index:-1;background:radial-gradient(circle at 20% 25%,rgba(125,140,255,.14),transparent 28%),radial-gradient(circle at 80% 70%,rgba(94,234,212,.09),transparent 26%)}.auth-orbit i{position:absolute;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:50%;animation:auth-orbit 25s linear infinite}.auth-orbit i:nth-child(1){width:420px;height:420px;left:3%;top:-5%}.auth-orbit i:nth-child(2){width:660px;height:660px;right:-16%;bottom:-30%;animation-direction:reverse;animation-duration:38s}.auth-orbit i:nth-child(3){width:130px;height:130px;left:54%;top:16%;border-radius:30px;animation:auth-drift 8s ease-in-out infinite}.auth-orbit-login:after{content:"";position:absolute;inset:25%;border-radius:50%;border:1px dashed color-mix(in srgb,var(--text) 7%,transparent);animation:auth-orbit 16s linear infinite reverse}.auth-copy{margin-bottom:26px}.auth-copy h1{font-size:clamp(29px,5vw,40px);letter-spacing:-.055em;margin:4px 0 9px}.auth-copy p:last-child{color:var(--muted);line-height:2;font-size:12px}.auth-form{display:grid;gap:15px}.auth-form label{display:grid;gap:7px;font-size:11px;color:var(--muted)}.auth-form input{min-height:52px;border:1px solid var(--border);border-radius:13px;background:var(--bg);padding:13px 15px;color:var(--text);outline:0;transition:.3s var(--motion-soft)}.auth-form input:focus{border-color:color-mix(in srgb,var(--text) 35%,var(--border));box-shadow:0 0 0 5px color-mix(in srgb,var(--text) 5%,transparent);transform:translateY(-1px)}.auth-switch{text-align:center;color:var(--muted);font-size:11px;margin:20px 0 0}.auth-switch a{color:var(--text);font-weight:800}.account-shell,.public-profile-page,.content-hub,.article-page,.video-watch-page{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:65px 0 100px}.account-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:0 20px 60px rgba(0,0,0,.06)}.account-profile{display:flex;align-items:center;gap:16px}.user-avatar{width:74px;height:74px;border-radius:50%;object-fit:cover;display:grid;place-items:center;overflow:hidden;flex:0 0 74px}.avatar-fallback{background:linear-gradient(145deg,#252b3a,#11151c);border:1px solid var(--border);font-weight:850;font-size:25px;direction:ltr}.account-profile h1{font-size:27px;margin:3px 0}.account-profile p:last-child{margin:0;color:var(--muted);font-size:11px;direction:ltr}.account-actions{display:flex;gap:8px;align-items:center}.account-actions form{margin:0}.account-tabs{display:flex;gap:6px;overflow:auto;margin:18px 0;padding:5px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.account-tabs a{padding:11px 15px;border-radius:11px;color:var(--muted);font-size:11px;white-space:nowrap;text-decoration:none;transition:.3s}.account-tabs a:hover,.account-tabs a.active{background:var(--raised);color:var(--text);box-shadow:0 8px 24px rgba(0,0,0,.06)}.account-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px}.account-editor,.profile-preview-card,.account-list,.account-grid>.panel{padding:24px}.account-editor{display:grid;gap:14px}.account-editor h2,.account-grid h2{margin:4px 0 18px}.account-editor label{display:grid;gap:7px;font-size:11px;color:var(--muted)}.account-editor input,.account-editor textarea,.account-editor select,.panel-sub input,.panel-sub textarea,.panel-sub select{border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);padding:12px 14px;outline:0}.profile-preview-card{text-align:center}.profile-preview-card .user-avatar{margin:8px auto 15px;width:105px;height:105px;flex-basis:105px}.profile-review-badge,.status-pill{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted);font-size:9px;margin-top:8px}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.account-stat{padding:21px;border:1px solid var(--border);border-radius:19px;background:var(--surface);display:flex;flex-direction:column;gap:8px}.account-stat span{font-size:10px;color:var(--muted)}.account-stat b{font-size:28px;letter-spacing:-.05em}.message-card,.submission-card,.continue-card{padding:16px;border:1px solid var(--border);border-radius:15px;background:var(--bg);margin-top:10px}.message-card>div,.submission-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.message-card small,.submission-card p,.continue-card small{color:var(--muted);font-size:9px}.message-card p{line-height:2;margin:11px 0 0;color:var(--muted);font-size:11px}.continue-card{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text)}.continue-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--raised);border:1px solid var(--border)}.continue-card div{display:grid;gap:3px}.quick-links{display:grid;gap:9px}.quick-links a{padding:14px;border:1px solid var(--border);border-radius:13px;color:var(--text);text-decoration:none;background:var(--bg);transition:.3s}.quick-links a:hover{transform:translateX(-4px);border-color:var(--accent)}.public-profile-hero{text-align:center;padding:55px 20px 60px;border:1px solid var(--border);border-radius:28px;background:radial-gradient(circle at 50% 0%,rgba(125,140,255,.11),transparent 45%),var(--surface);overflow:hidden}.public-profile-hero .user-avatar{width:120px;height:120px;flex-basis:120px;margin:0 auto 18px}.public-profile-hero h1{font-size:36px;margin:0}.public-username{direction:ltr;color:var(--muted);margin:4px 0 18px}.public-bio{max-width:670px;margin:0 auto;color:var(--muted);line-height:2}.profile-socials{justify-content:center;margin-top:22px}.profile-socials a{padding:10px 14px;width:auto;height:auto;font-size:10px;text-decoration:none}.profile-projects{margin-top:45px}.section-heading{margin-bottom:20px}.content-hub .hub-hero{padding:60px 0 35px}.hub-hero h1{font-size:clamp(34px,6vw,62px);letter-spacing:-.06em;margin:5px 0 12px}.hub-hero>p:not(.eyebrow){color:var(--muted);max-width:650px;line-height:2}.locked-banner{margin-top:20px;padding:13px 16px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--muted);font-size:11px}.locked-banner a{color:var(--text);font-weight:800}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.video-card,.article-card,.home-video-card{border:1px solid var(--border);border-radius:21px;overflow:hidden;background:var(--surface);transition:transform .5s var(--motion-soft),box-shadow .5s,border-color .3s}.video-card:hover,.article-card:hover,.home-video-card:hover{transform:translateY(-7px);box-shadow:0 28px 65px rgba(0,0,0,.12);border-color:color-mix(in srgb,var(--text) 18%,var(--border))}.video-card.is-locked{filter:saturate(.7)}.video-card>img,.article-card>img,.home-video-card>img{display:block;width:100%;height:205px;object-fit:cover}.video-cover-placeholder{height:205px;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(125,140,255,.15),transparent 45%),var(--bg)}.video-cover-placeholder span{width:60px;height:60px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--surface);font-size:20px}.video-card-body,.home-video-card>div,.article-card>div{padding:20px}.video-card-body h2,.article-card h2,.home-video-card h3{margin:5px 0 9px;font-size:19px}.video-card-body p,.article-card p,.home-video-card p{color:var(--muted);font-size:11px;line-height:2;min-height:44px}.video-watch-page{max-width:1100px}.video-player-shell{border:1px solid var(--border);border-radius:25px;overflow:hidden;background:#080a0e;box-shadow:0 35px 100px rgba(0,0,0,.22);animation:auth-card-in .7s var(--motion-soft)}.player-top{display:flex;justify-content:space-between;gap:10px;padding:15px 19px;color:#9da3b0;font-size:9px;border-bottom:1px solid rgba(255,255,255,.08)}.video-player-shell video{display:block;width:100%;max-height:680px;background:#000}.player-under{display:flex;justify-content:space-between;gap:20px;padding:24px;background:linear-gradient(180deg,#10131a,#0a0c11);color:#f5f6f8}.player-under h1{margin:4px 0 9px}.player-under p{color:#aeb4c0;line-height:2;font-size:12px}.secure-badge{align-self:flex-start;padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:#aeb4c0;font:9px ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.article-card{display:grid;grid-template-columns:180px 1fr}.article-card>img{height:100%;min-height:220px}.article-card a{color:var(--text);font-size:11px;font-weight:800}.article-reading{max-width:850px;margin:0 auto}.article-reading>header{padding:55px 0 35px;border-bottom:1px solid var(--border)}.article-reading h1{font-size:clamp(36px,7vw,64px);letter-spacing:-.065em;line-height:1.2;margin:6px 0 18px}.article-excerpt{color:var(--muted);font-size:15px;line-height:2}.article-reading header>span{color:var(--muted);font-size:9px}.article-content{padding:40px 0;font-size:15px;line-height:2.3}.article-content h2{font-size:28px;margin-top:45px}.article-content p{margin:18px 0}.article-content pre{direction:ltr;text-align:left;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--bg);overflow:auto}.home-learning{padding-top:25px}.home-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.home-video-card{display:grid;grid-template-rows:165px 1fr}.home-video-card>img,.home-video-card .video-cover-placeholder{height:165px}.home-video-card h3{font-size:16px}.contact-profile-card{padding:22px;display:flex;flex-direction:column;justify-content:center}.contact-profile-top{display:flex;align-items:center;gap:13px}.contact-profile-top .user-avatar{width:65px;height:65px;flex-basis:65px}.contact-profile-top h2{margin:0;font-size:18px}.contact-profile-top p:last-child{margin:3px 0 0;color:var(--muted);direction:ltr}.contact-profile-card>p{color:var(--muted);font-size:11px;line-height:2;margin:18px 0}.contact-profile-links{display:flex;gap:8px;flex-wrap:wrap}.contact-profile-links a{padding:8px 11px;border:1px solid var(--border);border-radius:10px;color:var(--text);text-decoration:none;font-size:10px}.admin-user-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px}.user-list-panel,.user-detail-panel{min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--border)}.panel-head h2{margin:0;font-size:15px}.admin-user-list{padding:9px}.admin-user-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;color:var(--text);text-decoration:none;transition:.25s}.admin-user-row:hover,.admin-user-row.active{background:var(--raised)}.admin-user-row .user-avatar{width:40px;height:40px;flex-basis:40px;font-size:13px}.admin-user-row>span:nth-child(2){display:grid;min-width:0;gap:3px}.admin-user-row small{color:var(--muted);font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-row em{margin-left:auto;font-size:8px;color:var(--muted);font-style:normal}.profile-admin-head{display:flex;align-items:center;gap:14px;padding:22px;border-bottom:1px solid var(--border)}.profile-admin-head .user-avatar{width:65px;height:65px;flex-basis:65px}.profile-admin-head h2{margin:0}.profile-admin-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.user-admin-meta{display:flex;gap:8px;flex-wrap:wrap;padding:14px 22px;color:var(--muted);font-size:9px}.admin-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 22px}.panel-sub{padding:16px;border:1px solid var(--border);border-radius:15px;background:var(--bg);display:grid;gap:10px}.panel-sub h3{margin:0;font-size:13px}.panel-sub label{display:grid;gap:6px;font-size:10px;color:var(--muted)}.user-message-compose{margin:12px 22px}.submission-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.submission-row>div{display:grid;gap:3px;min-width:0}.submission-row small{color:var(--muted);font-size:9px}.user-detail-panel>.panel-sub:last-child{margin:12px 22px 22px}.user-detail-empty{min-height:400px;display:grid;place-items:center;text-align:center;align-content:center}.user-detail-empty .icon{font-size:42px}.content-editor-premium{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:18px}.content-editor-premium .editor-hero-line{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--border)}.editor-mark{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--border);border-radius:13px;background:var(--bg);font-weight:800}.content-editor-premium label{display:grid;gap:7px;font-size:10px;color:var(--muted)}.content-editor-premium label.full,.content-editor-premium button.full,.content-editor-premium .full{grid-column:1/-1}.content-editor-premium input,.content-editor-premium textarea,.content-editor-premium select{border:1px solid var(--border);border-radius:13px;background:var(--bg);color:var(--text);padding:13px 14px;outline:0}.article-writing-shell{border:1px solid var(--border);border-radius:17px;overflow:hidden;background:var(--bg)}.article-rich-editor{min-height:430px;border-radius:0!important;border:0!important;background:var(--bg)!important}.article-toolbar{padding:9px;border-bottom:1px solid var(--border);position:static!important}.article-toolbar button{min-width:36px}.check-row{display:flex!important;align-items:center;gap:8px!important}.check-row input{width:auto}.empty-state{padding:45px;text-align:center;color:var(--muted)}
@media(max-width:900px){.video-grid,.home-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-grid,.admin-user-grid{grid-template-columns:1fr}.article-grid{grid-template-columns:1fr}.account-hero{align-items:flex-start;flex-direction:column}.account-actions{width:100%}.admin-action-grid{grid-template-columns:1fr}.profile-link-cards{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.account-shell,.public-profile-page,.content-hub,.article-page,.video-watch-page{width:min(100% - 22px,1180px);padding-top:35px}.public-auth-card{padding:25px 20px;border-radius:23px}.account-profile{align-items:flex-start}.account-profile h1{font-size:22px}.account-actions{flex-wrap:wrap}.account-actions>*{flex:1}.account-stats{grid-template-columns:1fr}.video-grid,.home-video-grid{grid-template-columns:1fr}.article-card{grid-template-columns:1fr}.article-card>img{height:190px}.player-under{flex-direction:column}.content-editor-premium{grid-template-columns:1fr}.content-editor-premium .editor-hero-line,.content-editor-premium label.full,.content-editor-premium button.full,.content-editor-premium .full{grid-column:1}.repo-breadcrumb{overflow:auto}.tree-file-size{display:none}.tree-file-view{opacity:1;transform:none}.contact-profile-card{order:-1}.public-profile-hero h1{font-size:29px}}
@media(prefers-reduced-motion:reduce){.public-auth-card,.auth-orbit i,.auth-orbit-login:after,.video-player-shell{animation:none!important}.video-card:hover,.article-card:hover,.home-video-card:hover,.quick-links a:hover{transform:none}.tree-children,.tree-chevron{transition:none!important}}
.custom-player{position:relative;background:#000}.custom-player video{width:100%;display:block;max-height:680px}.es-player-controls{position:absolute;left:14px;right:14px;bottom:13px;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(7,9,13,.72);backdrop-filter:blur(16px);opacity:0;transform:translateY(7px);transition:.35s var(--motion-soft)}.custom-player:hover .es-player-controls,.custom-player:focus-within .es-player-controls{opacity:1;transform:none}.es-player-controls button{width:31px;height:31px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.06);color:#fff;cursor:pointer}.es-player-controls input[type=range]{flex:1;accent-color:#fff}.es-player-controls span{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:#d4d7dc;white-space:nowrap}.es-player-controls button:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}
@media(max-width:680px){.es-player-controls{left:8px;right:8px;bottom:8px;gap:6px}.es-player-controls span{font-size:8px}.es-player-controls button{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){.es-player-controls{transition:none}}

/* ESCode 1.6 — Learning, Articles & Member Studio */
:root{--es-white:#fff;--es-black:#090a0d;--es-line:color-mix(in srgb,var(--border) 88%,transparent);--es-shadow:0 28px 90px rgba(0,0,0,.12)}
.video-login-button{background:#fff!important;color:#090a0d!important;border-color:#fff!important;box-shadow:0 10px 35px rgba(255,255,255,.10);position:relative;overflow:hidden}.video-login-button:before{content:"";position:absolute;inset:-60% -20%;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.75),transparent 65%);transform:translateX(-100%) rotate(8deg);transition:transform .7s ease}.video-login-button:hover:before{transform:translateX(100%) rotate(8deg)}.video-login-button span{position:relative}.hub-hero-video,.article-hub-hero{display:flex;justify-content:space-between;align-items:end;gap:25px;padding:34px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--raised) 88%,transparent));box-shadow:var(--es-shadow);overflow:hidden;position:relative}.hub-hero-video:after,.article-hub-hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 13%,transparent);right:-120px;top:-170px;animation:hubFloat 8s ease-in-out infinite alternate}@keyframes hubFloat{to{transform:translate(-25px,28px) scale(1.08)}}
.video-grid-premium{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.video-card-premium{border-radius:24px;overflow:hidden;box-shadow:0 18px 55px rgba(0,0,0,.08);transition:transform .55s var(--motion-soft),box-shadow .55s ease,border-color .35s ease}.video-card-premium:hover{transform:translateY(-9px);box-shadow:0 30px 80px rgba(0,0,0,.16)}.video-card-media{position:relative;height:220px;overflow:hidden;background:#08090b}.video-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s ease}.video-card-premium:hover .video-card-media img{transform:scale(1.045);filter:brightness(.82)}.video-play-badge{position:absolute;left:18px;bottom:16px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#08090b;box-shadow:0 10px 30px rgba(0,0,0,.22);transition:transform .4s ease}.video-card-premium:hover .video-play-badge{transform:scale(1.1)}.video-lock-badge{position:absolute;right:15px;top:15px;padding:7px 10px;border-radius:999px;background:rgba(5,6,8,.68);backdrop-filter:blur(12px);color:#fff;font:8px ui-monospace,monospace;border:1px solid rgba(255,255,255,.14)}.video-card-premium .video-card-body{padding:22px}.video-card-meta,.article-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:9px}.video-card-meta span:first-child,.article-meta span:first-child{color:var(--text);font-weight:800}.video-card-premium h2{font-size:21px;letter-spacing:-.03em}.video-card-footer{margin-top:18px;display:flex;justify-content:space-between;align-items:center}.video-card-footer .button{min-height:43px}.video-watch-premium{width:min(100% - 30px,1250px)!important;max-width:1250px}.watch-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.watch-main{min-width:0}.premium-player{border-radius:25px;overflow:hidden;box-shadow:0 35px 100px rgba(0,0,0,.22);background:#000}.premium-player video{aspect-ratio:16/9;max-height:none;object-fit:contain}.player-gradient{position:absolute;inset:auto 0 0;height:35%;pointer-events:none;background:linear-gradient(transparent,rgba(0,0,0,.72))}.premium-controls{opacity:1;transform:none;bottom:14px;background:rgba(8,9,12,.64);border-color:rgba(255,255,255,.12);padding:10px 12px}.premium-controls input[type=range]{height:4px}.watch-info{margin-top:15px;padding:25px}.watch-title-row{display:flex;justify-content:space-between;gap:20px}.watch-title-row h1{font-size:clamp(24px,4vw,38px);letter-spacing:-.04em;margin:5px 0 10px}.watch-title-row p{color:var(--muted);line-height:2;font-size:12px}.sidebar-sticky{position:sticky;top:20px;padding:20px}.sidebar-sticky h3{margin:4px 0 15px}.recommend-video{display:grid;grid-template-columns:95px 1fr;gap:10px;align-items:center;padding:9px;border-radius:14px;color:var(--text);text-decoration:none;transition:transform .3s ease,background .3s ease}.recommend-video:hover{background:var(--raised);transform:translateX(-3px)}.recommend-video img,.recommend-placeholder{width:95px;height:58px;object-fit:cover;border-radius:10px;background:var(--bg);display:grid;place-items:center}.recommend-video span:last-child{display:grid;gap:5px;min-width:0}.recommend-video b{font-size:10px;line-height:1.5}.recommend-video small{color:var(--muted);font-size:8px}.comments-panel{margin-top:15px;padding:23px}.comment-form{display:grid;gap:10px;margin:15px 0 20px}.comment-form textarea{width:100%;resize:vertical}.comments-list{display:grid;gap:10px}.comment-card{display:flex;gap:12px;padding:15px;border:1px solid var(--border);border-radius:17px;background:color-mix(in srgb,var(--surface) 75%,transparent)}.comment-card .user-avatar{width:40px;height:40px;flex:0 0 40px}.comment-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.comment-meta span,.comment-meta time{color:var(--muted);font-size:8px}.comment-card p{margin:7px 0 0;line-height:1.9;font-size:11px}.article-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.article-card-premium{display:block;overflow:hidden;border-radius:24px;box-shadow:0 18px 55px rgba(0,0,0,.07);transition:transform .5s var(--motion-soft),box-shadow .5s ease}.article-card-premium:hover{transform:translateY(-8px);box-shadow:0 30px 75px rgba(0,0,0,.14)}.article-cover{height:245px;overflow:hidden;background:var(--raised)}.article-cover img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.article-card-premium:hover .article-cover img{transform:scale(1.045)}.article-cover-placeholder{display:grid;place-items:center}.article-cover-placeholder span{font:800 52px/1 ui-serif,serif;color:var(--muted);opacity:.55}.article-card-body{padding:23px}.article-card-body h2{font-size:25px;letter-spacing:-.04em;line-height:1.4}.article-card-body p{min-height:60px}.article-read-link{display:inline-flex;gap:8px;align-items:center;margin-top:12px;font-weight:800;color:var(--text);text-decoration:none}.article-reading-premium{width:min(100% - 28px,980px);padding-bottom:70px}.article-reading{max-width:900px}.article-reading-header{padding:55px 0 32px!important}.article-author-line{display:flex;align-items:center;gap:10px;margin-bottom:28px}.article-author-line>span:last-child{display:grid;gap:2px}.article-author-line small{font-size:9px;color:var(--muted)}.article-author-avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--text);color:var(--bg);font-weight:900}.article-reading-header h1{font-size:clamp(38px,7vw,72px);max-width:850px}.article-reading-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:9px;margin-top:20px}.article-content{font-size:17px;line-height:2.15}.article-content img{max-width:100%;height:auto;border-radius:18px}.article-content blockquote{margin:28px 0;padding:20px 24px;border-inline-start:3px solid var(--text);background:var(--raised);border-radius:0 16px 16px 0;color:var(--muted)}.article-reading-footer{display:flex;justify-content:space-between;gap:15px;padding-top:28px;border-top:1px solid var(--border);color:var(--muted);font-size:10px}.article-reading-footer a{color:var(--text);font-weight:800;text-decoration:none}.bilingual-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0}.locale-column{display:grid;gap:12px;padding:18px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--bg) 85%,transparent);position:relative}.locale-column label{display:grid;gap:7px}.locale-column label>span{font-size:10px;color:var(--muted)}.locale-badge{display:inline-flex;width:max-content;padding:6px 9px;border:1px solid var(--border);border-radius:999px;font:800 8px ui-monospace,monospace;color:var(--muted);background:var(--surface)}.locale-en{direction:ltr;text-align:left}.article-en-editor{margin-top:15px}.article-en-editor .article-writing-shell{margin-top:5px}.article-en-editor .article-rich-editor{direction:ltr;text-align:left}.account-shell{padding-bottom:80px}.account-hero{border-radius:28px;box-shadow:var(--es-shadow);background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 97%,transparent),color-mix(in srgb,var(--raised) 92%,transparent));border:1px solid var(--border)}.account-tabs{position:sticky;top:10px;z-index:20;margin-top:15px;padding:8px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(18px);box-shadow:0 12px 40px rgba(0,0,0,.08)}.account-tabs a{transition:transform .3s ease,background .3s ease}.account-tabs a:hover{transform:translateY(-2px)}.account-grid>.panel{box-shadow:0 18px 55px rgba(0,0,0,.06);border-radius:22px}.profile-preview-card{display:grid;place-items:start;align-content:start;gap:10px}.profile-preview-card .user-avatar{width:86px;height:86px}.profile-review-badge{padding:7px 10px;border:1px solid var(--border);border-radius:999px;font-size:9px;color:var(--muted)}
@media(max-width:1000px){.video-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))}.watch-layout{grid-template-columns:1fr}.sidebar-sticky{position:static}.recommend-video{grid-template-columns:110px 1fr}.recommend-video img,.recommend-placeholder{width:110px;height:68px}}
@media(max-width:700px){.hub-hero-video,.article-hub-hero{padding:23px;display:grid;align-items:start}.video-grid-premium,.article-grid-premium{grid-template-columns:1fr}.video-card-media{height:210px}.watch-layout{gap:12px}.watch-title-row{display:grid}.watch-info,.comments-panel{padding:17px}.premium-controls{left:7px;right:7px;bottom:7px}.premium-controls span{font-size:7px}.premium-controls button{width:31px;height:31px}.article-reading-header{padding-top:35px!important}.article-content{font-size:15px}.article-reading-footer{display:grid}.bilingual-fields{grid-template-columns:1fr}.content-editor-premium .bilingual-fields{grid-column:1}.locale-column{padding:14px}.account-tabs{overflow:auto;justify-content:flex-start}.account-tabs a{white-space:nowrap}.account-actions{gap:8px}.account-actions>*{min-width:0}}
@media(max-width:430px){.video-card-media{height:190px}.video-card-premium .video-card-body{padding:18px}.video-card-premium h2{font-size:19px}.hub-hero-video h1,.article-hub-hero h1{font-size:31px}.article-cover{height:200px}.article-card-body{padding:18px}.article-card-body h2{font-size:21px}.article-content{font-size:14px;line-height:2}.watch-title-row h1{font-size:25px}.comment-card{padding:12px}}
@media(prefers-reduced-motion:reduce){.hub-hero-video:after,.article-hub-hero:after,.video-card-premium,.video-card-media img,.video-play-badge,.article-card-premium,.article-cover img,.video-login-button:before,.recommend-video{animation:none!important;transition:none!important}.video-card-premium:hover,.article-card-premium:hover{transform:none}}

/* ESCode 1.7 — coherent content library, download-first video detail, and member workspace */
.nav-account-button{position:relative;display:inline-flex!important;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:0 17px!important;border:1px solid rgba(255,255,255,.88)!important;border-radius:999px!important;background:#fff!important;color:#11131a!important;font-weight:850!important;box-shadow:0 8px 24px rgba(0,0,0,.13);overflow:hidden;isolation:isolate;transition:transform .28s ease,box-shadow .28s ease!important}
.nav-account-button:before{content:"";position:absolute;inset:-80% auto -80% -45%;width:35%;transform:rotate(22deg);background:linear-gradient(90deg,transparent,rgba(0,0,0,.09),transparent);transition:left .65s cubic-bezier(.2,.8,.2,1);z-index:-1}
.nav-account-button:hover{transform:translateY(-2px) scale(1.025)!important;box-shadow:0 13px 32px rgba(0,0,0,.2)!important;color:#000!important}
.nav-account-button:hover:before{left:125%}.nav-account-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#f0f1f3;font-size:14px}.nav-account-arrow{font-size:13px;transition:transform .25s ease}.nav-account-button:hover .nav-account-arrow{transform:translate(2px,-2px)}
.library-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:34px 0 20px;padding:0 2px}.library-toolbar h2,.video-detail-lower h2{margin:5px 0 0;font-size:clamp(22px,3vw,31px);letter-spacing:-.04em}.video-card-media{display:block;text-decoration:none}.video-card-media.video-cover-placeholder{display:grid;place-items:center;position:relative}.video-card-premium h2 a{color:inherit;text-decoration:none}.video-card-premium h2 a:hover{text-decoration:underline;text-underline-offset:5px}.video-featured-badge{position:absolute;top:14px;right:14px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.94);color:#111;font-size:9px;font-weight:900;box-shadow:0 4px 15px rgba(0,0,0,.12)}.video-card-footer .content-date{font-size:10px;color:var(--muted)}.button-icon{display:inline-grid;place-items:center;font-size:16px;line-height:1}.video-cover-placeholder .cover-glyph{font-size:48px;opacity:.55;font-weight:900;letter-spacing:-.08em}.video-detail-page{width:min(100% - 36px,1160px);margin:30px auto 80px}.detail-breadcrumb{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.detail-breadcrumb a{color:var(--text);text-decoration:none;font-weight:750}.video-detail-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:24px;align-items:stretch}.video-detail-cover{position:relative;min-height:340px;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#10131b,#292e3b);border:1px solid var(--border);box-shadow:var(--es-shadow)}.video-detail-cover img{width:100%;height:100%;min-height:340px;position:absolute;inset:0;object-fit:cover}.video-detail-cover:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}.video-cover-label{position:absolute;z-index:1;bottom:22px;left:22px;color:#fff;font:800 10px ui-monospace,monospace;letter-spacing:.16em}.video-detail-content{padding:clamp(22px,4vw,38px);border-radius:28px;display:flex;flex-direction:column;align-items:stretch;box-shadow:var(--es-shadow)}.detail-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.video-detail-content h1{font-size:clamp(28px,4vw,43px);line-height:1.25;letter-spacing:-.045em;margin:18px 0 12px;overflow-wrap:anywhere}.video-detail-description{color:var(--muted);line-height:2;font-size:13px;white-space:normal;overflow-wrap:anywhere}.video-detail-stats{display:flex;flex-wrap:wrap;gap:10px 16px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:auto;color:var(--muted);font-size:10px}.video-download-callout{display:flex;align-items:center;gap:13px;margin:20px 0;padding:15px;border-radius:18px;border:1px solid var(--border);background:var(--raised)}.download-icon{width:44px;height:44px;flex:0 0 44px;border-radius:14px;display:grid;place-items:center;background:var(--text);color:var(--bg);font-size:22px}.video-download-callout>div{display:grid;gap:5px}.video-download-callout b{font-size:12px}.video-download-callout small{font-size:10px;line-height:1.8;color:var(--muted)}.video-download-button{display:flex!important;align-items:center;justify-content:center;gap:12px;min-height:57px;border-radius:17px!important;background:#fff!important;color:#101116!important;border:1px solid #fff!important;box-shadow:0 10px 30px rgba(0,0,0,.14);font-weight:900;transition:transform .25s ease,box-shadow .25s ease!important}.video-download-button:hover{transform:translateY(-3px)!important;box-shadow:0 17px 35px rgba(0,0,0,.2)!important}.video-download-button .button-icon{font-size:21px}.video-download-button .button-arrow{margin-inline-start:auto}.download-note{margin:10px 0 0;text-align:center;color:var(--muted);font-size:9px}.video-detail-lower{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:52px 0 20px}.video-grid-related{grid-template-columns:repeat(3,minmax(0,1fr))}.video-grid-related .video-card-media{height:180px}.article-admin-cover-preview{width:min(100%,520px);max-height:240px;object-fit:cover;border-radius:17px;border:1px solid var(--border);margin-top:10px}.admin-content-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.admin-content-card{overflow:hidden;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 10px 34px rgba(0,0,0,.055);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;min-width:0}.admin-content-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(0,0,0,.1);border-color:color-mix(in srgb,var(--text) 20%,var(--border))}.admin-content-cover{display:block;width:100%;height:165px;object-fit:cover;background:var(--raised)}.admin-content-cover-empty{display:grid;place-items:center;color:var(--muted);font:800 14px ui-monospace,monospace;letter-spacing:.12em;background:radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--text) 9%,transparent),transparent 45%),var(--raised)}.admin-content-card-body{padding:17px;min-width:0}.admin-content-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.admin-content-card h3{font-size:17px;line-height:1.5;margin:13px 0 7px;overflow-wrap:anywhere}.admin-content-card p{font-size:11px;line-height:1.9;color:var(--muted);min-height:42px;overflow-wrap:anywhere}.admin-content-card small{display:block;overflow-wrap:anywhere;color:var(--muted);font-size:9px}.admin-content-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:15px;padding-top:14px;border-top:1px solid var(--border)}.admin-content-actions form{margin:0}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;border:1px solid var(--border);font-size:9px;color:var(--muted)}.published-pill{color:#198754;border-color:rgba(25,135,84,.22);background:rgba(25,135,84,.07)}
/* Keep the member area consistent with the administration workspace, without exposing admin controls. */
.account-shell{width:min(100% - 36px,1320px);margin:30px auto 80px}.account-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:clamp(20px,3.2vw,34px)}.account-profile{display:flex;align-items:center;gap:17px;min-width:0}.account-profile .user-avatar{width:68px;height:68px;flex:0 0 68px;border-radius:21px}.account-profile h1{font-size:clamp(23px,3vw,34px);margin:4px 0;overflow-wrap:anywhere}.account-profile p:last-child{color:var(--muted);font-size:11px;overflow-wrap:anywhere}.account-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.account-actions form{margin:0}.account-tabs{display:flex;gap:7px;align-items:center;overflow-x:auto;scrollbar-width:thin}.account-tabs a{flex:0 0 auto;padding:12px 16px;border-radius:13px;color:var(--muted);text-decoration:none;font-size:11px;font-weight:800}.account-tabs a.active{background:var(--text);color:var(--bg);box-shadow:0 6px 18px rgba(0,0,0,.1)}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.account-grid>.panel,.account-grid>form.panel{padding:clamp(18px,3vw,28px);min-width:0}.account-grid label{display:grid;gap:7px;margin:12px 0}.account-grid input,.account-grid textarea{width:100%;min-width:0}.account-grid .button{max-width:100%}.account-grid .panel h2{margin-top:6px}.account-shell .stats-grid{margin-top:20px}.account-shell .stat-card{border-radius:20px;box-shadow:0 10px 32px rgba(0,0,0,.05)}.account-shell .feature-card,.account-shell .project-card{border-radius:20px;transition:transform .3s ease,box-shadow .3s ease}.account-shell .feature-card:hover,.account-shell .project-card:hover{transform:translateY(-3px);box-shadow:0 15px 38px rgba(0,0,0,.08)}
@media(max-width:1050px){.admin-content-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-detail-layout{grid-template-columns:1fr 1fr}.video-detail-cover,.video-detail-cover img{min-height:300px}}
@media(max-width:760px){.video-detail-page,.account-shell{width:min(100% - 24px,100%);margin-top:18px}.video-detail-layout{grid-template-columns:1fr;gap:14px}.video-detail-cover,.video-detail-cover img{min-height:0;height:auto;aspect-ratio:16/9}.video-detail-cover img{position:absolute}.video-detail-content{padding:21px;border-radius:22px}.video-grid-related{grid-template-columns:1fr}.video-grid-related .video-card-media{height:205px}.admin-content-card-grid{grid-template-columns:1fr}.admin-content-card{display:grid;grid-template-columns:minmax(110px,.38fr) minmax(0,1fr)}.admin-content-cover{height:100%;min-height:190px}.admin-content-card-body{padding:14px}.admin-content-card p{min-height:0}.account-hero{display:grid;align-items:start}.account-actions{display:grid;grid-template-columns:1fr 1fr}.account-actions .button,.account-actions button{width:100%;justify-content:center}.account-grid{grid-template-columns:1fr}.library-toolbar{margin-top:25px}.video-detail-lower{margin-top:36px}}
@media(max-width:460px){.nav-account-button{min-height:39px;padding:0 11px!important;gap:6px;font-size:10px!important}.nav-account-icon{width:21px;height:21px}.admin-content-card{grid-template-columns:1fr}.admin-content-cover{height:175px;min-height:0}.admin-content-card-body{padding:16px}.video-detail-content h1{font-size:27px}.video-download-callout{padding:12px}.video-detail-lower{align-items:start;flex-direction:column}.library-toolbar{align-items:start}.video-card-footer{gap:8px;align-items:center}.video-card-footer .button{padding-inline:12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.nav-account-button,.nav-account-button:before,.admin-content-card,.video-download-button{transition:none!important;animation:none!important}.nav-account-button:hover,.admin-content-card:hover,.video-download-button:hover{transform:none!important}}

/* ESCode 1.8 — searchable, paginated content library and author hierarchy */
.library-search{display:flex;align-items:center;gap:10px;max-width:780px;margin:22px 0 26px;padding:10px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 26px rgba(0,0,0,.035)}
.library-search input[type=search]{flex:1;min-width:0;height:46px;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding-inline:12px;color:var(--text);font:inherit;font-size:13px}
.library-search .button{min-height:44px;white-space:nowrap}.article-results-heading{display:flex;justify-content:flex-start;margin:0 0 14px}
.content-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;margin:34px auto 8px;direction:ltr}
.content-pagination a{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-decoration:none;font-size:12px;font-weight:750;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.content-pagination a:hover{transform:translateY(-2px);border-color:var(--text)}.content-pagination a.active{background:var(--text);color:var(--bg);border-color:var(--text)}
.article-card h2 a{color:inherit;text-decoration:none}.article-card h2 a:hover{opacity:.78}.article-card .article-cover{display:block;overflow:hidden}.article-card .article-cover img{transition:transform .45s cubic-bezier(.2,.75,.25,1)}.article-card:hover .article-cover img{transform:scale(1.025)}
.article-author-chip{display:inline-flex;align-items:center;gap:7px;min-width:0}.article-author-avatar{display:inline-grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:9px;background:var(--raised);border:1px solid var(--border);font-size:10px;font-weight:850;color:var(--text);direction:ltr}
.article-reading-header .article-author-avatar{width:38px;height:38px;flex-basis:38px;border-radius:12px;font-size:13px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:600px){.library-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:8px;border-radius:15px}.library-search input[type=search]{grid-column:1/-1;width:100%;height:43px;border-bottom:1px solid var(--border)!important}.library-search .button{min-height:42px}.content-pagination{gap:5px;margin-top:24px}.content-pagination a{min-width:36px;height:36px;border-radius:10px}.article-meta{flex-wrap:wrap}.article-author-chip{max-width:100%}}
@media(prefers-reduced-motion:reduce){.content-pagination a,.article-card .article-cover img{transition:none!important}.content-pagination a:hover{transform:none}}
.admin-library-search{max-width:900px;margin:20px 0}.admin-library-search input[type=search]{background:transparent!important}


/* ESCode 1.9 — shared public shell, consistent content cards and mobile polish */
.site-header-global{position:sticky;top:10px;z-index:1000;width:min(1240px,calc(100% - 32px));margin:10px auto 24px;isolation:isolate}
.global-page-content{min-width:0;max-width:100%;overflow-wrap:anywhere}
.global-site-footer{width:min(1240px,calc(100% - 32px));margin:28px auto 0}
.site-header .nav-account-button{background:#fff!important;color:#111!important;border:1px solid rgba(255,255,255,.9)!important;box-shadow:0 8px 26px rgba(255,255,255,.12),0 4px 14px rgba(0,0,0,.16);font-weight:800;transition:transform .24s ease,box-shadow .24s ease,background .24s ease}
.site-header .nav-account-button:hover,.site-header .nav-account-button:focus-visible{transform:translateY(-2px);box-shadow:0 12px 32px rgba(255,255,255,.22),0 8px 18px rgba(0,0,0,.2);background:#f1f4f8!important}
.nav-account-icon{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:9px;background:#f0f2f5;color:#17191d;font-size:15px}
.nav-account-arrow{transition:transform .25s ease}.nav-account-button:hover .nav-account-arrow{transform:translate(2px,-2px)}
.article-grid-premium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.article-card-premium{height:100%;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);background:var(--surface)}
.article-cover{display:block;width:100%;aspect-ratio:16/9;height:auto;flex:0 0 auto}
.article-card-body{display:flex;flex-direction:column;align-items:stretch;flex:1;min-width:0}
.article-card-body h2{font-size:clamp(17px,1.5vw,22px);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.1em}
.article-card-body>p{line-height:1.9;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:5.7em;margin-bottom:0}
.article-read-link{margin-top:auto;padding-top:18px;width:max-content;max-width:100%}
.video-grid-premium{align-items:stretch}
.video-card-premium{height:100%;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);background:var(--surface)}
.video-card-media{display:block;aspect-ratio:16/9;height:auto;flex:0 0 auto}
.video-card-premium .video-card-body{display:flex;flex-direction:column;flex:1;min-width:0}
.video-card-premium h2{line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3em}
.video-card-premium .video-card-body>p{line-height:1.85;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:5.55em}
.video-card-footer{margin-top:auto;padding-top:14px}
.library-search{width:100%;min-width:0}
.library-search input{min-width:0;max-width:100%}
.profile-avatar-upload{display:grid;gap:12px}
.profile-avatar-edit-row{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px 15px;align-items:center}
.profile-avatar-edit-row .user-avatar{width:76px;height:76px;grid-row:span 2;object-fit:cover}
.profile-avatar-edit-row input{width:100%;min-width:0}
.profile-avatar-edit-row small{color:var(--muted);font-size:11px}
.public-profile-hero{max-width:100%;overflow:hidden}
.public-profile-hero .user-avatar{width:104px;height:104px;object-fit:cover;border-radius:28px;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border),0 16px 40px rgba(0,0,0,.15)}
.public-profile-hero .public-bio{max-width:720px;margin-inline:auto;line-height:2;overflow-wrap:anywhere}
.public-profile-hero .profile-socials{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.account-shell,.public-profile-page,.content-hub,.article-page,.video-detail-page{min-width:0}
.account-tabs a{min-height:42px}
button,a,input,textarea,select{touch-action:manipulation}
@media(max-width:1000px){.article-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header-global{top:6px}.article-cover{aspect-ratio:16/9}}
@media(max-width:700px){.site-header-global{width:calc(100% - 20px);margin:8px auto 18px;top:5px}.global-site-footer{width:calc(100% - 24px);padding:20px 0;display:grid;gap:12px}.article-grid-premium{grid-template-columns:minmax(0,1fr);gap:16px}.article-card-body{padding:18px}.article-card-body h2{font-size:20px;min-height:0}.article-card-body>p{min-height:0}.video-card-premium .video-card-body{padding:18px}.video-card-premium h2{min-height:0}.video-card-premium .video-card-body>p{min-height:0}.video-card-media{aspect-ratio:16/9}.profile-avatar-edit-row{grid-template-columns:64px minmax(0,1fr)}.profile-avatar-edit-row .user-avatar{width:64px;height:64px}.account-hero{padding:18px!important}.account-tabs{max-width:100%;overflow-x:auto;scrollbar-width:thin}.account-tabs a{flex:0 0 auto}.public-profile-hero{padding:24px 16px!important}.public-profile-hero .user-avatar{width:88px;height:88px}.article-reading-header h1{font-size:clamp(30px,9vw,46px)}.library-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.library-search input{grid-column:1/-1;width:100%}.video-detail-layout{grid-template-columns:minmax(0,1fr)!important}.video-detail-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}}
@media(max-width:380px){.site-header-global{width:calc(100% - 14px)}.article-card-body,.video-card-premium .video-card-body{padding:15px}.nav-account-button{gap:5px}.profile-avatar-edit-row{grid-template-columns:1fr}.profile-avatar-edit-row .user-avatar{grid-row:auto}}
@media(prefers-reduced-motion:reduce){.nav-account-button,.nav-account-arrow,.article-card-premium,.video-card-premium,.article-cover img,.video-card-media img{transition:none!important;animation:none!important}}

/* ESCode 2.0 — precision restoration: one shared header, project-style content rows, editorial reading */
.public-body>.site-header:not(.site-header-global){position:sticky;top:0;z-index:1200;isolation:isolate}
.public-body>.site-header-global{position:sticky;top:0;z-index:1200;width:100%;max-width:none;margin:0 auto 20px;padding-block:12px;padding-inline:max(24px,calc((100vw - 1200px)/2 + 28px));border-radius:0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);box-shadow:none}
.global-page-content{overflow:visible}
.reference-content-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:18px}
.reference-content-card{display:flex;align-items:stretch;gap:18px;padding:15px 18px;min-width:0}
.reference-content-card .repo-card-main{min-width:0;align-self:center}
.reference-content-card .repo-card-main>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:9px 0 12px;max-width:760px;overflow-wrap:anywhere}
.reference-content-card .repo-title-row h2{min-width:0;overflow-wrap:anywhere;line-height:1.55}
.reference-content-card .repo-title-row h2 a{color:var(--text)}
.reference-content-card .repo-title-row h2 a:hover{color:var(--accent);text-decoration:none}
.reference-card-media{display:block;position:relative;flex:0 0 184px;width:184px;min-height:112px;align-self:center;overflow:hidden;border:1px solid var(--border);border-radius:13px;background:var(--bg)}
.reference-card-media img{display:block;width:100%;height:100%;min-height:112px;max-height:136px;aspect-ratio:16/10;object-fit:cover;transition:transform .4s var(--motion-soft)}
.reference-content-card:hover .reference-card-media img{transform:scale(1.035)}
.reference-card-media-empty{display:grid;place-items:center;min-height:112px;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 55%),var(--bg);color:var(--accent);text-decoration:none}
.reference-card-media-empty span{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:14px;font-weight:850}
.reference-media-badge{position:absolute;inset:auto 10px 10px auto;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.3);border-radius:10px;background:rgba(10,12,18,.8);color:white;font-size:11px}
.reference-content-card .repo-card-actions{flex:0 0 auto;align-self:center}
.reference-content-card .repo-card-actions .button{white-space:normal;text-align:center;line-height:1.6}
.article-reading-layout{width:min(100% - 36px,1040px);max-width:1040px;margin:0 auto;padding:28px 0 88px}
.article-breadcrumb{display:flex;align-items:center;gap:9px;min-width:0;margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.8;overflow-wrap:anywhere}
.article-breadcrumb a{color:var(--muted);text-decoration:none;flex:0 0 auto}
.article-breadcrumb a:hover{color:var(--text)}
.article-breadcrumb span[aria-current]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.article-reading-layout .article-reading{max-width:none;margin:0}
.article-reading-layout .article-reading-header{padding:clamp(22px,4vw,42px);border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 16px 42px rgba(0,0,0,.055)}
.article-reading-layout .article-reading-header h1{max-width:900px;font-size:clamp(30px,5.2vw,54px);line-height:1.45;letter-spacing:-.045em;overflow-wrap:anywhere;margin:10px 0 14px}
.article-reading-layout .article-excerpt{max-width:820px;margin:0;color:var(--muted);font-size:clamp(14px,1.6vw,17px);line-height:2.05;overflow-wrap:anywhere}
.article-reading-layout .article-reading-meta{display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;margin-top:23px;padding-top:17px;border-top:1px solid var(--border);color:var(--muted);font-size:11px}
.article-reading-layout .article-author-chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;color:var(--text)}
.article-reading-layout .article-author-avatar{width:32px;height:32px;flex-basis:32px;border-radius:10px}
.article-reading-layout .article-featured-image{margin:18px 0 0;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--surface)}
.article-reading-layout .article-featured-image img{display:block;width:100%;max-height:440px;aspect-ratio:16/7;object-fit:cover;background:var(--raised)}
.article-reading-layout .article-featured-image figcaption{padding:10px 15px;color:var(--muted);font-size:10px}
.article-content-card{margin-top:18px;padding:clamp(20px,4.5vw,48px);border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 16px 42px rgba(0,0,0,.04);min-width:0}
.article-reading-layout .article-content{max-width:780px;margin-inline:auto;padding:0;font-size:clamp(15px,1.4vw,17px);line-height:2.15;color:var(--text);overflow-wrap:anywhere;word-break:normal}
.article-reading-layout .article-content p{margin:0 0 1.35em;line-height:2.15}
.article-reading-layout .article-content h2{font-size:clamp(23px,3vw,30px);line-height:1.55;margin:2em 0 .65em;padding-bottom:.35em;border-bottom:1px solid var(--border);overflow-wrap:anywhere}
.article-reading-layout .article-content h3{font-size:clamp(19px,2.5vw,24px);line-height:1.6;margin:1.8em 0 .55em;overflow-wrap:anywhere}
.article-reading-layout .article-content h4{font-size:18px;line-height:1.7;margin:1.5em 0 .5em}
.article-reading-layout .article-content ul,.article-reading-layout .article-content ol{padding-inline-start:1.6em;margin:0 0 1.4em}
.article-reading-layout .article-content li{padding-inline-start:.25em;margin:.45em 0}
.article-reading-layout .article-content blockquote{margin:1.5em 0;padding:14px 20px;border-inline-start:3px solid var(--accent);border-radius:0 13px 13px 0;background:var(--bg);color:var(--muted)}
.article-reading-layout .article-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.article-reading-layout .article-content code{direction:ltr;unicode-bidi:isolate;display:inline-block;max-width:100%;padding:.12em .4em;border:1px solid var(--border);border-radius:6px;background:var(--bg);font: .86em/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
.article-reading-layout .article-content pre{max-width:100%;margin:1.5em 0;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--bg);overflow:auto;direction:ltr;text-align:left;line-height:1.8;tab-size:4;white-space:pre}
.article-reading-layout .article-content pre code{display:block;max-width:none;padding:0;border:0;border-radius:0;background:transparent;color:inherit;white-space:pre;overflow-wrap:normal}
.article-reading-layout .article-content img{display:block;max-width:100%;height:auto;max-height:650px;object-fit:contain;margin:1.5em auto;border:1px solid var(--border);border-radius:14px}
.article-reading-layout .article-content table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}
.article-reading-layout .article-content th,.article-reading-layout .article-content td{padding:10px 12px;border:1px solid var(--border);text-align:start}
.article-author-card{display:flex;align-items:center;gap:15px;margin-top:18px;padding:20px 24px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}
.article-author-avatar-large{display:grid;place-items:center;width:52px!important;height:52px!important;flex-basis:52px!important;border-radius:15px!important;font-size:18px!important}
.article-author-card h2{margin:0 0 3px;font-size:17px}.article-author-card p:last-child{margin:0;color:var(--muted);font-size:11px;line-height:1.8}
.article-reading-layout .article-reading-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:18px;padding:18px 22px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--muted);font-size:11px}
.article-reading-layout .article-reading-footer a{margin:0}
.article-related-section{margin-top:38px}
.article-related-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}
.article-related-heading h2{font-size:clamp(24px,3vw,32px);margin:3px 0 5px}
.article-related-heading p:last-child{margin:0;color:var(--muted);font-size:12px;line-height:1.9}
.article-related-heading .text-link{flex:0 0 auto}
body.auth>.site-header,body.auth>.global-page-content>.site-header{display:none}
body.auth .auth-page{min-height:100svh;padding:28px 20px;margin:0}
body.auth .public-auth-card{margin-inline:auto}
@media(max-width:800px){.reference-content-card{gap:13px;padding:15px}.reference-card-media{flex-basis:145px;width:145px}.reference-content-card .repo-card-actions{width:auto}.article-reading-layout{width:calc(100% - 28px);padding-top:20px}.article-reading-layout .article-featured-image img{aspect-ratio:16/9}.article-related-heading{align-items:flex-start}}
@media(max-width:600px){.public-body>.site-header-global{padding-inline:14px;padding-block:9px;margin-bottom:14px}.reference-content-card{display:grid;grid-template-columns:94px minmax(0,1fr);gap:12px;padding:12px}.reference-card-media{grid-column:1;grid-row:1 / span 2;width:94px;min-height:80px;max-height:100px;align-self:start}.reference-card-media img{min-height:80px;max-height:100px;aspect-ratio:1/1}.reference-card-media-empty{min-height:80px}.reference-content-card .repo-card-main{grid-column:2;grid-row:1;align-self:start}.reference-content-card .repo-title-row{gap:7px}.reference-content-card .repo-symbol{width:29px;height:29px;flex:0 0 29px}.reference-content-card .repo-title-row h2{font-size:14px;line-height:1.65}.reference-content-card .repo-card-main>p{font-size:11px;line-height:1.8;margin:7px 0; -webkit-line-clamp:2}.reference-content-card .repo-meta{font-size:9px;gap:7px 10px}.reference-content-card .repo-card-actions{grid-column:2;grid-row:2;justify-content:flex-start;width:100%;align-self:end}.reference-content-card .repo-card-actions .button{min-height:36px;padding:7px 11px;font-size:10px}.article-reading-layout{width:calc(100% - 22px);padding-top:14px}.article-breadcrumb{font-size:10px;gap:6px;margin-bottom:12px}.article-reading-layout .article-reading-header{padding:21px 17px;border-radius:17px}.article-reading-layout .article-reading-header h1{font-size:clamp(27px,8vw,38px);line-height:1.55}.article-reading-layout .article-excerpt{font-size:14px}.article-reading-layout .article-reading-meta{gap:10px 12px;font-size:10px}.article-reading-layout .article-featured-image{border-radius:15px}.article-reading-layout .article-featured-image img{aspect-ratio:4/3;max-height:300px}.article-content-card{padding:21px 17px;margin-top:12px;border-radius:17px}.article-reading-layout .article-content{font-size:15px;line-height:2.05}.article-reading-layout .article-content h2{margin-top:1.7em}.article-reading-layout .article-content pre{padding:13px;font-size:12px}.article-author-card{padding:16px;border-radius:15px}.article-reading-layout .article-reading-footer{padding:15px;align-items:flex-start}.article-related-heading{display:grid;gap:8px}.article-related-heading .text-link{justify-self:start}}
@media(max-width:360px){.reference-content-card{grid-template-columns:1fr}.reference-card-media{grid-column:1;grid-row:1;width:100%;max-height:none;min-height:0;aspect-ratio:16/9}.reference-card-media img{height:100%;max-height:none;aspect-ratio:16/9}.reference-content-card .repo-card-main{grid-column:1;grid-row:2}.reference-content-card .repo-card-actions{grid-column:1;grid-row:3}.article-reading-layout .article-reading-header h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){.reference-card-media img{transition:none!important}}

/* ESCode 2.0.1 — refined learning hubs and flat project file presentation */
.hero h1,.home-hero h1,.hero-content h1{ text-wrap:balance; }
/* Keep the home message short and well-framed. */
.home-hero .hero-copy,.home-hero .hero-content,.hero-copy{max-width:780px;min-width:0;padding:clamp(12px,2.2vw,24px) 0;}
.hub-hero-video,.article-hub-hero{align-items:stretch;min-height:205px;padding:clamp(22px,3.2vw,38px);isolation:isolate;}
.hub-hero-copy{position:relative;z-index:2;display:grid;justify-items:start;align-content:center;gap:9px;max-width:760px;min-width:0;padding:clamp(8px,1.4vw,16px);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:20px;background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 8px 30px rgba(0,0,0,.06);}
.hub-hero-copy .eyebrow{margin:0;display:inline-flex;align-items:center;gap:8px;}
.hub-hero-copy h1{margin:0;max-width:100%;font-size:clamp(27px,4vw,42px);line-height:1.25;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:anywhere;}
.hub-hero-copy>p:last-child{margin:0;max-width:58ch;padding-inline-start:2px;color:var(--muted);font-size:clamp(12px,1.2vw,14px);line-height:1.95;}
.hub-hero-icon{width:43px;height:43px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);box-shadow:0 7px 22px color-mix(in srgb,var(--accent) 10%,transparent);animation:hubIconIn .65s cubic-bezier(.2,.8,.2,1) both;}
.hub-hero-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.hub-hero-decoration{position:absolute;z-index:1;inset-inline-end:clamp(22px,5vw,70px);top:50%;width:140px;height:140px;transform:translateY(-50%);display:grid;place-items:center;pointer-events:none;opacity:.78;}
.hub-hero-decoration>span{position:relative;z-index:2;width:68px;height:68px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:22px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--accent);font-size:27px;box-shadow:0 12px 35px rgba(0,0,0,.12);animation:hubFloatIcon 5s ease-in-out infinite;}
.hub-hero-decoration>i{position:absolute;inset:10px;border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:35px;transform:rotate(24deg);animation:hubOrbit 14s linear infinite;}
.hub-hero-decoration>i:last-child{inset:0 23px;border-radius:50%;transform:rotate(-28deg);animation-duration:18s;animation-direction:reverse;}
.article-hero-decoration>span{font-family:Georgia,serif;font-style:italic;}
@keyframes hubIconIn{from{opacity:0;transform:translateY(8px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes hubFloatIcon{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-7px) rotate(4deg)}}
@keyframes hubOrbit{to{rotate:360deg}}
/* Project files remain a clean list: no nested folder/tree UI. */
.repository-file-list-wrap{padding:0!important;background:var(--surface)!important;}
.repository-file-list{display:grid;gap:0!important;}
.repository-file-item{display:flex!important;align-items:center;gap:12px;min-width:0;padding:13px 18px!important;border:0!important;border-bottom:1px solid var(--border)!important;border-radius:0!important;background:transparent!important;transition:background .22s ease,transform .22s ease,border-color .22s ease!important;animation:fileRowEnter .45s both;}
.repository-file-item:last-child{border-bottom:0!important;}
.repository-file-item:hover{background:color-mix(in srgb,var(--accent) 5%,var(--surface))!important;transform:translateX(-3px)!important;}
.repository-file-item .file-row-glyph{width:30px;flex:0 0 30px;font-size:11px;color:var(--accent);}
.repository-file-item .file-type-badge{min-width:44px;height:30px;font-size:8px;}
.repository-file-item .public-file-name{flex:1;min-width:0;display:grid;gap:4px;}
.repository-file-item .public-file-name b{font-size:12px;overflow-wrap:anywhere;}
.repository-file-item .public-file-name small{font-size:10px;color:var(--muted);direction:ltr;text-align:start;overflow-wrap:anywhere;}
.repository-file-size{flex:0 0 auto;color:var(--muted);font-size:10px;direction:ltr;}
.repository-file-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto;}
.repository-file-actions a{font-size:10px;font-weight:700;color:var(--muted);text-decoration:none;transition:color .2s ease,transform .2s ease;}
.repository-file-actions a:hover{color:var(--accent);transform:translateY(-1px);}
@keyframes fileRowEnter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.repository-file-item:nth-child(2){animation-delay:.03s}.repository-file-item:nth-child(3){animation-delay:.06s}.repository-file-item:nth-child(4){animation-delay:.09s}.repository-file-item:nth-child(5){animation-delay:.12s}
@media(max-width:700px){.hub-hero-video,.article-hub-hero{padding:15px;min-height:0}.hub-hero-copy{padding:15px;width:100%;gap:8px}.hub-hero-copy h1{font-size:clamp(25px,7vw,34px)}.hub-hero-decoration{inset-inline-end:16px;top:20px;transform:none;width:72px;height:72px;opacity:.24}.hub-hero-decoration>span{width:42px;height:42px;border-radius:14px;font-size:18px}.hub-hero-decoration>i{inset:2px}.hub-hero-decoration>i:last-child{inset:0 12px}.repository-file-item{gap:8px;padding:12px!important;flex-wrap:wrap}.repository-file-item .file-type-badge{display:none}.repository-file-item .file-row-glyph{width:24px;flex-basis:24px}.repository-file-item .public-file-name{flex-basis:calc(100% - 40px);}.repository-file-size{margin-inline-start:32px;font-size:9px}.repository-file-actions{margin-inline-start:auto;gap:10px}.repository-file-actions a{font-size:10px}}
@media(prefers-reduced-motion:reduce){.hub-hero-icon,.hub-hero-decoration>span,.hub-hero-decoration>i,.repository-file-item{animation:none!important;transition:none!important}.repository-file-item:hover{transform:none!important}}

/* ESCode 2.1.0 — unified project cards, premium auth, and global Persian typography */
:root{font-family:Vazir,Vazirmatn,system-ui,-apple-system,"Segoe UI",sans-serif}
html,body,button,input,textarea,select,.button,.site-nav,.repo-meta,.eyebrow{font-family:Vazir,Vazirmatn,system-ui,-apple-system,"Segoe UI",sans-serif}
body{font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}
.content-hub{width:min(100% - 56px,1120px);margin-inline:auto;padding-top:38px;padding-bottom:78px}
.hub-library-hero{margin-bottom:24px;min-height:220px;padding:clamp(24px,4vw,42px)}
.hub-library-hero>div:first-child{position:relative;z-index:2;max-width:760px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.hub-library-hero h1{margin:8px 0 9px;max-width:100%;font-size:clamp(28px,4.2vw,47px);line-height:1.45;overflow-wrap:anywhere}
.hub-library-hero p:not(.eyebrow){margin:0;font-size:clamp(12px,1.3vw,14px);line-height:2;max-width:60ch}
.hub-library-hero .repo-stat{flex:0 0 118px;min-width:118px;min-height:118px}
.hub-library-video:after{border-color:color-mix(in srgb,#8aa2ff 25%,transparent)}
.hub-library-articles:after{border-color:color-mix(in srgb,#5eead4 25%,transparent)}
.content-hub .library-search{margin:0 0 24px;padding:12px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:17px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 12px 35px rgba(0,0,0,.07)}
.content-hub .library-search input{flex:1;min-width:0;min-height:44px;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);outline:none}
.content-hub .library-search input:focus{border-color:color-mix(in srgb,var(--accent) 65%,var(--border));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}
.content-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.content-project-card{height:100%;min-height:0;display:flex;flex-direction:column;gap:0;padding:10px;animation:contentCardIn .55s both;animation-delay:calc(var(--reveal-delay,0ms) + 20ms)}
.content-project-card:nth-child(3n+2){animation-delay:100ms}.content-project-card:nth-child(3n){animation-delay:160ms}
.content-project-cover{width:100%;min-height:0;height:auto;aspect-ratio:16/10;flex:0 0 auto;isolation:isolate}
.content-project-cover .project-cover-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .5s}
.content-project-cover:after{content:"";position:absolute;z-index:1;inset:35% 0 0;background:linear-gradient(transparent,rgba(4,7,12,.42));pointer-events:none}
.content-project-cover .cover-glyph{position:relative;z-index:1;font-size:clamp(42px,5vw,66px)}
.content-cover-action{position:absolute;z-index:2;top:12px;inset-inline-end:12px;width:35px;height:35px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:11px;background:rgba(8,11,17,.55);color:#fff;backdrop-filter:blur(12px);opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s}
.content-project-card:hover .content-project-cover .project-cover-image{transform:scale(1.055);filter:saturate(1.08)}
.content-project-card:hover .content-cover-action,.content-project-card:focus-within .content-cover-action{opacity:1;transform:translateY(0)}
.content-project-card .project-card-content{display:flex;flex-direction:column;flex:1;padding:15px 8px 8px;min-width:0}
.content-project-card .project-top{gap:8px}
.content-project-card h3{font-size:clamp(16px,1.7vw,19px);line-height:1.65;margin:12px 0 6px;overflow-wrap:anywhere}
.content-project-card h3 a{color:inherit;text-decoration:none}
.content-project-card h3 a:hover{color:var(--accent)}
.content-project-card .project-card-content>p{flex:1;min-height:0;margin:0 0 14px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere;line-height:1.95}
.content-card-meta{display:flex;align-items:center;gap:8px 13px;flex-wrap:wrap;color:var(--muted);font-size:10px;padding:0 0 12px}
.content-featured{font-size:10px;color:#d6ad58}
.content-project-card .project-links{margin-top:auto;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;overflow-wrap:anywhere}
.content-project-card .project-links a{display:inline-flex;align-items:center;gap:7px}
.home-video-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px}
.home-video-card{display:flex;flex-direction:column;min-height:0}
.home-video-card .project-card-content{flex:1}
.home-video-card .project-card-content>p{min-height:0}
.article-results-heading{display:flex;justify-content:flex-end;margin:0 0 15px}
.content-hub .content-pagination{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:28px}
.content-hub .content-pagination a{min-width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--muted);transition:transform .2s,border-color .2s,color .2s}
.content-hub .content-pagination a:hover,.content-hub .content-pagination a.active{color:var(--text);border-color:var(--accent);transform:translateY(-2px)}
@keyframes contentCardIn{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
/* Authentication is intentionally independent from the public navigation shell. */
body.auth{min-height:100vh;background:#090b11;color:var(--text);overflow-x:hidden}
body.auth:before{opacity:.7}
body.auth .auth-page{position:relative;isolation:isolate;min-height:100svh;width:100%;display:grid;place-items:center;padding:clamp(18px,4vw,54px);margin:0;overflow:hidden}
.auth-ambient{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 12% 15%,rgba(138,162,255,.13),transparent 38%),radial-gradient(ellipse at 88% 80%,rgba(94,234,212,.08),transparent 35%)}
.auth-ambient span{position:absolute;width:34vw;aspect-ratio:1;border:1px solid rgba(138,162,255,.12);border-radius:50%;animation:authOrbit 24s linear infinite}
.auth-ambient span:nth-child(1){top:-19%;left:-10%}.auth-ambient span:nth-child(2){right:-15%;bottom:-28%;width:45vw;animation-direction:reverse}.auth-ambient span:nth-child(3){top:38%;left:44%;width:15vw;border-color:rgba(94,234,212,.1);animation-duration:32s}
@keyframes authOrbit{to{transform:rotate(360deg)}}
.auth-layout{width:min(100%,1120px);display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.86fr);gap:clamp(24px,5vw,76px);align-items:center;position:relative;z-index:1}
.auth-showcase{min-width:0;min-height:640px;padding:clamp(24px,4vw,48px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:30px;background:radial-gradient(ellipse at 75% 8%,rgba(138,162,255,.16),transparent 38%),linear-gradient(145deg,rgba(22,28,42,.96),rgba(12,15,23,.96));box-shadow:0 28px 90px rgba(0,0,0,.22)}
.auth-showcase:after{content:"ES";position:absolute;z-index:0;right:-10px;bottom:-76px;font-size:clamp(170px,24vw,320px);font-weight:800;letter-spacing:-.12em;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.055);direction:ltr;pointer-events:none}
.auth-brand-lockup{position:relative;z-index:1;display:inline-flex;align-items:center;gap:12px;width:max-content;max-width:100%;text-decoration:none;color:var(--text)}
.auth-brand-lockup .auth-logo{width:47px;height:47px}.auth-brand-lockup>span{display:grid;gap:0}.auth-brand-lockup b{font-size:21px;letter-spacing:-.6px;direction:ltr}.auth-brand-lockup small{font-size:8px;letter-spacing:1.5px;color:var(--muted);direction:ltr}
.auth-showcase-copy{position:relative;z-index:1;margin:auto 0;padding:60px 0 45px;max-width:570px}
.auth-kicker{display:inline-flex;align-items:center;gap:9px;color:#b8c4ff;font-size:10px;letter-spacing:1.6px;direction:ltr}
.auth-kicker i{width:7px;height:7px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 5px rgba(94,234,212,.09)}
.auth-showcase-copy h1{font-size:clamp(34px,4.4vw,57px);line-height:1.45;letter-spacing:-1.6px;margin:22px 0 14px;font-weight:650;text-wrap:balance}
.auth-showcase-copy h1 em{font-style:normal;color:var(--accent)}
.auth-showcase-copy>p{max-width:430px;margin:0;color:var(--muted);font-size:13px;line-height:2.2}
.auth-benefits{display:grid;gap:13px;margin-top:32px;color:#d9dfeb;font-size:11px}
.auth-benefits span{display:flex;align-items:center;gap:12px}.auth-benefits b{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--border);border-radius:10px;color:var(--accent);font:10px ui-monospace,monospace;direction:ltr}
.auth-showcase-footer{position:relative;z-index:1;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08);padding-top:18px;color:#778194;font-size:9px;letter-spacing:.6px}
.auth-form-card{width:100%;max-width:520px;justify-self:center;padding:clamp(25px,3.5vw,43px);border:1px solid rgba(255,255,255,.1);border-radius:27px;background:linear-gradient(150deg,rgba(22,27,39,.97),rgba(15,18,27,.98));box-shadow:0 26px 80px rgba(0,0,0,.25);animation:authPanelIn .65s cubic-bezier(.2,.8,.2,1) both}
@keyframes authPanelIn{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
.auth-mobile-brand{display:none;align-items:center;gap:9px;margin-bottom:24px;direction:ltr}.auth-mobile-brand img{width:36px;height:36px}.auth-mobile-brand b{font-size:18px}
.auth-form-card .auth-copy{margin-bottom:25px}.auth-form-card .auth-copy .eyebrow{margin-bottom:7px}.auth-form-card .auth-copy h2{font-size:clamp(27px,3vw,34px);line-height:1.45;margin:0 0 7px;letter-spacing:-.6px}.auth-form-card .auth-copy>p:last-child{font-size:12px;color:var(--muted);margin:0;line-height:2}
.auth-form-card .auth-form{display:grid;gap:17px;margin:0}.auth-form-card .auth-form>label,.auth-form-grid>label{display:grid;gap:8px;color:#d6dbe5;font-size:11px;min-width:0}
.auth-form-card .auth-form input:not([type=file]),.auth-form-card .auth-form-grid input{width:100%;min-width:0;min-height:49px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:#0b0e15;color:var(--text);outline:none;transition:border-color .22s,box-shadow .22s,background .22s}
.auth-form-card .auth-form input:focus{border-color:rgba(138,162,255,.7);background:#0e121c;box-shadow:0 0 0 4px rgba(138,162,255,.1)}
.auth-form-card .auth-form input::placeholder{color:#657084}
.auth-form-card .auth-submit{width:100%;min-height:51px;margin-top:5px;border-radius:14px;background:linear-gradient(100deg,#b6c3ff,#8aa2ff);border-color:transparent;color:#0b0d13;display:flex;justify-content:space-between;padding-inline:17px;font-size:12px;font-weight:800;box-shadow:0 10px 30px rgba(138,162,255,.13)}
.auth-form-card .auth-submit:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(138,162,255,.22)}
.auth-form-card .auth-switch{text-align:center;margin:22px 0 0;color:var(--muted);font-size:11px}.auth-form-card .auth-switch a{color:var(--accent);font-weight:800;margin-inline-start:5px}
.auth-form-card .auth-error{margin:0 0 16px;padding:11px 13px;font-size:11px}
.auth-password-wrap{position:relative;display:block}.auth-password-wrap input{padding-inline-end:50px!important;direction:ltr;text-align:left}.auth-password-toggle{position:absolute;top:50%;inset-inline-end:8px;transform:translateY(-50%);width:34px;height:34px;border:1px solid var(--border);border-radius:10px;background:var(--raised);color:var(--muted);cursor:pointer}.auth-password-toggle:hover{color:var(--accent);border-color:var(--accent)}
.auth-security-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;color:#7f899a;font-size:9px}.auth-security-note>span:first-child{color:var(--success);font-size:16px}
.auth-legal{margin:0;color:#818b9c;font-size:9px;line-height:1.8;text-align:center}
.auth-avatar-field>span:first-child{display:flex;align-items:center;gap:8px}.auth-avatar-field>span:first-child small{font-size:9px;color:var(--muted)}.auth-avatar-control{display:flex;align-items:center;gap:13px;padding:13px;border:1px dashed rgba(255,255,255,.14);border-radius:15px;background:rgba(255,255,255,.02)}.auth-avatar-control>img{width:55px;height:55px;flex:0 0 55px;object-fit:cover;border:1px solid var(--border);border-radius:16px;background:var(--raised);padding:5px}.auth-avatar-control>span{display:grid;gap:4px;min-width:0}.auth-avatar-control b{font-size:11px;color:var(--text)}.auth-avatar-control small,.auth-field-hint{font-size:9px;color:var(--muted);line-height:1.8}.auth-avatar-control input[type=file]{width:100%;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;font-size:10px;color:var(--muted)}
.auth-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.auth-field-full{grid-column:1/-1}.auth-form-card .auth-form-grid label{font-size:10px}.auth-form-card .auth-form-grid input{min-height:45px;padding:10px 12px;font-size:12px}.auth-form-card .auth-field-hint{margin-top:-3px}
.auth-code-window{max-width:440px;margin-top:29px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(5,8,14,.56);box-shadow:0 18px 40px rgba(0,0,0,.15);transform:rotate(-1deg);transition:transform .35s}.auth-code-window:hover{transform:rotate(0) translateY(-3px)}.auth-code-window>div{display:flex;align-items:center;gap:5px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.07)}.auth-code-window>div i{width:7px;height:7px;border-radius:50%;background:#fb7185}.auth-code-window>div i:nth-child(2){background:#fbbf24}.auth-code-window>div i:nth-child(3){background:#34d399}.auth-code-window>div span{margin-inline-start:auto;color:#7f899b;font:9px ui-monospace,monospace;direction:ltr}.auth-code-window pre{margin:0;padding:17px 19px;color:#d6deef;font:11px/2 ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}.auth-code-window pre b{color:#a5b4fc}.auth-code-window pre strong{color:#86efac;font-weight:500}.auth-cursor{color:var(--accent);animation:authCursorBlink 1s steps(2,start) infinite}@keyframes authCursorBlink{to{opacity:0}}
@media(max-width:920px){.auth-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);gap:22px}.auth-showcase{min-height:590px;padding:27px}.auth-showcase-copy h1{font-size:clamp(31px,4vw,43px)}.auth-form-card{padding:26px}}
@media(max-width:700px){body.auth .auth-page{padding:16px;align-items:start}.auth-layout{width:min(100%,500px);grid-template-columns:minmax(0,1fr);gap:0;margin:auto}.auth-showcase{display:none}.auth-form-card{max-width:100%;padding:25px 20px;border-radius:23px;margin:0}.auth-mobile-brand{display:flex}.auth-form-card .auth-copy{margin-bottom:21px}.auth-form-card .auth-copy h2{font-size:29px}.auth-ambient span{width:65vw}.auth-form-card .auth-form-grid{gap:13px 10px}}
@media(max-width:390px){body.auth .auth-page{padding:10px}.auth-form-card{padding:20px 15px}.auth-form-grid{grid-template-columns:1fr}.auth-field-full{grid-column:auto}.auth-avatar-control{align-items:flex-start}.auth-avatar-control>img{width:47px;height:47px;flex-basis:47px}.auth-form-card .auth-form-grid label{grid-column:1}}
@media(prefers-reduced-motion:reduce){.auth-ambient span,.auth-form-card,.auth-code-window,.auth-cursor,.content-project-card,.content-project-cover .project-cover-image{animation:none!important;transition:none!important}.content-project-card:hover{transform:none!important}}
@media(max-width:900px){.content-project-grid,.home-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-library-hero{gap:18px}.hub-library-hero .repo-stat{flex-basis:100px;min-width:100px;min-height:100px}}
@media(max-width:700px){.content-hub{width:min(100% - 22px,1120px);padding-top:26px;padding-bottom:55px}.content-project-grid,.home-video-grid{grid-template-columns:minmax(0,1fr);gap:15px}.hub-library-hero{min-height:0;padding:19px;align-items:stretch;flex-direction:column;border-radius:21px}.hub-library-hero>div:first-child{max-width:none}.hub-library-hero h1{font-size:clamp(26px,7vw,35px)}.hub-library-hero .repo-stat{align-self:flex-end;min-width:85px;min-height:75px;flex-basis:auto;padding:10px 14px;border-radius:17px}.hub-library-hero .repo-stat strong{font-size:25px}.hub-library-hero .repo-stat i{top:7px;inset-inline-end:9px}.content-hub .library-search{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:9px}.content-hub .library-search input{grid-column:1/-1;width:100%}.content-project-cover{aspect-ratio:16/9}.content-project-card .project-card-content{padding:14px 8px 9px}.content-project-card .project-card-content>p{min-height:0}.content-cover-action{opacity:1;transform:none}.article-results-heading{margin-top:4px}}
@media(max-width:390px){.hub-library-hero{padding:15px}.content-project-card{padding:8px;border-radius:17px}.content-project-cover{border-radius:11px}.content-project-card .project-card-content{padding:12px 6px 7px}.content-project-card h3{font-size:16px}.content-card-meta{font-size:9px}}


/* ESCode 2.2 — article reading, auth controls, contact layout and bilingual typography */
.article-reading-layout .article-reading-header{padding:clamp(26px,4vw,46px)!important;display:flex;flex-direction:column;align-items:stretch;gap:0;overflow:hidden}
.article-reading-layout .article-reading-header>.eyebrow{margin:0 0 14px;line-height:1.5;align-self:flex-start}
.article-reading-layout .article-reading-header h1{width:100%;margin:0 0 14px;padding:0;line-height:1.48;letter-spacing:-.035em;overflow-wrap:anywhere;word-break:normal}
.article-reading-layout .article-reading-header .article-excerpt{max-width:72ch;margin:0 0 18px;padding:0;font-size:clamp(14px,1.4vw,17px);line-height:2;color:var(--muted)}
.article-reading-layout .article-reading-meta{margin-top:8px;gap:10px 16px;align-items:center;line-height:1.8}
.article-reading-layout .article-author-chip{display:inline-flex;align-items:center;gap:9px;min-width:0}
.article-reading-layout .article-author-chip b{overflow-wrap:anywhere;font-weight:500}
.article-reading-layout .article-reading-meta time,.article-reading-layout .article-reading-meta>span{display:inline-flex;align-items:center;gap:5px}
.auth-password-wrap{direction:ltr!important;width:100%;min-width:0;isolation:isolate}
.auth-form-card .auth-password-wrap input{display:block;width:100%;padding-right:58px!important;padding-left:14px!important;direction:ltr;text-align:left;position:relative;z-index:1}
.auth-password-toggle{right:8px!important;left:auto!important;inset-inline-end:auto!important;z-index:3;display:grid;place-items:center;line-height:1;transform:translateY(-50%);font-size:16px}
.auth-form-card .auth-copy h2{font-weight:500;letter-spacing:-.35px}
.auth-form-card .auth-copy>p:last-child{font-weight:400}
.auth-form-card .auth-form>label,.auth-form-grid>label{font-weight:400;color:#c7ced9;font-size:12px}
.auth-form-card .auth-form input:not([type=file]),.auth-form-card .auth-form-grid input{font-weight:400;font-size:13px}
.auth-form-card .auth-submit{font-weight:600}
.auth-form-card .auth-switch a{font-weight:600}
.contact-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-areas:"profile aside" "profile form";align-items:start;gap:18px;padding-top:48px}
.contact-profile-card{grid-area:profile;position:sticky;top:100px;align-self:start;min-width:0;padding:clamp(22px,3vw,34px);border-radius:22px;background:linear-gradient(145deg,rgba(197,242,119,.045),transparent 55%),var(--surface);box-shadow:0 20px 55px rgba(0,0,0,.13)}
.contact-aside{grid-area:aside;padding:clamp(18px,2.6vw,30px);border:1px solid var(--border);border-radius:22px;background:linear-gradient(145deg,rgba(197,242,119,.04),transparent 70%),var(--surface)}
.contact-aside h2{font-size:clamp(21px,2.2vw,28px);font-weight:500;line-height:1.55;margin:17px 0 8px}
.contact-aside>p{margin:0 0 18px;line-height:1.9}
.contact-form-v2{grid-area:form;min-width:0;padding:clamp(20px,3vw,30px);border-radius:22px;box-shadow:0 20px 55px rgba(0,0,0,.12)}
.contact-form-v2 label{font-weight:400;font-size:12px}
.contact-form-v2 input,.contact-form-v2 textarea{font-weight:400}
.contact-form-v2 button,.contact-profile-links a{font-weight:500}
.auth-language-switch{display:inline-flex;align-items:center;justify-content:center;min-width:66px;padding:7px 11px;border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:11px;font-weight:500;direction:ltr}
.auth-language-switch:hover{border-color:var(--accent);color:var(--text)}
.auth-mobile-brand{position:relative}
.auth-mobile-brand .auth-language-switch{margin-inline-start:auto}
.is-en{font-family:Inter,Vazirmatn,system-ui,sans-serif}
.is-en .article-reading-layout .article-reading-header>.eyebrow{text-align:left;align-self:flex-start}
.is-en .article-reading-layout .article-reading-meta{direction:ltr;justify-content:flex-start}
@media(max-width:820px){.contact-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"aside" "form" "profile";gap:14px;padding-top:32px}.contact-profile-card{position:static}.contact-aside,.contact-form-v2,.contact-profile-card{border-radius:18px}}
@media(max-width:600px){.article-reading-layout .article-reading-header{padding:23px 18px!important}.article-reading-layout .article-reading-header h1{font-size:clamp(27px,8vw,39px);line-height:1.5}.article-reading-layout .article-reading-header .article-excerpt{font-size:14px;line-height:1.95}.auth-password-toggle{right:7px!important;width:34px;height:34px}.auth-form-card .auth-password-wrap input{padding-right:51px!important}.contact-layout{padding-top:22px}.contact-profile-card,.contact-aside,.contact-form-v2{padding:19px}}
@media(prefers-reduced-motion:reduce){.contact-profile-card,.contact-aside,.contact-form-v2{scroll-behavior:auto;transition:none}}

.auth-locale-row{display:flex;justify-content:flex-end;margin:0 0 12px}.auth-locale-row .auth-language-switch{min-width:74px}


/* ESCode 2.2.1 — auth theme controls and password field overlap fix */
.auth-locale-row{align-items:center;gap:8px;flex-wrap:wrap}
.auth-locale-row .auth-theme-toggle{flex:0 0 38px;width:38px;height:38px;min-width:38px;padding:0;display:inline-grid;place-items:center;margin-inline-end:auto;border-radius:12px;font-size:17px;line-height:1}
.auth-locale-row .auth-language-switch{white-space:nowrap}
.auth-form-card .auth-password-wrap{position:relative!important;display:block!important;width:100%;min-width:0;height:auto;direction:ltr!important;isolation:isolate}
.auth-form-card .auth-password-wrap input,
.auth-form-card .auth-form .auth-password-wrap input{position:relative;display:block;width:100%;min-width:0;box-sizing:border-box;padding-right:58px!important;padding-left:14px!important;direction:ltr;text-align:left;z-index:0}
.auth-form-card .auth-password-wrap .auth-password-toggle{position:absolute!important;top:50%!important;right:9px!important;left:auto!important;inset-inline-start:auto!important;inset-inline-end:auto!important;transform:translateY(-50%)!important;width:34px;height:34px;min-width:34px;max-width:34px;padding:0;margin:0;z-index:2;display:grid;place-items:center;line-height:1;border-radius:10px;background:var(--raised);color:var(--muted);box-shadow:none}
.auth-form-card .auth-password-wrap .auth-password-toggle:focus-visible{outline-offset:2px}
body.light.auth .auth-form-card{background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(248,249,253,.99));border-color:rgba(20,25,40,.13);box-shadow:0 26px 80px rgba(35,45,75,.12)}
body.light.auth .auth-showcase{background:radial-gradient(ellipse at 75% 8%,rgba(78,104,215,.12),transparent 38%),linear-gradient(145deg,#fff,#f0f2f8);border-color:rgba(20,25,40,.12);box-shadow:0 28px 90px rgba(35,45,75,.1)}
body.light.auth .auth-showcase:after{-webkit-text-stroke-color:rgba(30,40,70,.07)}
body.light.auth .auth-showcase-copy h1{color:#171a22}
body.light.auth .auth-showcase-copy h1 em{color:#4e68d7}
body.light.auth .auth-showcase-copy>p{color:#5c6472}
body.light.auth .auth-benefits{color:#343b49}
body.light.auth .auth-showcase-footer{border-top-color:rgba(20,25,40,.1);color:#747d8d}
body.light.auth .auth-kicker{color:#4e68d7}
body.light.auth .auth-form-card .auth-form>label,
body.light.auth .auth-form-card .auth-form-grid>label{color:#424b5a}
body.light.auth .auth-form-card .auth-form input:not([type=file]),
body.light.auth .auth-form-card .auth-form-grid input{background:#f5f6fa;border-color:rgba(20,25,40,.14);color:#171a22}
body.light.auth .auth-form-card .auth-form input:focus{background:#fff;border-color:rgba(78,104,215,.65);box-shadow:0 0 0 4px rgba(78,104,215,.1)}
body.light.auth .auth-form-card .auth-form input::placeholder{color:#8a92a0}
body.light.auth .auth-form-card .auth-password-wrap .auth-password-toggle{background:#e9ecf5;color:#535d70;border-color:rgba(20,25,40,.12)}
body.light.auth .auth-form-card .auth-security-note{color:#687284}
body.light.auth .auth-form-card .auth-avatar-control{background:rgba(20,25,40,.025);border-color:rgba(20,25,40,.18)}
@media(max-width:600px){.auth-form-card .auth-password-wrap input,.auth-form-card .auth-form .auth-password-wrap input{padding-right:58px!important}.auth-form-card .auth-password-wrap .auth-password-toggle{right:9px!important}}
