*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0F172A;--bg-deep: #0B1120;--surface: #1E293B;--surface-2: #26344B;--border: #334155;--border-soft: rgba(148, 163, 184, .14);--text: #F8FAFC;--text-2: #94A3B8;--text-3: #64748B;--gold-hi: #F9E9B0;--gold: #E8C766;--gold-deep: #A97B24;--gold-ink: #221A05;--gold-grad: linear-gradient(135deg, #F6E27A 0%, #E0B94F 48%, #A97B24 100%);--gold-grad-v: linear-gradient(180deg, #F6E27A 0%, #D9AE43 100%);--gold-soft: rgba(232, 199, 102, .12);--gold-border: rgba(232, 199, 102, .35);--gold-glow: 0 4px 18px rgba(232, 199, 102, .22);--royal: #3B6BC9;--royal-deep: #23407E;--ok: #34D399;--danger: #F87171;--z-sticky: 20;--z-header: 60;--z-dock: 100;--z-modal: 200;--z-reveal: 300;--z-toast: 400;--radius: 12px;--radius-lg: 16px;--font: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}html{background:var(--bg)}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--gold);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}::selection{background:#e8c7664d}.zb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#060c18b8;display:flex;align-items:center;justify-content:center;padding:24px;animation:zb-fade .15s ease}@keyframes zb-fade{0%{opacity:0}to{opacity:1}}.zb-card{width:100%;max-width:320px;text-align:center;border:1px solid transparent;border-radius:20px;padding:24px 20px 20px;font-family:var(--font);color:var(--text);background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(155deg,var(--gold-border),rgba(169,123,36,.5)) border-box;box-shadow:0 24px 60px #0009,var(--gold-glow);animation:zb-shake .6s cubic-bezier(.36,.07,.19,.97)}@keyframes zb-shake{10%,90%{transform:translate(-2px,1px) rotate(-1deg)}20%,80%{transform:translate(4px,-2px) rotate(1deg)}30%,50%,70%{transform:translate(-7px,2px) rotate(-1.5deg)}40%,60%{transform:translate(7px,-1px) rotate(1.5deg)}}@media (prefers-reduced-motion: reduce){.zb-card{animation:none}}.zb-bell{font-size:46px;line-height:1;animation:zb-ring .8s ease-in-out infinite;transform-origin:50% 8%}@keyframes zb-ring{0%,to{transform:rotate(0)}25%{transform:rotate(16deg)}50%{transform:rotate(-13deg)}75%{transform:rotate(8deg)}}@media (prefers-reduced-motion: reduce){.zb-bell{animation:none}}.zb-title{font-size:17px;margin:10px 0 2px}.zb-title strong{color:var(--gold)}.zb-sub{font-size:13.5px;color:var(--text-2);margin:0 0 16px}.zb-btns{display:flex;gap:10px}.zb-btn{flex:1;padding:12px 0;border-radius:12px;font-family:var(--font);font-size:14px;font-weight:700;cursor:pointer}.zb-btn--ghost{background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.zb-btn--go{border:none;background:var(--gold-grad);color:var(--gold-ink);box-shadow:inset 0 1px #ffffff80,var(--gold-glow)}.zb-nudge-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;font-family:var(--font);font-size:14px;font-weight:700;cursor:pointer;background:var(--surface);border:1px solid var(--gold-border);color:var(--text);transition:transform .1s ease}.zb-nudge-btn:active{transform:scale(.96)}.zb-nudge-btn:disabled{opacity:.55;cursor:default}.zb-nudge-btn--online{border-color:var(--gold);box-shadow:var(--gold-glow)}.zb-nudge-dot{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399cc}.zb-nudge-sent{color:var(--gold);font-size:13px;font-weight:700}.pu-page{min-height:100svh;background-color:var(--bg);background-image:radial-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(180deg,var(--bg-deep) 0%,var(--bg) 38%);background-size:20px 20px,100% 100%;display:flex;align-items:center;justify-content:center;font-family:var(--font);padding:12px 16px 20px}.pu-inner{text-align:center;width:100%;max-width:250px}.pu-logo{width:44px;height:44px;object-fit:contain;display:block;margin:0 auto 10px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.pu-avatar{font-size:42px;margin:0 auto 8px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.5));display:block}.pu-avatar--img{width:62px;height:62px;border-radius:50%;object-fit:cover;border:2px solid var(--gold-border);box-shadow:var(--gold-glow);filter:none}.pu-name{font-size:19px;font-weight:800;color:var(--text);margin:0 0 3px;letter-spacing:-.2px}.pu-hint{font-size:12px;color:var(--text-2);margin:0 0 20px}.pu-dots{display:flex;gap:14px;justify-content:center;margin-bottom:4px}@keyframes pu-shake{0%{transform:translate(0)}18%{transform:translate(-10px)}36%{transform:translate(10px)}54%{transform:translate(-7px)}72%{transform:translate(7px)}to{transform:translate(0)}}.pu-dots--shake{animation:pu-shake .55s ease}.pu-dots--shake .pu-dot--on{background:var(--danger);border-color:var(--danger);box-shadow:none}.pu-dot{width:13px;height:13px;border-radius:50%;border:2px solid var(--border);background:transparent;transition:background .1s ease,transform .1s ease,border-color .1s ease}.pu-dot--on{background:var(--gold-grad);border-color:var(--gold-border);box-shadow:inset 0 1px #ffffff80,var(--gold-glow);transform:scale(1.1)}.pu-error{font-size:12px;color:var(--danger);margin:0 0 10px;min-height:16px}.pu-pad{display:grid;grid-template-columns:repeat(3,58px);gap:9px;margin:8px auto 0;justify-content:center}.pu-key{width:58px;height:58px;border-radius:50%;border:1px solid var(--border);background:var(--surface);font-size:18px;font-weight:600;color:var(--text);cursor:pointer;box-shadow:0 2px 6px #00000059;font-family:inherit;transition:transform .08s ease,box-shadow .08s ease,background .08s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.pu-key:active{transform:scale(.91);background:var(--surface-2);box-shadow:inset 0 2px 6px #00000073}.pu-key--erase{background:transparent;border-color:transparent;box-shadow:none;font-size:18px;color:var(--text-2)}.pu-key--erase:active{background:transparent;box-shadow:none;transform:scale(.88)}.pu-forgot{display:inline-block;margin-top:18px;background:none;border:none;color:var(--text-3);font-size:12px;font-family:inherit;cursor:pointer;padding:6px 0;text-decoration:underline;transition:color .15s}.pu-forgot:hover{color:var(--text-2)}.pm-install{position:relative;display:flex}.pm-install-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--surface-2);border:1px solid var(--gold-border);color:var(--gold);cursor:pointer;transition:transform .1s ease}.pm-install-btn:active{transform:scale(.92)}.pm-install-pop{position:absolute;top:46px;right:0;z-index:130;width:min(290px,82vw);padding:14px 16px;border-radius:14px;font-family:var(--font);background:var(--surface);border:1px solid var(--gold-border);box-shadow:0 20px 50px #0009}.pm-install-pop-title{margin:0 0 10px;font-size:14px;font-weight:800;color:var(--text)}.pm-install-steps{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:7px}.pm-install-steps li{font-size:13px;color:var(--text);line-height:1.4}.pm-install-steps strong{color:var(--gold)}.pm-install-note{margin:11px 0 0;font-size:11.5px;color:var(--text-3);line-height:1.45}.fa-fab{position:fixed;right:16px;bottom:84px;z-index:200;width:58px;height:58px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--gold-grad);color:var(--gold-ink);box-shadow:inset 0 1px #ffffff80,0 10px 24px #00000080,var(--gold-glow);transition:transform .12s ease,background .15s}.fa-fab:active{transform:scale(.92)}.fa-fab--open{background:#ef4444;color:#fff;border:none;box-shadow:0 6px 20px #ef444466}.fa-fab-ic{font-size:26px;line-height:1}.fa-fab-ping{position:absolute;top:6px;right:6px;width:11px;height:11px;border-radius:50%;background:#34d399;border:2px solid var(--bg);box-shadow:0 0 8px #34d399cc}.fa-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;background:#00000073;animation:fa-fade-in .15s ease}@keyframes fa-fade-in{0%{opacity:0}to{opacity:1}}.fa-panel{position:fixed;right:16px;bottom:150px;z-index:195;width:min(370px,calc(100vw - 32px));height:min(60vh,500px);display:flex;flex-direction:column;overflow:hidden;border-radius:20px;border:1px solid transparent;font-family:var(--font);background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(155deg,var(--gold-border),rgba(169,123,36,.5)) border-box;box-shadow:0 28px 70px #000000a6,var(--gold-glow);animation:fa-in .16s ease}@keyframes fa-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.fa-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border)}.fa-head-av{font-size:22px}.fa-head-txt{display:flex;flex-direction:column;line-height:1.2;flex:1}.fa-head-txt strong{font-size:15px;color:var(--text)}.fa-head-txt span{font-size:11.5px;color:var(--text-2)}.fa-clear{background:none;border:none;font-size:16px;cursor:pointer;padding:6px;border-radius:8px;color:var(--text-3);transition:color .15s,background .15s}.fa-clear:hover{color:var(--text);background:var(--surface-2)}.fa-close{background:none;border:none;color:var(--text-2);font-size:20px;cursor:pointer;padding:6px 8px;border-radius:8px;font-weight:700;line-height:1;transition:color .15s,background .15s}.fa-close:hover{color:#ef4444;background:#ef44441a}.fa-chat{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.fa-welcome{color:var(--text-2);font-size:13.5px;line-height:1.5}.fa-welcome strong{color:var(--gold)}.fa-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.fa-chip{padding:8px 12px;border-radius:999px;font-family:var(--font);font-size:12.5px;font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--gold-border);cursor:pointer;transition:background .15s}.fa-chip:hover{background:#e8c76626}.fa-msg{display:flex;align-items:flex-end;gap:6px;max-width:88%}.fa-msg--user{align-self:flex-end}.fa-msg--assistant{align-self:flex-start}.fa-msg-ic{font-size:18px;flex-shrink:0}.fa-bubble{padding:10px 12px;border-radius:14px;font-size:14px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.fa-msg--user .fa-bubble{background:var(--gold-grad);color:var(--gold-ink);border-bottom-right-radius:4px;font-weight:600}.fa-msg--assistant .fa-bubble{background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px}.fa-typing{display:flex;gap:4px;padding:4px 0}.fa-typing span{width:7px;height:7px;border-radius:50%;background:var(--text-3);animation:fa-blink 1.2s infinite ease-in-out}.fa-typing span:nth-child(2){animation-delay:.2s}.fa-typing span:nth-child(3){animation-delay:.4s}@keyframes fa-blink{0%,80%,to{opacity:.3}40%{opacity:1}}.fa-inputbar{display:flex;gap:8px;padding:10px;border-top:1px solid var(--border)}.fa-input{flex:1;padding:11px 12px;border-radius:12px;font-family:var(--font);font-size:14px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);outline:none;transition:border-color .15s}.fa-input:focus{border-color:var(--gold-border)}.fa-send{width:44px;border:none;border-radius:12px;cursor:pointer;font-size:16px;background:var(--gold-grad);color:var(--gold-ink);box-shadow:inset 0 1px #fff6;transition:opacity .15s}.fa-send:disabled{opacity:.5;cursor:default}.fa-followup{align-self:flex-start;max-width:92%;padding:4px 0 2px;animation:fa-fade-in .2s ease}.fa-followup-label{font-size:11px;color:var(--text-3);margin-bottom:6px;letter-spacing:.3px}.fa-followup .fa-chips{margin-top:0}.fa-chip--follow{font-size:12px;padding:7px 11px;border-color:#e8c76666;animation:fa-chip-in .2s ease both}.fa-chip--follow:nth-child(2){animation-delay:.06s}.fa-chip--follow:nth-child(3){animation-delay:.12s}@keyframes fa-chip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fa-hint{text-align:center;font-size:11px;color:var(--text-3);padding:4px 0 8px;letter-spacing:.3px}.nb-btn{position:relative;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s ease,border-color .15s ease,transform .1s ease}.nb-btn:hover{color:var(--text)}.nb-btn:active{transform:scale(.92)}.nb-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--gold-grad);color:var(--gold-ink);font-size:10.5px;font-weight:800;font-family:var(--font);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg);box-sizing:border-box;box-shadow:0 2px 6px #00000073}.lay-root{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E"),radial-gradient(rgba(232,199,102,.05) 1px,transparent 1px);background-size:140px 140px,22px 22px}.lay-header{position:sticky;top:0;z-index:var(--z-header);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px;background:#0f172ae0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent 0%,rgba(232,199,102,.45) 50%,transparent 100%) 1}.lay-back-btn{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .1s ease,border-color .15s ease}.lay-back-btn:active{transform:scale(.9)}.lay-back-btn:hover{border-color:var(--gold-border);color:var(--text)}.lay-brand{display:flex;align-items:center;gap:10px;min-width:0}.lay-brand-logo{width:36px;height:36px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px var(--gold-border),0 2px 8px #00000080;background:#fff}.lay-brand-text{display:flex;flex-direction:column;min-width:0}.lay-brand-title{font-family:var(--font);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--text);white-space:nowrap}.lay-brand-sub{font-family:var(--font);font-size:11px;font-weight:600;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lay-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.lay-profile-btn{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);color:var(--text-2);transition:color .15s ease,border-color .15s ease,transform .1s ease}.lay-profile-btn:hover{text-decoration:none}.lay-profile-btn:active{transform:scale(.92)}.lay-profile-btn.active{color:var(--gold);border-color:var(--gold-border);background:var(--gold-soft)}.lay-main{flex:1;overflow-y:auto;padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}@media (min-width: 700px){.lay-main>*{max-width:560px;margin-left:auto;margin-right:auto}}.lay-nav{position:fixed;left:50%;transform:translate(-50%);bottom:calc(14px + env(safe-area-inset-bottom));width:min(92%,400px);border:1px solid transparent;background:linear-gradient(#141e33db,#141e33db) padding-box,linear-gradient(165deg,#f9e9b073,#334155e6 30%,#334155e6 70%,#e8c76659) border-box;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:999px;box-shadow:0 18px 40px #0009,0 2px 24px #e8c76612,inset 0 1px #f8fafc12;display:flex;justify-content:space-around;align-items:center;height:68px;z-index:var(--z-dock);padding:0 8px;touch-action:none}.lay-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;flex:1;height:56px;border-radius:999px;color:var(--text-2);outline:none;transition:color .18s ease}.lay-nav-item:hover{text-decoration:none}.lay-nav-item:focus-visible{box-shadow:0 0 0 3px var(--gold-border)}.lay-nav-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:13px;color:var(--text-2);background:transparent;transform-origin:center bottom;transition:width .18s ease,height .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease,transform .12s ease-out;will-change:transform}.lay-nav-label{font-size:9.5px;font-weight:700;font-family:var(--font);letter-spacing:.02em}.lay-nav-item--active{color:var(--gold)}.lay-nav-item--active .lay-nav-icon{width:40px;height:40px;background:var(--gold-grad);color:var(--gold-ink);box-shadow:inset 0 1px #ffffff8c,inset 0 -2px 4px #60420a73,var(--gold-glow)}
