/* Refine is a page in the existing illustrated boutique, with its original
   character cards and gold/turquoise/parchment surface language. */
.approved-shop .shop-body[data-tab=refine]{width:94%;max-width:1560px;overflow:hidden;padding:6px 0 22px;min-height:0;flex:1}
.refine-hub{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.25fr);gap:20px;flex:1;min-height:0;color:#153e56}
.refine-hub [hidden]{display:none!important}
.refine-hub-collection,.refine-hub-detail,.refine-hub-empty{min-width:0;min-height:0;border:3px solid #f5c756;border-radius:24px;background:linear-gradient(135deg,#fff9e7,#fff2ce 65%,#f4dfaa);box-shadow:0 0 0 2px #8a5828,0 0 0 4px #ffeaa5,inset 0 0 0 2px #fffbe7,0 8px 20px #06354c55;overflow:hidden}
.refine-hub-collection{display:flex;flex-direction:column}
.refine-hub-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:2px solid #d8a24e;background:linear-gradient(#139cb0,#05617e);color:#fff7d9;flex:none}
.refine-hub-heading small,.refine-hub-eyebrow{font-size:10px;letter-spacing:1px;font-weight:900}
.refine-hub-heading h2{font:800 clamp(20px,1.8vw,29px)/1.1 'Baloo 2',sans-serif;color:#fff8df;margin:2px 0 0;text-shadow:0 2px #064763}
.refine-hub-heading>b{font-size:12px;border:1px solid #a8f5f0;border-radius:20px;padding:5px 9px;white-space:nowrap;color:#ecffff;background:#00445c88}
.refine-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:12px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c5a354 #f2dfad;padding:16px;min-height:0}
.refine-hub-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:3px;border:2px solid #be9446;border-radius:15px;background:linear-gradient(#fff4bc,#d6ab50);box-shadow:0 3px 0 #926328;overflow:hidden;color:#71500c;text-align:center;transition:border-color .15s,box-shadow .15s}
.refine-hub-card[aria-pressed=true]{border-color:#10c6d0;background:linear-gradient(#dcffff,#70dfe0);box-shadow:0 0 0 2px #08718c,0 4px 0 #065669;color:#074c64}
.refine-hub-card[aria-pressed=true]:after{content:'✓';position:absolute;right:7px;top:7px;z-index:5;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;border:2px solid #fff4c9;background:#ffd55d;color:#76501b;font-weight:900}
.refine-hub-card[data-rarity=mythic]{border-color:#bb6d9c;background:linear-gradient(#ffe4f0,#c788b6)}
.refine-hub-card[data-rarity=mythic][aria-pressed=true]{border-color:#10c6d0;background:linear-gradient(#dcffff,#70dfe0)}
.refine-hub-card .character-card-art{width:100%;aspect-ratio:2/3;min-height:0;max-height:245px;border-radius:10px;box-shadow:none}
.refine-hub-card .character-card-name{font-size:clamp(13px,1.25vw,20px);line-height:1.1}
.refine-hub-card .character-card-subtitle{font-size:10px}
.refine-hub-card .character-card-copy{inset:auto 7px 9px}
.refine-hub-card .character-card-stamp{font-size:8px;padding:3px 5px;left:5px;top:6px;min-height:20px}
.refine-hub-card .character-card-stamp-emblem{width:14px;height:14px}
.refine-hub-card-stars{display:block;font-size:18px;line-height:1.4;letter-spacing:1px;font-weight:900;text-shadow:0 1px #fff5bf}
.refine-hub-detail{display:flex;flex-direction:column}
.refine-hub-detail-scroll{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1fr);gap:20px;align-items:start;min-height:0;overflow:auto;padding:22px;flex:1;scrollbar-width:thin}
.refine-hub-portrait{min-width:0;align-self:center}
.refine-hub-portrait .character-card-art{width:100%;aspect-ratio:2/3;max-height:425px;border-radius:18px;box-shadow:0 0 0 3px #b27b2b,0 0 0 5px #ffedb6,0 6px 15px #66472544}
.refine-hub-portrait .character-card-name{font-size:clamp(20px,2vw,30px)}
.refine-hub-copy{min-width:0}
.refine-hub-eyebrow{display:block;color:#91702f}
.refine-hub-copy>h2{font:800 clamp(24px,2.2vw,35px)/1.08 'Baloo 2',sans-serif;margin:7px 0 5px;color:#114a62;overflow-wrap:anywhere}
.refine-hub-stars{display:flex;gap:5px;font-size:32px;line-height:1.2;margin:8px 0 16px}
.refine-hub-stars span{color:#bfb8a4;text-shadow:0 1px #fff}
.refine-hub-stars span[data-lit=true]{color:#f3b627;text-shadow:0 1px #99591e,0 -1px #fff6ac}
.refine-hub-rewards{padding:10px 12px;border:1px solid #d7bf7e;border-radius:12px;background:#fffdf1}
.refine-hub-rewards h3{font-size:13px;margin:0 0 5px;color:#7d5922}
.refine-hub-rewards ul{margin:0;padding:0;list-style:none;display:grid;gap:4px;font-size:13px;line-height:1.3;color:#234e65}
.refine-hub-rewards li:before{content:'✦';display:inline-block;margin-right:6px;color:#b07822}
.refine-hub-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.refine-hub-facts p{display:flex;flex-direction:column;gap:3px;margin:0}
.refine-hub-facts small{font-size:11px;color:#4d6c71;line-height:1.2}
.refine-hub-facts strong{font:800 25px/1.1 'Baloo 2',sans-serif;color:#096c84}
.refine-hub-guarantee p{font-size:12px;line-height:1.35;margin:7px 0;color:#6c5327}
.refine-hub-progress{height:12px;padding:2px;border:1px solid #a78138;border-radius:20px;background:#e3d1a3;overflow:hidden}
.refine-hub-progress>span{display:block;height:100%;border-radius:20px;background:linear-gradient(#56e5da,#159dba);min-width:0}
.refine-hub-guaranteed{display:block;color:#076b65;padding-top:5px}
.refine-hub-complete{padding:14px;border:1px solid #cfa445;border-radius:14px;background:#fff5ce;color:#6f5117;font-size:14px;line-height:1.4}
.refine-hub-complete>strong{font:800 24px/1.2 'Baloo 2',sans-serif}.refine-hub-complete p{margin-bottom:0}
.refine-hub-result{font-size:13px;line-height:1.4;padding:10px 12px;border:1px solid #c9ad68;border-radius:11px;background:#fff9e6;color:#6b4e28;margin:12px 0 0}
.refine-hub-result strong{display:block}.refine-hub-result[data-success=true]{background:#e1f7df;border-color:#8caf66;color:#2c632f}
.refine-hub-actions{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;flex:none;padding:14px 20px;border-top:2px solid #c99d4b;background:linear-gradient(#fff9e7,#f0d99d);box-shadow:0 -3px 12px #b18b3530}
.refine-hub-actions .shop-primary{grid-column:2;grid-row:1/3;min-width:160px;min-height:48px;margin:0;white-space:normal;max-width:270px;line-height:1.2}
.refine-hub-balance{font-size:13px;line-height:1.3;display:flex;flex-direction:column;gap:3px;color:#674b71;font-weight:800}
.refine-hub-balance small{font-size:11px;color:#536879}
.refine-hub-notice{grid-column:1;margin:0;font-size:11px;line-height:1.35;color:#765019;overflow-wrap:anywhere}
.refine-hub-chest-link{padding:0;border:0;border-bottom:1px solid currentColor;background:none;color:#086c8b;font:800 11px/1.3 inherit}
.refine-hub-empty{grid-column:1/-1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;gap:15px}
.refine-hub-empty-star{font-size:72px;line-height:1;color:#e6b437;text-shadow:0 2px #9b6022}
.refine-hub-empty h2{font:800 31px/1.2 'Baloo 2',sans-serif;margin:0;max-width:680px}.refine-hub-empty p{font-size:16px;margin:0;max-width:580px}
@media(orientation:landscape) and (max-height:600px) and (max-width:1150px){
 .approved-shop .shop-body[data-tab=refine]{width:95%;padding:3px 0 10px;gap:0;overflow:hidden;flex:1}
 .refine-hub{grid-template-columns:minmax(210px,.72fr) minmax(0,1.4fr);gap:12px}
 .refine-hub-collection,.refine-hub-detail,.refine-hub-empty{border-radius:16px;border-width:2px;box-shadow:0 0 0 1px #8a5828,0 0 0 3px #ffeaa5,0 4px 10px #06354c44}
 .refine-hub-heading{padding:7px 10px;gap:5px}.refine-hub-heading small{display:none}.refine-hub-heading h2{font-size:17px;margin:0}.refine-hub-heading>b{font-size:11px;padding:3px 5px}
 .refine-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px}
 .refine-hub-card{padding:2px;border-radius:11px}.refine-hub-card .character-card-art{aspect-ratio:1/1.15;max-height:145px;border-radius:7px}.refine-hub-card .character-card-name{font-size:12px}.refine-hub-card .character-card-subtitle{display:none}.refine-hub-card .character-card-stamp{display:none}.refine-hub-card-stars{font-size:15px;line-height:1.3;letter-spacing:0}.refine-hub-card[aria-pressed=true]:after{width:18px;height:18px;font-size:12px;right:5px;top:5px}
 .refine-hub-detail-scroll{grid-template-columns:minmax(95px,.65fr) minmax(0,1fr);gap:12px;padding:12px;align-items:start}
 .refine-hub-portrait{align-self:start}.refine-hub-portrait .character-card-art{max-height:240px;border-radius:10px}.refine-hub-portrait .character-card-name{font-size:15px}.refine-hub-portrait .character-card-subtitle{font-size:9px}.refine-hub-portrait .character-card-stamp{display:none}.refine-hub-portrait .character-card-copy{inset:auto 7px 10px}
 .refine-hub-eyebrow{display:none}.refine-hub-copy>h2{font-size:20px;margin:0 0 3px}.refine-hub-stars{font-size:22px;gap:3px;margin:3px 0 7px}
 .refine-hub-rewards{padding:5px 7px;border-radius:8px}.refine-hub-rewards h3{font-size:11px;margin-bottom:3px}.refine-hub-rewards ul{font-size:11px;gap:2px;line-height:1.2}
 .refine-hub-facts{margin:7px 0;gap:7px}.refine-hub-facts small{font-size:11px}.refine-hub-facts strong{font-size:20px}.refine-hub-guarantee p{font-size:11px;margin:4px 0}.refine-hub-progress{height:9px;padding:1px}.refine-hub-guaranteed{padding-top:3px}
 .refine-hub-actions{gap:3px 8px;padding:8px 10px}.refine-hub-actions .shop-primary{min-width:130px;min-height:44px;font-size:14px;padding:6px 10px;max-width:205px}.refine-hub-balance{font-size:11px;gap:2px}.refine-hub-balance small,.refine-hub-notice,.refine-hub-chest-link{font-size:11px}
 .refine-hub-result{font-size:11px;padding:6px 8px;margin-top:7px}.refine-hub-complete{font-size:12px;padding:9px}.refine-hub-complete>strong{font-size:20px}
 .refine-hub-empty{padding:15px;gap:9px}.refine-hub-empty-star{font-size:42px}.refine-hub-empty h2{font-size:24px}.refine-hub-empty p{font-size:13px}
 .approved-shop[data-art-page=refine] .shop-back{min-height:44px}
}
