#app{min-height:100vh}:root{--bg: #fff7ec;--card: #ffffff;--primary: #ff8a5c;--primary-deep: #f0662e;--accent: #ffd166;--mint: #7bd8c2;--berry: #f2789f;--text: #5b4636;--text-light: #9a8168;--line: #ffe3c2;--radius: 20px;--shadow: 0 6px 18px rgba(240, 102, 46, .12);font-family:PingFang SC,HarmonyOS Sans SC,Microsoft YaHei,ui-rounded,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;overflow-x:hidden;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(48px 48px at 8% 12%,rgba(255,209,102,.35),transparent 70%),radial-gradient(64px 64px at 90% 8%,rgba(123,216,194,.28),transparent 70%),radial-gradient(40px 40px at 85% 85%,rgba(242,120,159,.22),transparent 70%),radial-gradient(56px 56px at 12% 88%,rgba(255,138,92,.18),transparent 70%);z-index:0}#app{position:relative;z-index:1}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-deep));color:#fff;border:none;border-radius:999px;padding:10px 24px;min-height:44px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .15s,box-shadow .15s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 22px #f0662e40}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-ghost{background:transparent;color:var(--text);border:2px dashed var(--line);border-radius:999px;padding:8px 20px;min-height:44px;font-size:14px;cursor:pointer;transition:border-color .15s}.btn-ghost:hover{border-color:var(--primary);color:var(--primary-deep)}.tag{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.tag-favorite{background:#ffe9ef;color:var(--berry)}.tag-normal{background:#eafaf5;color:#33997d}.tag-blacklist{background:#f1f1f1;color:#888}.page-title{font-size:26px;font-weight:800;margin:0 0 18px;display:flex;align-items:center;gap:10px}@media(max-width:600px){.card{padding:16px}.page-title{font-size:22px;margin-bottom:14px}.btn-primary,.btn-ghost{padding-inline:16px}}
