:root{font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;color:#17212b;background:radial-gradient(circle at top left,rgba(255,205,122,.92),transparent 28%),radial-gradient(circle at top right,rgba(115,214,203,.88),transparent 24%),linear-gradient(180deg,#fff5e3,#fffdf8 52%,#eef8fb);line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit}.shell{min-height:100vh;max-width:520px;margin:0 auto;display:flex;flex-direction:column;padding:10px 12px 18px}.eyebrow,.card-kicker{margin:0 0 6px;color:#b15d11;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}h1,h2,h3,strong{margin:0}.topbar{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-bottom:8px}.brand-badge,.icon-button{border:1.5px solid rgba(23,33,43,.14);border-radius:999px;background:#ffffffc7;color:#17212b;min-height:42px;min-width:42px;padding:0 14px;box-shadow:0 8px 20px #283a490f}.topbar-copy{min-width:0}.topbar-copy h1{font-size:clamp(1.6rem,7vw,2.2rem);line-height:.98;letter-spacing:-.05em}.brand-badge{font-weight:800;letter-spacing:.04em}.icon-button{font-weight:700}.icon-button.active{background:#17212b;color:#fff9ef}.discover-layout{display:flex;flex:1;flex-direction:column;gap:14px;min-height:0}.game-card,.favorites-panel,.empty-card{border-radius:26px;background:#ffffffc2;border:1px solid rgba(23,33,43,.06);box-shadow:0 16px 36px #4a61781a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.favorites-header h1{font-size:clamp(2rem,9vw,3rem);line-height:1;letter-spacing:-.04em}.game-card,.favorites-panel,.empty-card{padding:14px}.card-headline{display:flex;justify-content:space-between;gap:10px;align-items:start}.card-headline h2,.empty-card h2{font-size:clamp(1.65rem,7.2vw,2.25rem);line-height:.98;letter-spacing:-.04em}.meta-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 8px}.meta-row span{padding:7px 11px;border-radius:999px;background:#edf4f6;color:#2e4051;font-size:.84rem;font-weight:700}.summary{margin:0;color:#465564;font-size:.9rem;line-height:1.45}.compact-block{margin-top:14px}.block-label{margin:0 0 8px;color:#697786;font-size:.78rem;font-weight:700}.step-list{display:grid;gap:7px}.step-card,.favorite-item{width:100%;border:0;border-radius:18px;background:#fff8ee;color:#17212b;text-align:left;box-shadow:inset 0 0 0 1px #17212b0a}.step-card{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:11px 12px}.step-card span{display:grid;place-items:center;width:36px;height:36px;border-radius:14px;background:#17212b;color:#fff9ef;font-weight:800}.step-card strong{font-size:.94rem}.tag-list,.favorite-tags{display:flex;flex-wrap:wrap;gap:7px}.tag-chip,.favorite-tags span{padding:7px 11px;border-radius:999px;background:#f5efe2;color:#475567;font-size:.84rem;font-weight:700}.bottom-bar{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px;width:100%;padding:6px;border-radius:18px;background:#ffffffe6;border:1px solid rgba(23,33,43,.06);box-shadow:0 8px 18px #2032431a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-bar.sticky{position:sticky;bottom:8px;z-index:10;margin-top:auto}.bottom-bar.inline{display:grid;margin-top:14px}.primary-button,.secondary-button{min-height:50px;border:0;border-radius:16px;font-weight:800}.primary-button{background:#17212b;color:#fff9ef}.secondary-button{background:#fff2ce;color:#17212b}.secondary-button.active{background:#17212b;color:#fff3d1}.favorites-panel{min-height:70vh}.favorites-header{margin-bottom:14px}.favorites-list{display:grid;gap:12px}.favorite-item{padding:16px;display:grid;gap:10px}.favorite-item strong{font-size:1.15rem}.empty-card{display:grid;gap:14px;justify-items:start;margin-top:10px}.toast{position:fixed;left:50%;top:18px;z-index:30;transform:translate(-50%);padding:10px 14px;border-radius:999px;background:#17212b;color:#fff9ef;font-size:.9rem;font-weight:700;box-shadow:0 12px 28px #17212b33}@media(max-width:600px){.shell{padding-left:10px;padding-right:10px;padding-bottom:14px}.bottom-bar{grid-template-columns:1fr 104px;padding:6px}.topbar{grid-template-columns:auto 1fr auto;gap:8px}}@media(max-height:760px){.topbar{margin-bottom:6px}.game-card,.favorites-panel,.empty-card{padding:12px}.meta-row{margin:8px 0 6px}.compact-block{margin-top:12px}.block-label{margin-bottom:6px}.step-list{gap:6px}.step-card{padding:10px 12px}.bottom-bar{padding:5px;gap:6px}.bottom-bar.sticky{bottom:4px}.primary-button,.secondary-button{min-height:46px}}
