:root{--page: #eef1f6;--card: #ffffff;--fg: #0f1728;--muted: #64748b;--border: rgba(100, 116, 139, .18);--accent: #2f7cf6;--accent-2: #1e5fd6;--accent-fg: #ffffff;--accent-soft: rgba(47, 124, 246, .11);--amber: #b45309;--amber-soft: #fdf1d7;--amber-line: #f3d48a;--green: #15803d;--green-soft: #e5f6ec;--red: #dc3d43;--red-soft: #fdeaea;--blue: #1d4ed8;--blue-soft: #e8effd;--field: #f1f3f8;--shadow-card: 0 1px 2px rgba(15, 23, 40, .05), 0 10px 30px -18px rgba(15, 23, 40, .25);--shadow-btn: 0 8px 18px -10px rgba(47, 124, 246, .65);--tab-bg: rgba(255, 255, 255, .92)}html[data-tg-theme=dark]{--page: #0e1621;--card: #17212b;--fg: #eef3f8;--muted: #8fa3b8;--border: rgba(148, 170, 195, .16);--accent: #5aa2f7;--accent-2: #2f7cf6;--accent-fg: #0b1420;--accent-soft: rgba(90, 162, 247, .16);--amber: #f5b83d;--amber-soft: rgba(245, 184, 61, .14);--amber-line: rgba(245, 184, 61, .4);--green: #4ade80;--green-soft: rgba(74, 222, 128, .13);--red: #f87171;--red-soft: rgba(248, 113, 113, .13);--blue: #93b4f8;--blue-soft: rgba(120, 156, 248, .15);--field: #1e2a37;--shadow-card: 0 1px 2px rgba(0, 0, 0, .35), 0 12px 32px -20px rgba(0, 0, 0, .6);--shadow-btn: 0 8px 18px -10px rgba(0, 0, 0, .55);--tab-bg: rgba(23, 33, 43, .92)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--page);color:var(--fg);font:15px/1.5 -apple-system,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;min-height:100vh}h2{margin:18px 2px 10px;font-size:21px;line-height:1.25;font-weight:800;letter-spacing:-.02em}h3{margin:16px 2px 8px;font-size:16.5px;font-weight:700;letter-spacing:-.01em}p{margin:8px 0}a{color:var(--accent)}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.wrap{max-width:640px;margin:0 auto;padding:0 14px calc(92px + env(safe-area-inset-bottom))}.appbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;margin:0 -14px 6px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;background:var(--page)}.brand{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.brand-logo{width:38px;height:38px;border-radius:12px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:var(--shadow-btn)}.brand-logo svg{width:22px;height:22px}.brand-name{font-size:16.5px;font-weight:800;letter-spacing:-.01em;line-height:1.15}.brand-sub{font-size:12px;color:var(--muted);line-height:1.2}.slots-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border-radius:999px;border:1px solid var(--amber-line);background:var(--amber-soft);color:var(--amber);font-size:13px;font-weight:700;white-space:nowrap}.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:14px;margin:10px 0;box-shadow:var(--shadow-card)}.card.tappable{cursor:pointer;transition:transform .08s ease,box-shadow .15s ease}.card.tappable:active{transform:scale(.985);box-shadow:0 1px 2px #0f17280f}.card.ok{border-color:#15803d59;background:linear-gradient(0deg,var(--green-soft),var(--green-soft)),var(--card)}.card.hero{padding:16px}.card.highlighted{border:1.5px solid var(--amber-line);box-shadow:0 0 0 3px #f5b83d24,var(--shadow-card)}.list>*+*{border-top:1px solid var(--border);margin-top:0}.list>*{padding:11px 0}.list>*:first-child{padding-top:2px}.list>*:last-child{padding-bottom:2px}.sep{border-top:1px solid var(--border);padding-top:10px;margin-top:10px}.card .card{background:var(--field);border-color:transparent;box-shadow:none}.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.5;white-space:nowrap}.pill.p-green{background:var(--green-soft);color:var(--green)}.pill.p-amber{background:var(--amber-soft);color:var(--amber)}.pill.p-blue{background:var(--blue-soft);color:var(--blue)}.pill.p-red{background:var(--red-soft);color:var(--red)}.pill.p-gray{background:var(--field);color:var(--muted)}.tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:var(--field);color:var(--muted);font-size:12.5px;font-weight:600;margin:0 6px 6px 0;white-space:nowrap}.tag.t-accent{background:var(--accent-soft);color:var(--accent)}.stars{color:#f5a623;font-weight:800;letter-spacing:1px}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:46px;padding:11px 16px;border:0;border-radius:13px;cursor:pointer;background:linear-gradient(180deg,#ffffff24,#00000012),var(--accent);color:var(--accent-fg);font:600 15px/1.2 inherit;font-family:inherit;margin:8px 0 2px;box-shadow:var(--shadow-btn);transition:transform .08s ease,filter .15s ease,opacity .15s ease}button:active{transform:scale(.97);filter:brightness(.93)}button:disabled{opacity:.55;box-shadow:none;transform:none}button.sec{background:var(--card);color:var(--fg);border:1px solid var(--border);box-shadow:none}button.sec:active{background:var(--field);filter:none}button.sm{width:auto;min-height:34px;padding:6px 13px;font-size:13.5px;border-radius:10px;margin:0}button.danger{background:linear-gradient(180deg,#ffffff1f,#00000014),var(--red);color:#fff}.iconbtn{width:38px;min-height:38px;height:38px;padding:0;margin:0;border-radius:12px;flex:0 0 auto;background:var(--card);color:var(--fg);border:1px solid var(--border);box-shadow:none}.iconbtn svg{width:20px;height:20px}.row{display:flex;gap:8px;align-items:center}.row>*{flex:1;min-width:0}.row>.iconbtn{flex:0 0 auto}.row>button.sm{flex:0 0 auto}label{display:block;margin:12px 0 5px;font-size:13px;font-weight:600;color:var(--muted)}label:first-child{margin-top:2px}input,select,textarea{width:100%;padding:11px 12px;background:var(--field);color:var(--fg);border:1.5px solid transparent;border-radius:12px;font:16px/1.4 inherit;font-family:inherit;margin:0;outline:none;transition:border-color .15s ease,background .15s ease}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--card)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.7}textarea{min-height:96px;resize:vertical}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%238ea3b8' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}input[type=date]{min-height:46px}.err{color:var(--red);background:var(--red-soft);border-radius:10px;padding:9px 12px;margin:10px 0 2px;font-size:13.5px;font-weight:500}.ok-text{color:var(--green);font-weight:600}.hint{color:var(--muted);font-size:13px;line-height:1.45}.money{font-weight:800;letter-spacing:-.01em}.chips{display:flex;flex-wrap:wrap;gap:0;align-items:center}.chips>span{margin:0 6px 6px 0}.chips label.chip{display:inline-flex;align-items:center;padding:8px 14px;margin:0 6px 6px 0;border:1.5px solid var(--border);border-radius:999px;background:var(--card);color:var(--fg);font-size:13.5px;font-weight:600;cursor:pointer;transition:all .12s ease;-webkit-user-select:none;user-select:none}.chips label.chip input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;margin:0}.chips label.chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);box-shadow:var(--shadow-btn)}.chips label.chip.dis{opacity:.45;cursor:not-allowed}.chips label.chip:active{transform:scale(.96)}.rolecard{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--border);border-radius:16px;background:var(--card);padding:14px;margin:10px 0;cursor:pointer;transition:all .12s ease}.rolecard.on{border-color:var(--accent);background:linear-gradient(0deg,var(--accent-soft),var(--accent-soft)),var(--card)}.rolecard .ic{width:44px;height:44px;border-radius:13px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:var(--field);color:var(--muted)}.rolecard.on .ic{background:var(--accent);color:var(--accent-fg)}.rolecard .ic svg{width:24px;height:24px}.rolecard b{display:block;font-size:15.5px;margin-bottom:2px}.rolecard .hint{font-size:13px}.tabs{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;justify-content:center;gap:2px;max-width:640px;margin:0 auto;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--tab-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border)}.tabs button{flex:1;flex-direction:column;gap:3px;min-height:52px;padding:6px 2px;margin:0;background:transparent;color:var(--muted);font:500 10.5px/1 inherit;font-family:inherit;border-radius:12px;box-shadow:none}.tabs button svg{width:23px;height:23px}.tabs button.on{color:var(--accent);font-weight:700;background:var(--accent-soft)}.tabs button:active{transform:scale(.94);filter:none;background:var(--accent-soft)}.ava{width:42px;height:42px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;color:#fff;font-size:17px;font-weight:800}.ava.lg{width:56px;height:56px;font-size:22px}.empty{text-align:center;padding:30px 16px;color:var(--muted)}.empty .em{width:64px;height:64px;margin:0 auto 10px;border-radius:22px;display:flex;align-items:center;justify-content:center;font-size:30px;background:var(--field);color:var(--muted)}.empty .em svg{width:30px;height:30px}.empty b{display:block;color:var(--fg);font-size:15px;margin-bottom:3px}.empty .hint{font-size:13px}.splash{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.splash .brand-logo{width:56px;height:56px;border-radius:18px}.splash .brand-logo svg{width:30px;height:30px}.spin{width:22px;height:22px;border-radius:50%;border:2.5px solid var(--border);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skel{border-radius:12px;background:linear-gradient(90deg,var(--field) 25%,var(--card) 45%,var(--field) 65%);background-size:220% 100%;animation:shimmer 1.3s infinite linear}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.skel-line{height:12px;margin:8px 0}.skel-line.w60{width:60%}.skel-line.w80{width:80%}.skel-line.w40{width:40%}.fade-in{animation:fadein .22s ease}@keyframes fadein{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.progress{height:7px;border-radius:999px;background:var(--field);overflow:hidden;margin:8px 0 4px}.progress>i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#ffb020);transition:width .4s ease}.chat{display:flex;flex-direction:column;gap:8px;margin:10px 0 4px}.bubble{max-width:86%;padding:9px 12px;border-radius:16px;font-size:14.5px;line-height:1.4}.bubble .meta{font-size:11px;opacity:.72;margin-top:3px}.bubble .mask{font-size:11.5px;font-style:italic;color:var(--amber);margin-top:3px}.bubble.mine{align-self:flex-end;background:var(--accent);color:var(--accent-fg);border-bottom-right-radius:5px}.bubble.theirs{align-self:flex-start;background:var(--field);border-bottom-left-radius:5px}.paywall{border:1.5px solid var(--amber-line);background:linear-gradient(0deg,var(--amber-soft),var(--amber-soft)),var(--card)}.paywall .zap{width:40px;height:40px;border-radius:12px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:var(--amber-soft);color:var(--amber);border:1px solid var(--amber-line)}.paywall .zap svg{width:21px;height:21px}.plan-row{display:flex;align-items:center;gap:12px;padding:11px 0}.plan-row+.plan-row{border-top:1px solid var(--border)}.plan-row .plan-info{flex:1;min-width:0}.plan-price{font-size:17px;font-weight:800;white-space:nowrap}.premium{background:linear-gradient(135deg,#2b3a8f,#4a2ea8 55%,#7a3bbd);color:#fff;border:0}.premium .hint{color:#ffffffbf}.premium .plan-price{color:#ffd76a}.promo-marks{display:inline-flex;align-items:center;gap:5px;margin:0 0 6px;padding:3.5px 10px;border-radius:999px;background:var(--amber-soft);border:1px solid var(--amber-line);color:var(--amber);font-size:12px;font-weight:700}.head-row{display:flex;align-items:center;gap:10px}.grow{flex:1;min-width:0}.mt0{margin-top:0}.mt8{margin-top:8px}.mt12{margin-top:12px}.center{text-align:center}.nav-row{display:flex;align-items:center;gap:10px;margin:6px 0 14px}.hero-title{font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:2px 0 4px}.kv{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 2px}.kv>div{font-size:13.5px;color:var(--muted)}.kv>div b{color:var(--fg);font-weight:700}.divider{height:1px;background:var(--border);margin:12px 0;border:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
