:root{--g:#16a34a;--bg:#f6f7f5;--card:#fff;--tx:#1f2937;--mu:#6b7280;--ln:#e5e7eb;--warn:#dc2626}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font-family:-apple-system,Hiragino Sans,sans-serif;-webkit-text-size-adjust:100%}main{max-width:560px;margin:0 auto;padding:16px 16px 96px}h1{font-size:20px;margin:0 0 12px}h2{font-size:15px;margin:0 0 8px}.card{background:var(--card);border-radius:14px;padding:14px;margin-bottom:12px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.row{display:flex;align-items:center;justify-content:space-between;gap:8px}.mu{color:var(--mu);font-size:13px}.bar{height:10px;background:var(--ln);overflow:hidden;margin:4px 0 10px}.bar,.bar>i{border-radius:5px}.bar>i{display:block;height:100%;background:var(--g)}.bar.over>i{background:var(--warn)}.big{font-size:32px;font-weight:700}.fab{position:fixed;right:20px;bottom:24px;border-radius:30px;padding:16px 22px;font-weight:700;text-decoration:none;box-shadow:0 4px 12px rgba(0,0,0,.25)}.fab,button{background:var(--g);color:#fff;font-size:16px}button{border:0;border-radius:10px;padding:12px 16px;font-weight:600;width:100%}button.sub{background:#e5e7eb;color:var(--tx)}button.danger{background:#fee2e2;color:var(--warn)}button:disabled{opacity:.5}input,select,textarea{width:100%;font-size:16px;padding:10px;border:1px solid var(--ln);border-radius:10px;background:#fff}label{display:block;font-size:13px;color:var(--mu);margin:10px 0 4px}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{width:auto;padding:8px 14px;background:#e5e7eb;color:var(--tx)}.chips button.on{background:var(--g);color:#fff}.thumbs{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.thumbs img{width:72px;height:72px;object-fit:cover;border-radius:8px}.flag{display:inline-block;font-size:11px;background:#fef3c7;color:#92400e;border-radius:6px;padding:1px 6px;margin-left:4px}.err{color:var(--warn);font-size:14px}a.item{display:block;color:inherit;text-decoration:none}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}