/* Live Bonus — refined interface. Keeps administrator theme settings. */
:root { --p:#087f68; --p2:#05644f; }
body { font-family: 'Segoe UI',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
button,a,input,textarea { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid #39b99c; outline-offset:3px; }
.public-page.wa-customer-start { padding:40px 24px; background:#eff4f1!important; color:#17352d; min-height:100vh; }
.wa-customer-start .start-shell { max-width:1120px; grid-template-columns:1fr 1.05fr; border:1px solid #dce6df; border-radius:28px!important; background:#fff; box-shadow:0 24px 70px #183c2810!important; overflow:hidden; }
.wa-customer-start .start-visual { padding:48px; min-height:700px; isolation:isolate; justify-content:center; }
.wa-customer-start .start-visual:after { content:''; position:absolute; width:340px; height:340px; border:1px solid #ffffff26; border-radius:50%; bottom:-150px; left:-90px; box-shadow:0 0 0 65px #ffffff08,0 0 0 130px #ffffff06; z-index:-1; pointer-events:none; }
.wa-customer-start .brand { top:40px; left:48px; }
.wa-customer-start .brand b { font-size:18px; letter-spacing:-.3px; }
.wa-customer-start .brand small { font-size:12px; color:inherit; opacity:.8; }
.wa-customer-start .brand-logo-img { width:48px; height:48px; background:#fff; border-radius:14px; }
.wa-customer-start .eyebrow { color:inherit; opacity:.85; font-size:11px; letter-spacing:.18em; }
.wa-customer-start .start-copy h1 { font-size:clamp(34px,4vw,52px); line-height:1.12; letter-spacing:-1.9px; margin:20px 0; }
.wa-customer-start .start-copy p { font-size:15px; line-height:1.8; color:inherit; opacity:.88; }
.wa-customer-start .support-status { margin-top:34px; padding:18px; border-radius:16px; background:#ffffff10; backdrop-filter:none; }
.wa-customer-start .support-status b { font-size:13px; }
.wa-customer-start .support-status small { display:block; font-size:12px; margin-top:5px; opacity:.85; }
.wa-customer-start .start-card { padding:44px; background:#fff; color:#17352d; min-width:0; }
.wa-customer-start .card-head { align-items:flex-start; }
.wa-customer-start .card-head small { font-size:10px; letter-spacing:.15em; color:#087f68; }
.wa-customer-start .card-head h2 { font-size:30px; letter-spacing:-1px; margin:10px 0; }
.wa-customer-start .card-head p { font-size:13px; line-height:1.7; color:#667a71; }
.wa-customer-start .online-pill { font-size:10px; padding:8px 10px; background:#e4f5ec; color:#13704c; white-space:nowrap; height:auto; }
.wa-customer-start .offline-pill { background:#edf0f3; color:#536477; }
.wa-customer-start .form { gap:17px; }
.wa-customer-start .form label { font-size:13px; }
.wa-customer-start .form input:not([type=radio]):not([type=hidden]) { min-height:50px; border:1px solid #dbe5df; background:#f8faf8; border-radius:12px; color:#17352d; font-size:16px; padding:12px 14px; }
.wa-customer-start .form input::placeholder { color:#8b9891; font-size:13px; }
.wa-customer-start .claim-bonus-section { padding:0; border:0; background:none; }
.wa-customer-start .claim-bonus-head { margin:0 0 12px; }
.wa-customer-start .claim-bonus-head span { font-size:10px; letter-spacing:.08em; color:#087f68; }
.wa-customer-start .claim-bonus-head b { font-size:14px; color:#17352d; margin-top:6px; }
.wa-customer-start .claim-bonus-head small { background:#f0f4f1; color:#667a71; }
.wa-customer-start .claim-bonus-grid { display:grid; grid-template-columns:1fr; gap:9px; max-height:260px; overflow-y:auto; padding:4px; }
.wa-customer-start .claim-option { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:12px; padding:14px 36px 14px 14px; min-height:76px; border:1px solid #dbe5df; border-radius:14px; background:#fff; color:#17352d; box-shadow:none; cursor:pointer; }
.wa-customer-start .claim-option:has(input:checked) { border-color:#087f68; background:#edf8f2; box-shadow:0 0 0 1px #087f68; }
.wa-customer-start .claim-option:focus-within { outline:3px solid #88d3bc; outline-offset:2px; }
.wa-customer-start .claim-option b { color:#17352d; font-size:13px; }
.wa-customer-start .claim-option small { color:#667a71; font-size:12px; line-height:1.5; }
.wa-customer-start .claim-icon { background:#eef6f0; border-radius:12px; width:40px; height:40px; flex-shrink:0; }
.wa-customer-start .guest-note { background:#f6f8f6; border-color:#e5ebe7; color:#667a71; font-size:12px; line-height:1.6; padding:12px; }
.wa-customer-start .button.full { min-height:52px; border-radius:12px; background:#087f68; color:#fff; font-size:14px; box-shadow:0 6px 16px #087f6820; }
.wa-customer-start .button.full:hover { background:#05644f; }
.wa-customer-start .privacy-note { border:0; background:none; color:#76877e; padding:0; margin-top:20px; }
.wa-customer-start .privacy-note p { font-size:11px; line-height:1.6; }
.admin-login-page { min-height:100dvh; display:grid; place-items:center; background:#edf4ef; color:#17352d; }
.admin-login-card { background:#fff; border:1px solid #dce6df; box-shadow:0 24px 70px #183c2810; padding:36px; }
.admin-login-card h1 { font-size:26px; letter-spacing:-.8px; }
.admin-login-card p { color:#667a71; font-size:14px; line-height:1.6; }
.admin-login-card .form input { background:#f8faf8; border-color:#dbe5df; color:#17352d; font-size:16px; min-height:48px; }
.admin-login-card .button { min-height:48px; font-size:14px; }
.chat-app { display:flex; flex-direction:column; height:calc(100dvh - 40px); }
.chat-app .message-list { flex:1; min-height:0; overscroll-behavior:contain; }
.chat-app .message-bubble p { font-size:14px; line-height:1.65; overflow-wrap:anywhere; }
.chat-app .message-meta b,.chat-app .message-meta span { font-size:11px; }
.chat-app .message-composer input { font-size:16px; min-width:0; }
.chat-app .message-composer { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
.chat-app .icon-button { min-width:44px; min-height:44px; }
.chat-app .customer-summary small,.chat-app .chat-footer { font-size:11px; }
.chat-app .customer-summary strong,.chat-app .chat-agent span { font-size:12px; }
.enterprise-sidebar nav a { font-size:13px; padding:12px; }
.enterprise-stat-grid article { border-radius:16px; padding:18px; }
.enterprise-stat-grid small { font-size:12px; }
.enterprise-stat-grid strong { font-size:28px; }
.inbox-copy b { font-size:13px; }
.inbox-copy p { font-size:12px; }
.inbox-copy small { font-size:10px; }
.settings-form label { font-size:13px; }
@media(max-width:900px) {
 .wa-customer-start .start-shell { grid-template-columns:1fr; max-width:640px; }
 .wa-customer-start .start-visual { min-height:0; padding:32px; }
 .wa-customer-start .brand { position:static; margin-bottom:36px; }
 .wa-customer-start .start-copy h1 { max-width:520px; font-size:36px; }
 .wa-customer-start .support-status { margin-top:22px; }
}
@media(max-width:600px) {
 .public-page.wa-customer-start { padding:0; }
 .wa-customer-start .start-shell { border:0; border-radius:0; }
 .wa-customer-start .start-visual,.wa-customer-start .start-card { padding:28px 22px; }
 .wa-customer-start .start-copy h1 { font-size:34px; }
 .wa-customer-start .start-copy p { font-size:14px; }
 .wa-customer-start .card-head h2 { font-size:27px; }
 .wa-customer-start .claim-bonus-grid { max-height:300px; }
 .chat-body .chat-app { height:100dvh; border-radius:0; }
 .admin-login-card { padding:26px; }
}
@media(prefers-reduced-motion:reduce) { *,*:before,*:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

.wa-sidebar-top,.wa-chat-header { background:#f1f6f3!important; }
.wa-search { border:1px solid #dce6df; border-radius:12px; }
.wa-chat-item.selected { background:#e8f5ee!important; box-shadow:inset 3px 0 #087f68; }
.wa-chat-row b { font-size:14px!important; }
.wa-chat-row.sub p { font-size:12px!important; }
.wa-message p { line-height:1.65; overflow-wrap:anywhere; }
@media(min-width:1100px) { .wa-shell { width:calc(100vw - 32px)!important; height:calc(100dvh - 32px)!important; margin:16px!important; border-radius:18px!important; border:1px solid #dce6df; } }
@media(max-width:600px) { .wa-customer-start .start-shell { border-radius:0!important; } }

/* Modern 2026 polish + rule-based auto reply */
:root{--modern-green:#087f68;--modern-ink:#10231d;--modern-soft:#f4f8f6;--modern-line:#dbe7e1}
.theme-manager-box{border-radius:20px!important;border:1px solid var(--modern-line)!important;box-shadow:0 12px 36px rgba(16,35,29,.05)!important;background:linear-gradient(180deg,#fff,#fbfdfc)!important}
.theme-manager-head h3{letter-spacing:-.45px}.bot-free-badge{padding:8px 11px;border-radius:999px;background:#e7f8ef;color:#087f68;font-size:10px;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.auto-reply-tip{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:14px 16px;border-radius:14px;background:#eef8f3;border:1px solid #d7eee3;font-size:12px;color:#49675d}.auto-reply-tip b{color:#087f68;white-space:nowrap}.auto-reply-tip code{background:#fff;padding:2px 6px;border-radius:6px}
.rule-list{display:grid;gap:10px;margin:16px 0}.rule-card{display:flex;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--modern-line);border-radius:16px;background:#fff;transition:.2s ease}.rule-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(16,35,29,.06)}.rule-card.inactive{opacity:.55}.rule-main{min-width:0}.rule-keyword{display:inline-flex;padding:6px 10px;border-radius:9px;background:#10231d;color:#fff;font-weight:800;font-size:12px}.rule-type{margin-left:6px;font-size:10px;font-weight:800;color:#087f68;background:#e8f7f0;padding:5px 8px;border-radius:999px}.rule-main p{margin:10px 0 0;color:#536b62;font-size:13px;line-height:1.55;white-space:pre-wrap}.rule-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.rule-actions small{color:#789087;font-size:10px}.mini-rule-btn{border:1px solid #cfe2d9;background:#eef8f3;color:#087f68;border-radius:9px;padding:7px 10px;font-weight:800;cursor:pointer}.mini-rule-btn.danger{background:#fff2f2;color:#b43d3d;border-color:#f2d0d0}.new-rule-panel{margin-top:18px;padding:18px;border-radius:16px;background:#f6faf8;border:1px solid var(--modern-line)}.new-rule-panel h4{margin:0 0 14px;color:var(--modern-ink)}.rule-form-grid{display:grid;grid-template-columns:1.5fr 1fr .6fr;gap:12px}.empty-rule{padding:24px;text-align:center;border:1px dashed #cbded5;border-radius:14px;color:#789087;background:#fbfdfc}
.admin-chat-shell,.chat-app{box-shadow:0 24px 70px rgba(16,35,29,.12)!important;border:1px solid rgba(219,231,225,.9)!important}.chat-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.message-composer{background:rgba(255,255,255,.92)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.message-composer input{border-radius:14px!important}.message-composer button{border-radius:13px!important;font-weight:800!important}.message-bubble{box-shadow:0 5px 18px rgba(0,0,0,.05)}
@media(max-width:700px){.rule-card{flex-direction:column}.rule-actions{justify-content:flex-start}.rule-form-grid{grid-template-columns:1fr}.bot-free-badge{display:none}}
