@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;src:url(/static/media/plus-jakarta-sans-cyrillic-ext-400-normal.048f216a8f5b51504c72.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-cyrillic-ext-400-normal.995a2c8b0527adb81930.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;src:url(/static/media/plus-jakarta-sans-vietnamese-400-normal.218c4ebfb100ffd08de5.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-vietnamese-400-normal.082a9efae1575b7e5cdb.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;src:url(/static/media/plus-jakarta-sans-latin-ext-400-normal.dc5105c710e3f0e44527.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-ext-400-normal.c06cb4c03c26a7678ebf.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;src:url(/static/media/plus-jakarta-sans-latin-400-normal.9eb2a7e5bc8f2a766ae0.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-400-normal.39dc22001ff1af8e8e63.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;src:url(/static/media/plus-jakarta-sans-cyrillic-ext-500-normal.ada8bcf77a78b6860a69.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-cyrillic-ext-500-normal.0b54dc9280618ab6d8bf.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;src:url(/static/media/plus-jakarta-sans-vietnamese-500-normal.78866e972d33708ff5c4.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-vietnamese-500-normal.62b852ab4e9a0da24549.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;src:url(/static/media/plus-jakarta-sans-latin-ext-500-normal.245f570d620186eb75de.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-ext-500-normal.b24ebd0e2189a6f3de6e.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;src:url(/static/media/plus-jakarta-sans-latin-500-normal.c3130315dfec99bb0ed9.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-500-normal.8a9190408d7e1bed4037.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;src:url(/static/media/plus-jakarta-sans-cyrillic-ext-600-normal.e1e17320580c3cad3aa8.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-cyrillic-ext-600-normal.74481467a66cf872b337.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;src:url(/static/media/plus-jakarta-sans-vietnamese-600-normal.55c541f7115083f109bf.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-vietnamese-600-normal.bd81d25531b1bca47345.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;src:url(/static/media/plus-jakarta-sans-latin-ext-600-normal.af76dcd276e513d38e54.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-ext-600-normal.aec63264a135be5577a2.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;src:url(/static/media/plus-jakarta-sans-latin-600-normal.7720d76571fb9da9b24d.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-600-normal.e325f4412a7e729d6b5d.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;src:url(/static/media/plus-jakarta-sans-cyrillic-ext-700-normal.a0e96d83baf4846fa06c.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-cyrillic-ext-700-normal.065a21d81ca5fd55db3d.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;src:url(/static/media/plus-jakarta-sans-vietnamese-700-normal.3324f0f46acd113732ad.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-vietnamese-700-normal.4afaf4101421ae4d954c.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;src:url(/static/media/plus-jakarta-sans-latin-ext-700-normal.0e89f5417d170640ff70.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-ext-700-normal.569e414c40b3345e8bc6.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;src:url(/static/media/plus-jakarta-sans-latin-700-normal.7cfa130160f3e032639f.woff2) format("woff2"),url(/static/media/plus-jakarta-sans-latin-700-normal.2e44f76d305aa4275801.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.swal2-container{z-index:1500!important}:root{--bg:#fff;--text:#333;--muted:#666;--accent:#c73866;--accent-light:#fd8f52;--accent-soft:#ffe8f0;--panel-bg:#fff8fb;--panel-border:#f3d6e0;--danger:#ff3b30}*{box-sizing:border-box}body{background:#fff;color:#333;color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}.site-shell{display:flex;flex-direction:column;min-height:100vh}.site-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-bottom:1px solid #eee;display:flex;height:72px;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:10}.site-brand-title{color:#222;font-size:1.2rem;font-weight:800}.site-actions{align-items:center;display:flex;gap:10px}.primary-cta,.site-launch-btn,.site-login-btn{border:1px solid #0000;border-radius:10px;cursor:pointer;font-weight:700;padding:9px 14px;text-decoration:none}.site-login-btn{background:#fff;border-color:#f2cad6;color:#c73866;color:var(--accent)}.primary-cta,.site-launch-btn{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);color:#fff}.site-main{flex:1 1}.site-footer{background:#fff;border-top:1px solid #eee;color:#666;font-size:.9rem;padding:16px 24px}.landing-hero{background:linear-gradient(145deg,#fff4f8,#fff8ef);border:1px solid #fde3eb;border-radius:24px;margin:24px auto 0;padding:clamp(24px,5vw,56px);width:min(1040px,calc(100% - 40px))}.landing-hero .eyebrow{color:#c73866;color:var(--accent);font-weight:700}.landing-hero h1{color:#2b2b2b;font-size:clamp(1.8rem,4vw,2.8rem);margin:8px 0 12px}.landing-hero p{max-width:760px}.landing-cta-row{margin-top:22px}.join-event-wrap{margin:24px auto;width:min(980px,calc(100% - 28px))}.join-event-card{background:linear-gradient(145deg,#fff6fb,#fff8ef);border:1px solid #f4d7e2;border-radius:16px;box-shadow:0 10px 24px #c943701a;padding:22px}.join-event-card h1{margin:0}.join-event-subtitle{margin:6px 0 16px}.join-section-glass{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff1a;border-radius:14px;display:flex;gap:12px;padding:16px 18px}.join-section-card,.join-section-glass{background:#ffffff12;margin-bottom:12px}.join-section-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff1a;border-radius:16px;padding:18px 18px 14px}.join-section-header{align-items:center;color:#ffffffe0;display:flex;font-size:.9rem;font-weight:700;gap:7px;margin-bottom:14px}.join-section-note{color:#ffffff4d;font-size:.72rem;font-style:italic;font-weight:400;margin-left:auto}.required-badge{color:#f48fb1!important;font-style:normal!important;font-weight:600!important}.join-mode-toggle{background:#ffffff12;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:4px;margin-bottom:12px;padding:4px}.join-mode-toggle button{background:#0000;border:none;border-radius:9px;color:#ffffff73;cursor:pointer;flex:1 1;font-family:inherit;font-size:.86rem;font-weight:600;line-height:1.3;padding:11px 12px;transition:all .2s ease}.join-mode-toggle button.active{background:#fffffff2;box-shadow:0 2px 10px #00000038;color:#c73866}.join-submit-cta{background:linear-gradient(135deg,#c73866,#fd8f52);border:none;border-radius:14px;box-shadow:0 4px 22px #c7386661;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:1.02rem;font-weight:800;letter-spacing:.02em;margin-top:16px;padding:15px;transition:all .2s ease;width:100%}.join-submit-cta:hover:not(:disabled){box-shadow:0 6px 28px #c7386685;transform:translateY(-1px)}.join-submit-cta:disabled{cursor:not-allowed;opacity:.58;transform:none}.code-action-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}.request-mode-switch{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0 18px}.request-mode-switch button{background:#ffffff12;border:1px solid #ffffff1f;border-radius:8px;color:#ffffff80;cursor:pointer;font-family:inherit;font-size:.84rem;font-weight:700;padding:8px 12px}.request-mode-switch button.active{background:#c7386640;border-color:#c7386699;color:#f48fb1}.field-label{color:#ffffffa6;display:block;font-weight:700;margin-bottom:6px}.centered-label{text-align:center}.invite-code-input{background:#ffffff0f;border:1.5px solid #d9789659;border-radius:12px;box-sizing:border-box;caret-color:#fff;color:#fff;display:block;font-family:inherit;font-size:1.6rem;font-weight:800;letter-spacing:.32em;margin:8px auto 0;padding:14px 10px;text-align:center;width:100%}.invite-code-input::placeholder{color:#ffffff2e;font-size:1.3rem;font-weight:400;letter-spacing:.22em}.invite-code-input:focus{background:#ffffff17;border-color:#d97896b3;box-shadow:0 0 0 3px #c738662e;outline:none}.scan-qr-btn{border-color:#d97896!important;color:#922f4f!important;display:flex!important;font-weight:700!important;margin:10px auto 0!important;width:fit-content}.qr-scanner-frame{aspect-ratio:1;background:#111;border-radius:12px;overflow:hidden;position:relative;width:100%}.qr-scanner-video{display:block;height:100%;object-fit:cover;width:100%}.qr-scanner-target{border:3px solid #ffffffeb;border-radius:14px;box-shadow:0 0 0 999px #0000002e;inset:18%;pointer-events:none;position:absolute}.qr-image-upload-row{display:flex;justify-content:center;margin-top:14px}.qr-image-upload-row input{display:none}.section-heading{color:#8f2949;font-size:1.1rem;margin:18px 0 10px}.details-row{display:flex;gap:10px}.join-input{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;box-sizing:border-box;caret-color:#fff;color:#fff;display:block;flex:1 1;font:inherit;font-size:.9rem;min-width:0;padding:10px 12px;width:100%}.join-input::placeholder{color:#ffffff47}.join-input option{background:#0d1b3e;color:#fff}.join-input:focus{border-color:#d97896a6;box-shadow:0 0 0 3px #c738662e;outline:none}.join-notes-input{line-height:1.45;margin-top:10px;resize:vertical}.join-notes-input,.pr-form-input{display:block;font:inherit;width:100%}.pr-form-input{background:#fff;border:1px solid #00000026;border-radius:8px;box-sizing:border-box;caret-color:#2b2530;color:#2b2530;flex:1 1;font-size:.9rem;min-width:0;padding:10px 12px}.pr-form-input::placeholder{color:#00000059}.pr-form-input:focus{border-color:#c73866a6;box-shadow:0 0 0 3px #c738662e;outline:none}.pr-notes-input{display:block;font:inherit;line-height:1.45;margin-top:10px;resize:vertical;width:100%}.upload-placeholder{align-items:center;background:#fff;border:2px dashed #dba0b6;border-radius:12px;cursor:pointer;display:flex;justify-content:center;min-height:220px;overflow:hidden}.upload-placeholder input{display:none}.upload-placeholder-text{align-items:center;color:#8b5a6c;display:flex;flex-direction:column;gap:5px}.reference-preview{display:block;max-height:320px;max-width:100%;object-fit:contain}.request-photos-btn{border:none;display:block;margin-top:14px;width:100%}.join-event-agenda-card{margin-top:14px}.event-found-card{align-items:center;background:#fff;border:1px solid #e5c8d5;border-radius:10px;display:flex;gap:10px;justify-content:space-between;margin:4px 0 16px;padding:10px 14px}.bulk-toggle-btn{align-items:center;background:none;border:none;border-top:1px solid #ffffff14;color:#ffffff59;cursor:pointer;display:flex;font-family:inherit;font-size:.88rem;font-weight:600;gap:6px;padding:14px 0;width:100%}.bulk-toggle-btn:hover{color:#fff9}.bulk-upload-panel{border-top:1px solid #f1d4df;margin-top:24px;padding-top:18px}.bulk-upload-drop{align-items:center;background:#ffffff0a;border:2px dashed #ffffff24;border-radius:12px;color:#ffffffb3;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:120px;padding:16px;text-align:center}.bulk-upload-drop input{display:none}.bulk-upload-drop span{color:#fff6;font-size:.9rem}.bulk-file-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.bulk-file-list span{background:#ffffff14;border:1px solid #ffffff1a;border-radius:999px;color:#ffffffa6;font-size:.82rem;padding:5px 9px}.bulk-progress-wrap{grid-gap:6px;color:#ffffff80;display:grid;font-size:.86rem;gap:6px;margin-top:12px}.join-section-card .selfie-capture-area{background:#ffffff0a;border-color:#ffffff1f}.join-section-card .selfie-upload-icon-btn{background:#ffffff14;border-color:#ffffff26;color:#ffffff8c}.join-section-card .selfie-upload-icon-btn:hover{background:#ffffff24;border-color:#ffffff4d}.join-section-card .selfie-capture-hint{color:#ffffff47}.join-section-card .selfie-change-btn{background:#ffffff14;border-color:#ffffff26;color:#fff9}.join-section-card .selfie-change-btn:hover{background:#ffffff24}.join-section-card .selfie-preview-block{background:#ffffff0a}.markdown-content{color:#3b3035;line-height:1.58}.markdown-content h3,.markdown-content h4,.markdown-content h5{margin:14px 0 8px}.markdown-content p{margin:8px 0}.markdown-content ul{margin:8px 0;padding-left:22px}.markdown-content code{background:#fff1f6;border:1px solid #f2d7e1;border-radius:5px;padding:1px 5px}.join-section-card .markdown-content{color:#ffffffb3}.join-section-card .markdown-content h3,.join-section-card .markdown-content h4,.join-section-card .markdown-content h5{color:#ffffffe0}.join-section-card .markdown-content a{color:#90caf9}.join-section-card .markdown-content code{background:#ffffff14;border-color:#ffffff26;color:#ffffffd9}.event-agenda-preview{background:#fff;border:1px solid #f2d7e1;border-radius:8px;padding:12px}.join-status{color:#7a3f55;margin-top:10px;min-height:20px}.page{margin:0 auto;padding:20px 0 24px;width:min(1300px,calc(100% - 24px))}.page>header{background:linear-gradient(145deg,#fff4f8,#fffaf3);border:1px solid #f8dde7;border-radius:16px;box-shadow:0 8px 26px #c7386614;margin-bottom:16px;padding:16px 18px}h1{color:#202124;font-size:clamp(1.65rem,2.4vw,2.5rem);letter-spacing:.01em;margin:0 0 8px}.page p{color:#5f6368;margin:0}.top-stats{align-items:center;color:#444;display:flex;gap:10px;margin-top:10px}.stat-value{font-weight:700}.status{color:#666;color:var(--muted)}.status.error{color:#ff3b30;color:var(--danger)}.viewer-container{display:flex;gap:14px;margin-bottom:14px;min-height:0}.slider-section{flex:7 1;min-width:0}@media (max-width:900px){.slider-section{scroll-margin-top:132px}}@media (max-width:560px){.slider-section{scroll-margin-top:116px}}.slider-wrapper{background:linear-gradient(155deg,#fff9fc,#fff6ef);border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 10px 24px #c943701a;display:flex;flex-direction:column;height:100%;padding:14px}.main-photo-wrapper{align-items:center;aspect-ratio:16/9;background:radial-gradient(circle at 20% 20%,#fff4fa 0,#f8f3ff 100%);border:1px solid #eddbe4;border-radius:10px;display:flex;flex:1 1;height:auto;justify-content:center;max-height:560px;min-height:0;overflow:hidden;position:relative;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%}.main-photo-wrapper.preview-swiping .main-photo{transition:opacity 80ms ease}.preview-swipe-btn{align-items:center;background:#1e191c75;border:1px solid #ffffffa6;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:2.3rem;height:64px;justify-content:center;line-height:1;opacity:.86;position:absolute;top:50%;transform:translateY(-50%);transition:background .15s ease,opacity .15s ease,transform .15s ease;width:46px;z-index:5}.preview-swipe-btn:hover{background:#c73866db;opacity:1;transform:translateY(-50%) scale(1.04)}.preview-swipe-btn-left{left:12px}.preview-swipe-btn-right{right:12px}.main-photo{cursor:pointer;height:100%;object-fit:contain;width:100%}.main-overlay{inset:0;pointer-events:none;position:absolute}.face-overlay{border:2px solid #c73866f2;border-radius:6px;box-shadow:inset 0 0 0 1px #ffffffbf;position:absolute}.face-overlay-clickable{cursor:pointer;pointer-events:auto;transition:border-color .15s,background .15s}.face-overlay-clickable:hover{background:#ff980026;border-color:#ff9800}.regroup-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}.regroup-modal{background:#fff;border-radius:14px;box-shadow:0 8px 40px #0003;max-height:88vh;max-width:95vw;overflow-y:auto;padding:24px;position:relative;width:540px}.modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.1rem;line-height:1;padding:4px;position:absolute;right:14px;top:14px}.modal-close-btn:hover{color:#333}.modal-title{color:#222;font-size:1.1rem;font-weight:700;margin:0 0 16px}.modal-section-title{color:#888;font-size:.75rem;font-weight:700;letter-spacing:.06em;margin:0 0 8px;text-transform:uppercase}.modal-group-picker-list{display:flex;flex-wrap:wrap;gap:8px;max-height:210px;overflow-y:auto;padding:2px 0}.modal-group-option{align-items:center;background:#fff;border:2px solid #e8e0e4;border-radius:10px;color:#444;cursor:pointer;display:flex;flex-direction:column;font-size:.75rem;gap:5px;max-width:120px;min-width:70px;padding:8px 10px;transition:border-color .15s,background .15s}.modal-group-option small{color:#777;font-size:.68rem;max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-current-name{color:#666;font-size:.82rem;margin:6px 0 0}.group-name-text{align-items:center;color:#333;display:flex;flex:1 1;font-size:.9rem;font-weight:600;min-height:32px}.group-name-text.empty{color:#888;font-weight:500}.group-count-toggle{background:#0000;border:0;color:#c73866;color:var(--accent);cursor:pointer;display:inline-flex;font:inherit;font-size:.82rem;font-weight:700;padding:2px 0;text-decoration:underline;text-underline-offset:3px;width:fit-content}.group-count-toggle.expanded,.group-count-toggle:hover{color:#8f2949}.group-face-preview-panel{border-bottom:1px solid #efcfdb;border-top:1px solid #efcfdb;margin:10px 0 12px;padding:10px 0}.group-face-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.group-face-crop{background:#fff8fb;border:1px solid #ead5de;border-radius:8px;color:#7a3f55;cursor:pointer;font-size:.72rem;font-weight:800;min-width:78px;padding:4px;width:78px}.group-face-crop canvas{background:#f4eef2;border-radius:6px;display:block;height:68px;object-fit:cover;width:68px}.group-face-crop span{display:block;line-height:1;margin-top:3px}.group-face-crop.selected,.group-face-crop:hover{border-color:#c73866;border-color:var(--accent);box-shadow:0 0 0 2px #c738661f}.group-face-photo-preview{margin-top:8px}.group-face-photo-frame{align-items:center;background:#111;border:1px solid #ead5de;border-radius:10px;display:flex;height:220px;justify-content:center;overflow:hidden;position:relative;width:100%}.group-face-photo-frame img{display:block;height:100%;object-fit:contain;width:100%}.group-face-photo-box{background:#ff980024;border:2px solid #ff9800;border-radius:5px;pointer-events:none;position:absolute}.group-face-photo-caption{color:#6f6873;font-size:.76rem;margin-top:5px;overflow-wrap:anywhere}.group-face-empty{background:#fff8fb;border-radius:8px;color:#8f6b78;font-size:.82rem;margin:8px 0 10px;padding:8px 10px}.modal-group-option.selected,.modal-group-option:hover{background:#ffe8f0;background:var(--accent-soft);border-color:#c73866;border-color:var(--accent)}.modal-group-option.selected{font-weight:600}.modal-group-option img{border-radius:50%;height:46px;object-fit:cover;width:46px}.modal-apply-all{align-items:center;color:#444;cursor:pointer;display:flex;font-size:.875rem;gap:8px;margin:14px 0 4px;-webkit-user-select:none;user-select:none}.modal-error{background:#ffebee;color:#c62828}.modal-error,.modal-info{border-radius:6px;font-size:.85rem;margin:10px 0 0;padding:8px 12px}.modal-info{background:#e8f3ff;color:#24527a}.modal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.modal-memory-header{align-items:center;display:flex;justify-content:space-between;margin-top:16px}.reload-memory-btn{background:none;border:1px solid #c73866;border:1px solid var(--accent);border-radius:6px;color:#c73866;color:var(--accent);cursor:pointer;font-size:.72rem;padding:3px 9px;transition:background .15s;white-space:nowrap}.reload-memory-btn:hover:not(:disabled){background:#ffe8f0;background:var(--accent-soft)}.reload-memory-btn:disabled{cursor:not-allowed;opacity:.5}.memory-face-no-thumb{align-items:center;background:#ede8f0;border-radius:50%;display:flex;flex-shrink:0;font-size:1.3rem;height:46px;justify-content:center;width:46px}.clipboard-panel{background:#fff;border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-bottom:none;border-radius:12px 12px 0 0;bottom:0;box-shadow:0 -4px 24px #c738661a,0 -1px 6px #0000000f;font-size:.875rem;left:24px;position:fixed;width:340px;z-index:1350}.clipboard-header{align-items:center;background:none;border:none;border-radius:12px 12px 0 0;color:#333;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;padding:10px 14px;text-align:left;width:100%}.clipboard-header:hover{background:#ffe8f0;background:var(--accent-soft)}.clipboard-chevron{color:#888;font-size:.8rem}.clipboard-body{border-top:1px solid #f3d6e0;border-top:1px solid var(--panel-border);max-height:260px;overflow-y:auto}.clipboard-empty{color:#999;font-size:.82rem;padding:12px 14px}.clipboard-item{align-items:center;border-bottom:1px solid #f8f0f4;display:flex;gap:8px;padding:8px 12px}.clipboard-item:last-child{border-bottom:none}.clipboard-item-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.clipboard-item-label{color:#333;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clipboard-item-count{color:#999;font-size:.72rem}.clipboard-item-actions{display:flex;flex-shrink:0;gap:4px}.clipboard-paste-btn{background:#fff;border:1px solid #c73866;border:1px solid var(--accent);border-radius:5px;color:#c73866;color:var(--accent);cursor:pointer;font-size:.72rem;padding:3px 8px;transition:background .12s;white-space:nowrap}.clipboard-paste-btn:hover:not(:disabled){background:#ffe8f0;background:var(--accent-soft)}.clipboard-paste-btn:disabled{cursor:not-allowed;opacity:.38}.clipboard-paste-all-btn{background:#fff;border:1px solid #c8bcc3;border-radius:5px;color:#555;cursor:pointer;font-size:.72rem;padding:3px 8px;transition:background .12s;white-space:nowrap}.clipboard-paste-all-btn:hover:not(:disabled){background:#f5f0f3}.clipboard-paste-all-btn:disabled{cursor:not-allowed;opacity:.38}.clipboard-delete-btn{background:none;border:none;border-radius:5px;color:#bbb;cursor:pointer;font-size:.8rem;padding:2px 6px;transition:color .12s,background .12s}.clipboard-delete-btn:hover{background:#fff0f0;color:#ff3b30;color:var(--danger)}.autosave-pill{align-items:center;border-radius:99px;display:inline-flex;font-size:.75rem;font-weight:500;padding:3px 10px;transition:background .2s,color .2s;white-space:nowrap}.autosave-pill.idle{background:#f3f3f3;color:#999}.autosave-pill.saving{background:#fff8e1;color:#b88a00}.autosave-pill.saved{background:#e8f5e9;color:#2e7d32}.face-label{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border-radius:999px;color:#fff;font-size:.78rem;font-weight:700;left:0;padding:2px 8px;position:absolute;top:-24px;white-space:nowrap}.slider-nav{align-items:center;gap:16px;padding-top:12px}.active-filter-bar,.slider-nav{display:flex;justify-content:center}.active-filter-bar{padding-top:8px}.active-filter-bar .clear-btn{font-size:.85rem;padding:6px 14px}.photo-counter-input{background:#0000;border:none;border-bottom:1px dashed #0000;color:inherit;font:inherit;margin:0;outline:none;padding:0;pointer-events:auto;text-align:right}.photo-counter-input:focus,.photo-counter-input:hover{border-bottom-color:initial}.viewer-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding-top:10px}.viewer-action-btn{align-items:center;display:inline-flex;font-size:.85rem;gap:6px;padding:8px 14px}.viewer-action-btn.cast-active{background:#c73866;background:var(--accent);border-color:#c73866;border-color:var(--accent);color:#fff}.viewer-action-gap{background:#edc6d5;height:28px;width:1px}.share-divider{align-items:center;color:#b76e87;display:flex;font-size:.78rem;font-weight:700;gap:10px;letter-spacing:.08em;margin:14px 0 4px;text-transform:uppercase;width:100%}.share-divider:after,.share-divider:before{background:#edc6d5;content:"";flex:1 1;height:1px}.share-actions{padding-top:4px}.nav-btn{background:#c73866;background:var(--accent);border:1px solid #f2cad6;border-radius:50%;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:700;height:42px;transition:transform .15s ease,box-shadow .2s ease;width:42px}.nav-btn:hover{box-shadow:0 6px 14px #c7386640;transform:translateY(-1px)}.panel-section{background:linear-gradient(155deg,#fff8fb,#fff7f0);background:linear-gradient(155deg,var(--panel-bg) 0,#fff7f0 100%);border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 10px 24px #c943701a;display:flex;flex:3 1;flex-direction:column;max-height:620px;max-width:420px;min-width:300px;padding:14px}.panel-section h2{color:#8f2949;font-size:1.1rem;margin:0 0 10px}.group-search{background:#fff;border:1px solid #edc5d4;border-radius:8px;color:#3a3a3a;margin-bottom:10px;padding:9px 10px;width:100%}.group-search:focus{border-color:#d97896;box-shadow:0 0 0 3px #c7386629;outline:none}.request-picker{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr;margin-bottom:10px}.request-picker-label{color:#7a3f55;font-size:.85rem}.request-select{background:#fff;border:1px solid #edc5d4;border-radius:8px;color:#3a3a3a;padding:9px 10px;width:100%}.request-select:focus{border-color:#d97896;box-shadow:0 0 0 3px #c7386629;outline:none}.group-list{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto}.group-expander{background:#fff;border:1px solid #f0cfdb;border-radius:8px;padding:4px}.group-expander summary{list-style:none}.group-expander summary::-webkit-details-marker{display:none}.expander-toggle{background:#0000;border:none;color:#9b3a58;cursor:pointer;font-weight:700;padding:4px;text-align:left;width:100%}.group-empty{color:#8f8f8f;font-size:.9rem;padding:8px}.group-item{background:linear-gradient(145deg,#fff7fb,#fff);border:1px solid #f2d7e1;border-radius:8px;padding:10px}.group-row-top{align-items:center;display:flex;gap:8px;margin-bottom:8px}.group-label{color:#922f4f;font-weight:700;min-width:24px}.group-thumb-btn{background:#fff;border:1px solid #efccda;border-radius:8px;cursor:pointer;height:34px;overflow:hidden;padding:0;width:34px}.group-thumb-btn img{height:100%;object-fit:cover;width:100%}.group-check-wrap{align-items:center;cursor:pointer;display:inline-flex;justify-content:center;margin-left:auto;position:relative}.group-check{opacity:0;pointer-events:none;position:absolute}.group-check-ui{background:#fff;border:2px solid #dba0b6;border-radius:6px;height:24px;position:relative;transition:all .18s ease;width:24px}.group-check:checked+.group-check-ui{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border-color:#c73866;border-color:var(--accent)}.group-check:checked+.group-check-ui:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:12px;left:7px;position:absolute;top:3px;transform:rotate(45deg);width:6px}.group-input{background:#fff;border:1px solid #efcbd9;border-radius:6px;box-sizing:border-box;color:#2b2b2b;padding:7px 10px;width:100%}.group-name-save-row{align-items:center;display:flex;gap:8px;margin-top:8px}.group-name-save-row .group-input{margin-top:0}.group-name-inline-save{flex:0 0 auto;padding:7px 12px}.group-input:focus{border-color:#d97896;box-shadow:0 0 0 3px #c7386624;outline:none}.group-count{color:#7a7a7a;font-size:.78rem}.panel-actions{display:flex;gap:8px;margin-top:10px}.match-mode-toggle{align-items:center;color:#7a3f55;cursor:pointer;display:flex;font-size:.94rem;font-weight:600;gap:10px;margin-top:10px}.match-mode-toggle input{opacity:0;pointer-events:none;position:absolute}.match-mode-ui{background:#fff;border:2px solid #dba0b6;border-radius:7px;flex-shrink:0;height:26px;position:relative;transition:all .18s ease;width:26px}.match-mode-toggle input:checked+.match-mode-ui{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border-color:#c73866;border-color:var(--accent)}.match-mode-toggle input:checked+.match-mode-ui:after{border:solid #fff;border-width:0 2px 2px 0;content:"";height:12px;left:8px;position:absolute;top:4px;transform:rotate(45deg);width:6px}.clear-btn,.save-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-weight:700;padding:10px 12px}.save-btn{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);color:#fff}.clear-btn{background:#fff;border-color:#edc6d5;color:#975167}.save-status{color:#7a7a7a;font-size:.9rem;margin-top:8px;min-height:18px}.thumb-section{align-items:center;background:linear-gradient(145deg,#fff9fc,#fff4eb);border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:12px;box-shadow:0 8px 20px #c9437014;display:flex;gap:8px;overflow-x:auto;padding:10px}.thumbnail{background:#0000;border:2px solid #0000;border-radius:6px;cursor:pointer;flex-shrink:0;height:64px;opacity:.75;overflow:hidden;padding:0;width:88px}.thumbnail.active{border-color:#c73866;border-color:var(--accent);box-shadow:0 0 0 2px #c7386629;opacity:1}.thumbnail.selected{border-color:#007bff;box-shadow:0 0 0 2px #007bff29;opacity:1}.thumbnail img{height:100%;object-fit:cover;width:100%}.thumb-skeleton{animation:thumb-shimmer 1.2s linear infinite;background:linear-gradient(90deg,#e0e0e0 25%,#efefef 50%,#e0e0e0 75%);background-size:200% 100%;border-radius:4px;height:100%;width:100%}@keyframes thumb-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.thumb-jump{background:#fff;border:1px solid #edc5d4;border-radius:8px;color:#975167;cursor:pointer;flex-shrink:0;padding:8px 10px}.thumb-view-toggle{padding:2px}.thumb-group-view{width:100%}.thumb-group-section{margin-bottom:10px}.thumb-group-section:last-child{margin-bottom:0}.thumb-group-divider{align-items:center;background:#9751670f;border:none;border-radius:6px;color:#975167;cursor:pointer;display:flex;font-size:.78rem;font-weight:600;justify-content:flex-start;letter-spacing:.02em;margin:6px 0;padding:6px 0 6px 10px;transition:background .15s ease;width:100%}.thumb-group-divider:hover{background:#9751671f}.thumb-group-row{width:100%}.map-photos-section{background:linear-gradient(145deg,#fff9fc,#fff4eb);border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:12px;box-shadow:0 8px 20px #c9437014;margin-top:16px;padding:12px}.map-section-top{justify-content:space-between;margin-bottom:10px}.map-section-top,.map-tabs-row{align-items:center;display:flex;gap:8px}.map-tabs,.map-tabs-row{flex-wrap:wrap}.map-tabs{display:flex;gap:8px}.map-tab-btn{background:#fff;border:1px solid #edc6d5;border-radius:8px;color:#975167;cursor:pointer;font-weight:700;padding:8px 12px}.auto-populate-all-progress{grid-gap:6px;color:#7a3f55;display:grid;font-size:.86rem;gap:6px;margin:0 0 12px}.map-tab-btn.active{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border-color:#c73866;border-color:var(--accent);color:#fff}.map-requests-layout{display:flex;gap:10px;min-height:240px}.request-menu{background:#fff;border:1px solid #efcfdb;border-radius:10px;display:flex;flex-direction:column;gap:6px;min-width:170px;overflow-y:auto;padding:8px;width:20%}.request-menu-item{background:#fff9fc;border:1px solid #f0d3de;border-radius:8px;color:#7f3e55;cursor:pointer;font-weight:600;padding:8px 10px;text-align:left}.request-menu-item.active{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border-color:#c73866;border-color:var(--accent);color:#fff}.request-details{background:#fff;border:1px solid #efcfdb;border-radius:10px;padding:12px;width:80%}.request-details h3{color:#8f2949;margin:0 0 10px}.request-detail-layout{align-items:flex-start;display:flex;gap:16px}.request-photo-preview-wrap{align-items:center;background:#fff8fb;border:1px dashed #e2b9c8;border-radius:10px;display:flex;flex:0 0 25%;justify-content:center;margin-bottom:0;min-height:150px;overflow:hidden;width:25%}.request-photo-col{display:flex;flex:0 0 25%;flex-direction:column;width:25%}.request-photo-col .request-photo-preview-wrap{flex:1 1 auto;width:100%}.request-detail-right{display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-width:0}.request-photo-loader{align-items:center;display:flex;justify-content:center;min-height:150px}.request-photo-error{color:#8f8f8f;font-size:.86rem}.request-photo-preview{display:block;max-height:220px;object-fit:contain;width:100%}.circle-color-preview-wrap{align-items:center;background:#fff8fb;border:1px dashed #e2b9c8;border-radius:10px;display:flex;justify-content:center;margin-bottom:0;min-height:150px;width:25%}.circle-color-preview{border:4px solid #fff;border-radius:50%;box-shadow:0 8px 18px #7f3e552e;height:86px;width:86px}.request-detail-grid{grid-gap:8px 14px;color:#5f6368;display:grid;gap:8px 14px;grid-template-columns:1fr 1fr;width:100%}.request-detail-grid>div{min-width:0;overflow-wrap:anywhere;word-break:break-word}.request-detail-wide{grid-column:1/-1}.requester-chip{align-items:center;background:#f8fafc;border:1px solid #d8dee9;border-radius:999px;color:#334155;display:inline-flex;font-weight:700;gap:8px;margin-left:6px;min-height:28px;padding:4px 10px;vertical-align:middle}.requester-chip small{color:#64748b;font-size:.76rem;font-weight:600}.requester-chip.public{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.requester-chip.private{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.requester-chip.guest{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.request-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.share-method-row{width:100%}.share-method-btn{display:flex;flex:1 1;min-width:0}.share-method-btn .MuiButton-root{width:100%}.share-method-btn .MuiButton-root.Mui-disabled .MuiButton-startIcon .whatsapp-icon{color:#25d366}.action-btn-ai{background:linear-gradient(135deg,#c73866,#fd8f52)!important;background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%)!important;color:#fff!important;font-weight:700}.action-btn-accent{border-color:#c73866!important;border-color:var(--accent)!important;color:#c73866!important;color:var(--accent)!important;font-weight:600}.action-btn-danger{font-weight:600}.request-detail-dialog .MuiDialog-container{align-items:flex-end}.request-detail-dialog .MuiDialog-paper{background:#fff9fc;border-radius:16px 16px 0 0;bottom:0;display:flex;flex-direction:column;left:0;margin:0;max-height:none;max-width:100%;position:fixed;right:0;top:132px;width:100%}@media (max-width:560px){.request-detail-dialog .MuiDialog-paper{top:116px}}.request-detail-dialog-header{align-items:center;background:#fff;border-bottom:1px solid #efcfdb;border-radius:16px 16px 0 0;display:flex;flex:0 0 auto;gap:8px;padding:10px 12px}.request-detail-dialog-body{flex:1 1 auto;overflow-y:auto;padding:12px}.request-detail-dialog-body .request-details{border:none;padding:0}.request-detail-dialog-body .request-details h3{display:none}.request-action-status{color:#7a3f55;font-size:.9rem;margin-top:8px;min-height:18px}.suggested-photos-strip{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px}.suggested-photo-item{background:#fff;border:1px solid #efcfdb;border-radius:8px;cursor:pointer;flex-shrink:0;height:62px;overflow:hidden;padding:0;width:86px}.suggested-photo-item img{display:block;height:100%;object-fit:cover;width:100%}.selection-tracks{display:flex;flex-direction:column;gap:14px;margin-top:12px}.selection-track{background:#fff9fc;border:1px solid #efcfdb;border-radius:12px;padding:10px 12px}.track-title-group{align-items:center;display:flex;gap:6px;min-width:0}.track-reorder-btns{display:flex;flex-direction:row;flex-shrink:0;gap:1px}.icon-btn-tiny{align-items:center;background:#0000;border:none;border-radius:4px;color:#c9a3b3;cursor:pointer;display:inline-flex;font-size:.6rem;height:18px;justify-content:center;line-height:1;width:16px}.icon-btn-tiny:hover:not(:disabled){background:#fff0f6;color:#7a3f55}.icon-btn-tiny:disabled{cursor:default;opacity:.3}.selection-track-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.track-label{color:#7a3f55;font-size:.9rem}.track-label-edit,.track-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px;min-width:0}.track-label-cancel,.track-label-save,.track-rename-btn{background:#fff;border:1px solid #efcfdb;border-radius:999px;color:#7a3f55;cursor:pointer;font-size:.76rem;font-weight:700;padding:3px 8px}.track-label-cancel:hover,.track-label-save:hover,.track-rename-btn:hover{background:#fff0f6}.track-label-input{border:1px solid #efcfdb;border-radius:8px;color:#5f2338;font-weight:700;height:30px;max-width:260px;min-width:140px;padding:0 8px}.track-meta{color:#8f8f8f;font-size:.8rem;margin-left:8px}.track-actions{align-items:center;display:flex;gap:8px}.icon-btn{align-items:center;background:#fff;border:1px solid #efcfdb;border-radius:8px;color:#7a3f55;cursor:pointer;display:inline-flex;height:32px;justify-content:center;line-height:1;width:32px}.icon-btn:hover{border-color:#d97896}.suggested-photo-wrap{position:relative}.remove-photo-btn{background:#fff;border:1px solid #efcfdb;border-radius:999px;color:#7a3f55;cursor:pointer;height:22px;line-height:1;position:absolute;right:-6px;top:-6px;width:22px}.remove-photo-btn:hover{border-color:#d97896}.hint-text{color:#8f8f8f;font-size:.85rem;margin-top:8px}.toast-stack{bottom:14px;display:flex;flex-direction:column;gap:10px;max-width:min(420px,calc(100vw - 28px));position:fixed;right:14px;z-index:9999}.toast{background:#fff;border:1px solid #efcfdb;border-radius:12px;box-shadow:0 10px 22px #00000014;color:#7a3f55;font-size:.95rem;overflow:hidden;padding:10px 12px}.toast-row{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.toast-message{line-height:1.25}.toast-close{background:#fff9fc;border:1px solid #efcfdb;border-radius:10px;color:#7a3f55;cursor:pointer;height:28px;line-height:1;width:28px}.toast-close:hover{border-color:#d97896}.toast-progress{animation-fill-mode:forwards;animation-name:toast-progress;animation-timing-function:linear;background:#c7386640;height:3px;margin-top:8px;transform-origin:left}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-success{background:#f4fffa;border-color:#cfe9d7;color:#1e6a3e}.toast-error{background:#fff3f7;border-color:#f1c4d1;color:#8f2949}.toast-info{background:#fff9fc;border-color:#efcfdb;color:#7a3f55}.split-btn{align-items:stretch;display:inline-flex;position:relative}.split-btn-main{background:#fff;border:1px solid #edc6d5;border-bottom-right-radius:0;border-top-right-radius:0;color:#975167;font-size:.85rem;padding:8px 14px}.split-btn-main:hover:not(:disabled){background:#fff4f8;border-color:#d97896}.split-btn-arrow{background:#fff;border:1px solid #edc6d5;border-bottom-left-radius:0;border-left:none;border-top-left-radius:0;color:#975167;font-size:.85rem;padding:0;width:36px}.split-btn-arrow:hover:not(:disabled){background:#fff4f8;border-color:#d97896}.split-menu{background:#fff;border:1px solid #efcfdb;border-radius:12px;box-shadow:0 10px 22px #00000014;max-height:min(280px,60vh);max-width:calc(100vw - 32px);min-width:200px;overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:999}.split-menu-up{bottom:calc(100% + 6px);top:auto}.split-menu-item{background:#0000;border:0;border-radius:10px;color:#7a3f55;cursor:pointer;font-weight:600;padding:10px;text-align:left;width:100%}.split-menu-item:hover:not(:disabled){background:#fff4f8}.split-menu-item.disabled,.split-menu-item:disabled{color:#c9a8b6;cursor:not-allowed}.split-menu-submenu{position:relative}.split-menu-parent{align-items:center;display:flex;gap:14px;justify-content:space-between}.split-submenu{background:#fff;border:1px solid #efcfdb;border-left:2px solid #f3d3de;border-radius:12px;box-shadow:none;display:none;margin-top:6px;max-height:160px;min-width:0;overflow-x:hidden;overflow-y:auto;padding:6px;position:static;width:100%}.split-menu-submenu:focus-within .split-submenu,.split-menu-submenu:hover .split-submenu{display:block}.thumb-context-menu{position:fixed;right:auto;top:auto}.map-circles-empty,.request-empty{color:#8f8f8f}.cross-picker-dialog .MuiDialog-paper{border-radius:16px;max-width:420px;width:100%}.cross-picker-header{align-items:center;border-bottom:1px solid #f5e3ea;display:flex;gap:6px;padding:12px 14px}.cross-picker-body{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;overflow:hidden;padding:12px 14px}.cross-picker-search{flex:none}.cross-picker-list{display:flex;flex:1 1;flex-direction:column;gap:6px;max-height:360px;min-height:0;overflow-y:auto}.cross-picker-item{width:100%}.cross-picker-dialog .MuiDialog-paper.MuiDialog-paperFullScreen .cross-picker-list{max-height:none}.cross-picker-dialog .MuiDialog-paper.MuiDialog-paperFullScreen{background:#fff9fc;border-radius:16px 16px 0 0;bottom:0;height:auto;left:0;margin:0;max-height:none;max-width:100%;position:fixed;right:0;top:132px;width:100%}@media (max-width:560px){.cross-picker-dialog .MuiDialog-paper.MuiDialog-paperFullScreen{top:116px}}.gallery-ai-search{background:#fff;border:1px solid #ead5de;border-radius:8px;margin:12px 0 8px;padding:10px 12px}.gallery-ai-search .MuiOutlinedInput-root{border-radius:999px}.gallery-ai-search-meta{color:#6b5c63;font-size:.78rem;margin-top:6px;min-height:18px;padding-left:12px}.gallery-ai-search-error{color:#b42318}@media (max-width:980px){.viewer-container{flex-direction:column}.panel-section{max-height:380px;max-width:none;min-width:0}.main-photo-wrapper{min-height:300px}.details-row,.map-requests-layout{flex-direction:column}.request-details,.request-menu{width:100%}.request-detail-layout{flex-direction:column}.request-detail-grid,.request-detail-right,.request-photo-col,.request-photo-preview-wrap{flex:1 1 100%;width:100%}.thumb-section{display:flex!important;flex-direction:column;height:auto!important;max-height:260px;overflow-x:hidden!important;overflow-y:auto!important}.thumb-container{height:auto!important;justify-content:flex-start;overflow:visible!important;padding-left:0!important;padding-right:0!important}.thumb-jump{border-radius:8px;margin:2px 0;position:static!important;text-align:center;transform:none!important;width:100%}.viewer-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.viewer-action-gap{display:none}.viewer-actions .split-btn{width:100%}.viewer-actions .split-btn-main{flex:1 1;text-align:center}.viewer-actions .viewer-action-btn{justify-content:center;text-align:center;width:100%}.group-row-top{flex-wrap:wrap;row-gap:8px}.group-row-top .split-btn{order:5;width:100%}.request-detail-grid{gap:0;grid-template-columns:1fr}.request-detail-grid>div{border-bottom:1px solid #f5e3ea;padding:6px 0}.request-detail-grid>div:last-child{border-bottom:none}.request-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.request-actions .MuiButtonBase-root,.request-actions .clear-btn,.request-actions .save-btn{margin:0;width:100%}.request-actions .autosave-pill{grid-column:1/-1;justify-self:start}.request-actions .action-btn-wide{grid-column:1/-1}.request-filter-bar .MuiButtonBase-root{flex:1 1 auto}.map-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.map-tab-btn{text-align:center;width:100%}.map-section-top{align-items:stretch;flex-direction:column}.map-section-top .MuiButtonBase-root{width:100%}.map-tabs-refresh-btn{flex-shrink:0;width:auto!important}.panel-section{max-height:460px}.panel-actions{flex-wrap:wrap}.panel-actions>*{flex:1 1 140px}.slider-wrapper{padding:10px}}.group-panel-header{align-items:center;cursor:default;display:flex;justify-content:space-between}.group-panel-toggle{background:none;border:none;border-radius:6px;color:#8f2949;cursor:pointer;display:none;font-size:1rem;line-height:1;padding:2px 6px}.group-panel-toggle:hover{background:#ffe8f0;background:var(--accent-soft)}@media (max-width:980px){.group-panel-toggle{align-items:center;display:inline-flex;justify-content:center}}@media (max-width:560px){.page{padding-top:10px;width:calc(100% - 14px)}.thumbnail{height:54px;width:72px}.nav-btn{height:36px;width:36px}.preview-swipe-btn{font-size:2rem;height:54px;width:38px}.preview-swipe-btn-left{left:8px}.preview-swipe-btn-right{right:8px}.viewer-actions{gap:6px}.split-btn-main,.viewer-action-btn{font-size:.8rem;padding:7px 10px}.panel-section{max-height:50vh}.slider-wrapper{padding:8px}}.face-assignment-input{max-width:100%;min-width:0;position:relative;width:100%}.face-assignment-input .group-input{padding-right:56px}.assignment-clear-btn{background:#f1edf2;border:0;border-radius:50%;color:#6f6873;font-size:.75rem;height:20px;line-height:20px;width:20px}.assignment-clear-btn,.assignment-menu-btn{cursor:pointer;position:absolute;right:6px;top:50%;transform:translateY(-50%)}.assignment-menu-btn{background:#0000;border:0;border-radius:5px;color:#7c7280;font-size:.72rem;height:22px;line-height:22px;width:22px}.assignment-clear-btn,.face-assignment-input .assignment-clear-btn+.assignment-menu-btn{right:30px}.face-assignment-menu{background:#fff;border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:8px;box-shadow:0 12px 30px #241c2c29;box-sizing:border-box;left:0;max-height:260px;max-width:100%;overflow:auto;padding:4px;position:absolute;right:0;top:calc(100% + 4px);width:100%;z-index:700}.face-assignment-option{grid-gap:8px;align-items:center;background:#0000;border:0;border-radius:6px;color:#332c38;cursor:pointer;display:grid;gap:8px;grid-template-columns:34px minmax(0,1fr) auto;padding:6px;text-align:left;width:100%}.face-assignment-option:hover{background:#ffe8f0;background:var(--accent-soft)}.face-assignment-option .memory-face-no-thumb,.face-assignment-option img{border-radius:50%;font-size:1rem;height:34px;object-fit:cover;width:34px}.face-assignment-option small,.face-assignment-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.face-assignment-option small{color:#8a818f;font-size:.68rem;max-width:78px}.face-assignment-option.new{border-top:1px solid #f1d7e0;margin-top:4px}.new-group-plus{background:#f7edf2;border-radius:50%;color:#9b3a58;display:grid;font-weight:800;height:34px;place-items:center;width:34px}.new-group-plus.small{flex:0 0 auto;font-size:.72rem;height:18px;width:18px}.assignment-pending-new{align-items:center;display:flex;gap:6px;margin-top:6px;min-width:0}.assignment-pending-chip{align-items:center;background:#fff8fb;border:1px solid #eac8d5;border-radius:999px;color:#463541;display:inline-flex;font-size:.78rem;gap:6px;max-width:100%;min-width:0;overflow:hidden;padding:4px 8px 4px 5px;text-overflow:ellipsis;white-space:nowrap}.assignment-save-new{background:#9b3a58;border:1px solid #9b3a58;border-radius:6px;color:#fff;cursor:pointer;flex:0 0 auto;font-size:.72rem;font-weight:700;padding:4px 8px}.assignment-cancel-new{background:#f1edf2;border:0;border-radius:50%;color:#6f6873;cursor:pointer;flex:0 0 auto;height:22px;line-height:22px;width:22px}@keyframes photo-fade-in{0%{opacity:0}to{opacity:1}}@keyframes photo-slide-left{0%{opacity:0;transform:translateX(7%)}to{opacity:1;transform:translateX(0)}}@keyframes photo-slide-right{0%{opacity:0;transform:translateX(-7%)}to{opacity:1;transform:translateX(0)}}@keyframes photo-zoom-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes photo-zoom-out{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.photo-anim-fade{animation:photo-fade-in .55s ease both}.photo-anim-slide-left{animation:photo-slide-left .55s ease both}.photo-anim-slide-right{animation:photo-slide-right .55s ease both}.photo-anim-zoom-in{animation:photo-zoom-in .55s ease both}.photo-anim-zoom-out{animation:photo-zoom-out .55s ease both}.fs-overlay{align-items:stretch;background:#000;display:flex;flex-direction:column;inset:0;position:fixed;touch-action:pan-y;-webkit-user-select:none;user-select:none;z-index:9999}.fs-photo-area{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;overflow:hidden;position:relative;touch-action:none}.fs-photo-area .main-photo{height:100%;object-fit:contain;transform-origin:center;width:100%;will-change:transform}.fs-overlay.fs-zoomed .fs-photo-area .main-photo{cursor:grab}.fs-close-btn{align-items:center;background:#14141499;border:1px solid #ffffff40;border-radius:50%;color:#ffffffbf;cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;line-height:1;position:absolute;right:14px;top:14px;transition:background .15s,color .15s;width:36px;z-index:10}.fs-close-btn:hover{background:#c73866d9;color:#fff}.fs-uc-btn{align-items:center;background:#14141499;border:1px solid #ffffff40;border-radius:50%;color:#ffffffbf;cursor:pointer;display:flex;height:36px;justify-content:center;left:14px;line-height:1;position:absolute;top:14px;transition:background .15s,color .15s;width:36px;z-index:10}.fs-uc-btn svg{font-size:1.1rem}.fs-uc-btn:hover:not(:disabled){background:#c73866d9;color:#fff}.fs-uc-btn:disabled{cursor:not-allowed;opacity:.3}.fs-counter{bottom:16px;color:#ffffff80;font-size:.85rem;font-weight:600;left:50%;letter-spacing:.05em;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:10}.fs-nav-arrow{opacity:.22!important;transition:opacity .2s ease,background .15s ease,transform .15s ease!important}.fs-nav-arrow.fs-nav-highlight,.fs-nav-arrow:hover{opacity:.82!important}.fs-auto-btn{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14141473;border:1px solid #ffffff26;border-radius:24px;bottom:14px;color:#ffffff6b;cursor:pointer;display:flex;font-size:.82rem;font-weight:600;gap:6px;overflow:hidden;padding:7px 10px;position:absolute;right:14px;transition:background .2s,color .2s,border-color .2s;z-index:10}.fs-auto-btn .fs-auto-icon{flex-shrink:0;font-size:.95rem}.fs-auto-btn .fs-auto-label{max-width:0;opacity:0;overflow:hidden;transition:max-width .3s ease,opacity .3s ease;white-space:nowrap}.fs-auto-btn.active .fs-auto-label,.fs-auto-btn:focus .fs-auto-label,.fs-auto-btn:hover .fs-auto-label{max-width:120px;opacity:1}.fs-auto-btn:focus,.fs-auto-btn:hover{background:#282828bf;border-color:#ffffff4d;color:#ffffffe6}.fs-auto-btn.active{background:#c73866bf;border-color:#ff78a080;color:#fff}.fullscreen-btn{background:#0000!important;border-color:#f2cad6!important;color:#c73866!important;color:var(--accent)!important;font-size:1.05rem}.panel-section--standalone{background:none;border:none;box-shadow:none;max-height:none!important;max-width:none;min-height:auto;padding-bottom:8px}.panel-actions--floating{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffeb;border-top:1px solid #f3d6e0;border-top:1px solid var(--panel-border);bottom:0;flex-wrap:wrap;margin:10px -14px -12px;padding:8px 14px calc(8px + env(safe-area-inset-bottom, 0px));position:sticky;row-gap:6px;z-index:2}.match-mode-toggle--compact{flex:1 1 100%;font-size:.78rem;gap:6px;margin-top:0;order:-1}.match-mode-toggle--compact .match-mode-ui{border-radius:6px;height:20px;width:20px}.match-mode-toggle--compact input:checked+.match-mode-ui:after{height:9px;left:6px;top:3px;width:5px}.faces-trigger-btn{align-items:center;background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border:none;border-radius:50%;bottom:calc(76px + env(safe-area-inset-bottom, 0px));box-shadow:0 8px 20px #c7386659;color:#fff;cursor:pointer;display:flex;height:52px;justify-content:center;margin:0;padding:0;position:fixed;right:16px;transition:transform .15s ease;width:52px;z-index:1000}.faces-trigger-btn:active{transform:scale(.94)}.faces-trigger-count{align-items:center;background:#fff;border:2px solid #fff9fc;border-radius:10px;box-shadow:0 2px 6px #0003;color:#c73866;color:var(--accent);display:inline-flex;font-size:.68rem;font-weight:800;height:20px;justify-content:center;min-width:20px;padding:0 5px;position:absolute;right:-4px;top:-4px}.faces-sheet-dialog .request-detail-dialog-body{display:flex;flex-direction:column}@media (min-width:901px){.faces-trigger-btn{display:none}}.mobile-tab-bar{align-items:stretch;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffffb3;border:1px solid #f3d6e0;border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 8px 24px #c7386614;display:flex;gap:6px;margin:4px 0 12px;padding:5px;position:sticky;top:72px;z-index:20}.mobile-tab-back-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:12px;color:#666;color:var(--muted);cursor:pointer;display:flex;flex:0 0 auto;justify-content:center;transition:color .2s ease,background .2s ease;width:36px}.mobile-tab-back-btn:active,.mobile-tab-back-btn:hover{background:#ffe8f0;background:var(--accent-soft);color:#c73866;color:var(--accent)}.mobile-tab-grid{grid-gap:4px;display:grid;flex:1 1;gap:4px;grid-template-columns:repeat(4,1fr);min-width:0}.mobile-tab-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:12px;color:#666;color:var(--muted);cursor:pointer;display:flex;flex-direction:column;font-size:.72rem;font-weight:600;gap:2px;justify-content:center;letter-spacing:.01em;padding:7px 4px;transition:color .2s ease,background .2s ease,transform .15s ease}.mobile-tab-btn .mobile-tab-icon{font-size:1.25rem;transition:transform .2s ease}.mobile-tab-btn:active{transform:scale(.96)}.mobile-tab-btn.active{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);box-shadow:0 6px 16px #c738664d;color:#fff}.mobile-tab-btn.active .mobile-tab-icon{transform:translateY(-1px) scale(1.05)}.mobile-tab-btn.pulse{animation:mobile-tab-pulse .9s ease}.mobile-tab-btn.pulse .mobile-tab-icon{animation:mobile-tab-pulse-icon .9s ease}@keyframes mobile-tab-pulse{0%{background:#ffe8f0;background:var(--accent-soft);color:#c73866;color:var(--accent)}60%{background:#ffe8f0;background:var(--accent-soft);color:#c73866;color:var(--accent)}to{background:#0000;color:#666;color:var(--muted)}}@keyframes mobile-tab-pulse-icon{0%,to{transform:scale(1)}30%{transform:scale(1.25)}60%{transform:scale(1)}}@media (min-width:901px){.mobile-tab-bar{display:none}}@media (max-width:560px){.mobile-tab-bar{border-radius:14px;padding:4px;top:64px}.mobile-tab-btn{border-radius:10px;font-size:.66rem;padding:6px 2px}.mobile-tab-btn .mobile-tab-icon{font-size:1.1rem}}.fullscreen-btn:hover{background:#ffe8f0!important;background:var(--accent-soft)!important;box-shadow:0 6px 14px #c7386626!important;transform:translateY(-1px)}.selfie-cam-overlay{background:#000;inset:0;overflow:hidden;position:fixed;z-index:1400}.selfie-cam-video{height:100%;inset:0;object-fit:cover;position:absolute;transform:scaleX(-1);width:100%}.selfie-cam-oval-guide{border:2.5px solid #ffffffe0;border-radius:50%;box-shadow:0 0 0 9999px #00000085;height:min(86vw,58vh);left:50%;pointer-events:none;position:absolute;top:44%;transform:translate(-50%,-50%);width:min(72vw,46vh);z-index:1}.selfie-cam-hint{bottom:128px;color:#ffffffeb;font-size:.9rem;font-weight:600;left:0;margin:0;pointer-events:none;position:absolute;right:0;text-align:center;text-shadow:0 1px 3px #0009;z-index:2}.selfie-cam-back{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;border:1px solid #ffffff4d;border-radius:50%;color:#ffffffe6;cursor:pointer;display:flex;font-size:1.1rem;height:44px;justify-content:center;left:18px;position:absolute;top:18px;transition:background .15s;width:44px;z-index:3}.selfie-cam-back:hover{background:#c73866b3}.selfie-cam-capture-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border:4px solid #ffffffd9;border-radius:50%;bottom:40px;cursor:pointer;height:76px;left:50%;position:absolute;transform:translateX(-50%);transition:background .15s,transform .1s;width:76px;z-index:3}.selfie-cam-capture-btn:not(:disabled):active,.selfie-cam-capture-btn:not(:disabled):hover{background:#c7386699;transform:translateX(-50%) scale(.96)}.selfie-cam-capture-btn:disabled{cursor:default;opacity:.45}.selfie-cam-capture-btn:after{background:#ffffffe0;border-radius:50%;content:"";inset:7px;position:absolute}.selfie-cam-error{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0508d6;border-radius:14px;color:#fff;left:50%;max-width:82%;padding:22px 28px;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:3}.selfie-cam-error p{font-size:.95rem;line-height:1.5;margin:0 0 14px}.selfie-cam-error-close{background:#0000;border:1px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;padding:9px 24px}.selfie-cam-preview-img{display:block;height:100%;inset:0;object-fit:contain;position:absolute;width:100%}.selfie-cam-preview-label{color:#fffffff0;font-size:1rem;font-weight:700;left:0;position:absolute;right:0;text-align:center;text-shadow:0 1px 4px #0009;top:24px;z-index:2}.selfie-cam-preview-controls{bottom:40px;display:flex;gap:14px;justify-content:center;left:0;padding:0 24px;position:absolute;right:0;z-index:3}.selfie-cam-retake{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;border:2px solid #ffffffbf;border-radius:999px;color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:.95rem;font-weight:700;max-width:160px;padding:14px;transition:background .15s}.selfie-cam-retake:hover{background:#000000a6}.selfie-cam-use{background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border:none;border-radius:999px;box-shadow:0 4px 14px #c7386666;color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:.95rem;font-weight:700;max-width:160px;padding:14px;transition:transform .1s}.selfie-cam-use:hover{transform:scale(1.02)}.selfie-cam-switch{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;border:1px solid #ffffff4d;border-radius:50%;color:#ffffffe6;cursor:pointer;display:flex;font-size:1.1rem;height:44px;justify-content:center;position:absolute;right:18px;top:18px;transition:background .15s;width:44px;z-index:3}.selfie-cam-switch:hover{background:#c73866b3}.selfie-capture-area{background:#fff;border:2px dashed #dba0b6;border-radius:12px;flex-direction:column;justify-content:center;min-height:148px;padding:20px}.selfie-capture-area,.selfie-capture-row{align-items:center;display:flex;gap:10px}.selfie-open-cam-btn{align-items:center;background:linear-gradient(135deg,#c73866,#fd8f52);background:linear-gradient(135deg,var(--accent) 0,var(--accent-light) 100%);border:none;border-radius:999px;box-shadow:0 4px 14px #c7386647;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.92rem;font-weight:700;gap:8px;padding:11px 22px;transition:transform .1s,box-shadow .15s}.selfie-open-cam-btn:hover{box-shadow:0 6px 18px #c7386661;transform:translateY(-1px)}.selfie-upload-icon-btn{align-items:center;background:#fff;border:1.5px solid #d97896;border-radius:10px;color:#922f4f;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:44px;justify-content:center;transition:background .12s,border-color .12s;width:44px}.selfie-upload-icon-btn:hover{background:#fff4f8;border-color:#c73866}.selfie-upload-icon-btn input{display:none}.selfie-capture-hint{color:#a0697c;font-size:.76rem;text-align:center}.selfie-or-divider{color:#a0697c;font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.selfie-gallery-label{color:#922f4f;cursor:pointer;font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}.selfie-gallery-label input{display:none}.selfie-preview-block{align-items:center;background:#fff;border:2px dashed #dba0b6;border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.selfie-preview-block .reference-preview{max-height:260px;object-fit:contain;width:100%}.selfie-change-btn{background:#fff;border:1px solid #d97896;border-radius:999px;color:#922f4f;cursor:pointer;font-family:inherit;font-size:.82rem;font-weight:700;margin:8px 0 12px;padding:6px 18px;transition:background .12s}.selfie-change-btn:hover{background:#fff4f8}.ref-photo-row-wrap{display:flex;flex-direction:column;gap:6px;margin:10px 0}.ref-photo-row-label{color:#6b6b6b;font-size:.82rem;font-weight:600}.ref-photo-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.ref-photo-avatar{background:#fff;border:2px solid #dba0b6;border-radius:50%;flex:0 0 auto;height:56px;overflow:hidden;position:relative;width:56px}.ref-photo-avatar img{display:block;height:100%;object-fit:cover;width:100%}.ref-photo-avatar-delete-overlay{align-items:center;background:#00000073;border:none;color:#fff;cursor:pointer;display:flex;inset:0;justify-content:center;opacity:0;padding:0;position:absolute;transition:opacity .12s}.ref-photo-avatar:focus-within .ref-photo-avatar-delete-overlay,.ref-photo-avatar:hover .ref-photo-avatar-delete-overlay{opacity:1}.ref-photo-avatar-delete-overlay:disabled{cursor:default}.ref-photo-add-tile{align-items:center;background:#fff4f8;border:2px dashed #dba0b6;border-radius:50%;color:#922f4f;cursor:pointer;display:flex;flex:0 0 auto;height:56px;justify-content:center;transition:background .12s;width:56px}.ref-photo-add-tile:hover{background:#fde3ec}.ref-photo-add-tile:disabled{cursor:default;opacity:.6}.ref-photo-row-hint{color:#a0697c;font-size:.74rem}.blur-face-btn{background:#fff8ee;border:1px solid #f5a623;border-radius:8px;color:#b45309;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:700;padding:10px 12px;transition:background .12s}.blur-face-btn:hover:not(:disabled){background:#fef3c7}.blur-face-btn:disabled{cursor:not-allowed;opacity:.5}.blur-preview-modal{max-width:560px}.blur-preview-loading{align-items:center;color:#666;display:flex;flex-direction:column;font-size:.95rem;gap:12px;padding:32px 0}.blur-preview-loading .spinner{animation:blur-spin .7s linear infinite;border:3px solid #eee;border-radius:50%;border-top:3px solid var(--accent,#e94e77);height:32px;width:32px}@keyframes blur-spin{to{transform:rotate(1turn)}}.blur-preview-hint{color:#666;font-size:.88rem;margin:0 0 12px}.blur-preview-img-wrap{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;justify-content:center;margin-bottom:16px;overflow:hidden;width:100%}.blur-preview-img{display:block;height:auto;max-height:400px;object-fit:contain;width:100%}.revert-blur-btn{border-color:#bbb;color:#555}.revert-blur-btn:hover:not(:disabled){background:#f5f5f5}.blur-group-modal{max-width:420px;min-width:300px;text-align:center}.blur-group-progress{padding:8px 0 16px}.blur-group-bar-wrap{background:#e8e8e8;border-radius:6px;height:10px;margin-bottom:10px;overflow:hidden}.blur-group-bar{background:#1a73e8;border-radius:6px;height:100%;transition:width .3s ease}.blur-group-count{color:#555;font-size:.88rem;margin:0}.blur-group-done p{color:#333;margin-bottom:16px}.blur-group-error-msg{color:#c62828;font-size:.9rem;margin-bottom:16px}
/*# sourceMappingURL=main.fdf4f561.css.map*/