@import"https://fonts.googleapis.com/css2?family=Prompt:wght@300;400;500;600;700&display=swap";.login-page{background:#060d18;min-height:100vh;padding:24px;display:grid;place-items:center}.pro-login{width:min(920px,calc(100vw - 34px));min-height:min(860px,calc(100vh - 48px));border:3px solid rgba(140,170,196,.58);border-radius:66px;background:#0e1430;box-shadow:0 0 44px #2acfff29,inset 0 0 0 1px #ffffff05;padding:78px clamp(26px,8vw,110px);display:flex;flex-direction:column;align-items:center}.login-logo{width:146px;height:146px;border-radius:34px;object-fit:cover;box-shadow:0 22px 70px #00000052;margin-bottom:32px}.pro-login h1{font-size:clamp(42px,6vw,66px);line-height:1;margin:0;color:#edf4ff;font-weight:500;letter-spacing:-1px}.login-subtitle{font-size:clamp(20px,2.8vw,30px);color:#a9bdd9;margin:18px 0 38px}.login-form{width:100%;display:flex;flex-direction:column;gap:24px}.login-form input{width:100%;height:86px;border-radius:42px;background:#05070a;border:3px solid #138eff;color:#eff5ff;font-size:31px;font-weight:600;padding:0 34px}.login-form input::placeholder{color:#ffffff38}.password-wrap{position:relative}.password-wrap input{background:#101633;border-color:#86a2c8}.password-wrap span{position:absolute;right:36px;top:50%;transform:translateY(-50%);font-size:28px}.remember-row{display:flex;align-items:center;gap:16px;color:#c6d5ef;font-size:24px;font-weight:500;margin-top:2px}.remember-row input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:34px;height:34px;border-radius:7px;background:#158dff;border:0;display:grid;place-items:center;padding:0;flex:0 0 auto}.remember-row input:checked:after{content:"";width:17px;height:9px;border-left:3px solid white;border-bottom:3px solid white;transform:rotate(-45deg);margin-top:-4px}.sign-in-button{align-self:center;border:0;border-radius:42px;background:#7544aa;color:#fff;font-size:clamp(30px,4vw,44px);font-weight:700;min-width:min(440px,100%);padding:24px 38px;margin:20px 0 8px}.login-divider{width:100%;display:flex;align-items:center;gap:16px;color:#7184a3;font-size:14px;margin:8px 0}.login-divider:before,.login-divider:after{content:"";height:1px;background:#86a2c83d;flex:1}.google-login{width:min(420px,100%);border:2px solid rgba(134,162,200,.55);background:#101722;color:#edf4ff;border-radius:999px;padding:18px 22px;font-size:18px;font-weight:600;text-align:center}.login-note{color:#8fa3c1;text-align:center;line-height:1.6;max-width:520px;margin-top:16px}.login-error{width:100%;border:1px solid rgba(255,120,120,.36);background:#78232333;color:#ffd4d4;border-radius:16px;padding:12px 16px;font-size:14px;margin-bottom:18px}@media(max-width:700px){.pro-login{border-radius:34px;min-height:auto;padding:42px 20px}.login-logo{width:108px;height:108px}.login-form{gap:16px}.login-form input{height:64px;font-size:22px;padding:0 22px}.password-wrap span{right:24px;font-size:22px}.remember-row{font-size:18px}.sign-in-button{font-size:28px;padding:18px 26px}.google-login{font-size:15px;padding:15px 18px}}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 10%,rgba(43,140,255,.24),transparent 32%),radial-gradient(circle at 18% 25%,rgba(33,212,162,.18),transparent 28%),var(--bg)}.login-panel{width:min(480px,100%);border:1px solid var(--line);background:#0f1a2bf0;border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-brand{margin-bottom:28px}.login-panel h1{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0 0 14px}.login-panel p{color:var(--muted);line-height:1.7;margin:0 0 22px}.google-login{display:flex;align-items:center;justify-content:center;border-radius:14px;background:#f8fbff;color:#172033;font-weight:600;padding:13px 16px}.login-error{border:1px solid rgba(255,120,120,.28);background:#78232333;color:#ffd4d4;border-radius:12px;padding:10px 12px;font-size:13px;margin-bottom:14px}.account-chip{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:#0d1728;border-radius:999px;padding:6px 7px 6px 8px;max-width:min(340px,48vw)}.account-chip img,.account-chip>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--accent),var(--accent2));color:#041322;font-weight:700;flex:0 0 auto}.account-chip div{min-width:0}.account-chip strong,.account-chip small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-chip strong{font-size:12px}.account-chip small{font-size:10px;color:var(--muted)}.account-chip button{border:0;border-radius:999px;background:#15253a;color:var(--text);padding:7px 10px;font-size:11px;flex:0 0 auto}@media(max-width:760px){.top-actions{gap:9px}.account-chip{max-width:none}.account-chip div{display:none}.account-chip button{padding:7px 9px}.top-actions .pill{display:none}}.folder-view-switch{display:inline-flex;gap:4px;border:1px solid var(--line);background:#0d1728;border-radius:13px;padding:4px;margin:0 0 12px}.folder-view-switch button{border:0;background:transparent;color:var(--muted);border-radius:10px;padding:8px 12px;font-size:12px}.folder-view-switch button.active{background:#15253a;color:var(--text);box-shadow:0 8px 22px #00000029}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-top:14px}.folder-card{border:1px solid var(--line);background:linear-gradient(180deg,#101d30,#0c1626);border-radius:16px;padding:13px;min-height:205px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 14px 45px #0000002e}.folder-card.active{border-color:#21d4a28c;background:linear-gradient(180deg,#21d4a221,#0c1626)}.folder-main{border:0;background:none;color:var(--text);padding:0;text-align:left;display:flex;flex-direction:column;gap:12px;align-items:flex-start}.folder-icon{width:82px;height:64px;border-radius:8px 8px 12px 12px;background:linear-gradient(160deg,#24d7a4,#2b8cff);color:#061321;display:grid;place-items:center;box-shadow:0 14px 28px #21d4a22e;position:relative}.folder-icon:before{content:"";position:absolute;left:0;top:-9px;width:39px;height:15px;border-radius:9px 12px 0 0;background:#20bd96}.folder-meta{display:flex;flex-direction:column;gap:6px;width:100%}.folder-meta strong{font-size:15px;line-height:1.35;word-break:break-word}.folder-meta small{color:var(--muted);font-size:11px;line-height:1.45}.folder-meta input{width:100%;min-width:0}.folder-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.folder-card-footer .event-actions{gap:7px}.folder-card-footer .action{padding:8px 10px;font-size:12px}.folder-card-footer .icon-action{width:34px;height:34px}@media(max-width:680px){.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.folder-card{min-height:190px;padding:11px}.folder-icon{width:68px;height:54px}.folder-card-footer{align-items:flex-start;flex-direction:column}.folder-card-footer .event-actions{width:100%;justify-content:flex-start}.folder-card-footer .event-actions .action{flex:1}.folder-card-footer .pill{font-size:10px;padding:6px 9px}}.folder-page{min-height:calc(100vh - 150px)}.folder-top{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px}.folder-top h1{font-size:clamp(27px,3vw,38px);margin:0 0 8px}.folder-top span{color:var(--muted);font-size:13px}.back-button{border:1px solid var(--line);background:#15253a;color:var(--text);border-radius:13px;padding:10px 13px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.folder-create{max-width:720px;margin:0 0 14px}.bridge-directory{border:1px solid rgba(33,212,162,.2);background:#21d4a20f;border-radius:15px;padding:13px;margin:0 0 14px;display:flex;flex-direction:column;gap:7px}.bridge-directory strong{font-size:13px}.bridge-directory span,.bridge-directory small{font-size:11px;color:var(--muted);line-height:1.55}.bridge-directory code{font-size:11px;color:#b8f7e7;background:#07111d;border:1px solid rgba(33,212,162,.14);border-radius:9px;padding:8px;word-break:break-all}.bridge-directory small{word-break:break-all}.folder-list{margin-top:10px}@media(max-width:680px){.folder-top{flex-direction:column}.back-button{width:100%;justify-content:center}.folder-create{max-width:none}}.events-panel{margin-top:17px}.event-list{display:flex;flex-direction:column;gap:10px}.event-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:12px}.event-row.active{border-color:#21d4a273;background:#21d4a212}.event-info{flex:1;min-width:0}.event-info strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-info span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.event-row input{min-width:180px}.event-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.icon-action{width:37px;height:37px;border-radius:11px;border:1px solid var(--line);background:#15253a;color:var(--text);display:grid;place-items:center}.icon-action.danger{color:#ffb4b4;border-color:#ff787838;background:#78232338}.event-empty{height:auto;min-height:120px}@media(max-width:680px){.event-row{align-items:stretch;flex-direction:column}.event-row input{width:100%;min-width:0}.event-actions{justify-content:flex-start}.event-actions .action{flex:1}}:root{font-family:Prompt,system-ui,sans-serif;color:#eef4ff;background:#070e18;--bg:#070e18;--surface:#101b2c;--surface2:#132237;--line:rgba(127,151,186,.18);--muted:#8695aa;--text:#eff5ff;--accent:#21d4a2;--accent2:#2b8cff;--shadow:0 24px 80px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 75% 0%,#173255 0,transparent 32%),radial-gradient(circle at 10% 30%,#0d2831 0,transparent 30%),var(--bg);color:var(--text)}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app{min-height:100vh}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,44px);background:#070e18b8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;font-weight:700;letter-spacing:-1px;background:linear-gradient(140deg,var(--accent),var(--accent2));color:#051322;box-shadow:0 10px 32px #23d0a542}.brand strong{font-size:21px;display:block;line-height:1}.brand small{color:var(--muted);font-size:10px;letter-spacing:1.9px}.top-actions{display:flex;align-items:center;gap:17px}.pill{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);padding:7px 12px;border-radius:99px;font-size:12px;color:var(--muted);white-space:nowrap}.pill span{width:7px;height:7px;border-radius:50%;background:#64748b}.pill.live{color:#3ae6b3;background:#21d4a214;border-color:#21d4a247}.pill.live span{background:var(--accent);box-shadow:0 0 11px var(--accent)}.user-chip{color:var(--muted);font-size:13px}.workspace{max-width:1400px;margin:auto;padding:32px clamp(17px,4vw,44px) 44px}.hero-card{padding:30px 32px;border-radius:25px;border:1px solid var(--line);background:linear-gradient(105deg,#112034f2,#0d1828bf);display:flex;justify-content:space-between;gap:22px;align-items:center;box-shadow:var(--shadow)}.eyebrow{letter-spacing:2px;color:var(--muted);font-size:11px;margin:0 0 10px}.hero-copy h1{font-size:clamp(26px,3vw,38px);margin:0 0 13px;letter-spacing:-1px}.hero-stats{color:var(--muted);font-size:14px}.hero-stats strong{color:var(--accent);font-size:18px;margin-right:6px}.hero-stats span{margin:0 10px}.event-create{display:flex;gap:10px;min-width:min(450px,100%)}input{flex:1;color:var(--text);background:#0a1524;border:1px solid var(--line);border-radius:14px;padding:12px 16px;outline:none}input:focus{border-color:#21d4a299}.action{border:none;background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322;font-weight:600;border-radius:13px;padding:11px 17px;display:inline-flex;gap:7px;align-items:center;justify-content:center;white-space:nowrap}.action:disabled{opacity:.55;cursor:not-allowed}.action.secondary{color:var(--text);background:#15253a;border:1px solid var(--line)}.grid-panels{display:grid;grid-template-columns:1.35fr .85fr .95fr;gap:16px;margin-top:17px}.panel{border:1px solid var(--line);border-radius:22px;background:#0f1a2be8;box-shadow:var(--shadow);padding:22px}.panel-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:19px}.panel-head svg{color:#4a698b}.panel h2{font-size:20px;margin:0}.connection-row{border:1px solid var(--line);border-radius:15px;background:#0d1728;margin:12px 0;padding:12px;display:flex;align-items:center;gap:12px}.connection-row .icon{width:39px;height:39px;border-radius:11px;background:#13263c;display:grid;place-items:center;color:var(--accent)}.connection-row div{flex:1}.connection-row strong{font-size:14px;display:block}.connection-row small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.button-line{display:flex;gap:9px;margin:10px 0 17px}.terminal{font-size:11px;line-height:1.5;white-space:pre-wrap;color:#b6d6d0;background:#08131d;border-radius:10px;padding:10px;max-height:90px;overflow:auto}.share{text-align:center}.share .panel-head{text-align:left}.qr{width:min(185px,100%);background:#fff;border-radius:16px;padding:7px}.qr-text{font-size:13px;color:var(--muted);line-height:1.6}.link{display:inline-flex;gap:7px;color:var(--accent);font-size:13px}.google-connect{display:block;text-align:center;border-radius:12px;background:#f8fbff;color:#1b2636;padding:12px;margin-bottom:15px;font-weight:500}.sync-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:11px;margin-top:12px}.sync-card svg{color:#61a8fe}.sync-card div{flex:1}.sync-card strong{display:block;font-size:14px}.sync-card small{color:var(--muted)}.sync-card .action{padding:7px 12px;font-size:12px}.note{font-size:11px;color:var(--muted);margin:15px 0 0;line-height:1.65}.gallery{margin-top:17px}.gallery-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.gallery-head h2{margin:0}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:13px}.photo-grid figure{margin:0;overflow:hidden;border-radius:15px;background:#091422;border:1px solid var(--line)}.photo-grid img{display:block;width:100%;height:190px;object-fit:cover}.photo-grid figcaption{display:flex;flex-direction:column;gap:3px;padding:10px 11px}.photo-grid figcaption strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-grid figcaption span{font-size:10px;color:var(--muted)}.empty{height:260px;display:flex;gap:9px;flex-direction:column;align-items:center;justify-content:center;color:var(--muted)}.empty svg{color:var(--accent)}.empty strong{color:var(--text)}.toast{position:fixed;z-index:30;right:24px;bottom:24px;padding:13px 13px 13px 17px;border-radius:14px;background:#152a37;border:1px solid rgba(33,212,162,.35);color:#effffb;box-shadow:var(--shadow);display:flex;align-items:center;gap:10px}.toast svg{color:var(--accent)}.toast button{background:none;color:var(--muted);border:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loader{height:100vh;display:flex;align-items:center;justify-content:center;gap:15px;color:var(--muted)}.guest{min-height:100vh;max-width:1000px;margin:auto;padding:19px}.guest-header{display:flex;justify-content:space-between;align-items:center;padding:6px 0 30px}.guest-hero{text-align:center;padding:40px 20px 38px}.guest-hero p{color:var(--accent);margin:0;font-size:13px}.guest-hero h1{font-size:clamp(28px,7vw,44px);margin:9px 0 15px}.counter{display:inline-block;padding:9px 17px;border-radius:90px;background:#21d4a21a;color:#3ae6b3}.guest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.guest-photo{position:relative;overflow:hidden;border-radius:14px}.guest-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.guest-photo span{position:absolute;bottom:0;left:0;right:0;padding:29px 10px 10px;font-size:11px;background:linear-gradient(transparent,#000000ad);opacity:0;transition:.2s}.guest-photo:hover span{opacity:1}.guest-empty{min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:12px}@media(max-width:1080px){.grid-panels{grid-template-columns:1fr 1fr}.cloud{grid-column:1/-1}.hero-card{align-items:flex-start;flex-direction:column}.event-create{width:100%}}@media(max-width:680px){.topbar{height:68px;padding:0 16px}.brand strong{font-size:19px}.top-actions .user-chip{display:none}.workspace{padding:18px 13px 30px}.hero-card{padding:22px 18px}.event-create{flex-direction:column}.grid-panels{grid-template-columns:1fr}.panel{padding:18px}.gallery-head{gap:13px;align-items:flex-start;flex-direction:column}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-grid img{height:150px}.action{padding:10px 13px}.connection-row .pill{padding:6px 9px}}.brand-logo{width:43px;height:43px;border-radius:13px;object-fit:cover;box-shadow:0 0 0 1px #ffffff1a;filter:none}.guest-header .brand-logo{width:43px;height:43px}@media(max-width:680px){.brand-logo{width:39px;height:39px;border-radius:12px}}.bridge-box{margin-top:17px;text-align:left;border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:7px}.bridge-box strong{font-size:13px}.bridge-box span,.bridge-box small{font-size:11px;color:var(--muted);line-height:1.55}.bridge-box code{font-size:11px;color:#b8f7e7;background:#07111d;border:1px solid rgba(33,212,162,.14);border-radius:9px;padding:8px;word-break:break-all}.bridge-box small{word-break:break-all}.pro-login-page{background:#060d18;padding:24px}.login-panel.pro-login{width:min(920px,calc(100vw - 34px));min-height:min(860px,calc(100vh - 48px));border:3px solid rgba(140,170,196,.58);border-radius:66px;background:#0e1430;box-shadow:0 0 44px #2acfff29,inset 0 0 0 1px #ffffff05;padding:78px clamp(26px,8vw,110px);display:flex;flex-direction:column;align-items:center}.login-panel.pro-login h1{font-size:clamp(42px,6vw,66px);line-height:1;margin:0;color:#edf4ff;font-weight:500;letter-spacing:-1px}.login-panel.pro-login .login-subtitle{font-size:clamp(20px,2.8vw,30px);color:#a9bdd9;margin:18px 0 38px}.login-panel.pro-login .google-login{width:min(420px,100%);border:2px solid rgba(134,162,200,.55);background:#101722;color:#edf4ff;border-radius:999px;padding:18px 22px;font-size:18px;font-weight:600;text-align:center}.login-panel.pro-login .login-error{width:100%;border:1px solid rgba(255,120,120,.36);background:#78232333;color:#ffd4d4;border-radius:16px;padding:12px 16px;font-size:14px;margin-bottom:18px}@media(max-width:700px){.login-panel.pro-login{border-radius:34px;min-height:auto;padding:42px 20px}.login-panel.pro-login h1{font-size:38px}.login-panel.pro-login .google-login{font-size:15px;padding:15px 18px}}.pro-login-page{min-height:100svh;padding:clamp(14px,3vw,28px);background:radial-gradient(circle at 50% -10%,rgba(33,212,162,.16),transparent 35%),#060d18}.login-panel.pro-login{width:min(760px,100%);min-height:auto;max-height:none;border-radius:clamp(28px,6vw,58px);padding:clamp(34px,7vw,76px) clamp(22px,8vw,92px);gap:0}.login-panel.pro-login .login-logo{width:clamp(104px,16vw,156px);height:clamp(104px,16vw,156px);border-radius:clamp(24px,4vw,36px);margin-bottom:clamp(24px,4vw,34px)}.login-panel.pro-login h1{font-size:clamp(42px,7vw,64px)}.login-panel.pro-login .login-subtitle{font-size:clamp(18px,3vw,28px);margin:clamp(14px,2vw,20px) 0 clamp(34px,5vw,54px)}.login-panel.pro-login .primary-google-login{width:min(430px,100%);min-height:58px;border:0;background:linear-gradient(120deg,#7a48b5,#8f55cf);color:#fff;border-radius:999px;font-size:clamp(16px,2.4vw,20px);box-shadow:0 18px 44px #7a48b547}.login-panel.pro-login .login-note{font-size:clamp(12px,1.8vw,14px);margin-top:18px}@media(max-width:520px){.login-panel.pro-login{border-width:2px}.login-panel.pro-login .primary-google-login{min-height:52px}.login-panel.pro-login .login-note{max-width:280px}}@media(min-width:900px)and (max-height:760px){.login-panel.pro-login{padding-top:38px;padding-bottom:38px}.login-panel.pro-login .login-logo{width:112px;height:112px;margin-bottom:20px}.login-panel.pro-login .login-subtitle{margin-bottom:30px}}.login-panel.pro-login .login-logo{box-shadow:0 0 0 1px #ffffff2e,0 0 22px #ffffff85,0 0 52px #dcf5ff61,0 0 90px #78d2ff2e,0 22px 70px #00000057;filter:drop-shadow(0 0 16px rgba(255,255,255,.46)) drop-shadow(0 0 34px rgba(210,245,255,.28))}.ftp-box{margin:12px 0 16px;border:1px solid rgba(33,212,162,.2);background:#0a1422;border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:10px}.ftp-box strong{font-size:13px}.ftp-box>span{font-size:11px;color:var(--muted);line-height:1.55}.ftp-address-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}.ftp-address-list button{text-align:left;border:1px solid var(--line);background:#101d30;color:var(--text);border-radius:11px;padding:9px;display:flex;flex-direction:column;gap:5px;min-width:0}.ftp-address-list button small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.7px}.ftp-address-list button code,.ftp-fields code{color:#b8f7e7;font-size:12px;word-break:break-all}.ftp-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ftp-fields span{border:1px solid var(--line);background:#07111d;border-radius:10px;padding:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.ftp-fields b{font-size:11px;color:var(--muted);font-weight:500;white-space:nowrap}@media(max-width:520px){.ftp-fields{grid-template-columns:1fr}.ftp-fields span{align-items:flex-start;flex-direction:column}.ftp-address-list{grid-template-columns:1fr}}.guest-actions{margin-top:18px;display:flex;justify-content:center}.guest-actions button,.scanner-actions button,.download-button{border:1px solid rgba(33,212,162,.28);background:#21d4a21a;color:#dffef7;border-radius:999px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600}.guest-actions button:disabled,.scanner-actions button:disabled{opacity:.58;cursor:not-allowed}.scan-message{display:block;margin-top:12px;color:#a9bdd9;line-height:1.55}.face-scanner{margin:0 auto 18px;max-width:620px;border:1px solid var(--line);background:#0d1728;border-radius:20px;padding:12px;display:grid;grid-template-columns:170px 1fr;gap:13px;align-items:center}.face-scanner video{width:100%;aspect-ratio:1;border-radius:16px;background:#050b13;object-fit:cover;transform:scaleX(-1)}.face-scanner strong{display:block;margin-bottom:6px}.face-scanner span{display:block;color:var(--muted);font-size:13px;line-height:1.55}.scanner-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.scanner-actions button:last-child{background:#15253a;border-color:var(--line);color:var(--text)}.guest-photo-card{margin:0;display:flex;flex-direction:column;gap:8px}.guest-photo-card .guest-photo{display:block}.download-button{border-radius:12px;padding:9px 12px;background:#101d30;color:#eff5ff;font-size:13px}.download-button:hover,.guest-actions button:hover,.scanner-actions button:hover{border-color:#21d4a28c}@media(max-width:620px){.face-scanner{grid-template-columns:1fr;text-align:center}.face-scanner video{max-width:240px;margin:auto}.scanner-actions{justify-content:center}.guest-actions button,.download-button{width:100%}}.gallery{display:flex;flex-direction:column;max-height:min(760px,calc(100vh - 130px))}.gallery-head{flex:0 0 auto}.gallery-scroll{min-height:260px;overflow:auto;overscroll-behavior:contain;padding-right:5px;border-radius:16px}.gallery-scroll::-webkit-scrollbar{width:9px}.gallery-scroll::-webkit-scrollbar-track{background:#08131d;border-radius:99px}.gallery-scroll::-webkit-scrollbar-thumb{background:#86a2c861;border-radius:99px;border:2px solid #08131d}.gallery-scroll .photo-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:11px;padding-bottom:4px}.gallery-scroll .photo-grid img{height:155px}.gallery-scroll .empty{min-height:260px;height:100%}@media(max-width:680px){.gallery{max-height:calc(100svh - 110px)}.gallery-scroll{max-height:none;padding-right:2px}.gallery-scroll .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-scroll .photo-grid img{height:132px}}.gallery-count{display:inline-flex;vertical-align:middle;margin-left:8px;padding:5px 9px;border-radius:999px;background:#21d4a21a;border:1px solid rgba(33,212,162,.25);color:#3ae6b3;font-size:12px;font-weight:600;letter-spacing:0}.event-cover-card{width:min(260px,100%);flex:0 0 260px;border:1px solid var(--line);background:#0b1727;border-radius:18px;padding:10px;display:flex;flex-direction:column;gap:10px}.event-cover-card img,.cover-placeholder{width:100%;aspect-ratio:16/9;border-radius:13px;object-fit:cover;background:linear-gradient(135deg,#0b1727,#132943)}.cover-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center;font-size:12px}.cover-placeholder svg{color:var(--accent);margin-bottom:5px}.cover-placeholder span{display:block}.cover-actions{display:flex;gap:8px;flex-wrap:wrap}.cover-actions .action{flex:1;padding:8px 10px;font-size:12px}.guest-cover{position:relative;width:100%;margin:10px 0 12px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#091422;box-shadow:0 20px 70px #00000040}.guest-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#040a1214 35%,#040a12c2);pointer-events:none}.guest-cover img{display:block;width:100%;aspect-ratio:21/9;max-height:420px;object-fit:cover}.guest-cover-copy{position:absolute;z-index:1;left:clamp(18px,5vw,58px);right:clamp(18px,5vw,58px);bottom:clamp(18px,5vw,46px);text-align:center;text-shadow:0 4px 22px rgba(0,0,0,.62)}.guest-cover-copy p{margin:0 0 8px;color:#3ae6b3;font-size:clamp(13px,2.2vw,20px);font-weight:700}.guest-cover-copy h1{margin:0;color:#f2f7ff;font-size:clamp(34px,7vw,76px);line-height:.98;letter-spacing:-1px}.guest-hero.compact{padding:12px 20px 30px}@media(max-width:1080px){.event-cover-card{width:100%;flex:0 0 auto}.hero-card{gap:18px}.guest-cover img{aspect-ratio:16/9}}@media(max-width:680px){.event-cover-card{border-radius:15px}.cover-actions .action{min-width:120px}.guest-cover{border-radius:18px;margin:6px 0 10px}.guest-cover img{aspect-ratio:4/3;max-height:360px}.guest-cover-copy{bottom:22px}.guest-cover-copy h1{font-size:clamp(34px,12vw,58px)}.guest-hero.compact{padding:8px 0 26px}}.guest-grid-toolbar{width:max-content;margin:16px auto 0;border:2px solid rgba(255,255,255,.58);border-radius:999px;overflow:hidden;display:inline-flex;background:#ffffff1f;box-shadow:0 10px 30px #00000024}.guest-grid-toolbar button{width:54px;height:40px;border:0;border-right:1px solid rgba(255,255,255,.38);background:#ffffffdb;color:#14243a;display:grid;place-items:center}.guest-grid-toolbar button:last-child{border-right:0}.guest-grid-toolbar button.active{background:#bde8ff;color:#0a2a42}.grid-icon{display:grid;gap:4px}.grid-icon i{width:7px;height:7px;border:2px solid currentColor;border-radius:3px}.grid-icon-2{grid-template-columns:repeat(2,1fr)}.grid-icon-3{grid-template-columns:repeat(3,1fr)}.grid-icon-4{grid-template-columns:repeat(2,1fr)}.guest-grid{gap:10px}.guest-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.guest-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:760px){.guest-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.guest-grid-toolbar button{width:48px;height:38px}.guest-grid-3,.guest-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.guest{max-width:1180px;min-height:100vh;height:auto;overflow:visible}.guest-cover img{max-height:min(420px,42svh)}.guest-photo-panel{max-height:min(720px,70vh);min-height:210px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:20px;background:#08131d6b;padding:10px}.guest-photo-panel::-webkit-scrollbar{width:9px}.guest-photo-panel::-webkit-scrollbar-track{background:#08131d;border-radius:99px}.guest-photo-panel::-webkit-scrollbar-thumb{background:#86a2c861;border-radius:99px;border:2px solid #08131d}.guest-photo-panel .guest-empty{min-height:100%;height:auto}@media(max-width:680px){.guest{padding:12px}.guest-header{padding-bottom:14px}.guest-cover img{max-height:34svh}.guest-photo-panel{max-height:62vh;border-radius:16px;padding:8px;min-height:180px}.guest-photo-panel .guest-grid{gap:8px}}.cover-adjust-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:clamp(14px,3vw,28px);background:#03080fc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cover-adjust-panel{width:min(960px,100%);max-height:calc(100svh - 28px);overflow:auto;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#101d30,#0b1524);box-shadow:0 28px 90px #00000073;padding:18px}.cover-adjust-panel .panel-head{margin-bottom:14px}.cover-adjust-panel .icon-action:disabled{opacity:.55;cursor:not-allowed}.cover-adjust-preview{position:relative;overflow:hidden;border-radius:22px;border:1px solid rgba(134,162,200,.24);background:#07111d;box-shadow:inset 0 0 0 1px #ffffff05}.cover-adjust-preview:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#040a120d 35%,#040a12c2);pointer-events:none}.cover-adjust-preview img{display:block;width:100%;aspect-ratio:21/9;max-height:420px;object-fit:cover}.cover-adjust-preview .guest-cover-copy{z-index:2}.cover-adjust-controls{display:grid;gap:9px;margin-top:16px}.cover-adjust-controls label{font-weight:700;color:#f2f7ff}.cover-adjust-controls input[type=range]{width:100%;accent-color:var(--accent)}.cover-adjust-controls small{color:var(--muted);line-height:1.55}.cover-adjust-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}@media(max-width:680px){.cover-adjust-panel{border-radius:18px;padding:14px}.cover-adjust-preview{border-radius:16px}.cover-adjust-preview img{aspect-ratio:4/3;max-height:42svh}.cover-adjust-actions .action{flex:1}.cover-adjust-preview .guest-cover-copy h1{font-size:clamp(32px,11vw,52px)}}.guest-selection-bar{position:sticky;top:10px;z-index:4;margin:0 0 12px;border:1px solid rgba(33,212,162,.28);background:#08131deb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;padding:11px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 14px 38px #0000003d}.guest-selection-bar strong{color:#dffef7;font-size:14px}.guest-selection-bar div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.guest-selection-bar button{border:1px solid var(--line);background:#15253a;color:var(--text);border-radius:999px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;font-weight:700}.guest-selection-bar button.primary{border-color:#21d4a273;background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322}.guest-photo-card{position:relative}.guest-photo-card.selected .guest-photo{outline:2px solid var(--accent);outline-offset:2px}.select-photo{position:absolute;z-index:2;top:9px;left:9px;border:1px solid rgba(255,255,255,.34);background:#060e18b8;color:#f4fbff;border-radius:999px;padding:7px 9px;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;box-shadow:0 8px 24px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.select-photo svg{color:#9fb4cc}.select-photo.selected{border-color:#21d4a2b3;background:#21d4a2eb;color:#03151a}.select-photo.selected svg{color:#03151a}@media(max-width:620px){.guest-selection-bar{top:8px;align-items:stretch;flex-direction:column}.guest-selection-bar div{display:grid;grid-template-columns:1fr 1fr}.guest-selection-bar button{justify-content:center}.select-photo{top:7px;left:7px;padding:7px}.select-photo span{display:none}}.edit-photo-button{position:absolute;z-index:2;top:9px;right:9px;border:1px solid rgba(255,255,255,.34);background:#060e18b8;color:#f4fbff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;box-shadow:0 8px 24px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.edit-photo-button:hover{border-color:#21d4a299;color:#dffef7}.photo-editor-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:clamp(12px,3vw,28px);background:#03080fd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.photo-editor-panel{width:min(1180px,100%);max-height:calc(100svh - 24px);overflow:auto;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#101d30,#0a1422);box-shadow:0 28px 100px #00000085;padding:16px}.photo-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.photo-editor-head h2{margin:0 0 4px;font-size:24px}.photo-editor-head span{display:block;max-width:min(620px,70vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.photo-editor-head button{width:38px;height:38px;border:1px solid var(--line);background:#15253a;color:var(--text);border-radius:12px;display:grid;place-items:center;flex:0 0 auto}.photo-editor-head button:disabled{opacity:.55;cursor:not-allowed}.photo-editor-body{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:16px;align-items:start}.photo-editor-preview{min-height:360px;border:1px solid rgba(134,162,200,.22);border-radius:20px;background:#06101b;display:grid;place-items:center;overflow:hidden}.photo-editor-preview img{display:block;width:100%;height:100%;max-height:68vh;object-fit:contain}.photo-editor-controls{border:1px solid var(--line);border-radius:18px;background:#08131da6;padding:14px;display:grid;gap:12px}.photo-editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.photo-editor-actions button,.photo-editor-download button{border:1px solid var(--line);background:#15253a;color:var(--text);border-radius:13px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}.photo-editor-actions button:first-child,.photo-editor-download button{border-color:#21d4a273;background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322}.edit-slider{display:grid;gap:7px}.edit-slider span{display:flex;align-items:center;justify-content:space-between;gap:10px}.edit-slider b{font-size:13px;color:#edf5ff}.edit-slider em{font-style:normal;color:#3ae6b3;font-size:12px}.edit-slider input[type=range]{width:100%;accent-color:var(--accent);padding:0;background:transparent;border:0}.photo-editor-download{display:grid;gap:8px;margin-top:4px}.photo-editor-download button:disabled{opacity:.7;cursor:not-allowed}.photo-editor-download small{color:var(--muted);font-size:11px;line-height:1.55}@media(max-width:860px){.photo-editor-body{grid-template-columns:1fr}.photo-editor-preview{min-height:260px}.photo-editor-preview img{max-height:48vh}.photo-editor-controls{grid-template-columns:1fr 1fr}.photo-editor-actions,.photo-editor-download{grid-column:1/-1}}@media(max-width:620px){.edit-photo-button{top:7px;right:7px;padding:7px 9px}.photo-editor-panel{border-radius:18px;padding:12px}.photo-editor-head h2{font-size:20px}.photo-editor-body{gap:12px}.photo-editor-preview{min-height:220px;border-radius:16px}.photo-editor-preview img{max-height:38vh}.photo-editor-controls{grid-template-columns:1fr;border-radius:16px;padding:12px}.photo-editor-actions{grid-template-columns:1fr 1fr}.photo-editor-download button{width:100%}}.download-size-select{border:1px solid var(--line);background:#0d1728;color:var(--text);border-radius:999px;padding:7px 9px;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.download-size-select span{color:var(--muted);font-size:11px}.download-size-select select{border:0;background:transparent;color:var(--text);font:inherit;font-weight:800;outline:0}.download-size-select select option{background:#101d30;color:#eff5ff}.photo-editor-preview{position:relative;overflow:auto}.photo-editor-preview img{transform-origin:center center;transition:transform .18s ease,filter .18s ease}.photo-editor-zoom-tools{position:absolute;z-index:3;right:12px;top:12px;border:1px solid rgba(255,255,255,.22);background:#060e18c7;border-radius:999px;padding:5px;display:flex;align-items:center;gap:6px;box-shadow:0 10px 26px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photo-editor-zoom-tools button{width:31px;height:31px;border:0;border-radius:999px;background:#15253a;color:#eff5ff;display:grid;place-items:center}.photo-editor-zoom-tools span{min-width:44px;text-align:center;font-size:12px;font-weight:800;color:#dffef7}.zoom-slider{border:1px solid rgba(33,212,162,.16);background:#21d4a20d;border-radius:13px;padding:10px}.editor-size{width:100%;justify-content:space-between;border-radius:13px;padding:10px 12px}.editor-size select{text-align:right}@media(max-width:620px){.guest-selection-bar .download-size-select{grid-column:1/-1;justify-content:space-between;border-radius:13px}.download-size-select select{max-width:170px}.photo-editor-zoom-tools{right:8px;top:8px}.photo-editor-zoom-tools button{width:29px;height:29px}.photo-editor-zoom-tools span{min-width:40px}}.guest-cover-qr{position:absolute;z-index:2;right:clamp(14px,3vw,34px);top:50%;transform:translateY(-50%);width:clamp(104px,15vw,164px);padding:9px;border:1px solid rgba(255,255,255,.34);border-radius:18px;background:#070e18c2;box-shadow:0 18px 48px #00000059;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center}.guest-qr-frame{position:relative;border-radius:13px;background:#fff;padding:7px}.guest-cover .guest-qr-code{display:block;width:100%;height:auto;aspect-ratio:auto;max-height:none;object-fit:contain;border-radius:8px}.guest-cover .guest-qr-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:24%;height:auto;aspect-ratio:1;max-height:none;object-fit:cover;border-radius:9px;background:#111;padding:2px;box-shadow:0 0 0 3px #fff}.guest-cover-qr span{display:block;margin-top:7px;color:#eff5ff;font-size:clamp(10px,1.4vw,12px);font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.55)}@media(max-width:760px){.guest-cover-qr{right:12px;top:12px;transform:none;width:clamp(82px,24vw,118px);padding:7px;border-radius:14px}.guest-qr-frame{padding:5px;border-radius:10px}.guest-cover .guest-qr-logo{border-radius:7px;box-shadow:0 0 0 2px #fff}.guest-cover-qr span{margin-top:5px;font-size:10px}.guest-cover-copy{padding-right:0}}@media(max-width:430px){.guest-cover-qr{width:78px}.guest-cover-qr span{display:none}}.preview-theme-panel{margin-top:17px}.theme-workspace{display:grid;grid-template-columns:1.05fr 1fr .8fr;gap:14px;align-items:stretch}.theme-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.theme-presets button{border:1px solid var(--line);background:#0d1728;color:var(--text);border-radius:15px;padding:10px;text-align:left;display:flex;align-items:center;gap:10px}.theme-presets button.active{border-color:#21d4a299;box-shadow:0 0 0 2px #21d4a21f}.theme-swatch{width:42px;height:42px;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff2e;flex:0 0 auto}.theme-presets strong{font-size:12px;line-height:1.35}.theme-colors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.theme-colors label{border:1px solid var(--line);background:#0d1728;border-radius:14px;padding:10px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px}.theme-colors span{font-size:12px;color:var(--muted)}.theme-colors input{width:42px;height:34px;padding:0;border:0;border-radius:9px;background:transparent}.theme-colors code{grid-column:1/-1;color:#b8f7e7;font-size:11px}.theme-mini-preview{border:1px solid rgba(255,255,255,.16);border-radius:18px;background:radial-gradient(circle at 80% 0,rgba(var(--guest-secondary-rgb),.32),transparent 42%),var(--guest-bg);padding:12px;color:var(--guest-text);display:flex;flex-direction:column;justify-content:space-between;min-height:190px;box-shadow:0 16px 44px #0000002e}.mini-cover{border-radius:15px;padding:18px;background:linear-gradient(135deg,rgba(var(--guest-accent-rgb),.24),rgba(var(--guest-secondary-rgb),.18)),var(--guest-panel)}.mini-cover span{display:block;color:var(--guest-accent);font-size:11px;font-weight:800}.mini-cover strong{display:block;margin-top:8px;font-size:24px;line-height:1.05}.mini-action-box{margin-top:12px;border:1px solid rgba(var(--guest-accent-rgb),.24);border-radius:14px;background:color-mix(in srgb,var(--guest-action-box,#0d1728) 88%,transparent);padding:10px;text-align:center}.mini-action-box b{display:block;color:var(--guest-accent);font-size:12px}.mini-action-box span{display:block;margin-top:6px;border-radius:999px;background:rgba(var(--guest-accent-rgb),.14);color:var(--guest-text);font-size:11px;font-weight:800;padding:7px 8px}@media(max-width:1080px){.theme-workspace{grid-template-columns:1fr 1fr}.theme-mini-preview{grid-column:1/-1}}@media(max-width:680px){.preview-theme-panel .panel-head{gap:12px;align-items:flex-start;flex-direction:column}.preview-theme-panel .panel-head .action{width:100%}.theme-workspace,.theme-colors{grid-template-columns:1fr}.theme-presets{grid-template-columns:1fr 1fr}.theme-mini-preview{min-height:170px}}.guest{background:radial-gradient(circle at 84% 2%,rgba(var(--guest-secondary-rgb),.22),transparent 34%),radial-gradient(circle at 10% 18%,rgba(var(--guest-accent-rgb),.16),transparent 30%),var(--guest-bg,#07111d);color:var(--guest-text,#eff5ff);border-radius:24px}.guest .brand strong,.guest .guest-hero h1,.guest .guest-cover-copy h1{color:var(--guest-text,#eff5ff)}.guest .brand small,.guest .scan-message,.guest .face-scanner span{color:color-mix(in srgb,var(--guest-text,#eff5ff) 62%,transparent)}.guest-hero p,.guest-cover-copy p{color:var(--guest-accent,#21d4a2)}.guest .counter{background:rgba(var(--guest-accent-rgb),.14);color:var(--guest-accent,#21d4a2);border:1px solid rgba(var(--guest-accent-rgb),.22)}.guest .guest-cover,.guest .guest-photo-panel,.guest .face-scanner,.guest .guest-selection-bar{background:color-mix(in srgb,var(--guest-panel,#0d1728) 88%,transparent);border-color:rgba(var(--guest-accent-rgb),.16)}.guest .guest-actions button,.guest .scanner-actions button,.guest .download-button{background:rgba(var(--guest-accent-rgb),.12);border-color:rgba(var(--guest-accent-rgb),.28);color:var(--guest-text,#eff5ff)}.guest .guest-grid-toolbar button.active,.guest .guest-selection-bar button.primary{background:linear-gradient(115deg,var(--guest-accent,#21d4a2),var(--guest-secondary,#2b8cff));color:#061321}.guest .guest-photo-card.selected .guest-photo{outline-color:var(--guest-accent,#21d4a2)}.guest .select-photo.selected{background:var(--guest-accent,#21d4a2);border-color:var(--guest-accent,#21d4a2)}.guest-action-box{width:100%;margin:16px auto 0;padding:18px;border:1px solid rgba(var(--guest-accent-rgb),.22);border-radius:22px;background:color-mix(in srgb,var(--guest-action-box,#0d1728) 88%,transparent);box-shadow:0 18px 46px #0000002e;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;gap:14px}.guest-action-box .guest-actions{margin-top:0}.guest-action-box .counter{flex:0 0 auto}.guest-action-box .guest-actions button{min-width:240px}@media(max-width:620px){.guest-action-box{border-radius:18px;padding:12px;align-items:stretch;flex-direction:column}.guest-action-box .guest-actions{margin-top:0}.guest-action-box .guest-actions button{min-width:0}}.theme-launch-panel{margin-top:17px;border:1px solid var(--line);border-radius:18px;background:#0f1a2bb8;box-shadow:var(--shadow);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.theme-launch-panel strong,.theme-launch-panel span{display:block}.theme-launch-panel strong{font-size:15px}.theme-launch-panel span{color:var(--muted);font-size:12px;margin-top:3px}.theme-launch-panel button{border:1px solid rgba(33,212,162,.26);background:#15253a;color:var(--text);border-radius:14px;padding:10px 13px;display:inline-flex;align-items:center;gap:10px;font-weight:800}.theme-launch-panel .theme-swatch{width:34px;height:34px;border-radius:10px}.theme-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;display:grid;place-items:center;padding:clamp(14px,3vw,28px);background:#03080fc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.theme-modal-panel{width:min(1160px,100%);max-height:calc(100svh - 28px);overflow:auto;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#101d30,#0b1524);box-shadow:0 28px 90px #00000073;padding:18px}.theme-modal-panel .panel-head{margin-bottom:14px}.theme-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}@media(max-width:680px){.theme-launch-panel{align-items:stretch;flex-direction:column}.theme-launch-panel button{justify-content:center;width:100%}.theme-modal-panel{border-radius:18px;padding:14px}.theme-modal-actions .action{flex:1}}.app-portal{min-height:100svh;padding:clamp(18px,4vw,44px);background:radial-gradient(circle at 78% 0,rgba(43,140,255,.28),transparent 34%),radial-gradient(circle at 14% 22%,rgba(33,212,162,.18),transparent 30%),#070e18;color:var(--text)}.portal-topbar{max-width:1180px;margin:0 auto 42px;display:flex;align-items:center;justify-content:space-between;gap:16px}.portal-brand .brand-logo{width:52px;height:52px;border-radius:15px;box-shadow:0 0 34px #ffffff2e,0 0 46px #2b8cff29}.portal-brand strong{font-size:24px}.portal-account{max-width:min(390px,52vw)}.portal-hero{max-width:1180px;margin:0 auto 24px}.portal-hero h1{margin:0;font-size:clamp(34px,6vw,64px);line-height:1.02;letter-spacing:-1.2px}.portal-hero span{display:block;max-width:680px;margin-top:14px;color:#a7b6ca;line-height:1.7}.portal-app-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:18px}.portal-app-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#101d30f5,#091422e0);box-shadow:0 26px 90px #0000004d;padding:22px;color:var(--text);text-align:left;min-height:360px}.portal-app-card.active{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.portal-app-card.active:hover{transform:translateY(-3px);border-color:#21d4a26b;box-shadow:0 30px 100px #00000057,0 0 48px #21d4a21a}.portal-card-glow{position:absolute;inset:-40% -25% auto auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(33,212,162,.3),rgba(43,140,255,.15) 45%,transparent 70%);filter:blur(6px);pointer-events:none}.portal-card-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px}.portal-app-logo{width:86px;height:86px;border-radius:24px;background:#101722;display:grid;place-items:center;box-shadow:0 0 42px #ffffff24,0 18px 46px #00000047}.portal-app-logo .brand-logo{width:70px;height:70px;border-radius:20px}.portal-card-body{position:relative;margin-top:42px}.portal-card-body h2{font-size:clamp(42px,7vw,76px);line-height:.95;margin:0 0 10px;letter-spacing:-1.8px}.portal-card-body strong{display:block;font-size:clamp(20px,3vw,31px);line-height:1.25;color:#dffef7}.portal-card-body span{display:block;max-width:650px;margin-top:12px;color:#9fb0c7;line-height:1.7}.portal-card-stats{position:relative;margin-top:28px;display:flex;gap:10px;flex-wrap:wrap}.portal-card-stats span{border:1px solid rgba(255,255,255,.12);background:#ffffff0a;border-radius:999px;padding:9px 13px;color:#a8b9cf;font-size:12px}.portal-card-stats b{color:var(--accent);font-size:16px;margin-right:4px}.portal-open{position:relative;margin-top:24px;width:max-content;border:1px solid rgba(33,212,162,.36);background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322;border-radius:999px;padding:12px 16px;display:flex;align-items:center;gap:8px;font-weight:900}.portal-app-card.placeholder{min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:13px;border-style:dashed;background:#0f1a2b85}.portal-placeholder-icon{width:64px;height:64px;border-radius:18px;background:#15253a;color:#91a8c5;display:grid;place-items:center}.portal-app-card.placeholder h2{margin:0;font-size:25px}.portal-app-card.placeholder span{color:var(--muted);line-height:1.6}@media(max-width:860px){.portal-app-grid{grid-template-columns:1fr}.portal-app-card,.portal-app-card.placeholder{min-height:300px}.portal-card-body{margin-top:34px}}@media(max-width:620px){.app-portal{padding:16px}.portal-topbar{align-items:flex-start;margin-bottom:30px}.portal-account{max-width:none}.portal-account div{display:none}.portal-hero h1{font-size:36px}.portal-hero span{font-size:13px}.portal-app-card{border-radius:22px;padding:18px}.portal-app-logo{width:72px;height:72px;border-radius:20px}.portal-app-logo .brand-logo{width:58px;height:58px;border-radius:17px}.portal-card-body{margin-top:30px}.portal-card-body h2{font-size:52px}.portal-card-body strong{font-size:21px}.portal-open{width:100%;justify-content:center}}.portal-hero{text-align:center;display:grid;justify-items:center;padding:clamp(4px,1.5vw,12px) 0 clamp(8px,2vw,18px)}.portal-hero h1{max-width:12ch;font-size:clamp(44px,8vw,82px);line-height:.98;letter-spacing:0}.portal-hero span{max-width:min(680px,92vw);margin-left:auto;margin-right:auto}@media(max-width:620px){.portal-hero{padding-top:0}.portal-hero h1{font-size:clamp(42px,13vw,58px)}}.dashboard-brand-line{display:flex;align-items:center;gap:12px;min-width:0}.hub-back-button{border:1px solid var(--line);background:#15253a;color:var(--text);border-radius:999px;padding:9px 12px;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;white-space:nowrap}.hub-back-button:hover{border-color:#21d4a26b;color:#dffef7}.portal-app-card.guide-card{min-height:360px;display:flex;flex-direction:column;justify-content:flex-start;gap:12px;border-style:solid;background:linear-gradient(160deg,#0f1a2bc7,#091422f0)}.guide-card h2{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.15}.guide-card>span{color:#a9bad0;line-height:1.7}.portal-guide-list{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:8px}.portal-guide-list li{position:relative;border:1px solid rgba(255,255,255,.09);background:#ffffff0a;border-radius:13px;padding:9px 10px 9px 30px;color:#d9e7f7;font-size:12px;line-height:1.55}.portal-guide-list li:before{content:"";position:absolute;left:12px;top:17px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #21d4a28c}.portal-video-slot{margin-top:auto;border:1px dashed rgba(33,212,162,.32);border-radius:17px;background:#21d4a20f;padding:13px;display:grid;gap:7px}.portal-video-slot strong{color:#dffef7}.portal-video-slot span{color:#94a7c0;font-size:12px;line-height:1.55}.portal-video-slot code{display:block;border:1px solid rgba(33,212,162,.14);background:#07111d;color:#b8f7e7;border-radius:10px;padding:9px;font-size:11px;white-space:normal}@media(max-width:760px){.dashboard-brand-line{gap:8px}.hub-back-button{padding:8px 10px;font-size:11px}.dashboard-brand-line .brand small{display:none}.topbar{gap:10px}.portal-guide-list li{font-size:11px}}@media(max-width:520px){.hub-back-button{width:38px;height:38px;padding:0;justify-content:center}.hub-back-button svg{margin:0}.hub-back-button{font-size:0}.dashboard-brand-line .brand strong{font-size:17px}}.create-retention-toggle{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:#0a1524;border-radius:14px;padding:4px;flex:0 0 auto}.create-retention-toggle button,.retention-options button{border:0;background:transparent;color:var(--muted);border-radius:10px;padding:8px 11px;font-size:12px;font-weight:800;white-space:nowrap}.create-retention-toggle button.active,.retention-options button.active{background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322}.event-retention-panel,.folder-retention-panel{margin-top:17px;border:1px solid rgba(33,212,162,.22);border-radius:18px;background:linear-gradient(135deg,#21d4a214,#0f1a2bcc);box-shadow:var(--shadow);padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.folder-retention-panel{align-items:flex-start;margin-bottom:14px}.folder-retention-panel>div,.retention-copy{display:grid;gap:5px;min-width:0}.folder-retention-panel strong,.retention-copy strong{font-size:15px;line-height:1.45}.folder-retention-panel span,.retention-copy small{color:var(--muted);line-height:1.55;font-size:12px}.retention-copy span{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:12px;font-weight:900;letter-spacing:.3px}.retention-options{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:5px;flex:0 0 auto}.retention-options button:disabled{opacity:.65;cursor:not-allowed}.retention-confirm{background:#15253a!important;color:var(--text)!important;border:1px solid rgba(33,212,162,.24)!important}.retention-confirm:hover{border-color:#21d4a28c!important;color:#dffef7!important}@media(max-width:920px){.event-create{flex-wrap:wrap}.event-create input{min-width:min(260px,100%)}}@media(max-width:680px){.create-retention-toggle{width:100%;display:grid;grid-template-columns:1fr 1fr}.create-retention-toggle button{justify-content:center}.event-retention-panel,.folder-retention-panel{align-items:stretch;flex-direction:column}.retention-options{width:100%;display:grid;grid-template-columns:1fr 1fr}.retention-options button{justify-content:center;padding:10px}.retention-confirm{grid-column:2}.folder-meta small{white-space:normal}}.image-size-panel{margin-top:17px;border:1px solid rgba(43,140,255,.24);border-radius:18px;background:linear-gradient(135deg,#2b8cff17,#0f1a2bd1);box-shadow:var(--shadow);padding:15px 16px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(420px,1.35fr);align-items:center;gap:16px}.image-size-copy{display:grid;gap:5px;min-width:0}.image-size-copy span{display:inline-flex;align-items:center;gap:8px;color:#8eb7ff;font-size:12px;font-weight:900;letter-spacing:.3px}.image-size-copy strong{font-size:15px;line-height:1.45}.image-size-copy small{color:var(--muted);line-height:1.55}.image-size-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.image-size-options button{border:1px solid var(--line);background:#0a1524;color:var(--text);border-radius:15px;padding:11px 12px;display:grid;gap:4px;text-align:left;min-height:70px;cursor:pointer;transition:.16s ease}.image-size-options button b{font-size:13px;line-height:1.25}.image-size-options button span{font-size:11px;line-height:1.35;color:var(--muted)}.image-size-options button:hover{transform:translateY(-1px);border-color:#8eb7ff75}.image-size-options button.active{background:linear-gradient(135deg,#21d4a2f2,#2b8cffe0);color:#041322;border-color:transparent;box-shadow:0 14px 32px #21d4a22e}.image-size-options button.active span{color:#041322b8}.image-size-options button:disabled{opacity:.7;cursor:not-allowed;transform:none}@media(max-width:920px){.image-size-panel{grid-template-columns:1fr}.image-size-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.image-size-panel{padding:14px;align-items:stretch}.image-size-options{grid-template-columns:1fr}.image-size-options button{text-align:center;min-height:64px}}.image-size-launch-panel{margin-top:17px;border:1px solid rgba(43,140,255,.24);border-radius:18px;background:linear-gradient(135deg,#2b8cff17,#0f1a2bd1);box-shadow:var(--shadow);padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.image-size-launch-panel div{display:grid;gap:5px;min-width:0}.image-size-launch-panel strong{font-size:15px;line-height:1.45}.image-size-launch-panel span{color:var(--muted);font-size:12px;line-height:1.55}.image-size-launch-panel button{border:1px solid rgba(43,140,255,.3);background:#15253a;color:var(--text);border-radius:15px;padding:12px 15px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap}.image-size-launch-panel button:hover{border-color:#21d4a26b;color:#dffef7}.image-size-modal-panel{max-width:760px}.image-size-modal-note{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.image-size-modal-options{margin-top:14px}@media(max-width:680px){.image-size-launch-panel{align-items:stretch;flex-direction:column}.image-size-launch-panel button{width:100%}.image-size-modal-options{grid-template-columns:1fr}}.quota-panel{margin-top:17px;border:1px solid rgba(43,140,255,.24);border-radius:18px;background:linear-gradient(135deg,#2b8cff1a,#0f1a2be0);box-shadow:var(--shadow);padding:16px;display:grid;grid-template-columns:minmax(210px,1fr) minmax(220px,1.2fr) minmax(190px,.9fr);align-items:center;gap:15px}.quota-panel.danger{border-color:#ffbe5c66;background:linear-gradient(135deg,#ffbe5c1f,#0f1a2be6)}.quota-copy{display:grid;gap:5px;min-width:0}.quota-copy span{color:var(--accent);font-size:12px;font-weight:900;letter-spacing:.4px}.quota-copy strong{font-size:clamp(18px,2.4vw,25px);line-height:1.15}.quota-copy small,.quota-status small{color:var(--muted);line-height:1.55}.quota-meter{height:14px;border-radius:99px;background:#08131d;border:1px solid var(--line);overflow:hidden}.quota-meter span{display:block;height:100%;min-width:4px;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .25s ease}.quota-panel.danger .quota-meter span{background:linear-gradient(90deg,#f6c85f,#f97316)}.quota-status{display:grid;gap:4px}.quota-status b{font-size:14px}@media(max-width:980px){.quota-panel{grid-template-columns:1fr}.quota-meter{order:3}.quota-status{order:2}}@media(max-width:680px){.quota-panel{padding:14px;border-radius:16px;gap:12px}.quota-copy strong{font-size:20px}}.admin-top-button{border:1px solid rgba(33,212,162,.26);background:#15253a;color:var(--text);border-radius:999px;padding:9px 12px;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:900}.portal-app-card.admin-card{min-height:360px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(150deg,#21d4a221,#0f1a2bf0);border-color:#21d4a247;cursor:pointer}.portal-app-card.admin-card h2{margin:0;font-size:clamp(36px,6vw,58px);line-height:1}.portal-app-card.admin-card strong{font-size:clamp(18px,2.4vw,25px);line-height:1.3;color:#dffef7}.portal-app-card.admin-card>span{color:#a8b9cf;line-height:1.7}.portal-app-card.admin-card .portal-open{margin-top:auto}.admin-page{display:grid;gap:17px}.admin-head{display:flex;align-items:flex-start;gap:17px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#21d4a217,#0f1a2be6);box-shadow:var(--shadow);padding:22px}.admin-head h1{margin:0 0 8px;font-size:clamp(27px,4vw,44px);line-height:1.12}.admin-head span{color:var(--muted);line-height:1.7}.admin-loader{min-height:360px;height:auto}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-stats article,.admin-card{border:1px solid var(--line);border-radius:20px;background:#0f1a2be6;box-shadow:var(--shadow)}.admin-stats article{padding:16px;display:grid;gap:7px}.admin-stats svg{color:var(--accent)}.admin-stats span{color:var(--muted);font-size:12px}.admin-stats strong{font-size:clamp(23px,3vw,34px);line-height:1}.admin-stats small{color:var(--muted);line-height:1.5}.admin-search{border:1px solid var(--line);background:#0d1728;border-radius:16px;padding:8px 12px;display:flex;align-items:center;gap:10px}.admin-search svg{color:var(--muted);flex:0 0 auto}.admin-search input{border:0;background:transparent;padding:8px}.admin-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:17px;align-items:start}.admin-card{padding:18px}.admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.admin-card-head h2{margin:0;font-size:20px}.admin-card-head svg{color:#6fa8ff}.admin-user-list,.package-list,.security-list,.admin-event-table{display:grid;gap:11px}.admin-user{border:1px solid var(--line);background:#0d1728;border-radius:18px;padding:13px;display:grid;gap:12px}.admin-user.blocked{border-color:#ff787847;background:#78232324}.admin-user-main{display:flex;align-items:center;gap:11px;min-width:0}.admin-user-main img,.admin-user-main>span{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--accent),var(--accent2));color:#041322;font-weight:900;flex:0 0 auto}.admin-user-main div{min-width:0}.admin-user-main strong,.admin-user-main span,.admin-user-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-main span,.admin-user-main small{color:var(--muted);font-size:12px;margin-top:3px}.admin-meter{display:grid;gap:7px}.admin-meter div{height:10px;border-radius:99px;background:#07111d;border:1px solid var(--line);overflow:hidden}.admin-meter div span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent2))}.admin-meter small{color:var(--muted)}.admin-controls{display:grid;grid-template-columns:1fr .62fr auto .62fr auto auto;gap:9px;align-items:end}.admin-controls label{display:grid;gap:5px;color:var(--muted);font-size:11px}.admin-controls select,.admin-controls input{width:100%;min-width:0;border:1px solid var(--line);background:#07111d;color:var(--text);border-radius:12px;padding:10px 11px}.admin-controls button,.admin-event-table button{border:1px solid rgba(33,212,162,.22);background:#15253a;color:var(--text);border-radius:12px;padding:10px 12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.admin-controls button.danger,.admin-event-table button.danger{border-color:#ff787847;background:#78232338;color:#ffd4d4}.admin-controls button.allow{border-color:#21d4a247;background:#21d4a21a;color:#dffef7}.package-list article{border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:12px;display:grid;gap:5px}.package-list strong{font-size:14px}.package-list span{color:var(--accent);font-weight:900}.package-list b{font-size:18px}.package-list small,.admin-note{color:var(--muted);line-height:1.55}.admin-note{margin:14px 0 0;font-size:12px}.security-list span{border:1px solid rgba(33,212,162,.15);background:#21d4a20f;border-radius:12px;padding:10px;color:#dffef7;font-size:12px;line-height:1.5}.events-admin{margin-top:0}.admin-event-table article{border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.admin-event-table strong,.admin-event-table span,.admin-event-table small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-event-table span,.admin-event-table small{color:var(--muted);font-size:12px;margin-top:4px}.admin-empty{border:1px dashed var(--line);border-radius:15px;padding:22px;text-align:center;color:var(--muted)}@media(max-width:1180px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-layout{grid-template-columns:1fr}.admin-side{display:grid;grid-template-columns:1fr 1fr;gap:17px}.admin-controls{grid-template-columns:1fr 1fr 1fr}}@media(max-width:720px){.admin-top-button{display:none}.admin-head{flex-direction:column}.admin-head .back-button{width:100%;justify-content:center}.admin-stats,.admin-side{grid-template-columns:1fr}.admin-card{padding:14px;border-radius:17px}.admin-controls{grid-template-columns:1fr 1fr}.admin-controls button{min-height:42px}.admin-controls button.danger,.admin-controls button.allow{grid-column:1/-1}.admin-event-table article{grid-template-columns:1fr}.admin-event-table button{width:100%}.admin-user-main strong,.admin-user-main span,.admin-user-main small,.admin-event-table strong,.admin-event-table span,.admin-event-table small{white-space:normal}.portal-app-card.admin-card{min-height:300px}}.ftp-box-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ftp-box-head div{display:grid;gap:4px;min-width:0}.ftp-box-head span{font-size:11px;color:var(--muted);line-height:1.5}.ftp-box-head button{border:1px solid rgba(33,212,162,.24);background:#15253a;color:var(--text);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;white-space:nowrap}.ftp-recommended{width:100%;border:1px solid rgba(33,212,162,.4);background:linear-gradient(135deg,#21d4a229,#2b8cff14);border-radius:13px;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.ftp-recommended small{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:1.2px}.ftp-recommended code{color:#dffef7;font-size:14px;font-weight:800;word-break:break-all}.ftp-hint{margin:0;border:1px solid rgba(255,190,92,.22);background:#ffbe5c12;border-radius:12px;padding:10px;color:#d4dde9;font-size:11px;line-height:1.65}@media(max-width:560px){.ftp-box-head{flex-direction:column}.ftp-box-head button{width:100%}.ftp-recommended{align-items:flex-start;flex-direction:column}.ftp-recommended code{font-size:13px}}.retention-picker{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:min(520px,100%)}.retention-picker .retention-options{flex:0 1 auto}.retention-custom{border:1px solid var(--line);background:#0d1728;border-radius:15px;padding:5px;display:flex;align-items:center;gap:6px;min-width:230px}.retention-custom span{color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap;padding-left:6px}.retention-custom input{width:92px;min-width:0;border:0;background:transparent;padding:7px 4px;font-size:12px}.retention-custom button{border:0;background:#15253a;color:var(--text);border-radius:10px;padding:8px 10px;font-size:12px;font-weight:900;white-space:nowrap}.qr-export-panel{max-width:1040px}.qr-export-workspace{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(260px,.7fr);gap:18px;align-items:start}.qr-export-preview{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:#07111d;padding:16px;display:grid;place-items:center}.qr-print-card{width:min(390px,100%);aspect-ratio:1/1.414;border-radius:24px;background:radial-gradient(circle at 86% 7%,rgba(33,212,162,.18),transparent 30%),linear-gradient(145deg,#fff,#eef5fb);color:#07111d;padding:34px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 24px 70px #00000052}.qr-print-card strong{font-size:clamp(24px,4vw,34px);line-height:1.12;margin-top:6px;word-break:break-word}.qr-print-card>span{margin-top:14px;color:#21a986;font-size:12px;font-weight:900;letter-spacing:1.1px}.qr-print-card div{margin:32px 0 24px;background:#fff;border-radius:20px;padding:16px;box-shadow:0 12px 34px #07111d2e}.qr-print-card img{display:block;width:min(245px,50vw);height:auto}.qr-print-card b{font-size:24px}.qr-print-card small{margin-top:8px;color:#617086;font-size:15px}.qr-print-card em{margin-top:auto;color:#8793a3;font-style:normal;font-size:12px;line-height:1.5;text-align:center;width:100%;display:block;max-width:240px;align-self:center}.qr-export-controls{display:grid;gap:14px}.qr-export-controls label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:800}.qr-export-controls input{width:100%}.qr-format-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.qr-format-options button{border:1px solid var(--line);background:#0d1728;color:var(--text);border-radius:13px;padding:11px 12px;font-weight:900}.qr-format-options button.active{border-color:#21d4a27a;background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322}.qr-export-controls p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.guest-photo{border:0;padding:0;background:transparent;color:inherit;text-align:left;width:100%;display:block;touch-action:manipulation}.guest-photo-panel{max-height:none;overflow:visible}.guest-grid{grid-auto-flow:dense;align-items:start}.guest-grid .guest-photo-card:nth-child(6n+1){grid-row:span 2}.guest-grid .guest-photo-card:nth-child(6n+1) .guest-photo img{aspect-ratio:4/5}.guest-grid .guest-photo-card:nth-child(6n+3) .guest-photo img{aspect-ratio:1/1}.guest-grid .guest-photo-card:nth-child(6n+5) .guest-photo img{aspect-ratio:5/4}.guest-photo-card{break-inside:avoid}.guest-photo-card .download-button{display:none}.guest-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#02070df0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:grid;place-items:center;touch-action:none}.guest-lightbox-stage{width:100%;height:100%;display:grid;place-items:center;overflow:hidden;touch-action:none}.guest-lightbox-stage img{max-width:100vw;max-height:100svh;object-fit:contain;transition:transform .12s ease;will-change:transform;user-select:none;-webkit-user-select:none}.guest-lightbox-close,.guest-lightbox-nav,.guest-lightbox-tools button{border:1px solid rgba(255,255,255,.18);background:#0a1524c7;color:#eff5ff;border-radius:999px;display:grid;place-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.guest-lightbox-close{position:absolute;right:18px;top:18px;z-index:2;width:44px;height:44px}.guest-lightbox-nav{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:48px;height:48px}.guest-lightbox-nav.prev{left:18px}.guest-lightbox-nav.next{right:18px}.guest-lightbox-tools{position:absolute;left:50%;bottom:18px;transform:translate(-50%);z-index:2;border:1px solid rgba(255,255,255,.16);background:#0a1524c7;border-radius:999px;padding:6px;display:flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.guest-lightbox-tools button{width:34px;height:34px}.guest-lightbox-tools span{color:#eff5ff;font-size:12px;font-weight:800;white-space:nowrap}@media(max-width:920px){.qr-export-workspace{grid-template-columns:1fr}.qr-export-controls{order:-1}.retention-picker{min-width:0;width:100%}.event-create .retention-picker{order:3}.event-create .action:last-child{order:4}}@media(max-width:680px){.retention-picker{display:grid;grid-template-columns:1fr}.retention-picker .retention-options{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;width:100%}.retention-custom{width:100%;display:grid;grid-template-columns:auto 1fr auto}.qr-print-card{border-radius:20px;padding:28px 22px}.qr-print-card img{width:min(220px,58vw)}.guest-grid-3,.guest-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-lightbox-nav{display:none}.guest-lightbox-close{right:12px;top:12px}.guest-lightbox-tools{bottom:12px}}.folder-retention-control{margin-top:8px;width:100%}.folder-retention-control .retention-picker,.event-info .retention-picker{min-width:0;width:100%}.folder-retention-control .retention-options,.event-info .retention-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.folder-retention-control .retention-options button,.event-info .retention-options button{padding:7px 6px;font-size:10px}.theme-presets button{position:relative;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.theme-presets button.active{border-color:var(--preset-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--preset-accent) 34%,transparent),0 0 28px color-mix(in srgb,var(--preset-secondary) 28%,transparent);transform:translateY(-1px)}.theme-presets button.active:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:2px solid var(--preset-accent);box-shadow:0 0 22px color-mix(in srgb,var(--preset-accent) 64%,transparent),inset 0 0 24px color-mix(in srgb,var(--preset-secondary) 24%,transparent);pointer-events:none}.ftp-fields{grid-template-columns:1fr}.ftp-fields span:first-child{border-color:#21d4a259;background:#21d4a20f}.preview-link{position:relative;overflow:hidden;margin-top:4px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(33,212,162,.42);background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322;border-radius:999px;padding:11px 16px;font-size:13px;font-weight:900;box-shadow:0 14px 34px #21d4a229}.preview-link:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);transform:translate(-140%);animation:previewShine 2.6s linear infinite}.preview-link svg,.preview-link{z-index:1}.preview-link svg{position:relative;color:#041322}@keyframes previewShine{to{transform:translate(140%)}}.guest-grid{grid-auto-flow:row;align-items:stretch}.guest-grid .guest-photo-card:nth-child(n){grid-row:auto}.guest-grid .guest-photo-card:nth-child(n) .guest-photo img{aspect-ratio:4/5}.scanner-preview{position:relative;overflow:hidden;border-radius:16px;background:#050b13;aspect-ratio:1}.scanner-preview video,.scanner-preview img{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.scanner-preview img{transform:none}.scan-frame{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:2px solid rgba(33,212,162,.72);border-radius:18px;box-shadow:0 0 0 999px #03080f2e,0 0 24px #21d4a252;pointer-events:none}.scan-frame:before{content:"";position:absolute;left:8%;right:8%;top:10%;height:2px;background:linear-gradient(90deg,transparent,#dffef7,transparent);box-shadow:0 0 16px #21d4a2d9;animation:scanLine 1.65s ease-in-out infinite}.face-scanner.scanning .scan-frame:before{animation-duration:.9s}@keyframes scanLine{0%,to{transform:translateY(0);opacity:.25}50%{transform:translateY(128px);opacity:1}}.guest-lightbox-stage img.slide-left{animation:lightboxSlideLeft .24s ease both}.guest-lightbox-stage img.slide-right{animation:lightboxSlideRight .24s ease both}@keyframes lightboxSlideLeft{0%{opacity:.55;transform:translate(42px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes lightboxSlideRight{0%{opacity:.55;transform:translate(-42px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@media(max-width:680px){.folder-retention-control .retention-options,.event-info .retention-options{grid-template-columns:repeat(2,minmax(0,1fr))}.event-retention-panel{padding:14px}.event-retention-panel .retention-copy strong{font-size:14px}.preview-link{width:100%}.scan-frame:before{animation-name:scanLineMobile}@keyframes scanLineMobile{0%,to{transform:translateY(0);opacity:.25}50%{transform:translateY(170px);opacity:1}}}.account-menu-wrap{position:relative}.account-trigger{border:1px solid var(--line);color:var(--text);cursor:pointer}.account-trigger span{border:0;border-radius:999px;background:#15253a;color:var(--text);padding:7px 10px;font-size:11px;flex:0 0 auto}.account-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:50;width:min(330px,calc(100vw - 24px));border:1px solid var(--line);border-radius:18px;background:#0a1524f5;box-shadow:0 24px 80px #0000006b;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:10px;display:grid;gap:7px}.account-menu-head{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;border-radius:14px;padding:10px}.account-menu-head img,.account-menu-head>span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--accent),var(--accent2));color:#041322;font-weight:900;flex:0 0 auto}.account-menu-head div{min-width:0}.account-menu-head strong,.account-menu-head small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-head small{color:var(--muted);font-size:11px}.account-menu>button,.account-language-row{width:100%;border:1px solid transparent;background:transparent;color:var(--text);border-radius:13px;padding:10px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;text-align:left}.account-menu>button:hover,.account-language-row:hover{border-color:#21d4a22e;background:#21d4a20f}.account-menu b{color:var(--accent);font-size:11px}.account-menu .logout{color:#ffd4d4}.account-language-row div{display:flex;gap:5px}.account-language-row button{border:1px solid var(--line);background:#101d30;color:var(--text);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.account-language-row button.active{border-color:#21d4a280;background:linear-gradient(115deg,var(--accent),#18bcba);color:#041322}.account-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:clamp(12px,3vw,28px);background:#03080fc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.account-panel{width:min(980px,100%);max-height:calc(100svh - 24px);overflow:auto;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,#101d30,#0a1422);box-shadow:0 28px 100px #00000085;padding:18px}.account-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.account-panel-head h2{margin:0;font-size:clamp(24px,3vw,34px)}.account-panel-head span{display:block;color:var(--muted);line-height:1.6}.account-profile-hero{border:1px solid rgba(33,212,162,.18);background:linear-gradient(135deg,#21d4a21f,#2b8cff14);border-radius:20px;padding:16px;display:flex;align-items:center;gap:14px}.account-profile-hero img,.account-profile-hero>span{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--accent),var(--accent2));color:#041322;font-size:26px;font-weight:900;flex:0 0 auto}.account-profile-hero strong,.account-profile-hero span,.account-profile-hero small{display:block}.account-profile-hero strong{font-size:22px}.account-profile-hero span{color:#c8d8ec;word-break:break-all}.account-profile-hero small{margin-top:5px;color:var(--accent);font-weight:900}.account-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.account-summary-grid article{border:1px solid var(--line);background:#0d1728;border-radius:16px;padding:13px;display:grid;gap:7px}.account-summary-grid svg{color:var(--accent)}.account-summary-grid span{color:var(--muted);font-size:12px}.account-summary-grid strong{font-size:20px;word-break:break-word}.account-feature-card{margin-top:12px;border:1px solid var(--line);background:#0d1728;border-radius:18px;padding:15px}.account-feature-card h3{margin:0 0 12px}.account-feature-card ul,.plan-card ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.account-feature-card li,.plan-card li{display:flex;align-items:flex-start;gap:8px;color:#d9e7f7;font-size:13px;line-height:1.45}.account-feature-card li svg,.plan-card li svg{color:var(--accent);flex:0 0 auto;margin-top:2px}.account-panel-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}.plans-panel{width:min(1180px,100%)}.plans-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.plan-card{border:1px solid var(--line);background:#0d1728;border-radius:18px;padding:14px;display:grid;gap:10px}.plan-card.active{border-color:#21d4a28c;box-shadow:0 0 0 2px #21d4a21f,0 18px 48px #21d4a214}.plan-card div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.plan-card strong{font-size:15px}.plan-card div span{border-radius:999px;background:#21d4a224;color:var(--accent);padding:4px 7px;font-size:10px;font-weight:900}.plan-card b{font-size:22px}.plan-card em{font-style:normal;color:#8eb7ff;font-weight:900}.plan-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.qr-print-card em{text-align:center;width:100%;max-width:240px;display:block;align-self:center}.guest{height:100svh;max-height:100svh;overflow:hidden;display:flex;flex-direction:column}.guest.camera-open{height:auto;max-height:none;min-height:100svh;overflow:visible}.guest-header,.guest-cover,.guest-hero,.face-scanner,.guest-selection-bar{flex:0 0 auto}.guest-cover{margin-top:0}.guest-hero.compact{padding-bottom:18px}.guest-photo-panel{flex:1 1 auto;min-height:0;overflow:auto;max-height:none;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.guest.camera-open .guest-photo-panel{max-height:52svh;min-height:180px}.guest.camera-open .face-scanner{scroll-margin-top:12px}.guest.camera-open .scanner-preview{width:min(240px,100%);justify-self:center}@media(max-width:1180px){.plans-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.account-menu{position:fixed;right:12px;top:76px}.account-panel{border-radius:18px;padding:14px}.account-summary-grid,.plans-grid{grid-template-columns:1fr}.account-profile-hero{align-items:flex-start}.account-panel-actions .action{flex:1}.guest{padding:12px}.guest-cover img{max-height:26svh}.guest.camera-open .guest-cover img{max-height:22svh}.guest-hero{padding:12px 8px 14px}.guest.camera-open .guest-hero{padding:10px 8px 12px}.guest-photo-panel{max-height:none}.guest.camera-open .face-scanner{padding:10px;gap:10px}.guest.camera-open .scanner-preview{width:min(220px,72vw)}}@media(max-width:520px){.account-trigger div{display:none}.account-trigger span{font-size:0;width:34px;height:34px;padding:0;display:grid;place-items:center}.account-trigger span:after{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:8px 0 0 var(--accent),-8px 0 0 var(--accent)}.account-menu{top:70px}.account-profile-hero{display:grid;text-align:center;justify-items:center}.account-panel-head{align-items:center}.account-panel-head h2{font-size:24px}}.guest.has-selection .guest-cover img{max-height:22svh}.guest.has-selection .guest-hero{padding-top:8px;padding-bottom:10px}.guest.has-selection .guest-action-box{padding:11px;margin-top:10px}.guest.has-selection .guest-grid-toolbar{margin-top:10px}.guest.has-selection .guest-selection-bar{position:relative;top:auto;flex:0 0 auto;margin-bottom:8px;padding:9px}.guest.has-selection .guest-photo-panel{flex:1 1 auto;min-height:42svh;max-height:none}@media(max-width:760px){.guest.has-selection .guest-cover img{max-height:20svh}.guest.has-selection .guest-action-box{gap:8px}.guest.has-selection .guest-grid-toolbar{transform:scale(.9);transform-origin:center top;margin-bottom:-4px}.guest.has-selection .guest-photo-panel{min-height:46svh;padding:8px}.guest.has-selection .guest-selection-bar strong{font-size:13px}.guest.has-selection .guest-selection-bar button{padding:10px 9px}}.guest .guest-cover,.guest .guest-hero,.guest .guest-header{transition:opacity .32s ease,transform .32s ease,max-height .32s ease,margin .32s ease,padding .32s ease}.guest.preview-focus .guest-cover{opacity:0;max-height:0;margin:0;transform:translateY(-42px);pointer-events:none;border-width:0}.guest.preview-focus .guest-cover img{max-height:0}.guest.preview-focus .guest-header{opacity:.22;transform:translateY(-8px);padding-bottom:8px}.guest.preview-focus .guest-hero{padding:0 8px 8px;max-height:62px}.guest.preview-focus .guest-action-box{display:none}.guest.preview-focus .guest-grid-toolbar{margin-top:2px;transform:scale(.86);transform-origin:center top}.guest.preview-focus .scan-message{margin-top:4px;font-size:12px}.guest.preview-focus .guest-photo-panel{min-height:0;flex:1 1 auto;max-height:none;padding:10px;position:relative}.guest-focus-back{position:fixed;left:14px;top:calc(env(safe-area-inset-top,0px) + 12px);z-index:20;border:1px solid rgba(255,255,255,.22);background:#0a1524d1;color:#eff5ff;border-radius:999px;padding:10px 13px;display:inline-flex;align-items:center;gap:7px;font-weight:900;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 34px #00000040}.guest-scan-fab{position:fixed;right:clamp(18px,5vw,42px);bottom:calc(env(safe-area-inset-bottom,0px) + 22px);z-index:18;width:56px;height:56px;border-radius:50%;border:1px solid rgba(var(--guest-accent-rgb),.45);background:linear-gradient(135deg,var(--guest-accent,#21d4a2),var(--guest-secondary,#2b8cff));color:#041322;display:grid;place-items:center;box-shadow:0 16px 46px #00000057,0 0 28px rgba(var(--guest-accent-rgb),.25);touch-action:none;cursor:grab}.guest-scan-fab:active{cursor:grabbing;transform:scale(.96)}@media(max-width:760px){.guest.preview-focus .guest-header{max-height:48px;padding-bottom:4px}.guest.preview-focus .guest-grid-toolbar{margin-bottom:-8px}.guest.preview-focus .guest-photo-panel{padding:8px}.guest-focus-back{left:10px;top:calc(env(safe-area-inset-top,0px) + 8px);padding:9px 11px}.guest-scan-fab{width:54px;height:54px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 16px)}}.portal-app-card.quote-card{cursor:pointer;background:radial-gradient(circle at 88% 10%,rgba(217,178,93,.22),transparent 28%),linear-gradient(145deg,#141416fa,#080e18f0);border-color:#d9b25d47;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.portal-app-card.quote-card:hover{transform:translateY(-3px);border-color:#d9b25d85;box-shadow:0 30px 100px #00000061,0 0 52px #d9b25d1f}.quote-logo{background:linear-gradient(145deg,#fbf3df,#d8aa52);color:#111216}.quote-app{min-height:100svh;background:radial-gradient(circle at 86% -8%,rgba(217,178,93,.18),transparent 34%),linear-gradient(135deg,#08090d,#15181f 48%,#f7f3ea 48.1%,#f7f3ea);color:#111216;padding:clamp(14px,3vw,28px)}.quote-topbar{max-width:1480px;margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(217,178,93,.28);background:#0d0f14e0;color:#f7f2e8;border-radius:22px;padding:12px 14px;box-shadow:0 20px 70px #00000038;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.quote-topbar .brand small{color:#cbbd9d}.quote-topbar .brand-logo{box-shadow:0 0 0 1px #d9b25d3d}.quote-state{border:1px solid rgba(217,178,93,.38);background:#d9b25d1f;color:#f6d992;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1px}.quote-state.accepted{border-color:#21d4a26b;background:#21d4a224;color:#7df4cd}.quote-layout{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr);gap:18px;align-items:start}.quote-builder,.quote-preview-shell{border:1px solid rgba(22,24,31,.12);background:#ffffffd1;border-radius:24px;box-shadow:0 24px 80px #00000024;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.quote-builder{padding:18px;display:grid;gap:15px;position:sticky;top:14px;max-height:calc(100svh - 28px);overflow:auto}.quote-builder-head h1{font-size:clamp(28px,3.2vw,44px);line-height:1.05;margin:0 0 8px;color:#111216}.quote-builder-head span{display:block;color:#5c6472;line-height:1.65;font-size:13px}.quote-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quote-form-grid label,.quote-textarea{display:grid;gap:6px;color:#6b7280;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.6px}.quote-form-grid input,.quote-form-grid select,.quote-textarea textarea,.quote-items-editor input{width:100%;min-width:0;border:1px solid rgba(18,24,35,.12);background:#fff;color:#111827;border-radius:12px;padding:11px 12px;font-size:13px;outline:none}.quote-form-grid input:focus,.quote-form-grid select:focus,.quote-textarea textarea:focus,.quote-items-editor input:focus{border-color:#d9b25db3;box-shadow:0 0 0 3px #d9b25d24}.quote-textarea textarea{min-height:92px;resize:vertical;text-transform:none;letter-spacing:0;font-weight:500;line-height:1.6}.quote-items-editor{display:grid;gap:10px}.quote-items-editor>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.quote-items-editor strong{font-size:15px;color:#111216}.quote-items-editor button,.quote-builder-actions button{border:1px solid rgba(18,24,35,.12);background:#111216;color:#f7f2e8;border-radius:12px;padding:9px 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:900;font-size:12px}.quote-items-editor article{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(150px,1.3fr) 72px 96px 42px;gap:8px;align-items:center;border:1px solid rgba(18,24,35,.1);background:#faf8f2;border-radius:15px;padding:9px}.quote-items-editor article button{width:38px;height:38px;padding:0;background:#fff4f4;color:#b42323;border-color:#b4232333}.quote-builder-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.quote-builder-actions button:first-child{background:linear-gradient(115deg,#d8aa52,#f3d788);color:#111216}.quote-preview-shell{padding:clamp(12px,2vw,22px);overflow:auto}.quote-document{width:min(920px,100%);margin:auto;background:#fff;color:#111216;border-radius:24px;overflow:hidden;box-shadow:0 28px 90px #0000002e;border:1px solid rgba(18,24,35,.1)}.quote-cover{min-height:330px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(24px,4vw,42px);color:#fff}.quote-cover>div{display:flex;align-items:center;gap:12px}.quote-cover .brand-logo{width:48px;height:48px;border-radius:14px}.quote-cover span{font-size:15px;font-weight:900;color:#f5db9b}.quote-cover h2{font-size:clamp(42px,6vw,78px);line-height:.95;letter-spacing:-1.8px;margin:70px 0 10px}.quote-cover p{margin:0;color:#e9d9b6;font-size:14px;letter-spacing:2px;text-transform:uppercase;font-weight:900}.quote-meta-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#111216;color:#f7f2e8}.quote-meta-row div{padding:17px;background:#17191f}.quote-meta-row span,.quote-info-grid .eyebrow{display:block;color:#d8aa52;font-size:10px;letter-spacing:1.7px;font-weight:900}.quote-meta-row strong{display:block;margin-top:6px;font-size:15px;word-break:break-word}.quote-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px;background:#faf8f2}.quote-info-grid section{border:1px solid rgba(18,24,35,.1);background:#fff;border-radius:18px;padding:18px}.quote-info-grid h3{margin:4px 0 6px;font-size:24px}.quote-info-grid span{color:#69707d;line-height:1.55}.quote-table{padding:22px;display:grid;gap:0}.quote-table-head,.quote-table-row{display:grid;grid-template-columns:minmax(0,1.55fr) .36fr .55fr .55fr;gap:12px;align-items:center}.quote-table-head{border-radius:14px;background:#111216;color:#f7f2e8;padding:12px 14px;font-size:12px;font-weight:900}.quote-table-row{border-bottom:1px solid rgba(18,24,35,.1);padding:14px}.quote-table-row b,.quote-table-row small{display:block}.quote-table-row b{font-size:14px}.quote-table-row small{color:#747b86;margin-top:4px;line-height:1.45}.quote-table-row>span:not(:first-child){font-weight:800;text-align:right}.quote-summary{margin:0 22px 22px;border-radius:20px;background:linear-gradient(135deg,#111216,#2b261b);color:#f7f2e8;padding:20px;display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:12px;align-items:center}.quote-summary span{display:block;color:#d8aa52;font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.quote-summary strong{display:block;margin-top:6px;font-size:clamp(30px,4vw,46px);line-height:1}.quote-summary b{display:block;margin-top:6px;font-size:22px}.quote-deliverables,.quote-terms,.quote-accept-box{margin:0 22px 22px;border:1px solid rgba(18,24,35,.1);border-radius:20px;padding:19px;background:#fff}.quote-deliverables h3,.quote-terms h3{margin:0 0 12px;font-size:20px}.quote-deliverables ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quote-deliverables li{display:flex;gap:8px;align-items:flex-start;color:#343a45;line-height:1.55}.quote-deliverables svg{color:#d2a246;flex:0 0 auto;margin-top:3px}.quote-terms p{margin:8px 0 0;color:#5f6671;line-height:1.7}.quote-accept-box{background:#fbf8ef;border-color:#d9b25d57;display:grid;gap:14px}.quote-accept-box label{display:flex;align-items:center;gap:10px;font-weight:900;line-height:1.5}.quote-accept-box input{width:18px;height:18px;flex:0 0 auto;accent-color:#d8aa52}.quote-accept-box div{display:flex;gap:10px;flex-wrap:wrap}.quote-accept-box button,.quote-accept-box a{border:1px solid rgba(18,24,35,.13);background:#111216;color:#f7f2e8;border-radius:999px;padding:11px 15px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px}.quote-accept-box button:first-child{background:linear-gradient(115deg,#d8aa52,#f3d788);color:#111216;border:0}.quote-accept-box a{background:#06c755;color:#041322;border:0}@media(max-width:1120px){.quote-layout{grid-template-columns:1fr}.quote-builder{position:relative;top:auto;max-height:none}.quote-preview-shell{overflow:visible}}@media(max-width:720px){.quote-app{padding:10px;background:linear-gradient(180deg,#08090d 0,#111216 24%,#f7f3ea 24.1%,#f7f3ea)}.quote-topbar{border-radius:18px;align-items:flex-start}.quote-topbar .brand small{display:none}.quote-state{font-size:10px;padding:8px 10px}.quote-form-grid{grid-template-columns:1fr}.quote-items-editor article{grid-template-columns:1fr 1fr}.quote-items-editor article input:nth-child(1),.quote-items-editor article input:nth-child(2){grid-column:1/-1}.quote-items-editor article button{width:100%;grid-column:1/-1}.quote-document{border-radius:18px}.quote-cover{min-height:260px}.quote-cover h2{font-size:42px;margin-top:46px}.quote-meta-row,.quote-info-grid,.quote-summary{grid-template-columns:1fr}.quote-table{padding:14px}.quote-table-head{display:none}.quote-table-row{grid-template-columns:1fr 1fr;border:1px solid rgba(18,24,35,.1);border-radius:14px;margin-bottom:10px}.quote-table-row>span:first-child{grid-column:1/-1}.quote-deliverables,.quote-terms,.quote-accept-box,.quote-summary{margin-left:14px;margin-right:14px}.quote-deliverables ul{grid-template-columns:1fr}.quote-accept-box div{display:grid}.quote-accept-box button,.quote-accept-box a{width:100%}}@media print{body{background:#fff!important}.quote-app{padding:0;background:#fff;color:#111216}.quote-topbar,.quote-builder{display:none!important}.quote-layout{display:block;max-width:none}.quote-preview-shell{border:0;box-shadow:none;padding:0;background:#fff}.quote-document{width:100%;box-shadow:none;border:0;border-radius:0}.quote-cover{border-radius:0}.quote-accept-box button,.quote-accept-box a{display:none}}.quote-upload-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quote-upload-actions button{border:1px solid rgba(217,178,93,.25);background:#111216;color:#f7f2e8;border-radius:13px;padding:11px 12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px}.quote-theme-controls{border:1px solid rgba(18,24,35,.1);background:#faf8f2;border-radius:15px;padding:12px;display:grid;gap:10px}.quote-theme-controls strong{color:#111216}.quote-theme-controls>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quote-theme-controls button{border:1px solid rgba(18,24,35,.12);background:#fff;color:#111216;border-radius:12px;padding:9px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:900}.quote-theme-controls button.active{border-color:#d8aa52b3;box-shadow:0 0 0 3px #d8aa5229}.quote-theme-controls i{width:24px;height:24px;border-radius:7px;box-shadow:inset 0 0 0 1px #ffffff3d;flex:0 0 auto}.quote-theme-controls label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;color:#6b7280;font-size:12px;font-weight:900}.quote-theme-controls input[type=color]{width:46px;height:34px;border:0;background:transparent;padding:0}.quote-document.quote-one-page{width:min(980px,100%);aspect-ratio:210/297;border-radius:0;background:#fff;display:flex;flex-direction:column;overflow:hidden;font-size:12px;line-height:1.35}.quote-sheet-hero{height:24%;display:grid;grid-template-columns:50% 50%;background:var(--quote-cover-bg,#111216);color:#fff;position:relative;overflow:hidden}.quote-sheet-hero:before{content:"";position:absolute;z-index:1;top:-12%;bottom:-12%;left:calc(50% - 92px);width:132px;background:linear-gradient(135deg,var(--quote-cover-bg,#111216),color-mix(in srgb,var(--quote-cover-bg,#111216) 78%,#000));transform:skew(-13deg);transform-origin:center;pointer-events:none}.quote-hero-copy{padding:28px 38px;display:flex;flex-direction:column;justify-content:center;gap:12px;background:linear-gradient(135deg,var(--quote-cover-bg,#111216),color-mix(in srgb,var(--quote-cover-bg,#111216) 78%,#000));z-index:3;position:relative}.quote-studio-mark{display:flex;align-items:center;gap:13px;color:var(--quote-cover-text,#d8aa52);position:relative;z-index:2}.quote-studio-mark img{width:48px;height:48px;object-fit:contain;border-radius:8px}.quote-studio-mark strong{display:block;font-size:22px;letter-spacing:1.5px;text-transform:uppercase;color:var(--quote-cover-text,#d8aa52)}.quote-studio-mark span{display:block;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:color-mix(in srgb,var(--quote-cover-text,#d8aa52) 78%,#fff)}.quote-hero-copy h2{margin:10px 0 0;font-family:Georgia,serif;font-size:48px;line-height:.92;color:var(--quote-cover-text,#d8aa52);font-weight:500;letter-spacing:.4px;word-break:break-word}.quote-hero-copy h3{margin:0;font-size:24px;color:#fff;position:relative;z-index:2}.quote-hero-copy dl{margin:4px 0 0;display:grid;gap:7px;position:relative;z-index:4}.quote-hero-copy dl div{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}.quote-hero-copy dt{color:#fff;font-weight:700}.quote-hero-copy dd{margin:0;border-left:1px solid color-mix(in srgb,var(--quote-cover-text,#d8aa52) 44%,transparent);padding-left:14px;font-weight:900}.quote-hero-copy dd b{display:inline-block;border-radius:999px;background:linear-gradient(115deg,var(--quote-cover-accent,#d8aa52),color-mix(in srgb,var(--quote-cover-accent,#d8aa52) 65%,#fff));color:#111216;padding:4px 12px;font-size:10px;position:relative;z-index:5}.quote-hero-photo{position:relative;overflow:hidden}.quote-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.94) sepia(.08);transform-origin:center center}.quote-contact-strip{height:4%;display:grid;grid-template-columns:1fr 1fr 1.35fr 1.35fr;gap:8px;align-items:center;padding:0 28px;border-bottom:1px solid #ece4d8;color:#111216;font-weight:600}.quote-contact-strip span{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quote-contact-strip svg{color:#111216;flex:0 0 auto}.quote-sheet-grid{height:19%;display:grid;grid-template-columns:2fr .96fr;gap:14px;padding:16px 28px 0}.quote-card-block,.quote-total-card,.quote-service-table,.quote-benefit-stack>div,.quote-sheet-footer>div{border:1px solid #eadfce;border-radius:14px;background:#fff;box-shadow:0 10px 30px #1112160f}.quote-client-block{display:grid;grid-template-columns:.88fr 1.12fr;gap:18px;padding:18px}.quote-client-block>div:first-child{border-right:1px solid #eadfce;padding-right:18px}.quote-client-block h4,.quote-total-card h4,.quote-service-table h4,.quote-benefit-stack h4,.quote-sheet-footer h4{margin:0 0 12px;font-size:16px;color:#1d1f25}.quote-client-block strong{display:block;font-size:18px;margin-bottom:9px}.quote-client-block span{display:block;color:#333b48;margin-top:7px}.quote-client-block p{display:grid;grid-template-columns:86px 1fr;margin:0;padding:5px 0;border-bottom:1px solid #eee7dc}.quote-client-block b{font-weight:800}.quote-client-block p span{margin:0}.quote-total-card{background:linear-gradient(145deg,#111216,#1b1d22);color:#fff;padding:18px}.quote-total-card h4{color:#fff}.quote-total-card p,.quote-total-card strong{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.1)}.quote-total-card span{color:#f0e4ce}.quote-total-card strong{color:#d8aa52;font-size:20px;line-height:1.15}.quote-total-card strong span{font-size:13px;color:#d8aa52}.quote-sheet-body{height:32%;display:grid;grid-template-columns:2fr .96fr;gap:14px;padding:12px 28px 0}.quote-service-table{overflow:hidden}.quote-service-table h4{padding:14px 16px 8px}.quote-service-head,.quote-service-row{display:grid;grid-template-columns:1.05fr 1.6fr .42fr .58fr .58fr;align-items:center}.quote-service-head{background:#111216;color:#fff;font-weight:900;font-size:11px}.quote-service-head span,.quote-service-row span{padding:9px 10px;border-right:1px solid #eadfce}.quote-service-row{min-height:50px;border-bottom:1px solid #eadfce}.quote-service-row span:first-child{font-weight:800}.quote-service-row span:nth-child(n+3){text-align:center}.quote-service-table small{display:block;padding:14px 16px;color:#111216}.quote-benefit-stack{display:block}.quote-benefit-stack>div{height:auto;min-height:72%;padding:16px 18px}.quote-benefit-stack ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}.quote-benefit-stack li{display:flex;align-items:flex-start;gap:8px;color:#333b48}.quote-benefit-stack svg{color:#c49a4d;flex:0 0 auto;margin-top:2px}.quote-sheet-footer{height:12%;display:grid;grid-template-columns:1.15fr .85fr;gap:14px;padding:12px 28px 0}.quote-sheet-footer>div{padding:15px;overflow:hidden}.quote-sheet-footer p{margin:0 0 3px;color:#394150;line-height:1.45}.quote-sheet-footer label{margin-top:8px;display:flex;gap:8px;align-items:center;font-weight:900}.quote-sheet-footer input{width:15px;height:15px;accent-color:#c49a4d;flex:0 0 auto}.quote-sheet-footer .quote-contact-card{padding:13px 20px 14px;display:flex;flex-direction:column;justify-content:flex-start;gap:3px}.quote-contact-card h4{margin:0 0 6px;font-size:15px;line-height:1.15}.quote-contact-card p{margin:0;color:#394150;line-height:1.28;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.quote-contact-card p:first-of-type{font-weight:900;color:#1d1f25;font-size:12px}.quote-cover-adjust-panel{width:min(1040px,100%)}.quote-cover-adjust-preview{position:relative;overflow:hidden;border-radius:22px;border:1px solid rgba(134,162,200,.24);background:#07111d;aspect-ratio:21/6;min-height:260px}.quote-cover-adjust-preview img{display:block;width:100%;height:100%;object-fit:cover;transform-origin:center center}.quote-cover-adjust-fade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#111216 0%,rgba(17,18,22,.9) 26%,rgba(17,18,22,.38) 50%,transparent 72%);pointer-events:none}@media(max-width:680px){.quote-cover-adjust-preview{aspect-ratio:16/8;min-height:190px;border-radius:16px}}.quote-sheet-actions{height:3.5%;display:grid;grid-template-columns:1fr 1fr .8fr 1fr;gap:12px;padding:10px 72px 0}.quote-sheet-actions button,.quote-sheet-actions a{border:1px solid #c7a15a;border-radius:7px;background:#111216;color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px}.quote-sheet-actions button:first-child{background:linear-gradient(115deg,#c49a4d,#e1bf72);color:#111216;border:0}.quote-sheet-actions button.jpg{background:linear-gradient(115deg,#28d27d,#18b997);color:#041322;border:0}.quote-sheet-actions a{background:#fff;color:#111216;border-color:#babec7}.quote-sheet-footnote{height:2%;display:flex;align-items:flex-end;justify-content:center;gap:34px;padding-bottom:2px;font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#111216}@media(max-width:1120px){.quote-document.quote-one-page{width:min(860px,100%)}}@media(max-width:720px){.quote-upload-actions{grid-template-columns:1fr}.quote-preview-shell{padding:8px;overflow:auto}.quote-document.quote-one-page{width:980px;max-width:none}.quote-preview-shell:before{content:"เลื่อนซ้าย-ขวาเพื่อดูใบเสนอราคาเต็มหน้า";display:block;color:#5f6671;font-size:12px;margin:0 0 8px;text-align:center}}@media print{@page{size:A4 portrait;margin:0}.quote-document.quote-one-page{width:210mm;height:297mm;aspect-ratio:auto;font-size:10px}.quote-preview-shell:before{display:none}.quote-sheet-actions,.quote-topbar,.quote-builder{display:none!important}.quote-layout{display:block}.quote-preview-shell{padding:0!important;overflow:visible!important}.quote-app{padding:0!important}.quote-document.quote-one-page{page-break-inside:avoid;break-inside:avoid}}@media print{.quote-document.quote-one-page,.quote-document.quote-one-page *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.quote-hero-photo img{display:block!important}}
