/* Hội Câu — phần dùng chung của nhóm trang phụ (giỏ hàng, đơn, đã lưu, sản phẩm của tôi, thêm sản phẩm, đăng bài, tạo giải). Nạp trước CSS riêng của trang. */
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
body.has-add-actions{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
body.has-add-actions .bottom-nav{display:none}
button,input,select,textarea{font:inherit}
.bar{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:4px;min-height:52px;padding:6px 8px;background:rgba(232,238,237,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.bar .icon-btn{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer;display:grid;place-items:center;flex:none}
.bar .icon-btn svg{width:22px;height:22px}
.bar-title{flex:1;min-width:0;font-weight:800;font-size:17px;padding:0 4px}
.add-shell{max-width:560px;margin:0 auto}
.card{background:#fff;border-radius:16px;padding:16px;border:1px solid var(--line);margin-bottom:12px}
.card .sub{margin:0 0 12px;font-size:12.5px;color:var(--muted);line-height:1.35}
.app-select{width:100%}
.app-select-label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.app-select select{width:100%;min-height:56px;padding:0 14px;border-radius:14px;border:1px solid rgba(28,36,35,.18);background:#fff;color:var(--ink)}
.app-select select:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 1.5px var(--orange)}
.actions-bar{display:none;gap:10px;box-sizing:border-box;width:100%;position:fixed;left:0;right:0;bottom:0;z-index:9;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid color-mix(in srgb,var(--orange) 18%,transparent);box-shadow:0 -6px 18px rgba(0,0,0,.06)}
.actions-bar.show{display:flex}
.actions-bar .btn{flex:1 1 0;min-width:0;min-height:48px;border-radius:14px;border:0;font-weight:800;cursor:pointer;white-space:nowrap}
.actions-bar .btn:disabled{opacity:.65;cursor:default}
.btn-primary{background:linear-gradient(135deg,#FFB74D,#F57C00);color:#fff}
.btn-danger{background:#fff;color:#B42318;border:1px solid color-mix(in srgb,#B42318 35%,#fff) !important}
@media (min-width: 1100px) and (hover: hover) and (pointer: fine) {
  body.has-php-inbox.has-add-actions{padding-bottom:0}
}
.state{margin:24px 0;padding:28px 20px;border-radius:16px;background:#fff;text-align:center;border:1px solid var(--line)}
.state strong{display:block;font-size:16px;margin-bottom:6px}
.state p{margin:0 0 16px;color:var(--muted)}
.state .cta{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 18px;border-radius:12px;border:0;background:var(--orange);color:#fff;font-weight:700;cursor:pointer}
.state[hidden],#add-root[hidden]{display:none}
.err-banner{display:none;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#FEECEC;color:#B42318;font-size:13px;font-weight:700}
.err-banner.show{display:block}
@media (min-width: 1100px) and (hover: hover) and (pointer: fine) {
  body.has-php-inbox .actions-bar{position:sticky;left:auto;right:auto;bottom:0;margin-top:auto}
}
.sheet{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-end;justify-content:center}
.sheet[hidden]{display:none}
.sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.4);cursor:pointer}
:root{color-scheme:light;--teal:#0B6E6E;--orange:#F57C00;--ink:#1C2423;--muted:rgba(28,36,35,.55);--line:rgba(28,36,35,.08);--bg:#E8EEED}
