:root{font-family:system-ui,-apple-system,sans-serif;color:#ecf0e7;background:#111b1a;color-scheme:dark}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1080px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #31403b}.brand{font-weight:800;letter-spacing:2px;text-decoration:none}.brand span{color:#c3ef97}a{color:#c3ef97;text-underline-offset:4px}.hero{padding:44px 0 32px}.eyebrow{font-size:11px;letter-spacing:3px;color:#aac68d}h1{font-size:clamp(34px,6vw,64px);line-height:1.05;letter-spacing:-2px}p,small{line-height:1.6}.hero p,.muted{color:#afbeb5}.panel{background:#1b2825;border:1px solid #35463d;border-radius:18px;padding:26px;margin:20px 0}h2{font-size:22px}.columns,.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}label{display:block;font-size:14px;margin:16px 0}input{display:block;width:100%;margin-top:9px;border:1px solid #526258;padding:13px;border-radius:9px;background:#111b1a;color:inherit;font:inherit}input:focus,button:focus-visible{outline:2px solid #c3ef97;outline-offset:3px}small{display:block;color:#afbeb5;margin-top:8px}img,video{display:block;width:100%;max-height:250px;object-fit:contain;margin-top:15px;border-radius:8px}.actions,.section-head{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}button{cursor:pointer;font:inherit;font-weight:600;padding:13px 20px;border:0;border-radius:9px;color:#152019;background:#c3ef97}.secondary{background:transparent;border:1px solid #70806e;color:#ecf0e7}button:disabled{opacity:.5;cursor:wait}.project{padding:20px;background:#1b2825;border:1px solid #35463d;border-radius:16px;overflow-wrap:anywhere}.project img{height:170px}.project h3{font-size:18px}.project .actions{margin-top:15px}progress{width:100%;margin-top:20px;accent-color:#c3ef97}#message{white-space:pre-line;padding:14px 0;overflow-wrap:anywhere}.error{color:#ffb1a1}details{padding:15px 0}footer{font-size:12px;color:#92a395}[hidden]{display:none!important}body.viewer{overflow:hidden;background:#111b1a}#viewerStatus{position:fixed;z-index:10;top:20px;left:20px;right:20px;border-radius:18px;padding:16px;background:#111b1ae8;text-align:center;pointer-events:none}#viewerLinks{position:fixed;z-index:11;bottom:25px;left:20px;right:20px;text-align:center}a-scene{position:fixed!important;inset:0}@media(max-width:650px){.columns,.project-grid{grid-template-columns:1fr}.panel{padding:18px}header,main,footer{padding:18px}}
/* Kamera görüntüsünü A-Frame'in şeffaf tuvalinin altında görünür tut. */
html.ar-camera-active,html.ar-camera-active body.viewer{background:transparent!important}
body.viewer video{max-height:none!important;max-width:none!important;margin:0!important;border-radius:0!important}
body.viewer a-scene{background:transparent!important}

/* Salva studio identity — visual layer only. */
:root{background:#0a0a0a;color:#f2f2f0;font-family:Arial,Helvetica,sans-serif}
a{color:#f2f2f0}
body:not(.viewer) header,body:not(.viewer) main,body:not(.viewer) footer{max-width:1480px;padding-left:48px;padding-right:48px}
body:not(.viewer) header{padding-top:30px;padding-bottom:30px;border-color:#262626}
.brand{font-size:17px;letter-spacing:3px;font-weight:700}
.brand span{color:#92928f;font-size:12px;font-weight:400}
body:not(.viewer) header>a:last-child{font-size:11px;letter-spacing:1.5px;text-decoration:none;border:1px solid #303030;border-radius:100px;padding:13px 20px}
.hero{padding:68px 0 50px;border-bottom:1px solid #262626;margin-bottom:40px}
.eyebrow{color:#92928f;font-family:monospace;font-size:11px;letter-spacing:2.4px}
h1{font-size:clamp(40px,5.5vw,78px);font-weight:500;line-height:1.08;letter-spacing:-3px;margin:26px 0}
.hero p{font-size:16px;max-width:620px;color:#92928f}
h2{font-weight:500;font-size:30px;letter-spacing:-1px;margin:18px 0}
.panel{background:transparent;border:0;border-radius:0;padding:28px 0;margin:0 0 44px;border-bottom:1px solid #262626}
#auth{max-width:560px}
label{font-size:13px;color:#dededb;margin:18px 0;letter-spacing:.15px}
input{background:#101010;border:1px solid #353535;border-radius:0;padding:16px;font-size:14px;color:#f2f2f0}
input::placeholder{color:#777774}
input:focus,button:focus-visible,a:focus-visible{outline:2px solid #f2f2f0;outline-offset:4px}
input[type=file]{min-height:92px;padding:25px 18px;border:1px dashed #4a4a47;background:#0d0d0d;cursor:pointer}
input::file-selector-button{font:inherit;color:#f2f2f0;background:transparent;border:1px solid #444;border-radius:100px;padding:10px 16px;margin-right:14px;cursor:pointer}
small,.muted{color:#93938f}
small{font-family:monospace;font-size:11px;letter-spacing:.2px;margin-top:12px}
.columns{gap:40px;margin-top:18px}
.file{font-size:18px;font-weight:400;letter-spacing:-.3px}
.file input{margin-top:20px}
button{color:#0a0a0a;background:#f2f2f0;border-radius:100px;font-size:13px;font-weight:500;padding:15px 24px;transition:background .15s,color .15s}
button:hover{background:#d4d4d0}
.secondary{color:#f2f2f0;border-color:#373737}
.secondary:hover{background:#202020}
.section-head{gap:20px}
details{border-top:1px solid #262626;border-bottom:1px solid #262626;margin:20px 0;padding:20px 0;font-size:13px;color:#a3a39f}
summary{cursor:pointer;color:#dededb}
#uploadForm>.muted{max-width:820px;font-size:13px;margin:24px 0}
.project-grid{gap:40px}
.project{padding:24px 0;border:0;border-top:1px solid #303030;background:transparent;border-radius:0}
.project img{height:320px;background:#111;object-fit:contain;border-radius:0;margin:0}
.project h3{font-size:27px;letter-spacing:-.8px;font-weight:500}
.project .actions{justify-content:flex-start;gap:16px}
img,video{border-radius:0}
progress{accent-color:#f2f2f0}
#message{color:#dededb}
#message.error{color:#ffb1a1}
footer{color:#7f7f7c;border-top:1px solid #262626;font-family:monospace;letter-spacing:.5px}
#viewerStatus{background:#0a0a0ae8;border:1px solid #333;border-radius:0;color:#f2f2f0}
#viewerLinks a{color:#f2f2f0}
@media(min-width:1000px){#uploadForm>label:first-child{max-width:660px}}
@media(max-width:650px){body:not(.viewer) header,body:not(.viewer) main,body:not(.viewer) footer{padding-left:22px;padding-right:22px}.hero{padding:42px 0 28px;margin-bottom:24px}h1{letter-spacing:-1.8px}h2{font-size:26px}.columns,.project-grid{gap:24px}.panel{padding:16px 0;margin-bottom:28px}.project img{height:260px}body:not(.viewer) header>a:last-child{letter-spacing:.4px;padding:11px 14px}.brand{font-size:14px;letter-spacing:2px}}
