@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2) format("woff2"),url(/assets/ibm-plex-sans-thai-thai-400-normal-DKc8V4lk.woff) format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-thai-500-normal-BrMc1XKn.woff2) format("woff2"),url(/assets/ibm-plex-sans-thai-thai-500-normal-BoHUoq0p.woff) format("woff")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-thai-600-normal-DvfsyWAn.woff2) format("woff2"),url(/assets/ibm-plex-sans-thai-thai-600-normal-BOwfviun.woff) format("woff")}@font-face{font-family:Prompt;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/prompt-thai-600-normal-MrdfU7zR.woff2) format("woff2"),url(/assets/prompt-thai-600-normal-CYPViXds.woff) format("woff")}@font-face{font-family:Prompt;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/prompt-thai-700-normal-Cg4aQ0Nn.woff2) format("woff2"),url(/assets/prompt-thai-700-normal-Cb5ilR-c.woff) format("woff")}@font-face{font-family:Prompt;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/prompt-thai-800-normal-C5mlVDGm.woff2) format("woff2"),url(/assets/prompt-thai-800-normal-Bs-MxK4y.woff) format("woff")}:root{--purple-50: #faf5ff;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-300: #d8b4fe;--purple-500: #8b5cf6;--purple-600: #7c3aed;--purple-700: #6d28d9;--purple-800: #5b21b6;--purple-900: #4c1d95;--text: #3b2667;--text-muted: #6b5b8a;--surface: #ffffff;--surface-soft: #f8f5ff;--border: rgba(124, 58, 237, .2);--shadow: 0 4px 24px rgba(109, 40, 217, .08);--shadow-lg: 0 12px 40px rgba(109, 40, 217, .12)}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden}body{font-family:IBM Plex Sans Thai,Kanit,sans-serif;background:linear-gradient(160deg,var(--purple-50) 0%,#ffffff 45%,var(--purple-100) 100%);color:var(--text);min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:20px}.header{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:50;padding:15px 25px;background:linear-gradient(135deg,var(--purple-600),var(--purple-500));border-radius:16px;margin-bottom:30px;border:1px solid var(--purple-300);box-shadow:var(--shadow-lg)}.logo{display:flex;align-items:center;gap:12px}.logo svg{width:40px;height:40px}.logo h1{font-size:1.5rem;color:#fff;-webkit-text-fill-color:#ffffff;background:none}.header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.notify-bell-wrap{position:relative}.notify-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:10px;background:#fff3;cursor:pointer;transition:background .15s}.notify-bell-btn:hover{background:#ffffff52}.notify-bell-icon{font-size:1.2rem;line-height:1}.notify-bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:700;line-height:18px;text-align:center;box-shadow:0 1px 4px #0003}.notify-bell-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 24px));background:#fff;border-radius:14px;border:1px solid var(--border);box-shadow:0 12px 40px #0000002e;z-index:300;overflow:hidden}.notify-bell-dropdown-header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border);font-size:.9rem}.notify-bell-empty{padding:24px 16px;text-align:center;font-size:.88rem}.notify-bell-list{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto}.notify-bell-item{display:block;width:100%;text-align:left;padding:12px 16px;border:none;background:transparent;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background .12s}.notify-bell-item:hover{background:#f9fafb}.notify-bell-item-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.notify-bell-item-title{font-size:.75rem;font-weight:700;color:#c2410c;text-transform:uppercase;letter-spacing:.02em}.notify-bell-item-name{font-weight:600;font-size:.92rem;margin-top:4px}.notify-bell-item-note{font-size:.78rem;color:#c2410c;margin-top:4px}.notify-bell-item-message{font-size:.82rem;color:var(--text-muted);margin-top:4px;line-height:1.4}.notify-bell-item-meta{font-size:.72rem;color:var(--text-muted);margin-top:6px}.notify-bell-footer{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid var(--border);background:#f9fafb}.notify-bell-footer-btn{border:1px solid var(--border);background:#fff;border-radius:8px;padding:6px 10px;font-size:.78rem;cursor:pointer}.notify-bell-footer-btn:hover{background:#f3f4f6}.notify-bell-footer-hint{font-size:.72rem}.user-info{color:#ede9fe;font-size:.9rem;margin-right:10px;display:inline-flex;align-items:center;gap:8px}.header-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.5)}.header-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:#fff3;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.btn{padding:10px 20px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;box-shadow:0 4px 15px #7c3aed59}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed73}.btn-secondary{background:var(--surface);color:var(--purple-700);border:1px solid var(--purple-200)}.btn-secondary:hover{background:var(--purple-50);border-color:var(--purple-300)}.header .btn-secondary{background:#ffffff26;color:#fff;border-color:#ffffff59}.header .btn-secondary:hover{background:#ffffff40}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-success:hover{transform:translateY(-2px)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 15px #ef44444d}.btn-danger:hover{transform:translateY(-2px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.cooldown-banner{margin-top:12px;padding:10px 15px;border-radius:10px;background:var(--purple-50);border:1px solid var(--purple-200);color:var(--purple-700);font-size:.85rem}.link-history-item .link-expiry.closed{color:#7c3aed}.card{background:var(--surface);border-radius:16px;padding:25px;border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:20px}.card h2{color:var(--purple-700);margin-bottom:20px;font-size:1.3rem}.card h3{color:var(--purple-600);margin-bottom:15px;font-size:1.1rem}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:6px;color:var(--purple-700);font-size:.9rem;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border-radius:10px;border:1px solid var(--purple-200);background:var(--surface);color:var(--text);font-family:inherit;font-size:.95rem;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--purple-500);box-shadow:0 0 0 3px #8b5cf626}.form-group input::placeholder,.form-group textarea::placeholder{color:#a78bca}.form-check{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.form-check input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--purple-600);cursor:pointer;flex-shrink:0}.form-check label{margin:0;color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer;line-height:1.4}.auth-container{max-width:450px;background:var(--surface);border-radius:20px;padding:40px;border:1px solid var(--border);box-shadow:var(--shadow-lg)}.auth-page .auth-container{margin:0;max-width:none;width:100%}.auth-container-wide{max-width:520px}.auth-container h1{text-align:center;margin-bottom:10px;background:linear-gradient(135deg,var(--purple-700),var(--purple-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:1.8rem}.auth-container .subtitle{text-align:center;color:var(--text-muted);margin-bottom:30px}.auth-switch{text-align:center;margin-top:20px;color:var(--text-muted)}.auth-switch a{color:var(--purple-600);text-decoration:none;font-weight:600}.auth-switch a:hover{text-decoration:underline;color:var(--purple-700)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:25px}.stat-card{background:linear-gradient(135deg,var(--purple-50),#ffffff);border-radius:14px;padding:20px;border:1px solid var(--purple-200);text-align:center;box-shadow:var(--shadow)}.stat-card .stat-value{font-size:1.8rem;font-weight:700;color:var(--purple-700)}.stat-card .stat-label{color:var(--text-muted);font-size:.85rem;margin-top:5px}.filter-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.filter-tab{padding:8px 18px;border-radius:20px;cursor:pointer;background:var(--purple-50);color:var(--text-muted);border:1px solid var(--purple-200);transition:all .3s ease;font-size:.85rem;font-family:inherit}.filter-tab.active{background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;border-color:transparent}.filter-tab:hover:not(.active){background:var(--purple-100);color:var(--purple-700)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}th{padding:12px 15px;text-align:left;color:var(--purple-700);font-weight:600;font-size:.85rem;border-bottom:2px solid var(--purple-100);background:var(--purple-50)}td{padding:12px 15px;border-bottom:1px solid var(--purple-100);font-size:.9rem;color:var(--text)}tr:hover td{background:var(--purple-50)}.amount-positive{color:#059669;font-weight:600}.status-badge{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600}.status-completed{background:#d1fae5;color:#047857}.status-pending{background:#fef3c7;color:#b45309}.status-verifying{background:#dbeafe;color:#1d4ed8}.status-pending-review{background:#ffedd5;color:#c2410c}.status-rejected,.status-failed{background:#fee2e2;color:#b91c1c}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:20px;flex-wrap:wrap}.page-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--purple-200);background:var(--surface);color:var(--purple-700);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-family:inherit}.page-btn:hover{background:var(--purple-100)}.page-btn.active{background:var(--purple-600);color:#fff;border-color:var(--purple-600)}.page-btn:disabled{opacity:.35;cursor:not-allowed}.page-info{color:var(--text-muted);font-size:.85rem;margin:0 10px}.link-section{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.generated-link{width:100%;padding:12px 16px;border-radius:10px;border:1px solid #86efac;background:#ecfdf5;color:#047857;font-family:Courier New,monospace;font-size:.85rem;margin-top:10px;word-break:break-all}.link-timer{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 15px;border-radius:10px;background:#fffbeb;border:1px solid #fcd34d;color:#b45309}.link-timer.expired{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.donate-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box;background:linear-gradient(160deg,var(--purple-50) 0%,#ffffff 45%,var(--purple-100) 100%);position:relative;isolation:isolate}.donate-page>.donate-container,.donate-page>.expired-container{position:relative;z-index:1;flex-shrink:0}.donate-container{max-width:500px;width:100%;margin:0;background:var(--surface);border-radius:20px;padding:40px;border:1px solid var(--border);box-shadow:var(--shadow-lg);text-align:center}.donate-container h1{margin-bottom:5px;background:linear-gradient(135deg,var(--purple-700),var(--purple-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.donate-container .streamer-name{color:var(--purple-600);font-size:1.6rem;font-weight:700;margin:0}.streamer-profile{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:25px}.streamer-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;border:3px solid var(--purple-200);box-shadow:var(--shadow)}.streamer-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:var(--purple-50);font-size:2rem}.donate-preview{display:flex;align-items:center;gap:14px;padding:14px 16px;margin-bottom:16px;background:var(--purple-50);border:1px solid var(--purple-100);border-radius:12px}.donate-preview-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--purple-200);flex-shrink:0}.donate-preview-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:#fff;font-size:1.4rem}.donate-preview-label{font-size:.75rem;color:var(--text-muted);margin-bottom:2px}.donate-preview-name{font-size:1rem;font-weight:600;color:var(--purple-700)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#3b266773;display:flex;align-items:center;justify-content:center;padding:max(24px,env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));overflow-y:auto;overscroll-behavior:contain}.modal-card{width:100%;max-width:480px;background:var(--surface);border-radius:16px;padding:28px;border:1px solid var(--border);box-shadow:var(--shadow-lg);flex-shrink:0;max-height:calc(100dvh - 48px);overflow-y:auto}.modal-card h2{color:var(--purple-700);margin-bottom:8px;font-size:1.25rem}.modal-subtitle{font-size:.85rem;margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.modal-card--guide{max-width:560px;max-height:calc(100dvh - 48px);display:flex;flex-direction:column}.guide-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.guide-tab{padding:8px 14px;border:1px solid var(--purple-200);border-radius:999px;background:var(--surface-soft);color:var(--purple-700);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.guide-tab:hover{background:var(--purple-50);border-color:var(--purple-300)}.guide-tab--active{background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;border-color:transparent}.guide-panel{flex:1;overflow-y:auto;margin:0 -4px;padding:0 4px 8px}.guide-steps{list-style:none;display:flex;flex-direction:column;gap:18px}.guide-step-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.guide-step-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;font-size:.9rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.guide-step-title{font-weight:600;color:var(--purple-800);font-size:.95rem}.guide-step-body{padding-left:38px;font-size:.88rem;line-height:1.55;color:var(--text)}.guide-step-body p+p{margin-top:8px}.guide-tip{margin-top:8px;padding:10px 12px;background:var(--purple-50);border-radius:8px;border-left:3px solid var(--purple-400);font-size:.82rem;color:var(--text-muted)}.guide-other>p:first-child{font-size:.88rem;line-height:1.5;margin-bottom:14px}.guide-other .guide-tip{margin-top:14px}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:20px}.profile-avatar-lg{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--purple-200)}.profile-avatar-lg.placeholder{display:flex;align-items:center;justify-content:center;background:var(--purple-50);font-size:2.2rem}.profile-avatar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.channel-links-form{margin-top:8px}.channel-links-form-title{color:var(--purple-700);font-weight:600;font-size:.95rem;margin-bottom:4px}.channel-links-form-hint{font-size:.8rem;margin-bottom:12px}.channel-link-field{margin-bottom:14px}.channel-link-label{display:flex!important;align-items:center;gap:7px}.channel-link-label-icon{flex-shrink:0;display:block;border-radius:4px}.channel-links-display{margin:16px 0 20px;text-align:left}.channel-links-display-title{font-size:.85rem;color:var(--text-muted);margin-bottom:10px;text-align:center}.donate-container .channel-links-display-title{text-align:center}.donate-fee-note{font-size:.85rem;color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;padding:10px 14px;margin-bottom:16px;text-align:center}.channel-links-list{display:flex;flex-direction:column;gap:8px}.channel-link-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;text-decoration:none;color:var(--text);border:1px solid var(--purple-100);background:var(--purple-50);transition:all .2s ease}.channel-link-item:hover{border-color:var(--purple-300);background:#fff;transform:translateY(-1px);box-shadow:var(--shadow)}.channel-link-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px}.channel-link-icon svg{display:block;border-radius:4px}.channel-link-text{display:flex;flex-direction:column;gap:2px;min-width:0}.channel-link-platform{font-size:.75rem;color:var(--text-muted);font-weight:500}.channel-link-name{font-size:.95rem;font-weight:600;color:var(--purple-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-link-youtube:hover .channel-link-name{color:#dc2626}.channel-link-twitch:hover .channel-link-name{color:#7c3aed}.channel-link-tiktok:hover .channel-link-name{color:#111827}.channel-link-facebook:hover .channel-link-name{color:#2563eb}.qr-container{background:#fff;border-radius:16px;padding:20px;display:inline-block;margin:20px 0;border:2px solid var(--purple-100);box-shadow:var(--shadow)}.qr-container canvas{display:block}.qr-container .qr-image{display:block;width:250px;height:250px;object-fit:contain}.donate-notice{padding:12px 14px;border-radius:10px;font-size:.85rem;margin-bottom:16px}.donate-notice-warn{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.payment-waiting{text-align:center;margin-top:16px}.payment-waiting p{margin:8px 0 0;font-weight:600;color:var(--purple-700)}.payment-spinner{display:inline-block;width:28px;height:28px;border:3px solid var(--purple-200);border-top-color:var(--purple-600);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.donate-success{text-align:center;padding:20px 0}.donate-amount-display{font-size:2rem;font-weight:700;color:#059669;margin:10px 0}.donate-instruction{color:var(--text-muted);font-size:.85rem;margin-top:15px}.donate-ref-line{text-align:center;font-size:.9rem;color:var(--purple-700);margin-bottom:8px}.donate-slip-section{margin-top:20px;padding-top:16px;border-top:1px dashed var(--purple-200);display:flex;flex-direction:column;align-items:center;gap:10px}.donate-slip-preview{max-width:100%;max-height:220px;border-radius:10px;border:1px solid var(--border)}.donate-status-panel{text-align:center;padding:24px 8px}.donate-status-icon{font-size:3rem;margin-bottom:12px}.donate-status-panel h2{color:var(--purple-800);margin-bottom:4px}.pending-review-panel{margin-bottom:24px;border:1px solid #fdba74;background:#fff7ed}.pending-review-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pending-review-badge{background:#ea580c;color:#fff;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:999px}.pending-review-subtitle{font-size:.85rem;margin:8px 0 16px}.pending-review-list{display:flex;flex-direction:column;gap:12px}.pending-review-item{background:#fff;border:1px solid #fed7aa;border-radius:12px;padding:14px;display:grid;gap:12px}.pending-review-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.pending-review-message{margin-top:8px;color:var(--text);font-size:.92rem;line-height:1.5}.pending-review-verify-note{margin-top:6px;font-size:.8rem;color:#c2410c;font-weight:500}.pending-review-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px;font-size:.78rem;color:var(--text-muted)}.pending-review-slip-image{display:block;margin-top:10px;max-width:100%;max-height:320px;border-radius:10px;border:1px solid var(--border)}.pending-review-actions{display:flex;gap:8px;flex-wrap:wrap}.pending-review-ai{margin-top:8px}.pending-review-ai-suggestion{margin-top:8px;padding:10px 12px;border-radius:8px;font-size:.85rem;border:1px solid #cbd5e1;background:#f8fafc}.pending-review-ai-suggestion ul{margin:6px 0 0 18px;padding:0}.pending-review-ai-suggestion li{margin:2px 0}.pending-review-ai-header{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:6px}.pending-review-ai-confidence{font-size:.75rem;color:#64748b}.pending-review-ai-risks{margin-top:6px;color:#b45309;font-size:.8rem}.pending-review-ai-note{font-size:.75rem;margin-top:8px;margin-bottom:0}.ai-suggestion-approve{border-color:#86efac;background:#f0fdf4}.ai-suggestion-reject{border-color:#fca5a5;background:#fef2f2}.ai-suggestion-review{border-color:#fdba74;background:#fff7ed}.payout-banner{padding:14px 16px;border-radius:12px;margin-bottom:16px;background:#fef3c7;border:1px solid #fcd34d;color:#92400e;font-size:.9rem}.payout-form-grid{display:grid;gap:12px;max-width:420px}.payout-saved{font-size:.85rem;color:var(--text-muted);margin-top:8px}.expired-container{max-width:500px;margin:0;text-align:center;padding:60px 40px;background:var(--surface);border-radius:20px;border:1px solid var(--border);box-shadow:var(--shadow-lg)}.expired-icon{font-size:4rem;margin-bottom:20px}.expired-container h1{color:#dc2626;margin-bottom:10px}.expired-container p{color:var(--text-muted)}.toast-container{position:fixed;top:20px;right:20px;z-index:9999}.toast{padding:14px 22px;border-radius:12px;margin-bottom:10px;color:#fff;font-weight:500;font-size:.9rem;animation:slideIn .3s ease;box-shadow:var(--shadow-lg)}.toast-success{background:linear-gradient(135deg,#10b981,#059669)}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626)}.toast-info{background:linear-gradient(135deg,var(--purple-600),var(--purple-500))}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.text-muted{color:var(--text-muted)}.empty-state{text-align:center;padding:40px;color:var(--text-muted)}.link-history-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-radius:10px;margin-bottom:8px;background:var(--purple-50);border:1px solid var(--purple-100)}.link-history-item .link-id{color:var(--purple-700);font-family:monospace;font-size:.85rem;font-weight:600}.link-history-item .link-expiry{font-size:.8rem}.link-history-item .link-expiry.expired{color:#dc2626}.link-history-item .link-expiry.active{color:#059669}.auth-page{position:relative;min-height:100vh;display:flex;align-items:flex-start}.auth-page-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.auth-page-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55}.auth-page-orb-1{width:420px;height:420px;top:-120px;left:-80px;background:radial-gradient(circle,var(--purple-300),transparent 70%)}.auth-page-orb-2{width:360px;height:360px;bottom:-100px;right:10%;background:radial-gradient(circle,#c4b5fd,transparent 70%)}.auth-page-orb-3{width:280px;height:280px;top:40%;right:-60px;background:radial-gradient(circle,var(--purple-200),transparent 70%)}.auth-page-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(124,58,237,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,.04) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,black 20%,transparent 100%);mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,black 20%,transparent 100%)}.auth-page-shell{position:relative;z-index:1;width:100%;max-width:1200px;margin:0 auto;padding:40px 24px 56px}.auth-page-inner{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}.auth-page-hero{max-width:520px}.auth-page-hero .logo h1{font-size:2rem;background:linear-gradient(135deg,var(--purple-800),var(--purple-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-page-hero .logo svg{width:52px;height:52px}.auth-page-badge{display:inline-block;margin-top:20px;padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--purple-700);background:#ffffffbf;border:1px solid var(--purple-200);box-shadow:var(--shadow)}.auth-page-title{margin-top:20px;font-size:clamp(2rem,5vw,2.75rem);line-height:1.2;font-weight:700;color:var(--purple-900);letter-spacing:-.02em}.auth-page-title span{background:linear-gradient(135deg,var(--purple-600),var(--purple-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-page-desc{margin-top:18px;font-size:1.05rem;line-height:1.7;color:var(--text-muted);max-width:480px}.auth-page-features{list-style:none;margin-top:28px;display:flex;flex-direction:column;gap:12px}.auth-page-features li{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:#ffffffa6;border:1px solid var(--purple-100);color:var(--text);font-size:.95rem;font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 12px #6d28d90f}.auth-page-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--purple-50);font-size:1rem;flex-shrink:0}.auth-page-form{flex-shrink:0;width:400px}.auth-page-form-wide{width:460px}.pricing-section{margin-top:56px;padding-top:40px;border-top:1px solid rgba(124,58,237,.15)}.pricing-section-header{text-align:center;max-width:640px;margin:0 auto 32px}.pricing-section-header h2{font-size:clamp(1.5rem,3vw,2rem);color:var(--purple-900);margin-bottom:12px}.pricing-section-header p{color:var(--text-muted);line-height:1.7;font-size:.95rem}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pricing-card{position:relative;display:flex;flex-direction:column;padding:24px 20px;border-radius:16px;background:#ffffffd1;border:1px solid var(--purple-100);box-shadow:0 4px 20px #6d28d90f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pricing-card-featured{border-color:var(--purple-400);background:linear-gradient(160deg,#fffffff2,#f3e8ffe6);box-shadow:0 8px 32px #6d28d924}.pricing-badge{position:absolute;top:14px;right:14px;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--purple-600),var(--purple-500))}.pricing-name{font-size:1.15rem;font-weight:700;color:var(--purple-800);margin-bottom:12px}.pricing-price{display:flex;align-items:baseline;gap:4px;margin-bottom:18px;flex-wrap:wrap}.pricing-amount{font-size:1.75rem;font-weight:700;color:var(--purple-900);line-height:1}.pricing-note{font-size:.85rem;color:var(--text-muted)}.pricing-features{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1}.pricing-features li{position:relative;padding-left:22px;font-size:.88rem;line-height:1.5;color:var(--text)}.pricing-features li:before{content:"✓";position:absolute;left:0;top:0;color:var(--purple-600);font-weight:700}.pricing-footnote{margin-top:24px;text-align:center;font-size:.82rem;color:var(--text-muted);line-height:1.6;max-width:720px;margin-left:auto;margin-right:auto}@media(max-width:1024px){.pricing-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.auth-page-inner{grid-template-columns:1fr;gap:32px}.auth-page-hero{max-width:none;text-align:center}.auth-page-hero .logo{justify-content:center}.auth-page-desc{margin-left:auto;margin-right:auto}.auth-page-features{max-width:400px;margin-left:auto;margin-right:auto}.auth-page-form,.auth-page-form-wide{width:100%;max-width:460px;margin:0 auto}.pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}.donation-history-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:4px}.donation-history-header h2{margin-bottom:0}.donation-history-export-btn{padding:8px 14px;font-size:.85rem}.donation-history-controls{display:flex;flex-wrap:wrap;gap:12px 16px;margin-bottom:16px;align-items:flex-end}.donation-history-control{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--purple-700);font-weight:600}.donation-history-control input[type=date],.donation-history-control select{padding:8px 12px;border-radius:8px;border:1px solid var(--purple-200);background:var(--surface);color:var(--text);font-family:inherit;font-size:.9rem;min-width:160px}.donation-history-week-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px;padding:10px 12px;background:var(--purple-50);border:1px solid var(--purple-100);border-radius:10px}.donation-history-week-label{font-weight:600;color:var(--purple-800);font-size:.95rem;min-width:min(100%,280px);text-align:center}.donation-history-pagination{margin-top:16px}.donation-export-range{display:grid;gap:14px;margin-bottom:8px}@media(max-width:768px){.app{padding:10px}.donation-history-control input[type=date],.donation-history-control select{min-width:100%}.header{flex-direction:column;gap:10px}.auth-container,.donate-container{padding:25px}.donate-page{padding:16px 10px}.auth-page .auth-container{margin:0}.stats-grid{grid-template-columns:repeat(2,1fr)}.auth-page-shell{padding:28px 16px}.auth-page-title{font-size:1.85rem}}html.overlay-page,body.overlay-page{background:transparent!important;min-height:100vh;overflow:hidden}.overlay-root{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;display:flex;align-items:flex-start;justify-content:center;padding:28px 24px 0}.overlay-status{position:fixed;bottom:12px;left:50%;transform:translate(-50%);font-size:.75rem;color:#ffffff59;font-family:IBM Plex Sans Thai,sans-serif}.overlay-status--error{color:#f87171e6}.overlay-status--ok{opacity:0}.donation-alert{position:relative;max-width:min(920px,92vw);width:100%;opacity:0;transform:translateY(-24px) scale(.96);transition:opacity .45s ease,transform .55s cubic-bezier(.22,1,.36,1)}.donation-alert--visible{opacity:1;transform:translateY(0) scale(1)}.donation-alert--leaving{opacity:0;transform:translateY(-16px) scale(.98);transition-duration:.4s}.donation-alert-inner{position:relative;z-index:1;padding:0;text-align:center;font-family:Prompt,Kanit,sans-serif}.donation-alert-gif-frame{width:min(560px,88vw);aspect-ratio:16 / 9;margin:0 auto 10px;border-radius:10px;overflow:hidden;filter:drop-shadow(0 4px 12px rgba(0,0,0,.45));background:#00000040}.donation-alert-gif{display:block;width:100%;height:100%;object-fit:contain}.donation-alert-headline{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.35em;line-height:1.12;letter-spacing:.01em}.donation-alert-name,.donation-alert-action,.donation-alert-amount,.donation-alert-message{-webkit-text-stroke:3px #000000;paint-order:stroke fill;text-shadow:3px 3px 0 #000,-3px -3px 0 #000,3px -3px 0 #000,-3px 3px 0 #000,0 3px 0 #000,0 -3px 0 #000,3px 0 0 #000,-3px 0 0 #000,2px 2px 0 #000,-2px -2px 0 #000}.donation-alert-name{font-size:clamp(28px,2.5vw,46px);font-weight:800;color:#ffbe0b}.donation-alert-action{font-size:clamp(28px,2.5vw,46px);font-weight:800;color:#fff}.donation-alert-amount{font-size:clamp(28px,2.5vw,46px);font-weight:800;color:#39ff14;letter-spacing:.02em}.donation-alert-message{margin-top:6px;font-size:clamp(18px,1.5vw,28px);font-weight:700;line-height:1.35;color:#fff;word-break:break-word}.donation-alert--tier-medium .donation-alert-name,.donation-alert--tier-medium .donation-alert-action,.donation-alert--tier-medium .donation-alert-amount,.donation-alert--tier-medium .donation-alert-message{color:#c084fc}.donation-alert--tier-big .donation-alert-name,.donation-alert--tier-big .donation-alert-action,.donation-alert--tier-big .donation-alert-amount,.donation-alert--tier-big .donation-alert-message{color:#ff9500}.donation-alert--tier-mega .donation-alert-name,.donation-alert--tier-mega .donation-alert-action,.donation-alert--tier-mega .donation-alert-amount,.donation-alert--tier-mega .donation-alert-message{color:#f33;-webkit-text-stroke:2.5px #ffd700;text-shadow:0 0 10px rgba(255,215,0,.85),0 0 22px rgba(255,193,7,.45),3px 3px 0 #b8860b,-3px -3px 0 #b8860b,3px -3px 0 #b8860b,-3px 3px 0 #b8860b,0 3px 0 #b8860b,0 -3px 0 #b8860b,3px 0 0 #b8860b,-3px 0 0 #b8860b}.donation-alert--tier-mega .donation-alert-name,.donation-alert--tier-mega .donation-alert-action,.donation-alert--tier-mega .donation-alert-amount{font-size:clamp(30px,2.65vw,48px)}.donation-alert--tier-mega .donation-alert-message{font-size:clamp(19px,1.6vw,30px)}.donation-alert--tier-legend .donation-alert-name,.donation-alert--tier-legend .donation-alert-action,.donation-alert--tier-legend .donation-alert-amount,.donation-alert--tier-legend .donation-alert-message{color:gold;-webkit-text-stroke:2.5px #fff8b0;text-shadow:0 0 12px rgba(255,236,120,.95),0 0 28px rgba(255,215,0,.65),0 0 40px rgba(255,165,0,.35),3px 3px 0 #b8860b,-3px -3px 0 #b8860b,3px -3px 0 #b8860b,-3px 3px 0 #b8860b,0 3px 0 #b8860b,0 -3px 0 #b8860b,3px 0 0 #b8860b,-3px 0 0 #b8860b}.donation-alert--tier-legend .donation-alert-name,.donation-alert--tier-legend .donation-alert-action,.donation-alert--tier-legend .donation-alert-amount{font-size:clamp(32px,2.85vw,52px)}.donation-alert--tier-legend .donation-alert-message{font-size:clamp(20px,1.7vw,32px)}.overlay-setup-steps{margin:12px 0 0;padding-left:1.25rem;font-size:.85rem;color:var(--text-muted);line-height:1.6}.overlay-url-box{margin-top:12px;padding:12px 14px;background:var(--surface-soft);border:1px solid var(--purple-200);border-radius:10px;font-size:.8rem;word-break:break-all;font-family:ui-monospace,monospace;color:var(--purple-800)}.overlay-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.overlay-preview-wrap{margin-top:18px}.overlay-preview-label{font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:8px}.overlay-preview-stage{position:relative;width:100%;max-width:720px;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;border:1px solid var(--purple-200);background:linear-gradient(180deg,#00000026,#00000073),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="720" height="405"><rect fill="%231a1a2e" width="720" height="405"/><rect fill="%2316213e" y="200" width="720" height="205"/></svg>') center / cover no-repeat}.overlay-preview-root{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;justify-content:center;padding:16px 20px 0;pointer-events:none}.overlay-preview-hint{margin:auto;font-size:.9rem;color:#ffffff8c;text-align:center}.overlay-preview-stage .donation-alert{max-width:100%}.overlay-preview-stage .donation-alert-name,.overlay-preview-stage .donation-alert-action,.overlay-preview-stage .donation-alert-amount{font-size:clamp(20px,3.8vw,34px)}.overlay-preview-stage .donation-alert-message{font-size:clamp(14px,2.2vw,22px)}.modal-card.settings-modal{max-height:calc(100dvh - 48px);display:flex;flex-direction:column;overflow:hidden;padding:24px 28px 0}.settings-modal-header{flex-shrink:0}.settings-modal-header .modal-subtitle{margin-bottom:16px}.settings-modal-body{flex:1;min-height:0;overflow-y:auto;padding-right:6px;padding-bottom:8px;margin-right:-6px}.settings-modal .modal-actions{flex-shrink:0;margin-top:0;padding:14px 0 22px;border-top:1px solid var(--purple-200);background:var(--surface)}.settings-section{margin-top:8px}.settings-section-title{font-size:1.05rem;margin:0 0 6px}.settings-section-desc{font-size:.85rem;margin:0 0 4px}.settings-sound-box{margin-top:16px;padding:14px 16px;border:1px solid var(--purple-200);border-radius:12px;background:var(--surface-soft)}.settings-sound-title{font-weight:600;font-size:.95rem;margin-bottom:4px}.settings-sound-desc{font-size:.82rem;margin:0 0 12px}.settings-sound-controls{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.settings-sound-label{font-size:.85rem;font-weight:500;color:var(--purple-700)}.settings-sound-select{width:100%;max-width:320px;padding:10px 12px;border:1px solid var(--purple-200);border-radius:10px;background:#fff;color:var(--purple-900);font-size:.9rem;font-family:inherit;cursor:pointer}.settings-sound-select:focus{outline:none;border-color:var(--purple-500);box-shadow:0 0 0 3px #7c3aed26}.settings-sound-select:disabled{opacity:.6;cursor:not-allowed}.settings-gif-box{margin-top:14px}.alert-gif-picker{display:flex;flex-direction:column;gap:10px}.alert-gif-current{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px;border-radius:10px;background:#ffffffa6;border:1px solid var(--purple-200)}.alert-gif-spec{font-size:.8rem;line-height:1.5;color:var(--purple-800);margin:0 0 10px;padding:10px 12px;border-radius:10px;background:#ffffffbf;border:1px solid var(--purple-200)}.alert-gif-preview-frame{width:min(280px,100%);margin:0}.alert-gif-current-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.alert-gif-current-label{font-size:.82rem;color:var(--text-muted)}.alert-gif-file-input{display:none}.alert-gif-upload-btn{align-self:flex-start}.alert-gif-current-buttons{display:flex;flex-wrap:wrap;gap:8px}.alert-gif-hint{font-size:.78rem;margin:0}.alert-gif-error{font-size:.82rem;margin:0;color:#dc2626}.btn-sm{padding:6px 12px;font-size:.82rem}.overlay-preview-stage .donation-alert-gif-frame{width:min(240px,56vw)}.settings-sound-tone-desc{font-size:.8rem;margin:0}.register-name-warning{margin-top:8px;font-size:.82rem;color:#b45309;line-height:1.5;padding:10px 12px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px}.register-slug-preview{margin-top:10px;padding:12px 14px;background:var(--surface-soft);border:1px solid var(--purple-200);border-radius:10px;font-size:.85rem}.register-slug-preview.invalid,.register-slug-preview.taken{border-color:#fca5a5;background:#fef2f2}.register-slug-preview.available{border-color:#86efac;background:#f0fdf4}.register-slug-label{display:block;color:var(--text-muted);margin-bottom:6px}.register-slug-preview code{display:block;font-family:ui-monospace,monospace;color:var(--purple-800);word-break:break-all}.register-slug-status{display:block;margin-top:6px;font-size:.8rem;color:#dc2626}.register-slug-status.ok{color:#16a34a}.vanity-url-box{margin-bottom:20px;padding:16px;background:linear-gradient(135deg,var(--purple-50),#fff);border:1px solid var(--purple-200);border-radius:12px}.vanity-url-label{font-size:.85rem;color:var(--text-muted);margin-bottom:6px}.vanity-url-value{display:block;font-family:ui-monospace,monospace;font-size:.95rem;color:var(--purple-800);word-break:break-all}.profile-name-readonly{padding:10px 14px;background:var(--surface-soft);border:1px solid var(--border);border-radius:10px;font-weight:600;color:var(--text)}.btn-upgrade{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-weight:700;box-shadow:0 4px 15px #f59e0b73;border:none;letter-spacing:.03em}.btn-upgrade:hover{transform:translateY(-2px);box-shadow:0 6px 22px #f59e0b8c}.plan-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.plan-badge-ground{background:#ffffff2e;color:#ede9fe;border:1px solid rgba(255,255,255,.3)}.plan-badge-mighty{background:#fbbf24;color:#78350f;border:1px solid #f59e0b}.plan-badge-rising{background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;border:none}.plan-badge-ultimate{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;border:none}body.has-wallpaper{background:none}body.has-wallpaper:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:#00000059}body.has-wallpaper .card,body.has-wallpaper .stat-card{background:#ffffffe0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}body.has-wallpaper .header{background:linear-gradient(135deg,#6d28d9d9,#8b5cf6d9);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}body.has-wallpaper .donate-container:not([class*=donate-theme-]),.donate-page.has-wallpaper .donate-container:not([class*=donate-theme-]){background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-card-wide{max-width:680px;width:100%}.profile-section-label{font-size:.85rem;font-weight:700;color:var(--purple-700);margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}.wallpaper-section{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}.wallpaper-preview-wrap{width:100%;height:130px;border-radius:10px;overflow:hidden;border:1px solid var(--purple-200)}.wallpaper-preview-img{width:100%;height:100%;object-fit:cover}.wallpaper-preview-empty{width:100%;height:100px;display:flex;align-items:center;justify-content:center;border:2px dashed var(--purple-200);border-radius:10px;color:var(--text-muted);font-size:.9rem}.plan-gate-box{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:12px;background:linear-gradient(135deg,var(--purple-50),#fff);border:1.5px dashed var(--purple-300);cursor:pointer;transition:all .2s;margin-bottom:8px}.plan-gate-box:hover{background:var(--purple-100);border-color:var(--purple-500)}.plan-gate-icon{font-size:1.8rem}.plan-gate-text{display:flex;flex-direction:column;gap:4px}.plan-gate-text strong{color:var(--purple-800);font-size:.9rem}.plan-gate-text span{color:var(--purple-500);font-size:.82rem}.plan-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin-top:16px}.plan-modal-card{position:relative;display:flex;flex-direction:column;padding:16px 14px;border-radius:14px;border:1.5px solid var(--purple-200);background:var(--surface-soft);gap:6px}.plan-modal-card-featured{border-color:var(--purple-500);background:linear-gradient(160deg,var(--purple-50),#fff);box-shadow:0 4px 20px #7c3aed1f}.plan-modal-card-current{border-color:#10b981;background:#f0fdf4}.plan-modal-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;font-size:.7rem;font-weight:700;padding:2px 10px;border-radius:20px;white-space:nowrap}.plan-modal-current-badge{position:absolute;top:-10px;right:10px;background:#10b981;color:#fff;font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:20px}.plan-modal-name{font-size:1rem;font-weight:700;color:var(--purple-800);margin-top:4px}.plan-modal-price{display:flex;align-items:baseline;gap:4px}.plan-modal-amount{font-size:1.3rem;font-weight:800;color:var(--purple-700)}.plan-modal-note{font-size:.78rem;color:var(--text-muted)}.plan-modal-features{list-style:none;padding:0;margin:6px 0 10px;display:flex;flex-direction:column;gap:5px;flex:1}.plan-modal-features li{font-size:.8rem;color:var(--text-muted);padding-left:14px;position:relative}.plan-modal-features li:before{content:"✓";position:absolute;left:0;color:var(--purple-500);font-weight:700}.upgrade-modal{padding-top:28px}.upgrade-modal-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}.upgrade-modal-icon{font-size:2rem;line-height:1}.upgrade-plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:20px}.upgrade-plan-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:20px 16px 16px;border-radius:16px;border:2px solid var(--purple-200);background:var(--surface-soft);transition:all .25s;cursor:default}.upgrade-plan-card:hover{border-color:var(--plan-color, var(--purple-500));box-shadow:0 6px 24px #00000014;transform:translateY(-2px)}.upgrade-plan-card-featured{border-color:var(--purple-400);background:linear-gradient(160deg,var(--purple-50),#fff);box-shadow:0 4px 20px #7c3aed1f}.upgrade-plan-badge{position:absolute;top:-11px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;font-size:.68rem;font-weight:700;padding:3px 12px;border-radius:20px;white-space:nowrap;letter-spacing:.05em}.upgrade-plan-name{font-size:1.1rem;font-weight:800;color:var(--plan-color, var(--purple-800));margin-top:4px}.upgrade-plan-price{display:flex;align-items:baseline;gap:5px;margin-bottom:4px}.upgrade-plan-amount{font-size:1.6rem;font-weight:800;color:var(--purple-700)}.upgrade-plan-note{font-size:.78rem;color:var(--text-muted)}.upgrade-plan-features{list-style:none;padding:0;margin:0 0 12px;flex:1;display:flex;flex-direction:column;gap:6px}.upgrade-plan-features li{font-size:.82rem;color:var(--text-muted);padding-left:16px;position:relative;line-height:1.4}.upgrade-plan-features li:before{content:"✓";position:absolute;left:0;color:var(--plan-color, var(--purple-500));font-weight:700}.btn-upgrade-select{padding:10px 14px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:.88rem;font-weight:700;background:var(--plan-color, var(--purple-600));color:#fff;transition:all .2s;width:100%;justify-content:center;display:flex;align-items:center;box-shadow:0 3px 12px #00000026}.btn-upgrade-select:hover{filter:brightness(1.1);transform:translateY(-1px)}.upgrade-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.upgrade-manage-link{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.8rem;font-family:inherit;text-decoration:underline;padding:0}.upgrade-manage-link:hover{color:var(--purple-600)}.upgrade-back-btn{background:none;border:none;cursor:pointer;color:var(--purple-600);font-size:.85rem;font-weight:600;font-family:inherit;padding:0 0 16px;display:flex;align-items:center;gap:4px}.upgrade-back-btn:hover{color:var(--purple-800)}.upgrade-payment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}.upgrade-payment-plan-name{font-size:1.6rem;font-weight:800}.upgrade-payment-price{font-size:1.4rem;font-weight:800;color:var(--purple-700);display:flex;align-items:baseline;gap:6px}.upgrade-payment-price span{font-size:.85rem;color:var(--text-muted);font-weight:400}.upgrade-payment-features{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.upgrade-payment-feature-chip{padding:4px 12px;border-radius:20px;background:var(--purple-50);border:1px solid var(--purple-200);color:var(--purple-700);font-size:.8rem;font-weight:600}.upgrade-payment-section{display:flex;flex-direction:column;gap:14px}.upgrade-payment-section-title{font-size:.9rem;font-weight:700;color:var(--purple-700);text-transform:uppercase;letter-spacing:.05em}.upgrade-qr-area{position:relative;width:220px;margin:0 auto;background:#fff;border-radius:12px;padding:8px;border:2px solid var(--purple-200)}.upgrade-qr-canvas{display:block;width:100%;height:auto;border-radius:8px}.upgrade-qr-placeholder{width:160px;height:160px;border:2px solid var(--purple-200);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:center;filter:blur(3px)}.upgrade-qr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;width:100%;height:100%}.upgrade-qr-cell{border-radius:2px;background:#3b2667;opacity:.7}.upgrade-qr-cell:nth-child(3n){opacity:0}.upgrade-qr-cell:nth-child(7n+1),.upgrade-qr-cell:nth-child(7n+7){opacity:1}.upgrade-coming-soon-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:#ffffffe0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;padding:10px}.upgrade-coming-soon-badge{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:.75rem;font-weight:700;padding:3px 12px;border-radius:20px;letter-spacing:.05em}.upgrade-coming-soon-overlay p{font-size:.8rem;color:var(--text-muted);line-height:1.5;margin:0}.upgrade-payment-steps{display:flex;flex-direction:column;gap:10px;background:var(--surface-soft);border-radius:12px;padding:16px;border:1px solid var(--purple-100)}.upgrade-payment-step{display:flex;align-items:center;gap:12px;font-size:.88rem;color:var(--text)}.upgrade-step-num{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--purple-600),var(--purple-500));color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center}.upgrade-coming-soon-notice{text-align:center;font-size:.82rem;color:var(--text-muted);padding:12px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;line-height:1.6}.membership-expiry-badge{font-size:.75rem;color:var(--purple-600);background:var(--purple-100);padding:4px 10px;border-radius:999px;white-space:nowrap}.billing-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}@media(max-width:640px){.billing-options-grid{grid-template-columns:1fr}}.billing-option-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 12px;border:2px solid var(--purple-200);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s,background .15s;text-align:center}.billing-option-card:hover{border-color:var(--purple-400)}.billing-option-card-selected{border-color:var(--purple-600);background:var(--purple-50);box-shadow:0 0 0 1px var(--purple-600)}.billing-option-label{font-size:.85rem;font-weight:600;color:var(--purple-800)}.billing-option-price{font-size:1.35rem;font-weight:800;color:var(--purple-900)}.billing-option-note{font-size:.78rem;color:var(--text-muted)}.landing-page{position:relative;min-height:100vh;overflow-x:hidden}.landing-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1100px;margin:0 auto;padding:24px 20px 0}.landing-header .logo h1{color:var(--purple-800);-webkit-text-fill-color:var(--purple-800)}.landing-nav{display:flex;gap:10px;flex-wrap:wrap}.landing-nav-btn{padding:10px 18px;font-size:.9rem}.landing-main{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:32px 20px 48px}.landing-hero{text-align:center;max-width:760px;margin:0 auto 56px}.landing-title{font-size:clamp(2rem,5vw,3rem);line-height:1.15;color:var(--purple-900);margin:16px 0}.landing-title span{background:linear-gradient(135deg,var(--purple-600),#6366f1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-lead{font-size:1.05rem;color:var(--text-muted);line-height:1.7;margin-bottom:28px}.landing-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}.landing-cta-primary,.landing-cta-secondary{padding:14px 28px;font-size:1rem}.landing-disambiguation{font-size:.8rem;color:var(--text-muted)}.landing-features,.landing-how{margin-bottom:48px}.landing-features h2,.landing-how h2{text-align:center;color:var(--purple-800);font-size:1.5rem;margin-bottom:24px}.landing-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.landing-feature-card{background:#ffffffd9;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.landing-feature-icon{font-size:1.6rem;display:block;margin-bottom:10px}.landing-feature-card h3{color:var(--purple-800);font-size:1rem;margin-bottom:8px}.landing-feature-card p{color:var(--text-muted);font-size:.9rem;line-height:1.55}.landing-steps{list-style:none;display:grid;gap:14px;max-width:640px;margin:0 auto;counter-reset:step}.landing-steps li{counter-increment:step;background:#ffffffd9;border:1px solid var(--border);border-radius:14px;padding:16px 18px 16px 56px;position:relative;box-shadow:var(--shadow)}.landing-steps li:before{content:counter(step);position:absolute;left:16px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--purple-600),#6366f1);color:#fff;font-weight:700;font-size:.85rem;display:flex;align-items:center;justify-content:center}.landing-steps strong{display:block;color:var(--purple-800);margin-bottom:4px}.landing-steps span{color:var(--text-muted);font-size:.9rem}.landing-page .pricing-section{position:relative;z-index:1}.landing-footer{position:relative;z-index:1;text-align:center;padding:24px 20px 40px;color:var(--text-muted);font-size:.85rem}.landing-footer-links a{color:var(--purple-600);text-decoration:none}.landing-footer-links a:hover{text-decoration:underline}@media(max-width:640px){.landing-header{flex-direction:column;align-items:stretch;text-align:center}.landing-nav{justify-content:center}}.donate-page[class*=donate-page-bg-]{background:var(--dt-page-bg, var(--dt-bg, var(--surface)))}.donate-page[class*=donate-page-bg-]:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:var(--dt-pattern);background-size:var(--dt-pattern-size, 120px 120px);background-position:center;opacity:var(--dt-pattern-opacity, .22);pointer-events:none;z-index:0}.donate-page[class*=donate-page-bg-]:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:var(--dt-overlay, transparent);pointer-events:none;z-index:0}.donate-container[class*=donate-theme-]{position:relative;overflow:hidden;isolation:isolate;color:var(--dt-text, var(--text));border-color:var(--dt-border, var(--border));background:var(--dt-bg, var(--surface));box-shadow:var(--dt-shadow, var(--shadow-lg))}.donate-container[class*=donate-theme-]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background-image:var(--dt-pattern);background-size:var(--dt-pattern-size, 120px 120px);background-position:center;opacity:var(--dt-pattern-opacity, .22);pointer-events:none;z-index:0}.donate-container[class*=donate-theme-]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--dt-overlay, transparent);pointer-events:none;z-index:0}.donate-container[class*=donate-theme-]>*{position:relative;z-index:1}.donate-container[class*=donate-theme-] .streamer-name{color:var(--dt-name, var(--purple-600));text-shadow:var(--dt-name-shadow, none)}.donate-container[class*=donate-theme-] .streamer-avatar{border-color:var(--dt-avatar-border, var(--purple-200));box-shadow:var(--dt-avatar-shadow, var(--shadow))}.donate-container[class*=donate-theme-] .streamer-avatar.placeholder{background:var(--dt-avatar-placeholder-bg, var(--purple-50))}.donate-container[class*=donate-theme-] .form-group label{color:var(--dt-label, var(--purple-700))}.donate-container[class*=donate-theme-] .form-group input,.donate-container[class*=donate-theme-] .form-group textarea{background:var(--dt-input-bg, var(--surface));border-color:var(--dt-input-border, var(--purple-200));color:var(--dt-input-text, var(--text))}.donate-container[class*=donate-theme-] .form-group input::placeholder,.donate-container[class*=donate-theme-] .form-group textarea::placeholder{color:var(--dt-input-placeholder, #a78bca)}.donate-container[class*=donate-theme-] .form-group input:focus,.donate-container[class*=donate-theme-] .form-group textarea:focus{border-color:var(--dt-input-focus-border, var(--purple-500));box-shadow:0 0 0 3px var(--dt-input-focus-ring, rgba(139, 92, 246, .15))}.donate-container[class*=donate-theme-] .text-muted{color:var(--dt-muted, var(--text-muted))!important}.donate-container[class*=donate-theme-] .donate-amount-display{color:var(--dt-accent, var(--purple-700));text-shadow:var(--dt-accent-shadow, none)}.donate-container[class*=donate-theme-] .qr-container{background:var(--dt-qr-bg, #fff);border-radius:12px;padding:12px;display:inline-block;box-shadow:var(--dt-qr-shadow, 0 4px 20px rgba(0, 0, 0, .12))}.donate-container[class*=donate-theme-] .channel-links-display-title{color:var(--dt-muted, var(--text-muted))}.donate-container[class*=donate-theme-] .channel-link-item{background:var(--dt-channel-bg, var(--purple-50));border-color:var(--dt-channel-border, var(--purple-100))}.donate-container[class*=donate-theme-] .channel-link-name{color:var(--dt-text, var(--text))}.donate-container[class*=donate-theme-] .btn-primary{background:var(--dt-btn-primary, linear-gradient(135deg, var(--purple-600), var(--purple-500)));box-shadow:var(--dt-btn-primary-shadow, 0 4px 15px rgba(124, 58, 237, .35))}.donate-container[class*=donate-theme-] .btn-secondary{background:var(--dt-btn-secondary-bg, var(--surface));color:var(--dt-btn-secondary-text, var(--purple-700));border-color:var(--dt-btn-secondary-border, var(--purple-200))}.donate-page.has-wallpaper .donate-container[class*=donate-theme-],body.has-wallpaper .donate-container[class*=donate-theme-]{background:var(--dt-bg-wallpaper, var(--dt-bg, rgba(255, 255, 255, .92)));backdrop-filter:blur(20px) saturate(1.15);-webkit-backdrop-filter:blur(20px) saturate(1.15);border-color:var(--dt-card-border, var(--dt-border));box-shadow:var( --dt-card-shadow, 0 0 0 1px rgba(255, 255, 255, .12), 0 32px 64px -12px rgba(0, 0, 0, .5), 0 16px 32px -8px rgba(0, 0, 0, .35) )}.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-]{background:var(--dt-card-bg, rgba(12, 18, 32, .92));backdrop-filter:blur(28px) saturate(1.25);-webkit-backdrop-filter:blur(28px) saturate(1.25);border-color:var(--dt-card-border, var(--dt-border));box-shadow:var( --dt-card-shadow, 0 0 0 1px rgba(255, 255, 255, .08), 0 1px 0 rgba(255, 255, 255, .06) inset, 0 32px 64px -12px rgba(0, 0, 0, .55), 0 16px 32px -8px rgba(0, 0, 0, .35) )}.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-]:before{display:none}.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-]:after{background:linear-gradient(165deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.04) 32%,transparent 52%);opacity:1}.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-] .form-group input,.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-] .form-group textarea{background:color-mix(in srgb,var(--dt-input-bg) 65%,rgba(0,0,0,.5));box-shadow:0 1px 3px #00000038 inset}.donate-page[class*=donate-page-bg-] .donate-container[class*=donate-theme-] .channel-link-item{background:color-mix(in srgb,var(--dt-channel-bg) 70%,rgba(0,0,0,.38))}.donate-page.donate-page-bg-thunder-strike{--dt-page-bg: linear-gradient(155deg, #071525 0%, #0f2744 42%, #1a3a6b 100%);--dt-overlay: radial-gradient(ellipse at 20% 0%, rgba(250, 204, 21, .12), transparent 55%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M28 8 L38 48 L22 48 L42 112 L34 62 L52 62 Z' fill='none' stroke='%23facc15' stroke-width='2.5' opacity='0.55'/%3E%3Cpath d='M78 18 L86 52 L70 52 L88 98 L82 58 L96 58 Z' fill='none' stroke='%23fde047' stroke-width='2' opacity='0.4'/%3E%3Cpath d='M8 72 L14 92 L4 92 L18 118 L12 96 L22 96 Z' fill='none' stroke='%23eab308' stroke-width='1.8' opacity='0.35'/%3E%3C/svg%3E");--dt-pattern-size: 120px 120px;--dt-pattern-opacity: .35}.donate-page.donate-page-bg-ocean-wave{--dt-page-bg: linear-gradient(160deg, #042f2e 0%, #0e7490 45%, #155e75 100%);--dt-overlay: radial-gradient(circle at 80% 20%, rgba(45, 212, 191, .15), transparent 50%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='80' viewBox='0 0 160 80'%3E%3Cpath d='M0 40 Q20 20 40 40 T80 40 T120 40 T160 40 V80 H0 Z' fill='none' stroke='%232dd4bf' stroke-width='2' opacity='0.45'/%3E%3Cpath d='M0 58 Q25 38 50 58 T100 58 T150 58 V80 H0 Z' fill='none' stroke='%235eead4' stroke-width='1.5' opacity='0.35'/%3E%3Cpath d='M0 24 Q30 8 60 24 T120 24 V40 H0 Z' fill='none' stroke='%2306b6d4' stroke-width='1.5' opacity='0.3'/%3E%3C/svg%3E");--dt-pattern-size: 160px 80px;--dt-pattern-opacity: .4}.donate-page.donate-page-bg-sakura-bloom{--dt-page-bg: linear-gradient(150deg, #4a1942 0%, #831843 40%, #9d174d 100%);--dt-overlay: radial-gradient(circle at 70% 30%, rgba(251, 207, 232, .12), transparent 55%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cellipse cx='25' cy='25' rx='8' ry='12' fill='%23fbcfe8' opacity='0.35' transform='rotate(-30 25 25)'/%3E%3Cellipse cx='70' cy='35' rx='7' ry='11' fill='%23f9a8d4' opacity='0.3' transform='rotate(20 70 35)'/%3E%3Cellipse cx='45' cy='70' rx='9' ry='13' fill='%23fce7f3' opacity='0.32' transform='rotate(-15 45 70)'/%3E%3Cellipse cx='85' cy='75' rx='6' ry='10' fill='%23fbcfe8' opacity='0.28' transform='rotate(40 85 75)'/%3E%3Ccircle cx='15' cy='65' r='4' fill='%23fda4af' opacity='0.25'/%3E%3Ccircle cx='55' cy='15' r='3.5' fill='%23f9a8d4' opacity='0.3'/%3E%3C/svg%3E");--dt-pattern-size: 100px 100px;--dt-pattern-opacity: .45}.donate-page.donate-page-bg-neon-circuit{--dt-page-bg: linear-gradient(145deg, #0a0a12 0%, #1a1033 50%, #0f172a 100%);--dt-overlay: radial-gradient(circle at 50% 0%, rgba(34, 211, 238, .08), transparent 60%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cpath d='M0 20 H80 M0 40 H80 M0 60 H80 M20 0 V80 M40 0 V80 M60 0 V80' stroke='%2322d3ee' stroke-width='0.6' opacity='0.25'/%3E%3Ccircle cx='20' cy='20' r='2.5' fill='%23e879f9' opacity='0.5'/%3E%3Ccircle cx='40' cy='40' r='2' fill='%2322d3ee' opacity='0.45'/%3E%3Ccircle cx='60' cy='20' r='2.5' fill='%23e879f9' opacity='0.4'/%3E%3Ccircle cx='20' cy='60' r='2' fill='%2322d3ee' opacity='0.4'/%3E%3Cpath d='M40 20 L60 40 L40 60 L20 40 Z' fill='none' stroke='%23e879f9' stroke-width='0.8' opacity='0.2'/%3E%3C/svg%3E");--dt-pattern-size: 80px 80px;--dt-pattern-opacity: .55}.donate-page.donate-page-bg-golden-stars{--dt-page-bg: linear-gradient(155deg, #0c1445 0%, #1e1b4b 45%, #172554 100%);--dt-overlay: radial-gradient(ellipse at 50% 100%, rgba(251, 191, 36, .1), transparent 60%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M20 18 L22 26 L30 26 L24 31 L26 39 L20 34 L14 39 L16 31 L10 26 L18 26 Z' fill='%23fbbf24' opacity='0.45'/%3E%3Cpath d='M75 12 L76.5 18 L82.5 18 L77.5 22 L79 28 L75 24 L71 28 L72.5 22 L67.5 18 L73.5 18 Z' fill='%23fde68a' opacity='0.4'/%3E%3Cpath d='M95 55 L96 60 L101 60 L97 63 L98 68 L95 65 L92 68 L93 63 L89 60 L94 60 Z' fill='%23f59e0b' opacity='0.35'/%3E%3Cpath d='M35 75 L36 80 L41 80 L37 83 L38 88 L35 85 L32 88 L33 83 L29 80 L34 80 Z' fill='%23fcd34d' opacity='0.38'/%3E%3Ccircle cx='55' cy='45' r='1.5' fill='%23fde68a' opacity='0.6'/%3E%3Ccircle cx='88' cy='88' r='1.2' fill='%23fbbf24' opacity='0.5'/%3E%3Ccircle cx='12' cy='95' r='1' fill='%23fde68a' opacity='0.45'/%3E%3C/svg%3E");--dt-pattern-size: 120px 120px;--dt-pattern-opacity: .42}.donate-container.donate-theme-thunder-strike{--dt-bg: linear-gradient(155deg, #071525 0%, #0f2744 42%, #1a3a6b 100%);--dt-bg-wallpaper: linear-gradient(155deg, rgba(7, 21, 37, .94) 0%, rgba(15, 39, 68, .92) 100%);--dt-overlay: radial-gradient(ellipse at 20% 0%, rgba(250, 204, 21, .12), transparent 55%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M28 8 L38 48 L22 48 L42 112 L34 62 L52 62 Z' fill='none' stroke='%23facc15' stroke-width='2.5' opacity='0.55'/%3E%3Cpath d='M78 18 L86 52 L70 52 L88 98 L82 58 L96 58 Z' fill='none' stroke='%23fde047' stroke-width='2' opacity='0.4'/%3E%3Cpath d='M8 72 L14 92 L4 92 L18 118 L12 96 L22 96 Z' fill='none' stroke='%23eab308' stroke-width='1.8' opacity='0.35'/%3E%3C/svg%3E");--dt-pattern-size: 120px 120px;--dt-pattern-opacity: .35;--dt-text: #e0f2fe;--dt-muted: #94a3b8;--dt-name: #fde047;--dt-name-shadow: 0 0 18px rgba(250, 204, 21, .45);--dt-border: rgba(250, 204, 21, .35);--dt-shadow: 0 16px 48px rgba(0, 0, 0, .45), 0 0 0 1px rgba(250, 204, 21, .15);--dt-label: #bae6fd;--dt-input-bg: rgba(7, 21, 37, .75);--dt-input-border: rgba(56, 189, 248, .35);--dt-input-text: #f0f9ff;--dt-input-placeholder: #64748b;--dt-input-focus-border: #facc15;--dt-input-focus-ring: rgba(250, 204, 21, .2);--dt-accent: #fde047;--dt-accent-shadow: 0 0 12px rgba(250, 204, 21, .4);--dt-avatar-border: rgba(250, 204, 21, .6);--dt-avatar-shadow: 0 0 20px rgba(250, 204, 21, .25);--dt-avatar-placeholder-bg: rgba(15, 39, 68, .9);--dt-channel-bg: rgba(15, 39, 68, .65);--dt-channel-border: rgba(56, 189, 248, .25);--dt-btn-primary: linear-gradient(135deg, #ca8a04, #eab308);--dt-btn-primary-shadow: 0 4px 18px rgba(234, 179, 8, .45);--dt-btn-secondary-bg: rgba(15, 39, 68, .8);--dt-btn-secondary-text: #e0f2fe;--dt-btn-secondary-border: rgba(56, 189, 248, .35);--dt-card-bg: linear-gradient(165deg, rgba(5, 16, 30, .96) 0%, rgba(12, 32, 58, .94) 55%, rgba(18, 42, 78, .96) 100%);--dt-card-border: rgba(250, 204, 21, .42);--dt-card-shadow: 0 0 0 1px rgba(250, 204, 21, .14), 0 1px 0 rgba(255, 255, 255, .1) inset, 0 32px 64px -10px rgba(0, 0, 0, .6), 0 16px 32px -8px rgba(0, 0, 0, .4)}.donate-container.donate-theme-ocean-wave{--dt-bg: linear-gradient(160deg, #042f2e 0%, #0e7490 45%, #155e75 100%);--dt-bg-wallpaper: linear-gradient(160deg, rgba(4, 47, 46, .93) 0%, rgba(14, 116, 144, .9) 100%);--dt-overlay: radial-gradient(circle at 80% 20%, rgba(45, 212, 191, .15), transparent 50%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='80' viewBox='0 0 160 80'%3E%3Cpath d='M0 40 Q20 20 40 40 T80 40 T120 40 T160 40 V80 H0 Z' fill='none' stroke='%232dd4bf' stroke-width='2' opacity='0.45'/%3E%3Cpath d='M0 58 Q25 38 50 58 T100 58 T150 58 V80 H0 Z' fill='none' stroke='%235eead4' stroke-width='1.5' opacity='0.35'/%3E%3Cpath d='M0 24 Q30 8 60 24 T120 24 V40 H0 Z' fill='none' stroke='%2306b6d4' stroke-width='1.5' opacity='0.3'/%3E%3C/svg%3E");--dt-pattern-size: 160px 80px;--dt-pattern-opacity: .4;--dt-text: #ecfeff;--dt-muted: #99f6e4;--dt-name: #5eead4;--dt-name-shadow: 0 0 16px rgba(45, 212, 191, .35);--dt-border: rgba(45, 212, 191, .35);--dt-shadow: 0 16px 40px rgba(4, 47, 46, .5);--dt-label: #a5f3fc;--dt-input-bg: rgba(4, 47, 46, .7);--dt-input-border: rgba(45, 212, 191, .35);--dt-input-text: #f0fdfa;--dt-input-placeholder: #5eead4;--dt-input-focus-border: #2dd4bf;--dt-input-focus-ring: rgba(45, 212, 191, .2);--dt-accent: #2dd4bf;--dt-avatar-border: rgba(45, 212, 191, .55);--dt-avatar-placeholder-bg: rgba(4, 47, 46, .85);--dt-channel-bg: rgba(4, 47, 46, .6);--dt-channel-border: rgba(45, 212, 191, .25);--dt-btn-primary: linear-gradient(135deg, #0d9488, #14b8a6);--dt-btn-primary-shadow: 0 4px 16px rgba(20, 184, 166, .4);--dt-btn-secondary-bg: rgba(4, 47, 46, .75);--dt-btn-secondary-text: #ccfbf1;--dt-btn-secondary-border: rgba(45, 212, 191, .35);--dt-card-bg: linear-gradient(165deg, rgba(2, 32, 30, .97) 0%, rgba(6, 52, 48, .95) 50%, rgba(5, 42, 54, .97) 100%);--dt-card-border: rgba(94, 234, 212, .48);--dt-card-shadow: 0 0 0 1px rgba(94, 234, 212, .16), 0 1px 0 rgba(255, 255, 255, .1) inset, 0 32px 64px -10px rgba(0, 0, 0, .58), 0 16px 32px -8px rgba(0, 0, 0, .38)}.donate-container.donate-theme-sakura-bloom{--dt-bg: linear-gradient(150deg, #4a1942 0%, #831843 40%, #9d174d 100%);--dt-bg-wallpaper: linear-gradient(150deg, rgba(74, 25, 66, .92) 0%, rgba(157, 23, 77, .88) 100%);--dt-overlay: radial-gradient(circle at 70% 30%, rgba(251, 207, 232, .12), transparent 55%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cellipse cx='25' cy='25' rx='8' ry='12' fill='%23fbcfe8' opacity='0.35' transform='rotate(-30 25 25)'/%3E%3Cellipse cx='70' cy='35' rx='7' ry='11' fill='%23f9a8d4' opacity='0.3' transform='rotate(20 70 35)'/%3E%3Cellipse cx='45' cy='70' rx='9' ry='13' fill='%23fce7f3' opacity='0.32' transform='rotate(-15 45 70)'/%3E%3Cellipse cx='85' cy='75' rx='6' ry='10' fill='%23fbcfe8' opacity='0.28' transform='rotate(40 85 75)'/%3E%3Ccircle cx='15' cy='65' r='4' fill='%23fda4af' opacity='0.25'/%3E%3Ccircle cx='55' cy='15' r='3.5' fill='%23f9a8d4' opacity='0.3'/%3E%3C/svg%3E");--dt-pattern-size: 100px 100px;--dt-pattern-opacity: .45;--dt-text: #fce7f3;--dt-muted: #f9a8d4;--dt-name: #fbcfe8;--dt-name-shadow: 0 0 14px rgba(251, 207, 232, .4);--dt-border: rgba(251, 207, 232, .35);--dt-shadow: 0 16px 40px rgba(74, 25, 66, .45);--dt-label: #fbcfe8;--dt-input-bg: rgba(74, 25, 66, .65);--dt-input-border: rgba(249, 168, 212, .35);--dt-input-text: #fdf2f8;--dt-input-placeholder: #f472b6;--dt-input-focus-border: #f9a8d4;--dt-input-focus-ring: rgba(249, 168, 212, .22);--dt-accent: #f9a8d4;--dt-avatar-border: rgba(251, 207, 232, .55);--dt-avatar-placeholder-bg: rgba(74, 25, 66, .85);--dt-channel-bg: rgba(74, 25, 66, .55);--dt-channel-border: rgba(249, 168, 212, .25);--dt-btn-primary: linear-gradient(135deg, #db2777, #ec4899);--dt-btn-primary-shadow: 0 4px 16px rgba(236, 72, 153, .4);--dt-btn-secondary-bg: rgba(74, 25, 66, .7);--dt-btn-secondary-text: #fce7f3;--dt-btn-secondary-border: rgba(249, 168, 212, .35);--dt-card-bg: linear-gradient(165deg, rgba(48, 14, 42, .97) 0%, rgba(78, 18, 52, .95) 50%, rgba(92, 20, 58, .97) 100%);--dt-card-border: rgba(251, 207, 232, .45);--dt-card-shadow: 0 0 0 1px rgba(251, 207, 232, .14), 0 1px 0 rgba(255, 255, 255, .1) inset, 0 32px 64px -10px rgba(40, 8, 32, .55), 0 16px 32px -8px rgba(0, 0, 0, .38)}.donate-container.donate-theme-neon-circuit{--dt-bg: linear-gradient(145deg, #0a0a12 0%, #1a1033 50%, #0f172a 100%);--dt-bg-wallpaper: linear-gradient(145deg, rgba(10, 10, 18, .94) 0%, rgba(26, 16, 51, .92) 100%);--dt-overlay: radial-gradient(circle at 50% 0%, rgba(34, 211, 238, .08), transparent 60%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cpath d='M0 20 H80 M0 40 H80 M0 60 H80 M20 0 V80 M40 0 V80 M60 0 V80' stroke='%2322d3ee' stroke-width='0.6' opacity='0.25'/%3E%3Ccircle cx='20' cy='20' r='2.5' fill='%23e879f9' opacity='0.5'/%3E%3Ccircle cx='40' cy='40' r='2' fill='%2322d3ee' opacity='0.45'/%3E%3Ccircle cx='60' cy='20' r='2.5' fill='%23e879f9' opacity='0.4'/%3E%3Ccircle cx='20' cy='60' r='2' fill='%2322d3ee' opacity='0.4'/%3E%3Cpath d='M40 20 L60 40 L40 60 L20 40 Z' fill='none' stroke='%23e879f9' stroke-width='0.8' opacity='0.2'/%3E%3C/svg%3E");--dt-pattern-size: 80px 80px;--dt-pattern-opacity: .55;--dt-text: #e2e8f0;--dt-muted: #94a3b8;--dt-name: #22d3ee;--dt-name-shadow: 0 0 20px rgba(34, 211, 238, .5);--dt-border: rgba(34, 211, 238, .3);--dt-shadow: 0 0 40px rgba(34, 211, 238, .12), 0 16px 40px rgba(0, 0, 0, .5);--dt-label: #a5f3fc;--dt-input-bg: rgba(10, 10, 18, .85);--dt-input-border: rgba(34, 211, 238, .3);--dt-input-text: #f1f5f9;--dt-input-placeholder: #64748b;--dt-input-focus-border: #e879f9;--dt-input-focus-ring: rgba(232, 121, 249, .2);--dt-accent: #e879f9;--dt-accent-shadow: 0 0 12px rgba(232, 121, 249, .45);--dt-avatar-border: rgba(34, 211, 238, .55);--dt-avatar-shadow: 0 0 16px rgba(34, 211, 238, .25);--dt-avatar-placeholder-bg: rgba(26, 16, 51, .9);--dt-channel-bg: rgba(10, 10, 18, .75);--dt-channel-border: rgba(34, 211, 238, .2);--dt-btn-primary: linear-gradient(135deg, #0891b2, #a21caf);--dt-btn-primary-shadow: 0 4px 20px rgba(34, 211, 238, .3);--dt-btn-secondary-bg: rgba(10, 10, 18, .85);--dt-btn-secondary-text: #22d3ee;--dt-btn-secondary-border: rgba(34, 211, 238, .35);--dt-card-bg: linear-gradient(165deg, rgba(8, 8, 16, .97) 0%, rgba(16, 10, 36, .95) 55%, rgba(10, 14, 28, .97) 100%);--dt-card-border: rgba(34, 211, 238, .4);--dt-card-shadow: 0 0 0 1px rgba(34, 211, 238, .12), 0 0 24px -4px rgba(34, 211, 238, .15), 0 1px 0 rgba(255, 255, 255, .08) inset, 0 32px 64px -10px rgba(0, 0, 0, .62), 0 16px 32px -8px rgba(0, 0, 0, .4)}.donate-container.donate-theme-golden-stars{--dt-bg: linear-gradient(155deg, #0c1445 0%, #1e1b4b 45%, #172554 100%);--dt-bg-wallpaper: linear-gradient(155deg, rgba(12, 20, 69, .93) 0%, rgba(30, 27, 75, .9) 100%);--dt-overlay: radial-gradient(ellipse at 50% 100%, rgba(251, 191, 36, .1), transparent 60%);--dt-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath d='M20 18 L22 26 L30 26 L24 31 L26 39 L20 34 L14 39 L16 31 L10 26 L18 26 Z' fill='%23fbbf24' opacity='0.45'/%3E%3Cpath d='M75 12 L76.5 18 L82.5 18 L77.5 22 L79 28 L75 24 L71 28 L72.5 22 L67.5 18 L73.5 18 Z' fill='%23fde68a' opacity='0.4'/%3E%3Cpath d='M95 55 L96 60 L101 60 L97 63 L98 68 L95 65 L92 68 L93 63 L89 60 L94 60 Z' fill='%23f59e0b' opacity='0.35'/%3E%3Cpath d='M35 75 L36 80 L41 80 L37 83 L38 88 L35 85 L32 88 L33 83 L29 80 L34 80 Z' fill='%23fcd34d' opacity='0.38'/%3E%3Ccircle cx='55' cy='45' r='1.5' fill='%23fde68a' opacity='0.6'/%3E%3Ccircle cx='88' cy='88' r='1.2' fill='%23fbbf24' opacity='0.5'/%3E%3Ccircle cx='12' cy='95' r='1' fill='%23fde68a' opacity='0.45'/%3E%3C/svg%3E");--dt-pattern-size: 120px 120px;--dt-pattern-opacity: .42;--dt-text: #e0e7ff;--dt-muted: #a5b4fc;--dt-name: #fbbf24;--dt-name-shadow: 0 0 18px rgba(251, 191, 36, .45);--dt-border: rgba(251, 191, 36, .3);--dt-shadow: 0 16px 44px rgba(12, 20, 69, .55);--dt-label: #fde68a;--dt-input-bg: rgba(12, 20, 69, .75);--dt-input-border: rgba(251, 191, 36, .28);--dt-input-text: #f8fafc;--dt-input-placeholder: #818cf8;--dt-input-focus-border: #fbbf24;--dt-input-focus-ring: rgba(251, 191, 36, .2);--dt-accent: #fbbf24;--dt-accent-shadow: 0 0 14px rgba(251, 191, 36, .4);--dt-avatar-border: rgba(251, 191, 36, .5);--dt-avatar-shadow: 0 0 18px rgba(251, 191, 36, .2);--dt-avatar-placeholder-bg: rgba(30, 27, 75, .9);--dt-channel-bg: rgba(12, 20, 69, .65);--dt-channel-border: rgba(251, 191, 36, .2);--dt-btn-primary: linear-gradient(135deg, #b45309, #d97706);--dt-btn-primary-shadow: 0 4px 18px rgba(251, 191, 36, .35);--dt-btn-secondary-bg: rgba(12, 20, 69, .8);--dt-btn-secondary-text: #fde68a;--dt-btn-secondary-border: rgba(251, 191, 36, .3);--dt-card-bg: linear-gradient(165deg, rgba(8, 14, 52, .97) 0%, rgba(18, 16, 58, .95) 55%, rgba(12, 20, 48, .97) 100%);--dt-card-border: rgba(251, 191, 36, .42);--dt-card-shadow: 0 0 0 1px rgba(251, 191, 36, .14), 0 1px 0 rgba(255, 255, 255, .1) inset, 0 32px 64px -10px rgba(0, 0, 0, .58), 0 16px 32px -8px rgba(0, 0, 0, .38)}.theme-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:8px}.theme-picker-card{position:relative;border:2px solid var(--purple-200);border-radius:12px;padding:0;cursor:pointer;overflow:hidden;background:var(--surface);transition:border-color .2s,box-shadow .2s,transform .15s;text-align:left;font-family:inherit}.theme-picker-card:hover{border-color:var(--purple-400);transform:translateY(-2px);box-shadow:var(--shadow)}.theme-picker-card.selected{border-color:var(--purple-600);box-shadow:0 0 0 3px #7c3aed33}.theme-picker-preview{height:72px;border-radius:10px 10px 0 0;margin:0;padding:10px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;max-width:none;box-shadow:none;border:none}.theme-picker-preview.donate-container{margin:0;border-radius:10px 10px 0 0}.theme-picker-meta{padding:8px 10px 10px}.theme-picker-name{font-size:.82rem;font-weight:700;color:var(--purple-800);line-height:1.2}.theme-picker-desc{font-size:.72rem;color:var(--text-muted);margin-top:2px;line-height:1.3}.theme-picker-check{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:var(--purple-600);color:#fff;font-size:.75rem;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #7c3aed66}.donate-theme-preview-wrap{margin-top:12px;border:1px solid var(--purple-200);border-radius:12px;overflow:hidden}.donate-theme-preview-label{font-size:.78rem;font-weight:600;color:var(--text-muted);padding:8px 12px;background:var(--purple-50);border-bottom:1px solid var(--purple-100)}.donate-theme-preview-wrap .donate-container{margin:0;max-width:none;border-radius:0;border:none;box-shadow:none;padding:24px 20px}.donate-theme-preview-wrap .donate-container.donate-theme-classic,.donate-container[class*=donate-theme-] .donate-promptpay-line{color:var(--dt-accent, var(--purple-600))}
