:root{--color-primary:#2d6a4f;--color-accent:#e07a1f;--color-bg:#f5efe6;--color-card:#fff;--color-text:#1f2937;--color-muted:#6b7280;--color-border:#e4e2dc;--color-danger:#dc2626;--color-success:#16a34a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;font-family:Noto Sans TC,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg);color:var(--color-text)}body{overscroll-behavior-y:contain}.container{max-width:480px;margin:0 auto;padding:16px 16px 80px}.card{background:var(--color-card);border-radius:12px;padding:16px;margin-bottom:12px;box-shadow:0 1px 2px rgba(0,0,0,.04)}.btn{display:inline-block;padding:12px 18px;border:0;border-radius:10px;background:var(--color-primary);color:#fff;font-weight:700;font-size:16px;cursor:pointer}.btn:disabled{background:#9ca3af}.btn-block{width:100%}.btn-outline{background:#fff;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-accent{background:var(--color-accent)}.btn-danger{background:var(--color-danger)}.btn-sm{padding:8px 12px;font-size:14px}.input{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:10px;font-size:16px;background:#fff}.tag{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:700}.tag-pending{background:#fef3c7;color:#92400e}.tag-delivered{background:#d1fae5;color:#065f46}.tag-failed{background:#fee2e2;color:#991b1b}.tag-skipped{background:#e5e7eb;color:#374151}.tab-bar{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--color-border);display:flex;height:64px;z-index:100}.tab-bar>a{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--color-muted);text-decoration:none;font-size:11px}.tab-bar>a.active{color:var(--color-primary);font-weight:700}.tab-bar>a .icon,h1{font-size:22px}h1{margin:8px 0 16px}h2{font-size:17px;margin:4px 0 8px}.muted{color:var(--color-muted);font-size:13px}.seq-circle{width:30px;height:30px;background:var(--color-primary);font-weight:800;font-size:14px}.seq-circle,.seq-pin{border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center}.seq-pin{width:32px;height:32px;background:#e07a1f;font-weight:700;font-size:13px;border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.3)}.custom-pin{background:transparent!important;border:none!important}