:root{--bg:#09080f;--bg-secondary:#100d1a;--bg-soft:#171225;--text:#f4f1fa;--muted:#a8a1b8;--border:#2a2438;--border-strong:#463a5c;--accent:#a970ff;--accent-strong:#c18aff;--accent-dim:#a970ff1f;--accent-border:#a970ff61;--purple-deep:#6e3cbc;--danger:#e07a8a;--danger-dim:#e07a8a1f;--success:#73c69a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans Arabic,system-ui,-apple-system,Segoe UI,Roboto,Noto Sans Arabic,sans-serif;line-height:1.6}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);min-height:100vh;margin:0}#root{min-height:100vh}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:var(--bg)}.container{width:100%;max-width:1100px;margin-inline:auto;padding-inline:1.5rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.panel{border:1px solid var(--border);text-align:center;background:var(--bg-soft);max-width:420px;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;margin:4rem auto;padding:2rem}.panel-icon{width:auto;height:2.4rem;margin:0 auto 1.1rem;display:block}.panel h1{margin:0 0 1.5rem;font-size:1.5rem}.auth-status{text-align:center;color:var(--muted);margin-top:4rem}form{flex-direction:column;gap:1rem;display:flex}label{text-align:left;flex-direction:column;gap:.25rem;font-weight:600;display:flex}input,textarea,select{border:1px solid var(--border);font:inherit;color:var(--text);background:var(--bg-soft);border-radius:6px;padding:.55rem .7rem;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim);outline:none}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}button{border:1px solid var(--border-strong);background:var(--bg-soft);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:.55rem 1.1rem;transition:background .15s,border-color .15s,color .15s}button:hover:not(:disabled){background:var(--bg);border-color:var(--accent-border)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed}button[type=submit]{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}button[type=submit]:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--bg)}button.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}button.btn-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--bg)}button.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}button.btn-danger:hover:not(:disabled){background:var(--danger-dim);border-color:var(--danger);color:var(--danger)}.error{color:var(--danger);font-weight:500}.notice{color:var(--success);font-weight:600}.admin-container{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;max-width:960px;margin:0 auto;padding:2rem}.admin-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.admin-header h1{letter-spacing:-.01em;margin:0;font-size:1.6rem}.admin-subtitle{color:var(--muted);margin:.25rem 0 0}.admin-description{color:var(--muted);max-width:68ch;margin:0 0 1.5rem}.role-badge{border:1px solid var(--accent-border);color:var(--accent);border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.role-badge.role-owner{border-color:var(--accent-border);color:var(--accent-strong)}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.85rem}.developers-table .owner-row{background:var(--accent-dim)}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-link{color:var(--accent);border-bottom:1px solid var(--accent-border);padding-bottom:1px;font-weight:600;transition:color .15s,border-color .15s}.admin-link:hover{color:var(--accent-strong);border-color:var(--accent)}.admin-back{color:var(--accent);font-weight:600;transition:color .15s}.admin-back:hover{color:var(--accent-strong)}.btn-admin-link{border:1px solid var(--accent-border);color:var(--accent);background:0 0;border-radius:6px;align-items:center;padding:.55rem 1.1rem;font-weight:500;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.btn-admin-link:hover{border-color:var(--accent);background:var(--accent-dim);color:var(--accent-strong)}.muted{color:var(--muted)}.table-scroll{border:1px solid var(--border);background:var(--bg-soft);border-radius:8px;overflow-x:auto}.projects-table{border-collapse:collapse;width:100%;min-width:640px}.projects-table th,.projects-table td{border-bottom:1px solid var(--border);text-align:start;padding:.75rem}.projects-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);font-size:.78rem;font-weight:600}.projects-table tbody tr:last-child td{border-bottom:none}.projects-table tbody tr:hover{background:var(--bg)}.projects-table .actions{gap:.5rem;display:flex}.projects-table .actions button{padding:.35rem .8rem;font-size:.85rem}.projects-table .table-empty{text-align:center;color:var(--muted);padding:3rem 1rem}.project-form{max-width:none}.form-sticky-header{z-index:5;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem;margin:-2rem -2rem 1.5rem;padding:.75rem 2rem;display:flex;position:sticky;top:0}.form-sticky-title{margin-inline-end:auto;font-size:1.05rem;font-weight:700}.form-sticky-status{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.15rem .6rem;font-size:.72rem;font-weight:600;display:inline-block}.form-sticky-status.is-published{border-color:var(--accent-border);color:var(--accent)}.form-sticky-actions{align-items:center;gap:.5rem;display:flex}.form-sticky-actions .btn-cancel{border-color:var(--border);color:var(--muted);background:0 0}.form-sticky-actions .btn-cancel:hover{border-color:var(--accent-border);color:var(--text)}.form-section{border:1px solid var(--border);background:var(--bg-soft);border-radius:8px;margin-bottom:1rem;overflow:hidden}.form-section-toggle{width:100%;color:var(--text);font:inherit;text-align:start;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-size:.88rem;font-weight:600;transition:background .15s;display:flex}.form-section-toggle:hover{background:var(--bg)}.form-section-toggle .chevron{color:var(--muted);margin-left:auto;font-size:.75rem;transition:transform .2s}.form-section-toggle[aria-expanded=false] .chevron{transform:rotate(-90deg)}.form-section-body{padding:0 1.25rem 1.25rem}.form-section-body.is-collapsed{display:none}.project-meta{border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:8px;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.82rem;display:flex}.project-meta span{white-space:nowrap}.slug-display{border:1px solid var(--border);background:var(--bg);color:var(--muted);word-break:break-all;border-radius:6px;align-items:center;gap:.5rem;padding:.55rem .7rem;font-family:monospace;font-size:.88rem;display:flex}.required-mark{color:var(--danger);margin-inline-start:.15rem}.form-group{border:1px solid var(--border);background:var(--bg-soft);border-radius:8px;margin:0 0 1.25rem;padding:1.5rem}.form-group legend{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;padding:0 .5rem;font-size:.8rem;font-weight:700}.field-hint{color:var(--muted);font-size:.8rem;font-weight:400}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{text-align:start;flex-direction:column;gap:.25rem;margin-bottom:1rem;font-weight:600;display:flex}.field>span:first-child{font-size:.9rem}.field input,.field textarea,.field select{font-weight:400;font:inherit}[dir=rtl] .field input,[dir=rtl] .field textarea,[dir=rtl] .field select{text-align:left;direction:ltr}[dir=rtl] .field.rtl input,[dir=rtl] .field.rtl textarea{text-align:right;direction:rtl}.field-error{color:var(--danger);font-size:.85rem;font-weight:400}.form-checkboxes{gap:2rem;margin-bottom:1rem;display:flex}.checkbox-field{flex-direction:row;align-items:center;gap:.5rem;font-weight:400}.checkbox-field input{width:auto;accent-color:var(--accent)}.form-actions{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.form-actions button[type=submit]{min-width:7rem}.image-upload{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.image-label{font-size:.9rem;font-weight:600}.screenshot-row{align-items:center;gap:.5rem;display:flex}.screenshot-row input{flex:1}.thumb{object-fit:cover;border:1px solid var(--border);background:var(--bg);border-radius:6px;width:120px;height:80px}@media (width<=640px){.admin-container{padding:1.25rem}.admin-header{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.form-group{padding:1rem}.admin-toolbar{gap:.75rem}.form-sticky-header{margin:-1.25rem -1.25rem 1rem;padding:.65rem 1.25rem}.form-sticky-title{font-size:.95rem}.form-section-body{padding:0 1rem 1rem}.form-section-toggle{padding:.8rem 1rem}}.remember-me{flex-direction:row;align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:400}.remember-me input{width:auto;accent-color:var(--accent)}@media (width<=480px){.admin-container{padding:1rem}.panel{margin:2rem auto;padding:1.5rem}.admin-header{flex-direction:column;gap:.75rem}.admin-header h1{font-size:1.3rem}.admin-toolbar{flex-direction:column;align-items:stretch}.admin-toolbar .btn-primary{text-align:center;width:100%}.form-sticky-header{margin:-1rem -1rem 1rem;padding:.5rem 1rem}.form-sticky-title{font-size:.9rem}.form-sticky-actions{justify-content:flex-end;width:100%}.form-actions button[type=submit]{min-width:auto}.projects-table td,.projects-table th{padding:.5rem;font-size:.82rem}.developers-table td,.developers-table th{padding:.4rem;font-size:.8rem}.admin-subtitle{font-size:.85rem}.form-group{padding:.85rem}.form-section-body{padding:0 .85rem .85rem}.form-section-toggle{padding:.75rem .85rem;font-size:.85rem}.field>span:first-child{font-size:.85rem}}.site-header{z-index:10;background:var(--bg-secondary);border-bottom:1px solid var(--border);position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.brand{letter-spacing:-.01em;color:var(--accent);align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;transition:color .15s;display:inline-flex}.brand-icon{flex-shrink:0;width:auto;height:1.35rem}.brand:hover{color:var(--accent-strong)}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links a{color:var(--muted);font-weight:500;transition:color .15s}.nav-links a:hover{color:var(--accent-strong)}.lang-toggle{border:1px solid var(--border-strong);color:var(--muted);padding:.25rem .6rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.lang-toggle:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.section{border-top:1px solid var(--border);padding-block:clamp(3.5rem,8vw,6rem)}.section-heading{letter-spacing:-.01em;margin-bottom:2rem;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.2}.section-heading:after{content:"";background:linear-gradient(90deg, var(--accent), #a970ff26);border-radius:2px;width:2.75rem;height:2px;margin-top:.55rem;display:block}.hero{background:radial-gradient(90% 60% at 50% -12%,#a970ff1a,#6e3cbc0f 45%,#0000 72%);padding-block:clamp(4.5rem,12vw,9rem)}.hero-title{letter-spacing:-.02em;max-width:18ch;margin-bottom:1.5rem;font-size:clamp(2.4rem,7vw,4.6rem);font-weight:700;line-height:1.06}.hero-subtitle{color:var(--muted);max-width:52ch;margin-bottom:2.5rem;font-size:clamp(1.05rem,2vw,1.3rem)}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn{border:1px solid var(--accent-border);color:var(--accent);justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.4rem;font-size:1rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-strong)}.btn-primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--bg)}.work-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.project-card{border:1px solid var(--border);background:var(--bg-soft);flex-direction:column;transition:border-color .15s;display:flex}.project-card:hover{border-color:var(--accent-border)}.project-card-cover{aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--border);width:100%}.project-card-body{flex-direction:column;flex:1;gap:.75rem;padding:1.25rem;display:flex}.project-card-meta{flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.85rem;display:flex}.project-card-title{font-size:1.25rem;line-height:1.3}.badge{border:1px solid var(--accent-border);color:var(--accent);padding:.1rem .5rem;font-size:.75rem;font-weight:600}.tags{flex-wrap:wrap;gap:.4rem;margin-top:auto;padding:0;list-style:none;display:flex}.tags li{color:var(--muted);border:1px solid var(--border);padding:.15rem .5rem;font-size:.8rem}.empty-state{border:1px dashed var(--border-strong);text-align:center;color:var(--muted);padding:3rem 1.5rem}.split{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);align-items:start;gap:2rem;display:grid}.about-text{color:var(--muted);max-width:60ch;font-size:clamp(1.05rem,2vw,1.25rem)}.build-grid{counter-reset:build;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;display:grid}.build-item{counter-increment:build}.build-item:before{content:"0" counter(build);color:var(--accent);margin-bottom:.75rem;font-size:.8rem;display:block}.build-item h3{margin-bottom:.4rem;font-size:1.15rem}.build-item p{color:var(--muted);font-size:.95rem}.contact{text-align:center;border-top:1px solid var(--border);padding-block:clamp(4rem,10vw,7rem)}.contact h2{letter-spacing:-.01em;margin-bottom:1rem;font-size:clamp(2rem,5vw,3.2rem);line-height:1.15}.contact-text{color:var(--muted);margin-inline:auto;max-width:48ch;margin-bottom:2.5rem}.contact-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.site-footer{border-top:1px solid var(--border);padding-block:1.5rem}.footer-bottom{text-align:center;color:var(--muted);font-size:.85rem}.project-page{padding-block:2.5rem 6rem}.project-back{border:1px solid var(--border);color:var(--muted);align-items:center;gap:.5rem;margin-bottom:clamp(2rem,6vw,4rem);padding:.5rem .9rem;transition:border-color .15s,color .15s;display:inline-flex}.project-back:before{content:"←";line-height:1}.project-back:hover{border-color:var(--accent);color:var(--accent-strong)}html[lang=ar] .project-back:before{content:"→"}.project-header-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:.9rem;display:flex}.project-header h1{letter-spacing:-.02em;max-width:16ch;margin-bottom:1.5rem;font-size:clamp(2.4rem,7vw,4.6rem);line-height:1.05}.project-lead{color:var(--muted);max-width:60ch;margin-bottom:2rem;font-size:clamp(1.1rem,2.2vw,1.4rem)}.project-header .tags{margin-bottom:2.25rem}.project-links{flex-wrap:wrap;gap:1rem;margin-bottom:clamp(2.5rem,6vw,4rem);display:flex}.project-cover{aspect-ratio:16/9;border:1px solid var(--border);background:var(--bg-soft);margin-bottom:clamp(2.5rem,6vw,4rem);overflow:hidden}.project-cover img{object-fit:cover;width:100%;height:100%;display:block}.project-description{flex-direction:column;gap:1.25rem;max-width:68ch;margin-bottom:clamp(2.5rem,6vw,4rem);display:flex}.project-description p{font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.75}.project-features{border-top:1px solid var(--border);margin-bottom:clamp(2.5rem,6vw,4rem);padding-top:2.5rem}.features{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 2rem;margin:0;padding:0;list-style:none;display:grid}.features li{border-bottom:1px solid var(--border);align-items:baseline;gap:1rem;padding:.75rem 0;display:flex}.features-num{color:var(--accent);font-size:.8rem;font-weight:600}.project-gallery{margin-bottom:clamp(2.5rem,6vw,4rem)}.shot-viewer{align-items:center;gap:1rem;display:flex}.shot-main{border:1px solid var(--border);background:var(--bg-soft);cursor:zoom-in;flex:1;min-width:0;padding:0;transition:border-color .15s}.shot-main:hover{border-color:var(--accent-border)}.shot-main img{object-fit:contain;width:100%;max-height:60vh;display:block}.shot-nav{width:3rem;height:3rem;color:var(--muted);border:1px solid var(--border);background:var(--bg-soft);flex:none;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex}.shot-nav:hover{border-color:var(--accent);color:var(--accent-strong)}.shot-prev:before{content:"←"}.shot-next:before,[dir=rtl] .shot-prev:before{content:"→"}[dir=rtl] .shot-next:before{content:"←"}.shot-counter{text-align:center;color:var(--accent);margin:.75rem 0 1rem;font-size:.85rem;font-weight:600}.shot-thumbs{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.shot-thumb{border:1px solid var(--border);background:var(--bg-soft);cursor:pointer;width:76px;height:48px;padding:0;transition:border-color .15s,box-shadow .15s}.shot-thumb:hover{border-color:var(--accent-border)}.shot-thumb.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.shot-thumb img{object-fit:cover;width:100%;height:100%;display:block}.lightbox{z-index:100;background:#000000e0;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;border:1px solid var(--border-strong);max-width:100%;max-height:90vh}.lightbox-close{top:1rem;border:1px solid var(--border-strong);padding:.25rem .75rem;font-size:2rem;line-height:1;transition:background .15s,color .15s;position:absolute;inset-inline-end:1rem}.lightbox-close:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-strong)}.lightbox-prev,.lightbox-next{width:3rem;height:3rem;color:var(--text);border:1px solid var(--border-strong);background:#0a0a0b99;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{inset-inline-start:1rem}.lightbox-next{inset-inline-end:1rem}.lightbox-prev:before{content:"←"}.lightbox-next:before,[dir=rtl] .lightbox-prev:before{content:"→"}[dir=rtl] .lightbox-next:before{content:"←"}.lightbox-prev:hover,.lightbox-next:hover{border-color:var(--accent);color:var(--accent-strong)}.project-info{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;margin-bottom:clamp(2.5rem,6vw,4rem);display:grid}.project-info>div{background:var(--bg);padding:1.25rem}.project-info dt{color:var(--muted);margin-bottom:.5rem;font-size:.85rem}.project-info dd{margin:0}.project-info .tags{margin-top:.25rem}.project-nav{border-top:1px solid var(--border);justify-content:space-between;gap:1rem;margin-bottom:clamp(2.5rem,6vw,4rem);padding-top:2rem;display:flex}.project-nav-link{flex-direction:column;gap:.25rem;max-width:45%;display:flex}.project-nav-link span:last-child{transition:color .15s}.project-nav-link:hover span:last-child{color:var(--accent-strong)}.project-nav-next{text-align:end}.project-cta{border-top:1px solid var(--border);text-align:center;padding-top:3rem}.project-cta h2{margin-bottom:.75rem;font-size:clamp(1.6rem,3.5vw,2.2rem);line-height:1.2}.project-cta p{color:var(--muted);margin-bottom:1.75rem}.notfound{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;padding-block:clamp(4rem,12vw,8rem);display:flex}.notfound h1{font-size:clamp(1.8rem,4vw,2.6rem)}@media (width<=640px){.nav{flex-direction:column;align-items:flex-start;gap:.75rem}.nav-links{flex-wrap:wrap;gap:1rem;width:100%}.split{grid-template-columns:1fr}.shot-viewer{gap:.5rem}.shot-nav{width:2.5rem;height:2.5rem}.shot-main img{max-height:45vh}.shot-thumbs{scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:.5rem;overflow-x:auto}.project-nav{flex-direction:column}.project-nav-link{max-width:100%}.project-nav-next{text-align:start}}@media (width<=480px){html,body{overflow-x:hidden}.panel{margin:1.5rem auto;padding:1.5rem}.panel h1{font-size:1.3rem}.nav-links{gap:.75rem}.hero-title,.hero-subtitle,.project-header h1{max-width:100%}}html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3{letter-spacing:0}html[lang=ar] .hero-title,html[lang=ar] .project-header h1{line-height:1.2}
