@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Montserrat:wght@400;500;600;700&display=swap');:root{--green:#355c4a;--pale:#f1f5ec;--ink:#33483a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.8;background:#fffdf8}nav{position:absolute;z-index:2;top:0;width:100%;display:flex;justify-content:center;gap:32px;padding:22px;background:#fff9}a{color:inherit;text-decoration:none}nav a{font-size:12px;letter-spacing:1px}.hero{min-height:92vh;background:linear-gradient(140deg,#a4b8a4,#e1e9d9 65%,#9eb29d);background-size:cover;background-position:center;display:grid;place-items:center;text-align:center;color:#fff;padding:100px 20px}.hero-inner{background:#2544344a;padding:65px 8vw;border:1px solid #fff9;backdrop-filter:blur(3px)}.hero h1{font-size:clamp(58px,10vw,120px);margin:12px 0;font-weight:400}.hero i,.couple span{display:block;font-size:38px;font-style:italic}.eyebrow{font-size:12px;letter-spacing:4px;text-transform:uppercase;font-weight:600}.date{display:block;letter-spacing:4px;margin:15px}.btn{display:inline-block;background:var(--green);border:0;color:white;padding:13px 26px;border-radius:4px;cursor:pointer;font:600 12px Montserrat,Arial;margin-top:15px}.hero .btn{background:#fff;color:var(--green)}section{padding:90px max(20px,calc((100vw - 950px)/2));text-align:center}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500}h2{font-size:clamp(36px,5vw,56px);line-height:1.2;margin:12px 0 28px}h3{font-size:28px;margin:8px}.ornament{font-size:40px;color:#809d83}.tinted{background:var(--pale)}.parents{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:40px 0}.parents>div,.event-card{border:1px solid #c8d6c4;padding:28px}.couple{font-size:48px}.couple span{color:#90a991}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery img{width:100%;height:290px;object-fit:cover;border-radius:120px 120px 3px 3px}.event-card{margin:30px auto 55px;max-width:650px;background:#f7faf4}.schedule{max-width:500px;margin:auto}.schedule>div{display:flex;gap:20px;padding:15px;border-bottom:1px solid #d5dfd2;text-align:left}.schedule b{width:90px}.wish-form{max-width:540px;margin:20px auto 40px}.wish-form input,.wish-form textarea,input,textarea{width:100%;padding:12px;border:1px solid #d3dbd1;border-radius:4px;background:white;font:inherit;color:#33483a}.wish-form textarea{min-height:110px;margin-top:12px}.wish-list{display:grid;grid-template-columns:1fr 1fr;gap:15px;text-align:left}.wish-list article{background:white;padding:20px;border-radius:6px}.wish-list small{display:block;color:#85958a}.qr{max-width:190px}footer{text-align:center;background:#355c4a;color:white;padding:60px 20px}.toast{position:fixed;bottom:20px;left:20px;background:white;padding:14px;box-shadow:0 2px 15px #0003}.music{position:fixed;right:22px;bottom:22px;border:0;border-radius:50%;width:46px;height:46px;background:var(--green);color:white;cursor:pointer}.admin-body{background:#f3f5f1;color:#253c30}.admin-wrap{max-width:1250px;margin:0 auto;padding:28px 22px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.admin-top h1{font-size:45px;margin:0}.secondary{background:#e0e9df;color:var(--green)}.admin-grid{display:grid;grid-template-columns:230px 1fr;gap:24px}.admin-menu{position:sticky;top:20px;align-self:start;background:white;padding:20px;border-radius:12px}.admin-menu a{display:block;padding:11px 6px;border-bottom:1px solid #eee;font-size:12px}.card{background:white;border-radius:12px;padding:30px;margin-bottom:22px;box-shadow:0 4px 20px #233b2a0a;text-align:left}.card h2{font-size:32px;margin:0 0 24px}.card label{display:block;font-size:12px;font-weight:600;margin:12px 0}.card label input,.card label textarea{display:block;margin-top:7px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.thumb-grid{display:flex;flex-wrap:wrap;gap:12px}.thumb img{width:115px;height:110px;object-fit:cover;border-radius:6px}.thumb input{width:auto;display:inline!important}.sticky-save{position:sticky;bottom:0;background:#f3f5f1ed;padding:12px;text-align:right}.login{max-width:420px;margin:12vh auto}.login .btn{width:100%}.notice{padding:12px;background:#e3f1df}.error{color:#b33}.moderation{display:flex;justify-content:space-between;border-top:1px solid #eee;padding:16px 0;gap:20px}.actions{display:flex;gap:8px}.actions button{padding:7px 12px;cursor:pointer}@media(max-width:720px){nav{gap:12px;flex-wrap:wrap}nav a{font-size:10px}.hero-inner{padding:35px 18px}.parents,.wish-list,.fields,.admin-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:230px}.admin-menu{position:static}.admin-top{display:block}section{padding:65px 20px}}

/* Admin nâng cấp: xem trước và sắp xếp ảnh */
.preview-fab{position:fixed;right:22px;bottom:22px;z-index:30;background:#36573d;color:#fff;border:0;border-radius:100px;padding:15px 22px;box-shadow:0 10px 30px #142c1b40;cursor:pointer}.preview-panel{position:fixed;right:16px;top:16px;bottom:16px;width:min(410px,calc(100vw - 32px));z-index:40;background:#f9faf7;border:1px solid #c8d3c5;box-shadow:0 15px 60px #1b2e2250;border-radius:18px;padding:14px;display:flex;flex-direction:column}.preview-panel[hidden],.preview-fab[hidden]{display:none}.preview-header{display:flex;justify-content:space-between;align-items:center}.preview-header button{background:none;border:0;font-size:22px;cursor:pointer}.preview-panel p{font-size:12px;line-height:1.5;margin:8px 0}.preview-panel iframe{flex:1;width:100%;border:1px solid #d8dfd5;border-radius:12px;background:white}.thumb[draggable]{cursor:grab;touch-action:auto}.thumb.dragging{opacity:.45}.helper{font-size:13px;color:#536c58}#unsaved{margin-right:12px;font-size:12px;color:#8d6b35}
