:root{color:#172026;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--desktop-top-gap: 24px;--mobile-top-gap: 18px;--momentry-logo-font: "Segoe Script", "Brush Script MT", "Snell Roundhand", "Apple Chancery", "URW Chancery L", cursive;--momentry-logo-gradient: linear-gradient(100deg, #ff8a3d 0%, #ec5f83 34%, #a35bea 68%, #5865ff 100%)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}a{color:inherit}.page{min-height:100vh;padding:24px}.upload-shell,.admin-shell,.home-shell{display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at 18% 20%,rgba(209,151,124,.18),transparent 32%),radial-gradient(circle at 82% 28%,rgba(116,132,255,.18),transparent 34%),linear-gradient(145deg,#faf9fc,#f2f4fb 50%,#fbfaf8)}.home-shell{display:grid;align-items:center;overflow:hidden;background:linear-gradient(120deg,#0a1218f0,#18383adb),repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 1px,transparent 1px 26px),#101820;color:#f8fbfc}.home-layout{width:min(1160px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);gap:clamp(28px,7vw,86px);align-items:center}.home-copy{max-width:700px}.home-brand{color:#d8e8e9}.home-copy h1{max-width:760px;color:#fff;font-size:clamp(3rem,8vw,6.4rem)}.home-copy .lead{max-width:42rem;color:#d8e8e9;font-size:clamp(1.08rem,2vw,1.28rem)}.home-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 20px}.home-cta{min-height:54px;padding:0 24px;border-color:transparent;border-radius:16px;background:linear-gradient(105deg,#cd987cf5,#b997cef5 47%,#7182fffa);color:#fff;box-shadow:0 18px 36px #6c80ff38}.home-note{display:grid;gap:4px;width:min(100%,560px);padding:16px 18px;border-left:4px solid #d9a441;background:#ffffff14;color:#eaf3f4}.home-note strong{color:#fff}.legal-links{display:flex;flex-wrap:wrap;gap:14px 20px;margin-top:30px;color:#b9d0d5;font-weight:700}.legal-links a{text-underline-offset:4px}.home-visual{position:relative;min-height:470px}.scan-card{position:absolute;z-index:2;top:32px;right:18px;width:min(100%,330px);padding:22px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#f8fbfc;box-shadow:0 26px 70px #0000005c;color:#14222a}.scan-frame{position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:190px;height:190px;margin:0 auto 18px;padding:18px;border:3px solid #17333b;background:linear-gradient(90deg,transparent 46%,#17333b 46% 54%,transparent 54%),linear-gradient(transparent 46%,#17333b 46% 54%,transparent 54%),#fff}.scan-frame span{border:10px solid #17333b;background:#fff}.scan-frame span:nth-child(4){border-width:0;background:linear-gradient(90deg,#17333b 0 28%,transparent 28% 44%,#d9a441 44% 62%,transparent 62% 78%,#17333b 78%),linear-gradient(#17333b 0 24%,transparent 24% 52%,#2d6f73 52% 74%,transparent 74%)}.scan-line{position:absolute;left:14px;right:14px;top:50%;height:4px;border-radius:999px;background:#d9a441;box-shadow:0 0 18px #d9a4419e}.scan-copy{display:grid;gap:4px;text-align:center}.scan-copy strong{font-size:1.15rem}.scan-copy span{color:#5a6d76;font-weight:700}.photo-stack{position:absolute;z-index:1;left:0;bottom:20px;width:280px;height:230px}.photo-tile{position:absolute;width:170px;height:210px;border:10px solid #ffffff;border-bottom-width:28px;border-radius:6px;box-shadow:0 20px 44px #00000047}.tile-one{left:10px;top:14px;transform:rotate(-8deg);background:linear-gradient(145deg,#d88056c7,#2d6f738c),linear-gradient(32deg,transparent 48%,rgba(255,255,255,.52) 49% 55%,transparent 56%),#d88056}.tile-two{left:74px;top:0;transform:rotate(6deg);background:radial-gradient(circle at 68% 28%,#f4cf76 0 12%,transparent 13%),linear-gradient(150deg,#31515d,#7fa7a6 58%,#f1f4f5 59%)}.tile-three{left:116px;top:46px;transform:rotate(14deg);background:linear-gradient(135deg,#1018201f,#1018200a),linear-gradient(25deg,#2d6f73 0,#2d6f73 45%,#d9a441 46%,#d9a441 57%,#f8fbfc 58%)}.upload-panel,.tool-panel{width:min(100%,680px);border:1px solid rgba(23,32,38,.12);border-radius:8px;background:#fff;box-shadow:0 18px 48px #0d161d38}.upload-panel{padding:28px}.upload-panel-moment{width:min(100%,760px);padding:clamp(32px,6vw,58px);border:1px solid rgba(255,255,255,.82);border-radius:46px;background:linear-gradient(145deg,#fffffff0,#ffffffc2),radial-gradient(circle at 20% 15%,rgba(207,151,124,.16),transparent 30%),radial-gradient(circle at 82% 18%,rgba(118,133,255,.15),transparent 34%);box-shadow:0 32px 80px #1d234921,inset 0 1px #fffffff5}.momentry-logo{width:fit-content;margin-bottom:clamp(42px,7vw,70px);background:var(--momentry-logo-gradient);color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--momentry-logo-font);font-size:clamp(2rem,5vw,2.95rem);font-weight:700;line-height:1.12}.upload-panel-moment h1{max-width:620px;margin-bottom:22px;color:#061244;font-size:clamp(3.25rem,7.5vw,5.15rem);line-height:1.08}.upload-panel-moment .lead{max-width:620px;margin-bottom:44px;color:#66709d;font-size:clamp(1.45rem,3vw,2rem);line-height:1.42}.upload-panel.narrow{max-width:520px}.brand-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:#31515d;font-size:.9rem;font-weight:700;text-transform:uppercase}.brand-mark{width:24px;height:24px;border:3px solid #2d6f73;border-radius:6px;position:relative}.brand-mark:after{content:"";position:absolute;right:3px;bottom:3px;width:7px;height:7px;border-radius:50%;background:#d9a441}h1,h2,p{margin-top:0}h1{margin-bottom:12px;color:#101820;font-size:clamp(2rem,5vw,4rem);line-height:1.02;letter-spacing:0}h2{margin-bottom:18px;color:#14222a;font-size:1.2rem}.lead{max-width:46rem;margin-bottom:24px;color:#53646f;font-size:1.05rem;line-height:1.5}.preview-frame{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4 / 3;overflow:hidden;border:1px dashed #93a4aa;border-radius:8px;background:#edf2f3;position:relative}.upload-panel-moment .preview-frame{aspect-ratio:1.52 / 1;border:2px dashed #8c91ff;border-left-color:#ff9a6f;border-top-color:#e3a4aa;border-radius:24px;background:linear-gradient(145deg,#ffffffb8,#f7f6ffbd),radial-gradient(circle at center,rgba(196,167,216,.14),transparent 48%)}.empty-preview[hidden],.slideshow-empty[hidden],.preview-image[hidden],.loading-spinner[hidden],#configurator-modal[hidden]{display:none!important}.loading-spinner{width:50px;height:50px;border:5px solid rgba(45,111,115,.2);border-top-color:#2d6f73;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-preview,.slideshow-empty{display:grid;gap:12px;place-items:center;color:#58707a;text-align:center}.upload-panel-moment .empty-preview{gap:28px;color:#5f688f;font-size:clamp(1.25rem,3vw,1.85rem)}.icon{width:1.25em;height:1.25em;flex:0 0 auto}.preview-icon{width:clamp(5.2rem,13vw,8.3rem);height:clamp(5.2rem,13vw,8.3rem);color:#b692cd;filter:drop-shadow(0 12px 22px rgba(138,120,220,.18))}.camera-glyph{width:72px;height:52px;border:4px solid currentColor;border-radius:8px;position:relative}.camera-glyph:before{content:"";position:absolute;left:18px;top:10px;width:24px;height:24px;border:4px solid currentColor;border-radius:50%}.camera-glyph:after{content:"";position:absolute;left:8px;top:-12px;width:26px;height:12px;border:4px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0}.preview-image{width:100%;height:100%;object-fit:contain;background:#101820}.upload-panel-moment .preview-image{border-radius:20px;background:#061244eb}.upload-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:24px}.upload-intro .lead{margin-bottom:0}.timer-toggle{display:grid;place-items:center;width:78px;min-height:78px;padding:10px;border:2px solid #d7d3ed;border-radius:18px;background:#ffffffa8;color:#66709d;cursor:pointer;font-weight:800;box-shadow:0 14px 28px #6c80ff14}.timer-toggle .icon{width:32px;height:32px}.timer-toggle span{font-size:.95rem;line-height:1}.timer-sheet-backdrop,.timer-sheet,.camera-capture{position:fixed}.timer-sheet-backdrop[hidden],.timer-sheet[hidden],.camera-capture[hidden],.camera-video[hidden],.countdown-overlay[hidden]{display:none!important}.timer-sheet-backdrop{top:0;right:0;bottom:0;left:0;z-index:900;background:#080d1c2e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.timer-sheet{left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:901;display:grid;gap:22px;width:min(92vw,760px);padding:12px 28px 28px;transform:translate(-50%);border:1px solid rgba(215,211,237,.9);border-radius:24px;background:#fffffff5;box-shadow:0 28px 70px #1e24463d}.timer-sheet-handle{justify-self:center;width:56px;height:7px;border-radius:999px;background:#d7d3ed}.timer-sheet h2{margin:0;color:#071548;text-align:center}.timer-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.timer-choice{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:64px;gap:10px;padding:0 14px;border:2px solid #e2e0f0;border-radius:14px;background:#ffffffc2;color:#66709d;cursor:pointer;font-weight:800;font-size:1.15rem}.timer-choice.active{border-color:#8c91ff;background:#8c91ff14;color:#47517b}.timer-choice-check{display:none;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:#8c91ff;color:#fff}.timer-choice-check .icon{width:19px;height:19px}.timer-choice.active .timer-choice-check{display:inline-flex}.timer-done{min-height:64px;border-radius:16px;font-size:1.22rem}.timer-done.button.primary{border-color:transparent;background:linear-gradient(105deg,#8c91ff,#757aff);color:#fff;box-shadow:0 18px 36px #6c80ff33}.camera-capture{top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#000}.camera-video{width:100vw;height:100dvh;object-fit:cover;background:#000}.countdown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;background:#00000029;color:#fff;font-size:clamp(6rem,24vw,13rem);font-weight:850;pointer-events:none;text-shadow:0 14px 36px rgba(0,0,0,.36)}.camera-cancel{position:fixed;top:max(14px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));z-index:3;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:999px;background:#070c1857;color:#ffffffe0;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.camera-cancel .icon{width:24px;height:24px}.camera-switch{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));z-index:3;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;border-radius:999px;background:#070c186b;color:#ffffffe6;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.camera-switch .icon{width:26px;height:26px}.camera-controls{position:fixed;left:0;right:0;bottom:max(26px,calc(env(safe-area-inset-bottom) + 18px));z-index:3;display:flex;justify-content:center;pointer-events:none}.camera-shutter{width:78px;height:78px;border:4px solid rgba(255,255,255,.94);border-radius:999px;background:#ffffff2e;cursor:pointer;pointer-events:auto;box-shadow:0 14px 34px #00000047}.camera-shutter:after{content:"";display:block;width:56px;height:56px;margin:7px auto;border-radius:inherit;background:#fffffff0}.camera-switch:disabled,.camera-shutter:disabled{cursor:default;opacity:.48}body.is-capturing{overflow:hidden}.action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.upload-actions{display:grid;gap:22px;margin-top:48px}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #b9c7cc;border-radius:6px;background:#fff;color:#14222a;cursor:pointer;font-weight:700;text-decoration:none}.button{padding:0 16px}.upload-action{width:100%;min-height:76px;gap:20px;border-radius:20px;font-size:clamp(1.45rem,3.2vw,2.1rem);font-weight:760}.upload-action span{white-space:nowrap}.icon-button{width:44px;padding:0}.button.primary{border-color:#2d6f73;background:#2d6f73;color:#fff}.upload-panel-moment .button.primary{border-color:transparent;background:linear-gradient(105deg,#cd987ceb,#b997ceeb 47%,#7182fff5);color:#fff;box-shadow:0 18px 36px #6c80ff33}.button.success{border-color:#3a7d44;background:#3a7d44;color:#fff}.button.danger{border-color:#b33a32;background:#fff;color:#9f2f28}.button.danger:not(:disabled):hover{background:#fff2f0}.upload-panel-moment .button.success{border-color:transparent;background:linear-gradient(100deg,#e8e4f9f5,#f3f2fcf5);color:#071548}.upload-panel-moment .secondary-action{border-color:#d7d3ed;background:#ffffffb8;color:#071548}.button:disabled{cursor:not-allowed;opacity:.55}.upload-panel-moment .button:disabled{opacity:.72}.progress{height:10px;margin-top:20px;overflow:hidden;border-radius:999px;background:#dce6e9}.upload-panel-moment .progress{margin-top:26px;background:#ece9f8}.progress-bar{width:0;height:100%;border-radius:inherit;background:#d9a441;transition:width .16s ease}.upload-panel-moment .progress-bar{background:linear-gradient(90deg,#d59d83,#8a8cff)}.status{min-height:1.5em;margin:16px 0 0;color:#31515d;font-weight:650}.upload-panel-moment .status{margin-top:18px;color:#66709d;font-size:1.05rem}.upload-panel-moment .status:empty{min-height:0;margin-top:0}.upload-footer{display:grid;justify-items:center;gap:10px;margin-top:42px;color:#66709d;text-align:center}.upload-footer p{margin:0;font-size:clamp(1.2rem,2.8vw,1.78rem)}.upload-footer a{display:inline-flex;align-items:center;gap:10px;color:#66709d;font-size:clamp(1.2rem,2.8vw,1.78rem);font-weight:650;text-decoration:none}.booking-shell{display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at 18% 20%,rgba(209,151,124,.18),transparent 32%),radial-gradient(circle at 82% 28%,rgba(116,132,255,.18),transparent 34%),linear-gradient(145deg,#faf9fc,#f2f4fb 50%,#fbfaf8)}.booking-panel{width:min(100%,980px)}.booking-hero h1,.booking-result h1{max-width:760px}.booking-form{display:grid;gap:22px}.booking-section{display:grid;gap:14px}.booking-section h2{margin-bottom:0}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-fields h2{grid-column:1 / -1}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.package-card{position:relative;min-height:170px;padding:18px;border:1px solid #d7d3ed;border-radius:18px;background:#ffffffc2;cursor:pointer}.package-card input{position:absolute;inset:16px 16px auto auto;width:18px;min-height:18px}.package-card:has(input:checked){border-color:#8c91ff;box-shadow:0 14px 32px #6c80ff24}.package-card-body{display:grid;gap:8px;padding-right:24px;color:#66709d}.package-card-body strong{color:#061244;font-size:1.12rem}.package-card-body em{color:#071548;font-style:normal;font-weight:800}.booking-submit{min-height:58px;border-radius:16px;font-size:1.12rem}.booking-list{display:grid;gap:12px}.booking-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid #d5e0e4;border-radius:6px;background:#f9fbfc}.booking-main{display:grid;gap:4px;color:#3c4e57}.booking-main strong{color:#14222a;font-size:1.05rem}.booking-state{width:fit-content;padding:4px 9px;border-radius:999px;background:#ece9f8;color:#47517b;font-size:.86rem;font-weight:800}.booking-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#0612446b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.confirm-modal{width:min(100%,520px);display:grid;gap:18px;padding:24px;border:1px solid rgba(23,32,38,.12);border-radius:18px;background:#fff;color:#14222a;box-shadow:0 28px 80px #0d161d47}.confirm-modal h2,.confirm-modal p{margin-bottom:0}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.status.is-error{color:#a5372f}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-shell,.upload-shell,.home-shell{display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at 18% 20%,rgba(209,151,124,.18),transparent 32%),radial-gradient(circle at 82% 28%,rgba(116,132,255,.18),transparent 34%),linear-gradient(145deg,#faf9fc,#f2f4fb 50%,#fbfaf8)}.admin-shell{align-items:flex-start}.admin-layout{width:min(1120px,100%);margin:0 auto;display:grid;gap:18px}.event-admin-layout{width:min(1600px,calc(100vw - 32px));padding:clamp(22px,3vw,36px)}.master-admin-layout{width:min(1120px,100%)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0 6px}.admin-header .momentry-logo{margin-bottom:10px;font-size:clamp(1.65rem,2.4vw,2.2rem)}.admin-header h1{margin-bottom:0;font-size:clamp(2rem,4vw,3.25rem)}.admin-header .lead{margin-bottom:0}.tool-panel{padding:22px;box-shadow:none}.qr-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}[data-qr]{max-width:100%;height:auto;padding:10px;border:1px solid #d5e0e4;border-radius:8px;background:#fff}.link-stack,.settings-form,.secret-form{display:grid;gap:14px}.event-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:18px;align-items:start}.inline-form{display:grid;gap:12px}.event-scope-note{align-self:start;padding:12px 14px;border:1px solid #d5e0e4;border-radius:6px;background:#f7fafb;color:#3c4e57}.event-scope-note p:last-child{margin-bottom:0}.meta-line{margin-bottom:6px;color:#64747c;font-size:.88rem;font-weight:700;text-transform:uppercase}.connection-row{display:grid;gap:10px}.project-list{display:grid;gap:12px}.project-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid #d5e0e4;border-radius:6px;background:#f9fbfc}.project-main{display:grid;gap:4px;color:#3c4e57}.project-main strong{color:#14222a;font-size:1.05rem}.booking-main small{color:#63757d;font-weight:400}.data-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:#63757d;font-size:.9rem}.project-id{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88rem;color:#63757d}.project-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.status.compact,.compact-actions{margin-top:0}label{display:grid;gap:6px;color:#3c4e57;font-weight:700}input,select{width:100%;min-height:42px;border:1px solid #b9c7cc;border-radius:6px;padding:8px 10px;background:#fff;color:#14222a}.check-row{display:flex;align-items:center;gap:10px}.check-row input{width:18px;min-height:18px}.slideshow-shell{width:100vw;min-height:100vh;overflow:hidden;background:#070b0d;color:#f6fbfc}.slideshow-bar{position:fixed;inset:0 0 auto 0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 18px;background:linear-gradient(180deg,#000000b8,#0000)}.slideshow-bar h1{grid-column:1 / -1;margin:0;color:#fff;font-size:clamp(1.4rem,4vw,3rem)}.slideshow-bar .status{margin:0;color:#d8e6e8}.slideshow-stage{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center}.slide-image{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain!important;background:#070b0d}.transition-fade{animation:fade-in .42s ease both}.transition-slide{animation:slide-in .42s ease both}.transition-none{animation:none}.slideshow-empty{color:#d8e6e8;font-size:1.1rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.slideshow-configurator-panel{width:100%;padding:0;overflow:hidden}.configurator-panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 22px 14px;border-bottom:1px solid #dce4e8}.configurator-panel-header h2,.configurator-panel-header p{margin-bottom:0}.configurator-root{height:min(76dvh,860px);min-height:620px;display:grid;grid-template-rows:auto minmax(0,1fr);background:#f8f9fa;color:#212529;overflow:hidden;-webkit-user-select:none;user-select:none}.config-toolbar{background:#fff;border-bottom:1px solid #dee2e6;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;z-index:100}.config-toolbar .button{min-height:38px}.config-workbench{display:grid;grid-template-columns:220px minmax(640px,1fr) 320px;height:100%;min-height:0;overflow:hidden}.config-sidebar{background:#fff;border-right:1px solid #dee2e6;overflow-y:auto;display:flex;flex-direction:column;min-width:0}.config-sidebar-right{border-right:0;border-left:1px solid #dee2e6}.sidebar-header{padding:12px 16px;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#868e96;letter-spacing:.05em;background:#f8f9fa;position:sticky;top:0;z-index:10}.config-canvas-area{background:#e9ecef;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;touch-action:none}.config-canvas-viewport{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.config-canvas-container{position:relative;background:#fff;box-shadow:0 10px 40px #0000001a;transform-origin:center center;flex-shrink:0}.config-canvas-grid{position:absolute;top:-2000px;right:-2000px;bottom:-2000px;left:-2000px;background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.1) 1px,transparent 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px;pointer-events:none}.configurator-canvas{width:1920px;height:1080px;position:relative;overflow:hidden;background:#fff}.configurator-object{position:absolute;cursor:move;box-sizing:border-box;display:flex;align-items:center;justify-content:center;background:#00000005}.configurator-object.is-selected:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:2px solid #3c73ff;pointer-events:none}.configurator-object img{width:100%;height:100%;pointer-events:none;display:block}.configurator-selection-overlay{position:absolute;pointer-events:none;border:1px solid #3c73ff;z-index:1000}.handle{position:absolute;width:10px;height:10px;background:#fff;border:1px solid #3c73ff;pointer-events:auto;z-index:1001;border-radius:50%}.handle-nw{top:-5px;left:-5px;cursor:nwse-resize}.handle-n{top:-5px;left:calc(50% - 5px);cursor:ns-resize}.handle-ne{top:-5px;right:-5px;cursor:nesw-resize}.handle-e{top:calc(50% - 5px);right:-5px;cursor:ew-resize}.handle-se{bottom:-5px;right:-5px;cursor:nwse-resize}.handle-s{bottom:-5px;left:calc(50% - 5px);cursor:ns-resize}.handle-sw{bottom:-5px;left:-5px;cursor:nesw-resize}.handle-w{top:calc(50% - 5px);left:-5px;cursor:ew-resize}.layer-btn{width:100%;padding:10px 16px;background:transparent;border:0;color:#495057;text-align:left;display:flex;align-items:center;gap:12px;cursor:pointer;font-size:.85rem;border-bottom:1px solid #f1f3f5}.layer-btn:hover{background:#f8f9fa}.layer-btn.is-active{background:#3c73ff14;color:#3c73ff;font-weight:600}.prop-group{padding:16px;border-bottom:1px solid #dee2e6}.prop-title{font-size:.75rem;font-weight:700;margin-bottom:16px;color:#495057;text-transform:uppercase;letter-spacing:.02em}.prop-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.prop-field{display:flex;flex-direction:column;gap:6px}.prop-field label{font-size:.7rem;color:#868e96;font-weight:600}.prop-input{background:#fff;border:1px solid #ced4da;color:#212529;padding:6px 10px;border-radius:4px;font-size:.85rem;width:100%}.prop-input:focus{outline:none;border-color:#3c73ff;box-shadow:0 0 0 2px #3c73ff1a}.configurator-zoom-info{position:absolute;bottom:20px;right:20px;background:#ffffffe6;padding:6px 14px;border-radius:20px;font-size:.75rem;font-weight:700;color:#212529;pointer-events:none;border:1px solid #dee2e6;box-shadow:0 2px 10px #0000000d}.layout-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000e6;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.layout-preview-modal{width:95vw;height:95vh;display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden}.layout-preview-header{padding:16px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dee2e6}.layout-preview-stage{flex:1;position:relative;background:#000;overflow:hidden}.layout-preview-object{position:absolute;box-sizing:border-box;display:flex;align-items:center;justify-content:center}@media(max-width:1180px){.event-admin-layout{width:min(100%,calc(100vw - 20px))}.configurator-root{height:auto;min-height:0}.config-workbench{grid-template-columns:1fr;height:auto;overflow:visible}.config-sidebar{max-height:260px;border-right:0;border-bottom:1px solid #dee2e6}.config-sidebar-right{border-left:0}.config-canvas-area{min-height:min(62dvh,620px);order:-1}}@media(max-width:720px){.page{padding:var(--mobile-top-gap) 18px 18px}.admin-shell,.upload-shell{align-items:flex-start}.upload-panel,.tool-panel{border-radius:18px}.upload-shell .upload-panel-moment{display:flex;flex-direction:column;justify-content:flex-start;min-height:min(100%,calc(100dvh - 36px));padding:12px 18px;border-radius:22px}.upload-shell .momentry-logo{margin-bottom:8px;font-size:clamp(1.4rem,6vw,1.7rem)}.upload-shell .upload-panel-moment h1{margin-bottom:6px;font-size:clamp(1.5rem,8vw,2.1rem);line-height:1.05}.upload-shell .upload-panel-moment .lead{font-size:clamp(.9rem,4vw,1.05rem);line-height:1.25}.upload-shell .upload-intro{gap:10px;margin-bottom:10px}.upload-shell .timer-toggle{width:52px;min-height:52px;padding:6px;border-radius:14px}.upload-shell .timer-toggle .icon{width:22px;height:22px}.upload-shell .timer-toggle span{font-size:.78rem}.upload-shell .upload-panel-moment .preview-frame{aspect-ratio:1.9 / 1;border-radius:16px}.upload-shell .upload-panel-moment .empty-preview{gap:10px;font-size:clamp(.96rem,4.35vw,1.13rem)}.upload-shell .preview-icon{width:clamp(3.4rem,15vw,4.2rem);height:clamp(3.4rem,15vw,4.2rem)}.upload-shell .upload-actions{gap:10px;margin-top:12px}.upload-shell .upload-action{min-height:50px;gap:10px;border-radius:16px;font-size:clamp(1.04rem,4.75vw,1.24rem)}.upload-shell .upload-footer{gap:5px;margin-top:0;padding-top:12px}.upload-shell .upload-footer p,.upload-shell .upload-footer a{font-size:clamp(.95rem,4.3vw,1.08rem)}@media(min-height:760px){.upload-shell .upload-panel-moment{padding:22px 24px;border-radius:28px}.upload-shell .momentry-logo{margin-bottom:14px;font-size:clamp(1.65rem,7vw,2rem)}.upload-shell .upload-panel-moment h1{margin-bottom:10px;font-size:clamp(1.95rem,9.65vw,2.5rem)}.upload-shell .upload-panel-moment .lead{font-size:clamp(1rem,4.65vw,1.2rem);line-height:1.34}.upload-shell .upload-intro{gap:12px;margin-bottom:14px}.upload-shell .timer-toggle{width:60px;min-height:60px;padding:8px}.upload-shell .timer-toggle .icon{width:26px;height:26px}.upload-shell .timer-toggle span{font-size:.86rem}.upload-shell .upload-panel-moment .preview-frame{aspect-ratio:1.62 / 1}.upload-shell .upload-panel-moment .empty-preview{gap:12px;font-size:clamp(1rem,4.6vw,1.22rem)}.upload-shell .preview-icon{width:clamp(3.8rem,17vw,4.8rem);height:clamp(3.8rem,17vw,4.8rem)}.upload-shell .upload-actions{gap:12px;margin-top:14px}.upload-shell .upload-action{min-height:56px;gap:12px;border-radius:17px;font-size:clamp(1.15rem,5.2vw,1.38rem)}.upload-shell .upload-footer{padding-top:16px}.upload-shell .upload-footer p,.upload-shell .upload-footer a{font-size:clamp(1rem,4.6vw,1.16rem)}}@media(max-height:660px){.page{padding:8px 14px}.upload-shell .upload-panel-moment{min-height:min(100%,calc(100dvh - 16px));padding:10px 14px;border-radius:18px}.upload-shell .momentry-logo{margin-bottom:5px;font-size:clamp(1.3rem,5.6vw,1.5rem)}.upload-shell .upload-panel-moment h1{margin-bottom:4px;font-size:clamp(1.35rem,7.2vw,1.75rem);line-height:1.02}.upload-shell .upload-panel-moment .lead{font-size:clamp(.82rem,3.7vw,.94rem);line-height:1.18}.upload-shell .upload-intro{gap:8px;margin-bottom:8px}.upload-shell .timer-toggle{width:46px;min-height:46px;padding:5px;border-radius:12px}.upload-shell .timer-toggle .icon{width:19px;height:19px}.upload-shell .timer-toggle span{font-size:.72rem}.upload-shell .upload-panel-moment .preview-frame{aspect-ratio:2.2 / 1;border-radius:14px}.upload-shell .upload-panel-moment .empty-preview{gap:7px;font-size:clamp(.84rem,3.9vw,.98rem)}.upload-shell .preview-icon{width:clamp(2.8rem,13vw,3.4rem);height:clamp(2.8rem,13vw,3.4rem)}.upload-shell .upload-actions{gap:8px;margin-top:10px}.upload-shell .upload-action{min-height:44px;gap:8px;border-radius:14px;font-size:clamp(.95rem,4.4vw,1.08rem)}.upload-shell .upload-footer{gap:4px;padding-top:8px}.upload-shell .upload-footer p,.upload-shell .upload-footer a{font-size:clamp(.86rem,4vw,.96rem)}}.admin-layout,.event-admin-layout,.master-admin-layout{width:100%}.admin-header,.qr-layout,.event-grid,.project-row,.booking-row{grid-template-columns:1fr}.admin-header,.project-row,.booking-row{align-items:stretch}.admin-header{flex-direction:column}.project-actions,.booking-actions,.action-row{justify-content:stretch}.button,.icon-button{width:100%}.config-toolbar{align-items:stretch}.config-toolbar>div{width:100%;flex-wrap:wrap}.config-canvas-area{min-height:420px}}.home-shell{display:block;min-height:100vh;padding:0;overflow-x:hidden;background:#fbfaf7;color:#121827}.home-shell a{text-decoration:none}.home-shell h1,.home-shell h2,.home-shell h3,.home-shell p{letter-spacing:0}.home-section-inner{width:min(1120px,calc(100% - 48px));margin:0 auto}.home-brand-word{display:inline-block;background:var(--momentry-logo-gradient);color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--momentry-logo-font);font-size:1.75rem;font-weight:700;line-height:1.12}.home-nav{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;min-height:76px;padding:14px max(24px,calc((100vw - 1120px)/2));border-bottom:1px solid rgba(18,24,39,.1);background:#fbfaf7e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.home-nav .home-brand{width:fit-content;color:inherit}.home-nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;color:#53606f;font-size:.95rem;font-weight:750}.home-nav-links a,.home-footer-links a{color:inherit;text-underline-offset:4px}.home-nav-links a:hover,.home-footer-links a:hover{text-decoration:underline}.home-nav-cta,.home-primary-cta,.home-secondary-cta{min-height:46px;border-radius:8px}.home-nav-cta{display:inline-flex;align-items:center;justify-content:center;padding:0 18px;background:#121827;color:#fff;font-weight:800}.home-hero{position:relative;display:grid;align-items:center;min-height:min(760px,calc(100svh - 96px));padding:76px 24px 86px;color:#fff;isolation:isolate}.home-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(90deg,#0c121fe0,#0c121fb8 38%,#0c121f38 72%),linear-gradient(0deg,#0c121f80,#0c121f0f 45%,#0c121f4d),url(/landing/hero-event.webp) left center / 132% auto no-repeat}.home-hero:after{content:"";position:absolute;inset:auto 0 0;z-index:-1;height:120px;background:linear-gradient(0deg,#fbfaf7,#fbfaf700)}.home-hero-content{width:min(1120px,100%);margin:0 auto;display:grid;gap:20px}.home-kicker{margin:0;color:#b77f5f;font-size:.86rem;font-weight:850;letter-spacing:0;text-transform:uppercase}.home-hero .home-kicker{color:#f0c6aa}.home-hero h1{display:inline-block;width:fit-content;margin:0;background:var(--momentry-logo-gradient);color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:var(--momentry-logo-font);font-size:5.5rem;line-height:1.08;font-weight:700}.home-claim{max-width:720px;margin:0;color:#fff;font-size:2.25rem;line-height:1.12;font-weight:780}.home-lead{max-width:650px;margin:0;color:#f2efe9;font-size:1.18rem;line-height:1.65}.home-hero-actions,.home-inline-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.home-hero-actions{margin-top:10px}.home-primary-cta{min-width:172px;padding:0 22px;border:0;background:linear-gradient(105deg,#c9967b,#aa85d4 48%,#6578f4);color:#fff;box-shadow:0 18px 38px #16182a38}.home-secondary-cta{min-width:174px;gap:10px;padding:0 18px;border-color:#ffffff80;background:#ffffff24;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.home-secondary-cta .icon{width:1.15rem;height:1.15rem}.home-proof-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;color:#f7eee8;font-size:.96rem;font-weight:750}.home-proof-row span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:#ffffff1f}.home-guest-band{padding:20px 0;background:#fff;border-bottom:1px solid rgba(18,24,39,.08)}.home-guest-grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center}.home-guest-grid strong{color:#121827;font-size:1.02rem}.home-guest-grid p{margin:0;color:#53606f;line-height:1.5}.home-guest-grid a{color:#5667db;font-weight:800}.home-section{padding:86px 0}.home-how-section{background:#fbfaf7}.home-benefits-section,.home-events-section{background:#fff}.home-showcase-section{background:#f0f5f1}.home-showcase-grid,.home-booking-grid,.home-footer-grid{display:grid;gap:34px;align-items:center}.home-showcase-grid{grid-template-columns:minmax(280px,.86fr) minmax(0,1fr)}.home-section-copy,.home-section-heading{display:grid;gap:14px}.home-how-copy{max-width:760px}.home-section-heading{max-width:760px;margin-bottom:30px}.home-section-copy h2,.home-section-heading h2,.home-booking-grid h2{margin:0;color:#111827;font-size:3rem;line-height:1.06;font-weight:840}.home-section-copy p,.home-section-heading p,.home-booking-grid p{margin:0}.home-section-copy>p:not(.home-kicker),.home-section-heading>p:not(.home-kicker){color:#53606f;font-size:1.05rem;line-height:1.7}.home-benefit,.home-event-tile{min-width:0;border:1px solid rgba(18,24,39,.1);border-radius:8px;background:#fff;box-shadow:0 16px 36px #1218270f}.home-benefit h3,.home-event-tile h3{margin:0;color:#111827;font-size:1.08rem;line-height:1.25}.home-benefit p,.home-event-tile p{margin:0;color:#5f6876;line-height:1.55}.home-wide-image{display:block;width:min(100%,1040px);margin:38px auto 0;border:1px solid rgba(18,24,39,.08);border-radius:8px;box-shadow:0 22px 55px #1218271a}.home-benefit-grid,.home-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home-benefit,.home-event-tile{display:grid;gap:12px;min-height:188px;padding:22px}.home-benefit{border-top:4px solid #7a8a5e}.home-event-tile{background:linear-gradient(180deg,#fffffff5,#ffffffeb),#fff}.home-image-pair{position:relative;min-width:0}.home-image-pair img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:8px;box-shadow:0 28px 58px #232d262e}.home-mini-panel{position:absolute;right:18px;bottom:18px;display:grid;gap:5px;width:min(280px,calc(100% - 36px));padding:14px 16px;border-radius:8px;background:#ffffffeb;color:#121827;box-shadow:0 16px 36px #1218272e}.home-mini-panel strong{font-size:1rem}.home-mini-panel span{color:#53606f;font-size:.92rem;line-height:1.4}.home-showcase-section .home-secondary-cta{border-color:#d9d4e8;background:#fff;color:#121827}.home-booking-band{padding:64px 0;background:#121827;color:#fff}.home-booking-grid{grid-template-columns:minmax(0,1fr) auto}.home-booking-grid h2{color:#fff}.home-booking-grid .home-kicker{color:#f0c6aa;margin-bottom:12px}.home-booking-grid .home-primary-cta{min-height:58px;font-size:1.05rem}.home-footer{padding:34px 0;background:#fbfaf7;border-top:1px solid rgba(18,24,39,.08)}.home-footer-grid{grid-template-columns:minmax(0,1fr) auto auto}.home-footer p{margin:8px 0 0;color:#5f6876}.home-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 18px;color:#53606f;font-weight:750}.home-footer-social{display:inline-flex;align-items:center;gap:8px;color:#121827;font-weight:800}.home-footer-social .icon{width:1.2rem;height:1.2rem}@media(max-width:720px){.home-nav{grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;min-height:0;padding:14px 24px}.home-nav .home-brand{min-width:0}.home-brand-word{font-size:1.55rem}.home-nav-links{grid-column:1 / -1;justify-content:flex-start}.home-nav-cta{min-width:0;padding:0 16px}.home-hero{min-height:auto;padding:56px 24px 72px}.home-hero h1{max-width:100%;font-size:4rem}.home-claim{font-size:1.65rem;line-height:1.16}.home-lead{font-size:1rem;line-height:1.55}}@media(max-width:420px){.home-brand-word{font-size:1.45rem}.home-nav-cta{padding:0 14px}.home-hero h1{font-size:3.5rem}.home-claim{font-size:1.55rem}}:root{--config-bg: #f8f9fa;--config-sidebar-bg: #ffffff;--config-border: #e9ecef;--config-accent: #3c73ff;--config-text-main: #1a1b1e;--config-text-muted: #868e96;--config-toolbar-height: 72px;--config-header-height: 56px;--config-sidebar-width: 300px}#configurator-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:var(--config-bg);display:flex;flex-direction:column;font-family:Inter,system-ui,sans-serif;color:var(--config-text-main);line-height:1.5}.config-modal-header{height:var(--config-header-height);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;border-bottom:1px solid var(--config-border);flex-shrink:0}.modal-title{display:flex;align-items:baseline;gap:12px}.modal-title strong{font-size:1.1rem;font-weight:700}.modal-close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;background:var(--config-bg);color:var(--config-text-muted);border-radius:8px;cursor:pointer;transition:all .2s}.modal-close-btn:hover{background:#ff4d4f;color:#fff}.config-toolbar{height:var(--config-toolbar-height);background:#fff;border-bottom:1px solid var(--config-border);display:flex;align-items:center;gap:24px;padding:0 24px;flex-shrink:0}.toolbar-group{display:flex;align-items:center;gap:16px;padding:6px 14px;background:#f1f3f5;border-radius:12px}.icon-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border:0;border-radius:8px;background:transparent;color:var(--config-text-main);cursor:pointer;transition:all .2s;font-family:inherit}.icon-btn:hover{background:#fff;box-shadow:0 2px 12px #0000001a;color:var(--config-accent)}.icon-btn span{font-size:.65rem;font-weight:700;margin-top:4px}.success-icon-btn{background:#e7f5ff!important;border:1px solid #a5d8ff!important;color:#1971c2!important}.primary-icon-btn{background:var(--config-accent)!important;color:#fff!important}.config-workbench{flex:1;display:grid;grid-template-columns:var(--config-sidebar-width) 1fr var(--config-sidebar-width);overflow:hidden;position:relative}.config-sidebar{background:var(--config-sidebar-bg);display:flex;flex-direction:column;border-right:1px solid var(--config-border);min-width:0}.config-sidebar-right{border-right:0;border-left:1px solid var(--config-border)}.sidebar-header{padding:16px 20px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--config-text-muted);border-bottom:1px solid var(--config-border);background:#fff}.layer-btn{width:100%;padding:12px 20px;background:transparent;border:0;color:var(--config-text-main);text-align:left;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .15s;font-size:.9rem;border-bottom:1px solid var(--config-border)}.layer-btn:hover{background:var(--config-bg)}.layer-btn.is-active{background:#3c73ff14;color:var(--config-accent);font-weight:600;box-shadow:inset 4px 0 0 var(--config-accent)}.config-canvas-area{background:#e9ecef;position:relative;overflow:hidden;display:flex;flex-direction:column;touch-action:none}.config-canvas-viewport{flex:1;width:100%;height:100%;position:relative;overflow:hidden}.config-canvas-container{position:absolute;background:#fff;box-shadow:0 10px 40px #0000001a;transform-origin:0 0}.config-canvas-grid{position:absolute;top:-2000px;right:-2000px;bottom:-2000px;left:-2000px;background-image:linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.06) 1px,transparent 1px);background-size:20px 20px,20px 20px,100px 100px,100px 100px;pointer-events:none}.configurator-canvas{width:1920px;height:1080px;position:relative;overflow:hidden}.configurator-object{position:absolute;cursor:move;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.configurator-object.is-selected:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border:2px solid var(--config-accent);pointer-events:none}.handle{width:16px;height:16px;background:#fff;border:2px solid var(--config-accent);border-radius:4px;box-shadow:0 2px 8px #00000040;pointer-events:auto;z-index:1001}.config-mobile-tabs{display:none;background:#fff;border-bottom:1px solid var(--config-border)}.tab-btn{flex:1;padding:16px 4px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--config-text-muted);font-size:.85rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .2s}.tab-btn.is-active{color:var(--config-accent);border-bottom-color:var(--config-accent)}@media(max-width:1024px){:root{--config-sidebar-width: 260px}}@media(max-width:720px){.config-workbench{grid-template-columns:1fr}.config-toolbar{height:auto;padding:12px;gap:16px;justify-content:space-between}.config-mobile-tabs{display:flex}.config-sidebar,.config-canvas-area{display:none;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.config-workbench[data-active-tab=canvas] .config-canvas-area,.config-workbench[data-active-tab=layers] .config-sidebar:not(.config-sidebar-right),.config-workbench[data-active-tab=props] .config-sidebar-right{display:flex;z-index:5}.handle{width:32px;height:32px}}
