:root{--ink:#1a1d1f;--navy:#1f2a44;--navy2:#2e3f66;--accent:#ff5c28;--cream:#f7f5f1;--sage:#8b9d83;--slate:#5c6168;--line:#e4e1da;--gold:#d8a857;--gold2:#f0ce8c;--bot-bg:#f5f0e8;--bot-bdr:#ece5d8;--shadow:0 12px 48px rgba(26,42,68,.14)}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:Inter,sans-serif;background:var(--cream);color:var(--ink)}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 20% 20%,rgba(216,168,87,.07) 0,transparent 60%),radial-gradient(ellipse at 80% 80%,rgba(31,42,68,.06) 0,transparent 60%)}.app{min-height:100vh;position:relative;z-index:1;flex-direction:column;padding:20px 16px 32px}.app,.brand-bar{display:flex;align-items:center}.brand-bar{width:100%;max-width:480px;justify-content:space-between;margin-bottom:16px}.brand-left{gap:10px}.brand-left,.brand-logo{display:flex;align-items:center}.brand-logo{width:36px;height:36px;background:var(--navy);border-radius:10px;justify-content:center;flex-shrink:0}.brand-logo svg{width:20px;height:20px;fill:var(--gold)}.brand-left h1{font-family:Bebas Neue,sans-serif;font-size:18px;letter-spacing:1px;color:var(--navy)}.brand-left h1 span{color:var(--accent)}.badge{border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:10px;font-weight:600;color:var(--slate);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:#fff}.chat-card{width:100%;max-width:480px;background:#fff;border-radius:24px;box-shadow:var(--shadow);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;height:min(680px,85vh)}.chat-header{background:linear-gradient(135deg,var(--navy2),var(--navy));padding:16px 18px;flex-shrink:0;position:relative;overflow:hidden}.chat-header:before{content:"";position:absolute;top:-20px;right:-20px;width:100px;height:100px;border-radius:50%;background:rgba(216,168,87,.12);pointer-events:none}.header-row{gap:12px;position:relative}.assistant-avatar,.header-row{display:flex;align-items:center}.assistant-avatar{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--gold),var(--gold2));justify-content:center;font-size:22px;flex-shrink:0;border:2px solid hsla(0,0%,100%,.2)}.assistant-info{flex:1 1;min-width:0}.assistant-info h2{font-size:15px;font-weight:700;color:#fff}.assistant-info p{font-size:11px;color:hsla(0,0%,100%,.55);margin-top:2px}.live-pill{display:flex;align-items:center;gap:5px;margin-left:auto;background:rgba(139,157,131,.25);border:1px solid rgba(139,157,131,.4);padding:4px 10px;border-radius:999px;flex-shrink:0}.live-pill .dot{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:blink 2s infinite}.live-pill .lbl{font-size:11px;color:#4ade80;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.plans-strip{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line);justify-content:space-evenly;overflow-x:auto;flex-shrink:0;scrollbar-width:none}.plans-strip::-webkit-scrollbar{display:none}.plan-card{flex:0 0 auto;min-width:118px;display:flex;flex-direction:column;gap:1px;padding:7px 12px;border-radius:10px;border:1px solid var(--line);background:var(--cream);cursor:pointer;transition:all .15s}.plan-card:hover{border-color:var(--navy);background:#eef0f5}.plan-card h3{font-size:11px;font-weight:700;color:var(--navy);margin-bottom:0}.plan-card .meta{font-size:10px;color:var(--slate)}.plan-card .price{font-size:10px;color:var(--gold);font-weight:700}.chat-area{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.chat-area::-webkit-scrollbar{width:3px}.chat-area::-webkit-scrollbar-thumb{background:var(--line);border-radius:2px}.msg-wrap{display:flex;flex-direction:column;gap:3px}.msg-wrap.bot{align-items:flex-start}.msg-row,.msg-wrap.user{align-items:flex-end}.msg-row{display:flex;gap:7px}.msg-wrap.user .msg-row{flex-direction:row-reverse}.avatar-sm{width:28px;height:28px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px}.avatar-sm.bot{background:linear-gradient(135deg,var(--gold),var(--gold2))}.avatar-sm.user{background:#e4e4e4}.msg-bubble{padding:10px 14px;font-size:13.5px;line-height:1.65;max-width:82%;word-break:break-word;white-space:pre-wrap;animation:pop .18s ease}@keyframes pop{0%{opacity:0;transform:translateY(4px) scale(.97)}to{opacity:1;transform:none}}.msg-wrap.bot .msg-bubble{background:var(--bot-bg);color:var(--ink);border-radius:4px 14px 14px 14px;border:1px solid var(--bot-bdr)}.msg-wrap.bot .msg-bubble strong{color:var(--navy);background:rgba(216,168,87,.25);padding:1px 4px;border-radius:4px;font-weight:700}.msg-wrap.user .msg-bubble{background:var(--navy);color:#fff;border-radius:14px 4px 14px 14px}.msg-wrap.user .msg-bubble strong{color:var(--gold2);font-weight:700}.msg-time{font-size:10px;color:var(--slate);padding:0 6px}.msg-bubble.typing{display:flex;gap:4px;align-items:center;padding:13px 16px}.td{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:tdAnim 1.3s infinite}.td:nth-child(2){animation-delay:.2s}.td:nth-child(3){animation-delay:.4s}@keyframes tdAnim{0%,60%,to{opacity:.2;transform:scale(1)}30%{opacity:1;transform:scale(1.3)}}.chips-wrap{padding:0 14px 10px;display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0}.chip{padding:6px 13px;border-radius:999px;border:1px solid var(--line);background:var(--cream);color:var(--navy);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s;white-space:nowrap}.chip:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.input-bar{padding:12px 14px;border-top:1px solid var(--line);gap:8px;flex-shrink:0}.inp-wrap,.input-bar{display:flex;align-items:center}.inp-wrap{flex:1 1;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:0 12px;transition:border-color .2s}.inp-wrap:focus-within{border-color:var(--accent)}.input-bar input{flex:1 1;border:none;background:transparent;outline:none;padding:10px 0;font-family:inherit;font-size:13.5px;color:var(--ink)}.input-bar input::placeholder{color:var(--slate)}.send-btn{width:42px;height:42px;border-radius:12px;border:none;flex-shrink:0;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.send-btn:hover{background:var(--accent);transform:scale(1.04)}.send-btn:active{transform:scale(.96)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.send-btn svg{width:17px;height:17px;fill:#fff}.chat-footer{padding:8px 14px 10px;text-align:center;border-top:1px solid var(--line);flex-shrink:0}.powered{font-size:10.5px;color:var(--slate)}.powered b{color:var(--navy)}.stats-bar{width:100%;max-width:480px;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-top:14px}.stat-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 8px;text-align:center}.stat-box .num{font-family:Bebas Neue,sans-serif;font-size:20px;color:var(--navy);line-height:1}.stat-box .num.accent{color:var(--accent)}.stat-box .lbl{font-size:10px;color:var(--slate);margin-top:4px;text-transform:uppercase;letter-spacing:.4px}.modal-overlay{position:fixed;inset:0;background:rgba(26,29,31,.5);display:none;align-items:center;justify-content:center;z-index:100;padding:20px}.modal-overlay.open{display:flex}.modal{background:#fff;border-radius:16px;width:100%;max-width:360px;padding:24px}.modal h3{font-family:Bebas Neue,sans-serif;font-size:24px;letter-spacing:1px;color:var(--navy);margin-bottom:4px}.modal p.sub{font-size:12px;color:var(--slate);margin-bottom:16px}.modal label{display:block;font-size:12px;font-weight:600;margin-bottom:6px;color:var(--ink)}.modal .field{margin-bottom:14px}.modal input{width:100%;border:1px solid var(--line);border-radius:8px;padding:11px 14px;font-size:14px;font-family:inherit;outline:none}.modal input:focus{border-color:var(--accent)}.modal-actions{display:flex;gap:10px;margin-top:8px}.modal-actions button{flex:1 1;border:none;border-radius:8px;padding:12px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--cream);color:var(--navy)}#bmi-result{margin-top:14px;padding:12px;border-radius:10px;background:var(--cream);font-size:13px;display:none}#bmi-result .val{font-family:Bebas Neue,sans-serif;font-size:28px;color:var(--navy)}@media (max-width:480px){.app{padding:12px 0 0}.brand-bar,.stats-bar{padding:0 16px}.stats-bar{padding-bottom:16px}.chat-card{border-radius:20px 20px 0 0;max-width:100%;height:calc(100vh - 150px)}}.admin-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--navy);padding:20px}.admin-card{background:#fff;width:100%;max-width:380px;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.3)}.admin-card-header{background:var(--ink);color:#fff;padding:28px 28px 20px;position:relative}.admin-card-header:before{content:"";position:absolute;top:0;left:0;bottom:0;width:6px;background:var(--accent)}.admin-card-header h1{font-family:Bebas Neue,sans-serif;font-size:32px;letter-spacing:1.5px;padding-left:8px}.admin-card-header p{color:#aeb3b8;font-size:13px;margin-top:4px;padding-left:8px}.admin-card-body{padding:28px}.admin-field{margin-bottom:16px}.admin-field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--ink)}.admin-field input{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-size:14px;font-family:inherit;outline:none}.admin-field input:focus{border-color:var(--accent)}.admin-btn{width:100%;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:13px;font-size:15px;font-weight:600;cursor:pointer;margin-top:6px;transition:opacity .15s ease}.admin-btn:hover{opacity:.9}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-error{color:#c0392b;font-size:13px;margin-top:12px}.dash-header{background:var(--ink);color:#fff;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;position:relative}.dash-header:before{content:"";position:absolute;top:0;left:0;bottom:0;width:6px;background:var(--accent)}.dash-header h1{font-family:Bebas Neue,sans-serif;font-size:28px;letter-spacing:1.5px;padding-left:10px}.dash-header button{background:transparent;border:1px solid #444;color:#ddd;padding:8px 16px;border-radius:8px;font-size:13px;cursor:pointer;font-family:inherit}.dash-header button:hover{border-color:var(--accent);color:#fff}.dash-main{max-width:1100px;margin:0 auto;padding:28px 20px}.dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:14px;gap:14px;margin-bottom:24px}.dash-stat-card{background:#fff;border-radius:12px;padding:16px 18px;border-left:4px solid var(--accent)}.dash-stat-card .num{font-family:Bebas Neue,sans-serif;font-size:32px;line-height:1}.dash-stat-card .label{font-size:12px;color:var(--slate);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.dash-controls{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.dash-controls input,.dash-controls select{border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:13px;font-family:inherit;outline:none;background:#fff}.dash-controls input:focus,.dash-controls select:focus{border-color:var(--accent)}.dash-controls input{flex:1 1;min-width:180px}.dash-table-wrap{background:#fff;border-radius:12px;overflow:hidden;overflow-x:auto}.dash-table{width:100%;border-collapse:collapse;font-size:13px;min-width:700px}.dash-table th{text-align:left;padding:12px 14px;background:var(--ink);color:#aeb3b8;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.dash-table td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.dash-table tr:last-child td{border-bottom:none}.dash-table tr:hover{background:var(--cream)}.status-select{border:1px solid var(--line);border-radius:6px;padding:5px 8px;font-size:12px;font-family:inherit;background:#fff}.dash-empty{text-align:center;padding:60px 20px;color:var(--slate)}.dash-empty h3{font-family:Bebas Neue,sans-serif;font-size:24px;letter-spacing:1px;margin-bottom:8px;color:var(--ink)}.del-btn{background:none;border:none;color:var(--slate);cursor:pointer;font-size:12px;text-decoration:underline}.del-btn:hover{color:#c0392b}