
/* Readable service copy. No changes to native mod art, ranks, numeric build panels or fonts. */
:root{--wfg-copy-size:16px;--wfg-meta-size:14px;--wfg-caption-size:13px;--wfg-copy-leading:1.75}
body.arsenal-app #main-content .view{font-size:var(--wfg-copy-size);line-height:var(--wfg-copy-leading)}
body.arsenal-app #main-content :is(p,li,blockquote,figcaption,th,td,label,summary):not(:where(.of-native *,.mod-card *,.arcane-build-card *,.source-native-mod *,.source-native-arcane *,.source-results *,.rf-stat-groups *,.rf-portrait-metrics *,.source-ability-strip *,.source-shard-band *,.frame-info-stat-group *,.upgrade-stats *,.upgrade-capacity *,.kim-program-intro *)){
 font-size:var(--wfg-copy-size);line-height:var(--wfg-copy-leading);overflow-wrap:anywhere;
}
body.arsenal-app #main-content :is(small,.small,.eyebrow,.muted,.section-head>p,.source-board-note,.source-board-heading>p,.source-slot-label,.source-shard-caption,.source-shard-note,.source-shard-options,.source-link-caveat,.source-linked-trigger,.source-linked-trigger span,.source-unavailable,.source-replacement,.source-badge,.frame-info-meta,.frame-info-provenance,.frame-info-warning,.frame-info-relic-note,.frame-build-row-meta,.frame-build-row-label,.frame-build-row-side,.frame-build-row-main>p,.frame-overview-heading>div>p,.frame-build-list-heading>p,.home-change-note,.home-change-more,.home-storage-note,.shop-status,.shop-en,.shop-period,.shop-source-link,.shop-resurgence-status,.shop-item-meta,.aa-slot-role,.aa-acquisition,.upgrade-stat-note,.rg-en,.rg-badge,.rg-tags,.rg-arc-links,.kim-note,.kim-sources,.kim-gift-values,.kim-gift-limit,.kim-gift-record-title,.kim-gift-remaining,.kim-npc-summary,.cl-meta,.cl-freshness,.cl-results-meta,.cl-history,.cl-intro>p,.cl-links,.cl-type,.cl-badge,.cl-state>span,.sb-notice,.sb-meta,.sb-card-meta,.build-comments-count,.build-comments-list time):not(:where(.of-native *,.mod-card *,.arcane-build-card *,.source-native-mod *,.source-native-arcane *,.source-results *,.rf-stat-groups *,.rf-portrait-metrics *,.source-ability-strip *,.source-shard-band *,.frame-info-stat-group *,.upgrade-stats *,.upgrade-capacity *,.kim-program-intro *)){
 font-size:var(--wfg-meta-size);line-height:1.7;
}
body.arsenal-app #main-content :is(.frame-info-provenance,.home-storage-note,.source-board-heading>p,.source-slot-label,.eyebrow){font-size:var(--wfg-caption-size)}
body.arsenal-app #main-content :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;line-height:1.5;max-width:100%;box-sizing:border-box}
body.arsenal-app #main-content :is(button,a.frame-build-list-row):not(:where(.of-native *,.source-native-mod *,.source-native-arcane *,.source-ability-strip *,.source-shard-band *,.frame-info-abilities *,.rf-portrait-metrics *,.kim-program-intro *)){
 font-size:14px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;
}
body.arsenal-app #main-content :is(button,.frame-page-navigation a,.service-back-nav a):not(:where(.of-native *,.source-native-mod *,.source-native-arcane *,.source-ability-strip *,.source-shard-band *,.frame-info-abilities *,.rf-portrait-metrics *,.kim-program-intro *)){min-height:40px}
/* The source hierarchy is retained, but small provenance and callouts are readable. */
body.arsenal-app #main-content :is(.source-caution,.source-patch-warning,.source-applied-rule,.source-guide-supplement,.source-support-grid,.source-operation,.frame-info-intro){font-size:16px;line-height:1.75}
body.arsenal-app #main-content :is(.source-patch-warning,.source-applied-rule,.source-caution) :is(p,li){font-size:15px}
body.arsenal-app #main-content :is(.frame-component-market,.frame-acquisition-actions,.frame-acquisition-actions a,.frame-acquisition-actions button){font-size:14px;line-height:1.65}
body.arsenal-app #main-content .frame-acquisition-actions small{font-size:13px;line-height:1.75}
body.arsenal-app #main-content .frame-acquisition-actions{gap:8px 10px;padding-top:10px;margin-top:10px}
body.arsenal-app #main-content .frame-acquisition-actions :is(a,button){padding:7px 10px;min-height:38px;max-width:100%}
body.arsenal-app #main-content .frame-information table :is(th,td){font-size:16px;line-height:1.7;padding:14px 12px}
body.arsenal-app #main-content .frame-information table thead th:nth-child(2){width:72px;white-space:nowrap}
body.arsenal-app #main-content .frame-information table li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 12px;line-height:1.7}
body.arsenal-app #main-content .frame-information table li>strong{font-size:14px;white-space:nowrap}
body.arsenal-app #main-content .frame-information table li>.frame-info-relic-status{grid-column:1/-1;font-size:13px;line-height:1.65;white-space:normal}
body.arsenal-app #main-content .frame-information :is(details,summary){font-size:14px;line-height:1.75}
body.arsenal-app #main-content .frame-information summary{padding:8px 0}
body.arsenal-app #main-content .frame-information h4 small{font-size:13px}
body.arsenal-app #main-content .frame-info-heading{flex-wrap:wrap}
body.arsenal-app #main-content .frame-arcane-slot>p.small.muted{font-size:13px!important;line-height:1.7}
/* Gifts keep the existing counter cookie and stable item order. Only layout and type change. */
body.arsenal-app #main-content .kim-gift>strong{font-size:16px;line-height:1.65}
body.arsenal-app #main-content .kim-gift>small{font-size:13px;line-height:1.65}
body.arsenal-app #main-content .kim-gift-values small{font-size:13px}
body.arsenal-app #main-content .kim-gift-counter output{font-size:16px}
body.arsenal-app #main-content .kim-gift-counter button{font-size:22px;min-height:42px}
body.arsenal-app #main-content .kim-tools nav a{font-size:14px;line-height:1.6;padding:9px 12px;white-space:normal;text-align:center}
body.arsenal-app #main-content .kim-npc-summary strong{font-size:15px}
body.arsenal-app #main-content .kim-gift-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
/* Lists and controls wrap instead of squeezing their text into fixed heights. */
body.arsenal-app #main-content :is(.cl-tools,.sb-tools,.toolbar,.filter-row,.mission-tools,.frame-overview-controls){row-gap:12px}
body.arsenal-app #main-content :is(.cl-state>p,.sb-notice,.service-empty,.home-panel p){line-height:1.75}
body.arsenal-app #main-content .shop-import-label{min-width:0;max-width:100%;box-sizing:border-box}
body.arsenal-app #main-content .shop-import-label input[type=file]{width:100%;min-width:0;max-width:100%;font-size:14px}
body.arsenal-app #main-content :is(.cl-entry-top,.cl-meta,.cl-links,.sb-card-meta,.frame-build-row-meta){flex-wrap:wrap;row-gap:8px}
body.arsenal-app #main-content .cl-entry-top time{font-size:13px;white-space:normal}
body.arsenal-app #main-content .cl-state .cl-badge{font-size:14px}
body.arsenal-app #main-content .build-comment-form :is(label,input,textarea){font-size:16px}
body.arsenal-app #main-content .build-comments-list article>p{font-size:16px;line-height:1.8}
body.arsenal-app #main-content .build-comments-list time{font-size:13px}
body.arsenal-app #main-content .build-comments-list header button{font-size:14px}
/* Details are real HTML copy; native card sprites and their scale are not resized. */
.source-detail-popover :is(.source-native-extra,.source-native-extra p,.source-native-extra .source-item-acquisition h4,.source-native-extra .source-item-acquisition a,.source-item-acquisition li,.source-mod-text-detail .source-effect-copy,.source-detail-note,.source-shard-note){font-size:15px!important;line-height:1.75!important}
.source-detail-popover :is(.source-native-extra small,.source-mod-text-detail small,.source-item-acquisition small,.source-detail-kicker,.source-original-card-label){font-size:13px!important;line-height:1.75!important}
.source-detail-popover .source-detail-close{font-size:14px!important;line-height:1.6;min-height:36px!important}
.source-detail-popover :is(p,li,a){overflow-wrap:anywhere}
.source-detail-popover .source-native-extra .source-item-acquisition a{min-height:38px;display:inline-flex;align-items:center;box-sizing:border-box;max-width:100%;white-space:normal}
:is(#service-notifications,#service-search-dialog,#build-comment-manage,#ai-question-dialog) :is(p,label,li,textarea,input,select){font-size:16px;line-height:1.7}
:is(#service-notifications,#service-search-dialog,#build-comment-manage,#ai-question-dialog) :is(small,.small,.service-search-help,.service-notice-tools,.service-notice span,.service-notice small){font-size:13px;line-height:1.7}
#service-notifications .service-notice strong{font-size:16px;line-height:1.6}
#service-notifications .service-notice p{font-size:15px}
#service-search-dialog #global-results :is(button,a){font-size:16px;line-height:1.65;white-space:normal}
:is(#service-notifications,#service-search-dialog,#build-comment-manage) button{font-size:14px;line-height:1.6;min-height:38px}
body.arsenal-app #rf-service-footer :is(p,a,button){font-size:13px;line-height:1.8}
body.arsenal-app #rf-service-footer h3{font-size:15px;line-height:1.6}
/* Compact reference tables become per-part cards; column headers remain available to AT. */
@media(max-width:700px){
 body.arsenal-app #main-content .frame-info-table-wrap{overflow:visible;border:0}
 body.arsenal-app #main-content .frame-information table{display:block;table-layout:auto}
 body.arsenal-app #main-content .frame-information table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 body.arsenal-app #main-content .frame-information table tbody{display:grid;gap:14px}
 body.arsenal-app #main-content .frame-information table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0}
 body.arsenal-app #main-content .frame-information table :is(th,td){display:block;border:0;min-width:0;padding:12px;font-size:16px;text-align:left}
 body.arsenal-app #main-content .frame-information table tbody th{grid-column:1;grid-row:1}
 body.arsenal-app #main-content .frame-information table tbody td:nth-child(2){grid-column:2;grid-row:1;text-align:right;white-space:nowrap}
 body.arsenal-app #main-content .frame-information table tbody td:nth-child(2)::before{content:'수량 ';font-size:13px;color:var(--muted)}
 body.arsenal-app #main-content .frame-information table tbody td:last-child{grid-column:1/-1;grid-row:2;border-top:1px dashed var(--line)}
 body.arsenal-app #main-content .frame-information table li{grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}
 body.arsenal-app #main-content .kim-gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.arsenal-app #main-content .kim-tools nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.arsenal-app #main-content .kim-tools nav a{font-size:14px;padding:9px 6px;min-height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
 body.arsenal-app #main-content .kim-gift{padding:10px}
 body.arsenal-app #main-content .kim-gift-counter{grid-template-columns:32px minmax(0,1fr) 32px}
 body.arsenal-app #main-content .kim-gift-counter button{min-width:32px;min-height:44px;padding:4px}
 body.arsenal-app #main-content .cl-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.arsenal-app #main-content .cl-tools label{min-width:min(100%,150px)}
 body.arsenal-app #main-content .cl-tools label:first-child{flex-basis:100%;min-width:0}
 body.arsenal-app #main-content .cl-states{grid-template-columns:minmax(0,1fr)}
 body.arsenal-app #main-content :is(.frame-overview-controls,.frame-overview-controls label,.frame-overview-controls select){min-width:0;max-width:100%}
 body.arsenal-app #main-content .build-comment-form>div{grid-template-columns:minmax(0,1fr)}
 body.arsenal-app #main-content :is(.cl-tools button,.frame-page-navigation a,.service-back-nav a,.sb-tools button){min-height:44px}
}
@media(max-width:360px){
 body.arsenal-app #main-content .kim-gift-grid{grid-template-columns:minmax(0,1fr)}
 body.arsenal-app #main-content .kim-tools nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

