*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #E8873A;--brand-d: #C4641A;--brand-l: #FEF0E6;--brand-ll: #FDF6EF;--bg: #F5EFE8;--card: #FFFFFF;--t1: #1A1A1A;--t2: #555555;--t3: #999999;--t4: #CCCCCC;--border: #EDE8E1;--green: #16A34A;--green-l: #F0FDF4;--blue: #2563EB;--blue-l: #EFF6FF;--red: #DC2626;--red-l: #FEF2F2;--purple: #7C3AED;--purple-l: #F5F3FF;--radius: 14px;--radius-sm:8px;--nav-h: 64px;--safe-b: env(safe-area-inset-bottom, 0px)}html,body{height:100%;background:var(--bg)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--t1);-webkit-font-smoothing:antialiased;overscroll-behavior:none}#root{max-width:430px;margin:0 auto;min-height:100vh;position:relative;background:var(--bg);overflow-x:hidden}.page{padding-bottom:calc(var(--nav-h) + var(--safe-b) + 16px);min-height:100vh}.card{background:var(--card);border-radius:var(--radius);padding:16px;margin:0 14px 12px}.card-flat{background:var(--card);border-radius:var(--radius)}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:opacity .15s}.btn:active{opacity:.8}.btn-primary{background:var(--brand);color:#fff}.btn-outline{background:var(--brand-l);color:var(--brand);border:1px solid #FBCFA0}.btn-full{width:100%;justify-content:center}.btn-sm{padding:7px 14px;font-size:13px}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:500}.pill-live{background:#fee2e2;color:#dc2626}.pill-free{background:var(--brand-l);color:var(--brand-d)}.pill-paid{background:#fef3c7;color:#92400e}.pill-green{background:var(--green-l);color:var(--green)}.pill-blue{background:var(--blue-l);color:var(--blue)}.pill-purple{background:var(--purple-l);color:var(--purple)}.sec-lbl{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--t3);padding:0 18px;margin:16px 0 8px}.divider{height:.5px;background:var(--border);margin:0 16px}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#ede8e1 25%,#f5efe8,#ede8e1 75%);background-size:800px 100%;animation:shimmer 1.4s infinite;border-radius:8px}.prog-track{height:6px;background:#ede8e1;border-radius:3px;overflow:hidden}.prog-fill{height:100%;border-radius:3px;transition:width .6s ease}.fab{position:fixed;bottom:calc(var(--nav-h) + var(--safe-b) + 16px);right:20px;width:52px;height:52px;border-radius:50%;background:var(--brand);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 4px 16px #e8873a66;z-index:100;transition:transform .15s}.fab:active{transform:scale(.92)}.img-wrap{overflow:hidden;position:relative;background:#ede8e1}.img-wrap img{width:100%;height:100%;object-fit:cover;display:block}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.toast{position:fixed;bottom:calc(var(--nav-h) + var(--safe-b) + 20px);left:50%;transform:translate(-50%);background:#1a1a1a;color:#fff;padding:10px 20px;border-radius:24px;font-size:13px;font-weight:500;white-space:nowrap;z-index:999;animation:slide-up .2s ease}.pull-hint{text-align:center;padding:14px 0 0;font-size:12px;color:var(--t4)}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .25s ease both}.chip-row{display:flex;gap:8px;padding:0 14px 12px;overflow-x:auto;scrollbar-width:none}.chip-row::-webkit-scrollbar{display:none}.chip{flex-shrink:0;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid var(--border);background:var(--card);color:var(--t2);cursor:pointer;white-space:nowrap;transition:all .15s}.chip.active{background:var(--brand);color:#fff;border-color:var(--brand)}.metric-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:.5px solid var(--border)}.metric-row:last-child{border-bottom:none;padding-bottom:0}.metric-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:20px}input[type=text],textarea{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;color:var(--t1);background:var(--card);outline:none;transition:border-color .15s}input[type=text]:focus,textarea:focus{border-color:var(--brand)}
