:root{--bg:#070707;--text:#f3f1eb;--muted:#b5b0a5;--muted-2:#7e7a72;--surface:#111;--border:#262626;--shadow:#00000073}:root[data-theme=light]{--bg:#f7f6f2;--text:#161616;--muted:#5d5a55;--muted-2:#8b8780;--surface:#fff;--border:#ddd;--shadow:#0000001f}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .24s,color .24s}a{color:inherit;text-decoration:none}button{color:#fff;cursor:pointer;background:#151515;border:0;border-radius:8px;padding:.9rem 1.3rem;font-weight:700}button:disabled{opacity:.5;cursor:not-allowed}main{min-height:100vh}.portfolioHero{justify-content:space-between;gap:2rem;max-width:1320px;margin:0 auto;padding:5rem 2rem 3rem;display:flex}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin:0 0 .9rem;font-size:.72rem;font-weight:700}.portfolioHero h1{letter-spacing:-.08em;max-width:900px;margin:0;font-size:clamp(3.4rem,9vw,8rem);font-weight:700;line-height:.9}.heroText{max-width:620px;color:var(--muted);margin-top:1.5rem;font-size:clamp(1rem,2vw,1.25rem);line-height:1.7}.heroActions{flex-wrap:wrap;align-self:flex-start;gap:.75rem;display:flex}.adminLink,.themeToggle{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;justify-content:center;align-items:center;padding:.8rem 1rem;font-weight:700;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.adminLink:hover,.themeToggle:hover{border-color:#3a3a3a;transform:translateY(-1px)}.toolbar{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1320px;margin:0 auto 1.5rem;padding:0 2rem;display:flex}.toolbar p{color:var(--muted);font-weight:700}.toolbar input{border:1px solid var(--border);background:var(--surface);width:min(340px,100%);color:var(--text);font:inherit;border-radius:8px;padding:.9rem 1rem}.toolbar input::placeholder{color:var(--muted-2)}.statusText{max-width:1320px;color:var(--muted);margin:2rem auto;padding:0 2rem}.masonryGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:1320px;margin:0 auto;padding:0 2rem 5rem;display:grid}.photoTile{aspect-ratio:4/3;cursor:pointer;isolation:isolate;box-shadow:0 18px 50px var(--shadow);background:#111;border:0;border-radius:10px;padding:0;position:relative;overflow:hidden}.photoTile:after{content:"";pointer-events:none;background:linear-gradient(#ffffff05,#0000 20%);position:absolute;inset:0}.photoTile img{object-fit:cover;width:100%;height:100%;transition:transform .9s,opacity .9s,filter .9s;position:absolute;inset:0}.photoTile:hover img{opacity:.95;filter:saturate(1.04);transform:scale(1.03)}.photoOverlay{text-align:left;color:#fff;background:linear-gradient(#0000,#00000061,#000000eb);padding:4rem 1rem 1rem;position:absolute;inset:auto 0 0}.photoOverlay h2{letter-spacing:-.02em;margin:0;font-size:1rem;font-weight:600}.photoOverlay p{color:#ffffffb8;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:.35rem 0 0;font-size:.92rem;line-height:1.5;display:-webkit-box;overflow:hidden}.lightbox{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050505e6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.lightboxContent{color:#fff;background:#0a0a0a;border-radius:12px;width:min(1280px,100%);max-height:92vh;position:relative;overflow:hidden;box-shadow:0 30px 90px #0000008c}.lightboxContent img{object-fit:contain;background:#050505;width:100%;max-height:78vh;display:block}.lightboxText{padding:1.25rem 1.5rem 1.5rem}.lightboxText h2{margin:0;font-size:1.8rem;font-weight:600}.lightboxText p:last-child{color:#ffffffb8}.closeButton{z-index:2;color:#111;background:#ffffffeb;border-radius:8px;width:46px;height:46px;padding:0;font-size:2rem;line-height:1;position:absolute;top:1rem;right:1rem}.page{max-width:1180px;margin:0 auto;padding:2rem}.dropzone{border:1px dashed var(--border);background:var(--surface);min-height:220px;color:var(--muted);cursor:pointer;text-align:center;border-radius:10px;place-items:center;margin-bottom:2rem;font-weight:700;display:grid}.uploadList{gap:1rem;margin-bottom:1.5rem;display:grid}.uploadItem,.adminPhoto{background:var(--surface);color:var(--text);box-shadow:0 10px 32px var(--shadow);border-radius:10px;grid-template-columns:160px 1fr;gap:1rem;padding:1rem;display:grid}.uploadItem img,.adminPhoto img{object-fit:cover;border-radius:8px;width:160px;height:120px}.uploadFields{gap:.75rem;display:grid}.uploadFields input,.uploadFields textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:.85rem}.uploadFields input::placeholder,.uploadFields textarea::placeholder{color:var(--muted-2)}.uploadFields textarea{resize:vertical;min-height:90px}.adminExisting{margin-top:3rem}.adminGrid{gap:1rem;margin-top:1rem;display:grid}.buttonRow{flex-wrap:wrap;gap:.75rem;margin-top:.75rem;display:flex}.secondaryButton{color:#fff;background:#555}.dangerButton{color:#fff;background:#b83242}@media (width<=1000px){.masonryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.portfolioHero{flex-direction:column;padding-top:3rem}.toolbar{flex-direction:column;align-items:stretch}.toolbar input{width:100%}}@media (width<=650px){.masonryGrid{grid-template-columns:1fr;padding-inline:1rem}.uploadItem,.adminPhoto{grid-template-columns:1fr}.uploadItem img,.adminPhoto img{aspect-ratio:4/3;width:100%;height:auto}}.filters{grid-template-columns:minmax(240px,1.4fr) minmax(160px,.8fr) minmax(160px,.8fr) minmax(160px,.8fr);align-items:center;gap:.75rem;display:grid}.filters input,.filters select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:.9rem 1rem}.filters select{cursor:pointer}@media (width<=1100px){.filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}@media (width<=700px){.filters{grid-template-columns:1fr}}.lightboxNav{z-index:2;color:#111;background:#ffffffdb;border-radius:8px;width:48px;height:64px;padding:0;font-size:2.4rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.lightboxPrev{left:1rem}.lightboxNext{right:1rem}@media (width<=650px){.lightboxNav{width:42px;height:54px;font-size:2rem}}.exifText{color:#ffffff8c;letter-spacing:.01em;margin-top:1rem;font-size:.9rem}.checkboxLabel{color:var(--text);align-items:center;gap:.55rem;font-weight:700;display:flex}.checkboxLabel input{width:auto}.featuredBadge{color:var(--muted-2);letter-spacing:.12em;text-transform:uppercase;margin:.25rem 0 .5rem;font-size:.75rem;font-weight:800;display:inline-block}.featuredSection{max-width:1320px;margin:0 auto 3rem;padding:0 2rem}.sectionHeading{margin-bottom:1rem}.sectionHeading h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.featuredGrid{grid-template-columns:1.35fr 1fr 1fr;gap:1rem;display:grid}.featuredTile{cursor:pointer;min-height:360px;box-shadow:0 18px 50px var(--shadow);background:#111;border:0;border-radius:10px;padding:0;position:relative;overflow:hidden}.featuredTile:first-child{min-height:460px}.featuredTile img{object-fit:cover;width:100%;height:100%;transition:transform .9s,opacity .9s,filter .9s;position:absolute;inset:0}.featuredTile:hover img{opacity:.95;filter:saturate(1.04);transform:scale(1.03)}@media (width<=900px){.featuredGrid{grid-template-columns:1fr}.featuredTile,.featuredTile:first-child{aspect-ratio:4/3;min-height:auto}}
