@font-face{font-family:Tajawal;src:url('../fonts/Tajawal/Tajawal-Regular.ttf')}@font-face{font-family:Tajawal;src:url('../fonts/Tajawal/Tajawal-Bold.ttf');font-weight:700}@font-face{font-family:Tajawal;src:url('../fonts/Tajawal/Tajawal-Light.ttf');font-weight:300}
:root{--g:#173b31;--g2:#214c3f;--g3:#0f2d25;--ivory:#f6f1e8;--paper:#fffdf9;--ink:#17352d;--muted:#75857f;--line:#e6e0d5;--gold:#d8c6a3;--gold2:#b79d6b;--ok:#2d7659;--warn:#a87525;--danger:#a24a4a;--shadow:0 18px 55px rgba(18,53,44,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Tajawal,Arial,sans-serif;background:radial-gradient(circle at 10% 0,#fffdf8 0,#f6f1e8 44%,#f2ede4 100%);color:var(--ink);min-height:100vh}.guestly-main{padding:34px;max-width:1540px;margin:auto}.guestly-nav{background:rgba(18,53,44,.97);box-shadow:0 8px 28px rgba(15,45,37,.16);backdrop-filter:blur(18px);padding:.8rem 1rem}.brand-mark{width:39px;height:39px;border:1px solid rgba(216,198,163,.65);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:25px;color:#f7f0e4}.navbar-brand{letter-spacing:.17em;font-weight:300}.navbar .nav-link{border-radius:12px;padding:.55rem .8rem!important}.navbar .nav-link:hover{background:rgba(255,255,255,.08)}
.hero,.billing-hero{background:linear-gradient(130deg,var(--g3),var(--g) 55%,#285849);color:#fff;border-radius:34px;padding:38px 42px;position:relative;overflow:hidden;box-shadow:0 22px 70px rgba(17,54,44,.18)}.hero:before,.billing-hero:before{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(216,198,163,.18);border-radius:50%;left:-100px;top:-210px}.hero:after,.billing-hero:after{content:'G';position:absolute;left:54px;top:-68px;font:280px Georgia,serif;color:#fff;opacity:.04}.hero>*{position:relative;z-index:2}.eyebrow{font-size:.72rem;letter-spacing:.2em;color:var(--gold2);font-weight:700}.card-g,.lux-card{border:1px solid rgba(214,207,194,.85);border-radius:25px;background:rgba(255,253,249,.94);box-shadow:var(--shadow)}.stat{padding:24px}.stat .num{font-size:2.1rem;font-weight:700;letter-spacing:-.03em}.stat .label{color:var(--muted)}
.btn{transition:.22s ease}.btn-guestly{background:linear-gradient(135deg,var(--g),var(--g2));color:#fff;border:none;border-radius:14px;padding:.78rem 1.22rem;box-shadow:0 8px 18px rgba(23,59,49,.14)}.btn-guestly:hover{transform:translateY(-1px);background:var(--g3);color:#fff}.btn-soft{background:#edf0ec;color:var(--g);border:none;border-radius:13px}.btn-soft:hover{background:#e2e9e4;color:var(--g3)}.btn-upgrade{background:#f1e7d5;color:#654f2c;border:1px solid #e3d1ae;border-radius:13px}.btn-upgrade:hover{background:#eadbbf;color:#5b4524}
.form-control,.form-select{border-radius:13px;border-color:#d9d8d0;padding:.75rem .88rem;background:#fff}.form-control:focus,.form-select:focus{border-color:var(--g2);box-shadow:0 0 0 .2rem rgba(36,79,66,.09)}.table-guestly,.premium-table{background:transparent;border-radius:18px;overflow:hidden}.table-guestly th,.premium-table th{background:#eef1ed;color:#365148;font-weight:700;border:0;padding:.9rem}.table-guestly td,.premium-table td{vertical-align:middle;border-color:#eee9e1;padding:.92rem}.premium-table tbody tr:hover{background:#faf8f3}.badge-soft,.rsvp-badge,.status-dot{padding:.42em .72em;border-radius:999px;font-size:.82rem;white-space:nowrap}.badge-ok,.rsvp-confirmed{background:#e6f3eb;color:var(--ok)}.badge-warn,.rsvp-pending{background:#fff3dc;color:var(--warn)}.badge-danger-soft,.rsvp-declined{background:#f8e8e8;color:var(--danger)}
.status-new{background:#eee;color:#777}.status-queued,.status-processing{background:#fff3dc;color:#8a651e}.status-sent{background:#eaf0fa;color:#41669a}.status-delivered{background:#e9f1f8;color:#346b8c}.status-read{background:#e6f3ef;color:#27745f}.status-responded{background:#e6f3eb;color:#276c50}.status-failed{background:#f8e8e8;color:#9e4242}
.guestly-footer{text-align:center;color:var(--muted);padding:34px}.login-page{min-height:100vh;background:var(--g);display:grid;grid-template-columns:1.08fr .92fr}.login-brand{display:flex;align-items:center;justify-content:center;padding:55px;background:radial-gradient(circle at 50% 30%,#285348,#15372e)}.login-brand img{max-width:570px;width:100%;border-radius:32px;box-shadow:0 35px 100px rgba(0,0,0,.22)}.login-panel{background:var(--ivory);display:flex;align-items:center;justify-content:center;padding:40px}.login-box{width:min(430px,100%)}
.scanner-shell{max-width:800px;margin:auto}.scan-box{background:linear-gradient(145deg,#0f2d25,#183f34);color:#fff;border-radius:32px;padding:34px;text-align:center;box-shadow:0 24px 70px rgba(15,45,37,.22)}.scan-input{font-size:1.2rem;text-align:center;letter-spacing:.08em}.result-ok{border-right:6px solid var(--ok)}.result-bad{border-right:6px solid var(--danger)}
.campaign-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.metric-card{padding:24px;border-radius:22px;background:rgba(255,253,249,.9);border:1px solid var(--line);box-shadow:0 12px 34px rgba(18,53,44,.05)}.metric-card i{font-size:1.15rem;color:var(--gold2);margin-bottom:20px}.metric-num{font-size:2rem;font-weight:700}.metric-label{color:var(--muted)}.credit-pill{background:#efe5d3;border:1px solid #dfcba6;color:#6a522d;border-radius:999px;padding:.42rem .72rem;font-size:.82rem}.credit-track{height:9px;background:#e9e5dc;border-radius:999px;overflow:hidden}.credit-track span{height:100%;display:block;background:linear-gradient(90deg,var(--g),#4e7c69);border-radius:999px}.notice-premium{display:flex;gap:14px;align-items:flex-start;background:#edf4ef;border:1px solid #cee1d5;border-radius:18px;padding:16px 18px;color:#275e48}.sending-flow{display:flex;align-items:center;gap:12px;color:#66766f;font-size:.86rem;overflow:auto}.sending-flow span{background:#f4f1ea;border:1px solid #e1ddd3;border-radius:999px;padding:.42rem .75rem;white-space:nowrap}.sending-flow b{height:1px;min-width:24px;flex:1;background:#d9d3c8}.big-credit{font-size:3rem;font-weight:700;color:var(--g);line-height:.8}.big-credit small{display:block;font-size:.8rem;color:var(--muted);font-weight:400;margin-top:12px}.plan-card{border:1px solid var(--line);background:#fffdf9;border-radius:24px;padding:26px;box-shadow:0 10px 30px rgba(18,53,44,.04)}.plan-credits{font-size:2.5rem;font-weight:700;margin-top:24px;color:var(--g)}
.invite-stage{min-height:100vh;background:radial-gradient(circle at 50% 0,#315e50,#173b31 48%,#0d2c24 100%);padding:24px;display:flex;align-items:center;justify-content:center}.invite-shell{width:min(650px,100%)}.invite-card{background:#faf6ee;border:1px solid rgba(216,198,163,.75);border-radius:38px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.25);position:relative}.invite-card:before{content:'';position:absolute;inset:16px;border:1px solid rgba(183,157,107,.45);border-radius:28px;pointer-events:none}.invite-top{text-align:center;padding:52px 38px 26px}.invite-monogram{width:105px;height:105px;border:1px solid #c9b387;border-radius:50%;margin:auto;display:grid;place-items:center;font:56px Georgia,serif;color:var(--g);position:relative}.invite-monogram:after{content:'✦';position:absolute;right:-5px;top:-8px;font-size:20px;color:var(--gold2);background:#faf6ee;padding:3px}.invite-brand{letter-spacing:.36em;font-size:.74rem;color:#897453;margin-top:19px}.invite-body{text-align:center;padding:14px 46px 45px}.invite-kicker{color:#9b8762;font-size:.9rem;margin-bottom:8px}.invite-name{font-size:2rem;font-weight:700;color:#183b31}.invite-event{font-size:1.55rem;font-weight:700;margin:28px 0 6px}.invite-host{color:#8c754f}.invite-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}.invite-meta div{padding:13px;border:1px solid #e4d9c5;border-radius:16px;background:rgba(255,255,255,.45)}.invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn-confirm{background:var(--g);color:white;border:0;border-radius:15px;padding:14px}.btn-decline{background:#efe8dc;color:#654f34;border:1px solid #dfd0b8;border-radius:15px;padding:14px}.pass-zone{background:white;border:1px solid #e5dccd;border-radius:24px;padding:24px;margin-top:22px}.pass-qr{width:230px;max-width:72vw}.pass-code{font-size:.8rem;letter-spacing:.12em;color:#8a7b65}.powered{text-align:center;color:#cdbb98;font-size:.75rem;letter-spacing:.12em;margin-top:16px}
@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.guestly-main{padding:18px}.hero,.billing-hero{padding:30px 24px}.campaign-head{align-items:flex-start;flex-direction:column}.invite-body{padding:14px 25px 36px}.invite-meta,.invite-actions{grid-template-columns:1fr}.sending-flow b{min-width:16px}}
