:root{--navy:#0a1a33;--ink:#11284b;--dust:#6e809c;--ivory:#f4f1ea;--silver:#d6d9df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--navy);font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}.hero{background:linear-gradient(145deg,#0a1a33,#152e53 65%,#0a1a33);color:#fff;text-align:center;padding:24px 20px 82px;min-height:640px}.topline{letter-spacing:4px;font-size:10px;color:#d6d9df}.topline span{padding:0 12px}.hero-logo{display:block;width:min(430px,85vw);height:400px;object-fit:contain;margin:22px auto 0;border-radius:220px;mix-blend-mode:screen;opacity:.95}.hero-title{font-family:Georgia,serif;letter-spacing:5px;font-size:clamp(21px,4vw,34px);margin-top:-8px}.hero p{font-family:Georgia,serif;line-height:1.8;color:#e7e6e5;font-size:17px}.cta,.submit{display:inline-flex;align-items:center;justify-content:center;gap:13px;text-decoration:none;background:#f4f1ea;color:#0a1a33;border:1px solid #f4f1ea;padding:17px 26px;letter-spacing:2px;font-size:12px;font-weight:700;margin-top:22px}.upload-section,.album{text-align:center;padding:72px 18px;max-width:1080px;margin:auto}.sparkle{font-size:35px}.eyebrow{font-size:11px;letter-spacing:3px;color:#6e809c}.upload-section h1,.album h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,6vw,54px);margin:14px 0}.muted{color:#738096;line-height:1.7}.upload-card{max-width:570px;margin:38px auto 0;padding:30px;background:#fff;border:1px solid #e0dfda;text-align:left;box-shadow:0 12px 40px #0a1a330b}.upload-card label:not(.file-picker),.editor label{display:block;font-size:11px;letter-spacing:2px;font-weight:700;margin:18px 0 11px}.upload-card small{font-weight:400;color:#88909c}.upload-card input:not([type=file]):not([type=range]),.admin-panel input{width:100%;border:1px solid #cdd2d9;padding:16px;background:#faf9f6;border-radius:0;outline-color:#6e809c}.file-picker{border:1px dashed #aeb8c5;background:#f8f9fa;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:42px 12px;margin:24px 0;cursor:pointer;text-align:center}.file-picker span{font-size:12px;color:#7c8797}.submit{width:100%;background:#0a1a33;color:#fff;margin-top:8px}.editor h3{font-family:Georgia,serif;font-weight:400}.crop-area{height:350px;position:relative;background:#101b2d}.controls{display:flex;gap:8px;justify-content:center;margin-top:14px;flex-wrap:wrap}.controls button,.refresh{border:1px solid #cdd2d9;background:transparent;padding:11px;display:inline-flex;align-items:center;gap:6px;color:var(--navy)}input[type=range]{width:100%;accent-color:var(--navy)}.notice{color:#244c73}.album{border-top:1px solid #d8d5cf;max-width:1200px}.refresh{margin:24px auto}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left}.photo{background:#fff;box-shadow:0 5px 22px #0a1a3312}.image-button{padding:0;border:0;width:100%;background:transparent;display:block}.photo img{width:100%;height:320px;object-fit:cover;display:block}.photo-meta{display:flex;align-items:center;justify-content:space-between;padding:14px;color:#2e4058;font-size:13px}.delete{border:0;background:transparent;color:#8b2635}.admin-panel{max-width:470px;background:#fff;border:1px solid #ddd;padding:24px;margin:20px auto}.admin-panel p{font-size:13px}.empty{padding:50px;color:#6e809c}footer{background:#0a1a33;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:16px 6%;letter-spacing:3px;font-size:11px}footer span{padding:0 10px}footer img{width:58px;height:58px;object-fit:cover;border-radius:50%}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000e;z-index:10;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px}.lightbox img{max-width:100%;max-height:78vh;object-fit:contain}.close{position:absolute;right:20px;top:20px;background:none;color:#fff;border:0}.light-delete{margin-top:18px;background:#fff;color:#8b2635;border:0;padding:12px;display:flex;gap:8px}@media(max-width:650px){.hero{min-height:570px;padding-bottom:60px}.hero-logo{height:310px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.photo img{height:200px}.photo-meta{padding:10px}.upload-card{padding:18px}.crop-area{height:300px}footer{font-size:9px;letter-spacing:1px}}
