:root{--wine:#883840;--wine-soft:#a8485a;--champagne:#f4e9dc;--ink:#1b1418;--gold:#d9b36a;--blush:#e8c7cc;--bg:var(--tg-theme-bg-color,#1b1418);--bg2:var(--tg-theme-secondary-bg-color,#2a2024);--text:var(--tg-theme-text-color,#f4e9dc);--hint:var(--tg-theme-hint-color,#a99ca0);--accent:var(--wine-soft);--accent-text:#fff;--link:var(--gold);--danger:#e5484d;--radius:14px;--pad:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.35}:root[data-theme=light]{--bg:var(--tg-theme-bg-color,#f4e9dc);--bg2:var(--tg-theme-secondary-bg-color,#fff);--text:var(--tg-theme-text-color,#1b1418);--hint:var(--tg-theme-hint-color,#8a7c7e);--accent:var(--wine);--accent-text:#fff;--link:var(--wine)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);padding-bottom:calc(env(safe-area-inset-bottom) + 8px);overscroll-behavior:none}a{color:var(--link);text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.stack{flex-direction:column;gap:14px;display:flex}.screen{padding:var(--pad);flex-direction:column;gap:14px;max-width:640px;margin:0 auto;display:flex}.title{margin:4px 0 0;font-size:22px;font-weight:700}.subtitle{color:var(--hint);font-size:14px}.card{background:var(--bg2);border-radius:var(--radius);padding:14px}.row{align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.muted{color:var(--hint)}.price{color:var(--accent);font-weight:700}.gold{color:var(--gold)}.chips{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--bg2);color:var(--text);cursor:pointer;border:1px solid #0000;border-radius:999px;flex:none;padding:8px 14px}.chip.active{border-color:var(--accent);color:var(--accent)}.list{flex-direction:column;gap:10px;display:flex}.item{background:var(--bg2);border-radius:var(--radius);color:inherit;align-items:center;gap:12px;padding:12px;display:flex}.thumb{object-fit:cover;background:var(--bg2);border-radius:12px;flex:none;width:64px;height:64px}.thumb.lg{aspect-ratio:1;border-radius:var(--radius);width:100%;height:auto}.grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tile{background:var(--bg2);border-radius:var(--radius);color:inherit;flex-direction:column;display:flex;overflow:hidden}.tile img{aspect-ratio:1;object-fit:cover;background:var(--bg2);width:100%}.tile .body{flex-direction:column;gap:4px;padding:10px;display:flex}.tile .name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;display:-webkit-box;overflow:hidden}.btn{border-radius:var(--radius);background:var(--accent);width:100%;color:var(--accent-text);cursor:pointer;border:0;padding:16px;font-size:17px;font-weight:700}.btn:disabled{opacity:.55;cursor:default}.btn.secondary{background:var(--bg2);color:var(--text)}.btn.ghost{color:var(--link);background:0 0;padding:10px}textarea,input{border-radius:var(--radius);background:var(--bg2);width:100%;color:var(--text);font:inherit;resize:none;border:1px solid #0000;outline:none;padding:14px}textarea:focus,input:focus{border-color:var(--accent)}.card>*,.screen>*{min-width:0;max-width:100%}.card,.row>input,.row>.grow{min-width:0}.row>input{flex:1;width:auto}input[type=date]{appearance:none;max-width:100%}.counter{text-align:right;color:var(--hint);font-size:12px}.sticky{bottom:env(safe-area-inset-bottom,0);background:linear-gradient(transparent, var(--bg) 30%);padding:10px 0 4px;position:sticky}.center{text-align:center}.big{font-size:56px;line-height:1}.error{color:var(--danger);font-size:14px}.skeleton{background:var(--bg2);border-radius:var(--radius);height:72px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.code{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.tabbar{background:var(--bg2);padding:6px 0 calc(env(safe-area-inset-bottom) + 6px);z-index:20;border-top:1px solid #ffffff0f;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--hint);flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;font-size:11px;display:flex}.tab.active{color:var(--accent)}.tab-icon{font-size:20px;line-height:1}.with-tabbar{padding-bottom:84px}.wish-note{color:var(--hint);font-size:13px}select.sel{background:var(--bg2);width:100%;color:var(--text);font:inherit;border:0;border-radius:14px;padding:12px}
