:root{--bg: var(--tg-theme-bg-color, #ffffff);--text: var(--tg-theme-text-color, #111111);--hint: var(--tg-theme-hint-color, #707579);--link: var(--tg-theme-link-color, #2481cc);--btn: var(--tg-theme-button-color, #2481cc);--btnText: var(--tg-theme-button-text-color, #ffffff);--secondaryBg: var(--tg-theme-secondary-bg-color, #f5f5f5);--danger: #d63a3a;--ok: #2aa568}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:var(--link)}.wrap{max-width:900px;margin:0 auto;padding:14px 14px 110px}.footerBar{position:fixed;left:0;right:0;bottom:0;padding:10px 14px;background:color-mix(in oklab,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-top:1px solid color-mix(in oklab,var(--hint) 18%,transparent)}.footerBar .inner{max-width:900px;margin:0 auto;display:flex;gap:10px}.footerBtn{flex:1;-webkit-appearance:none;appearance:none;border:0;border-radius:14px;background:var(--btn);color:var(--btnText);padding:14px;font-weight:700;font-size:16px}.footerBtn:disabled{opacity:.5}.modalOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modalBox{width:min(520px,100%);background:var(--secondaryBg);border-radius:18px;padding:14px;box-shadow:0 16px 50px rgba(0,0,0,.35);border:1px solid color-mix(in oklab,var(--hint) 20%,transparent)}.modalTitle{font-weight:800;margin-bottom:10px;font-size:16px}.modalInput{margin-bottom:12px;font-size:16px}.modalActions{display:flex;gap:10px;justify-content:stretch}.modalBtn{flex:1;-webkit-appearance:none;appearance:none;border:0;border-radius:14px;padding:12px 14px;font-weight:700;font-size:16px}.modalBtn.primary{background:var(--btn);color:var(--btnText)}.modalBtn.secondary{background:color-mix(in oklab,var(--bg) 55%,var(--secondaryBg));color:var(--text)}.hdr{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:12px}.hdr h1{font-size:18px;margin:0}.row{display:flex;gap:8px;align-items:center}.inputWrap{position:relative;flex:1;min-width:0}.inputWrap .input{padding-right:44px}.inputAction{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--ok);font-size:22px;line-height:1}.inputAction.danger{color:var(--danger)}.inputAction.onlyWhenFocused{display:none}.inputWrap:focus-within .inputAction.onlyWhenFocused{display:block}.inputAction.onlyWhenBlurred{display:block}.inputWrap:focus-within .inputAction.onlyWhenBlurred{display:none}.btn{-webkit-appearance:none;appearance:none;border:0;border-radius:10px;background:var(--btn);color:var(--btnText);padding:10px 12px;font-weight:600}.btn.secondary{background:var(--secondaryBg);color:var(--text);font-weight:600}.btn.secondary.dangerBtn{color:var(--danger);border:1px solid color-mix(in oklab,var(--danger) 30%,transparent)}.btn.secondary{white-space:nowrap}.btn.danger{background:transparent;color:var(--danger);border:1px solid color-mix(in oklab,var(--danger) 40%,transparent)}.input,select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in oklab,var(--hint) 30%,transparent);background:var(--secondaryBg);color:var(--text);font-size:16px}.card{background:var(--secondaryBg);border-radius:14px;padding:12px;margin:10px 0}.small{color:var(--hint);font-size:12px}.sectionTitle{margin:14px 0 8px;font-size:14px;color:var(--hint);text-transform:uppercase;letter-spacing:.04em}.item{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:8px;border-radius:10px}.item+.item{border-top:1px solid color-mix(in oklab,var(--hint) 16%,transparent)}.itemText{flex:1;min-width:0}.itemText.bought{color:var(--hint);text-decoration:line-through}.iconBtn{border:0;background:transparent;color:var(--hint);padding:10px;border-radius:12px;font-size:18px;line-height:1}.iconBtn.danger{color:var(--danger);font-size:20px}.toast{position:fixed;left:0;right:0;bottom:12px;display:flex;justify-content:center;pointer-events:none}.toast .msg{pointer-events:auto;background:rgba(0,0,0,.75);color:#fff;padding:10px 12px;border-radius:12px;max-width:92vw;font-size:14px}.toast .msg.danger{background:color-mix(in oklab,var(--danger) 80%,black)}.skel{opacity:.7;filter:grayscale(.2)}
