/* Backend add-on styles. Scoped so the original design is untouched. */
.sp-toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,16px);background:#0d1421;color:#fff;font-weight:600;font-size:.86rem;line-height:1.3;font-family:inherit;border-radius:11px;padding:11px 17px;box-shadow:0 10px 30px rgba(0,0,0,.25);z-index:9999;opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;max-width:calc(100% - 32px);text-align:center}
.sp-toast.show{opacity:1;transform:translate(-50%,0)}
.sp-toast.bad{background:#b3261e}
.sp-save[disabled]{opacity:.6;cursor:wait}
.cl-wrap{max-width:1040px;margin:0 auto;padding:28px 18px 64px}
.cl-card{background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:24px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.cl-h{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between;margin:0 0 18px}
.cl-h h1{margin:0 0 4px;font-size:1.7rem;letter-spacing:-.02em}
.cl-h p{margin:0;color:#64708a;font-size:.93rem}
.cl-in{width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid #d5dbe7;border-radius:10px;font:inherit;background:#fff}
.cl-in:focus{outline:2px solid #2d5bff55;border-color:#2d5bff}
.cl-f{margin:0 0 14px}.cl-f label{display:block;font-weight:600;font-size:.88rem;margin:0 0 5px}
.cl-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #2d5bff;background:#2d5bff;color:#fff;font-weight:600;font-size:.92rem;line-height:1.3;font-family:inherit;padding:11px 18px;border-radius:10px;cursor:pointer;text-decoration:none}
.cl-btn.cl-sec{background:#fff;color:#1c2540;border-color:#d5dbe7}
.cl-btn.w{width:100%}
.cl-tabs{display:flex;gap:4px;background:#f2f5fa;border-radius:12px;padding:4px;margin:0 0 18px}
.cl-tabs button{flex:1;border:0;background:none;font-weight:600;font-size:.9rem;line-height:1.3;font-family:inherit;color:#64708a;padding:9px;border-radius:9px;cursor:pointer}
.cl-tabs button.on{background:#fff;color:#0d1421;box-shadow:0 1px 3px rgba(15,23,42,.1)}
.cl-msg{margin:10px 0 0;font-size:.86rem;color:#0f8a4f;min-height:1.2em}.cl-msg.bad{color:#dc2626}
.cl-hide{display:none!important}
.cl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cl-pc{background:#fff;border:1px solid #e3e8f0;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.cl-art{aspect-ratio:4/3;background:#f2f5fa;display:grid;place-items:center;position:relative;border-bottom:1px solid #e3e8f0}
.cl-art img{width:100%;height:100%;object-fit:cover}.cl-art img.ic{width:44px;height:44px;object-fit:contain}
.cl-k{position:absolute;left:8px;top:8px;font-size:.66rem;font-weight:700;text-transform:uppercase;background:#fff;border:1px solid #e3e8f0;border-radius:99px;padding:2px 8px;color:#41496b}
.cl-b{padding:11px 12px;display:flex;flex-direction:column;gap:3px}
.cl-b b{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-b span{font-size:.76rem;color:#64708a}
.cl-act{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.cl-act button{font-weight:600;font-size:.75rem;line-height:1.3;font-family:inherit;border:1px solid #d5dbe7;background:#fff;border-radius:8px;padding:4px 9px;cursor:pointer}
.cl-act button.d{color:#b91c1c;border-color:#f3d3d3}
.cl-empty{text-align:center;padding:48px 16px;color:#64708a}
.cl-banner{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;background:#f4f8ff;border:1px solid #dbe6fb;border-radius:12px;padding:12px 15px;margin:0 0 16px;font-size:.88rem}
@media(max-width:1000px){.cl-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.cl-grid{grid-template-columns:repeat(2,1fr)}.cl-card{padding:16px}}
@media(max-width:480px){.cl-grid{grid-template-columns:1fr}}

/* header account button */
.sp-acct{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:99px;background:#1b86ea;color:#fff!important;font:700 .88rem/1 'DM Sans',system-ui,sans-serif;text-decoration:none;white-space:nowrap;flex:none;border:0}
.sp-acct:hover{background:#1673cc}
.sp-acct.in{background:#eef3fb;color:#0f1226!important;padding:0 14px 0 6px}
.sp-av{width:30px;height:30px;border-radius:50%;background:#1b86ea;color:#fff;display:grid;place-items:center;font-weight:800;font-size:.85rem}
.sp-an{max-width:110px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:700px){.sp-acct{height:38px;padding:0 13px;font-size:.82rem}.sp-acct.in .sp-an{display:none}.sp-acct.in{padding:0 4px}}
@media(max-width:360px){.sp-acct:not(.in){padding:0 10px}}
/* auth gate (android builder) */
.sp-gate .sg-btn{display:inline-block;margin:4px;padding:12px 22px;border-radius:99px;font-weight:700;text-decoration:none;background:#1b86ea;color:#fff;line-height:1.2}
.sp-gate .sg-btn.sg-alt{background:#eef1fb;color:#0f1226}
/* empty search pill when its label is hidden */
@media(max-width:1280px){html body .hd-search{min-width:0!important;width:42px!important;padding:0!important;justify-content:center}html body .hd-search span{display:none}}

/* make sure global form/button styles never blow these up */
.cl-in{height:44px;min-height:0;line-height:1.3;border-radius:10px;padding:0 13px}
textarea.cl-in{height:auto;padding:11px 13px}
.cl-btn{min-height:44px;box-sizing:border-box;white-space:nowrap;line-height:1.2}
.cl-h .cl-btn{min-height:44px}
.cl-act button{min-height:0;line-height:1.3}
.cl-tabs button{min-height:0;line-height:1.3}
.cl-h>div:last-child{align-items:center}
@media(max-width:560px){.cl-h>div:last-child{width:100%}.cl-h #pQ{flex:1;min-width:0!important}}
.sp-gate .sg-btn{min-width:130px;text-align:center}
html body a.cl-btn,html body button.cl-btn{display:inline-flex;width:auto;height:44px;padding:0 20px;flex:none;align-items:center;justify-content:center;border-radius:10px;font-size:.92rem;font-weight:700}
html body .cl-btn.w{width:100%}
html body a.cl-btn.cl-sec{background:#fff;color:#1c2540;border:1px solid #d5dbe7}

html body .fav.sp-save,html body .fav.sp-star{display:inline-flex;align-items:center;gap:6px}
html body .fav.sp-star[aria-pressed="true"] span:first-child{color:#f59e0b}

.sp-fig{margin:22px auto;max-width:900px}.sp-fig img{display:block;width:100%;height:auto;border-radius:20px;box-shadow:0 10px 30px rgba(15,23,42,.12)}
