/* XBLUEMAN native utility pages (nu1): portalcp, article publish/edit, darkroom, modcp, announcement, collection, group prompts.
   Scoped to body.xb-native-utility. Markup/JS untouched; layers on native-pages.css. No hidden controls. */
body.xb-native-utility{--nu-glass:rgba(253,254,255,.86);--nu-line:rgba(31,91,216,.13);--nu-shadow:0 10px 30px -18px rgba(23,56,120,.35)}
body.xb-native-utility #xb-main .bm,body.xb-native-utility #xb-main .appl .tbn,body.xb-native-utility #xb-main #darkroomtable{background:var(--nu-glass);border-color:var(--nu-line)!important;box-shadow:var(--nu-shadow);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}
body.xb-native-utility #xb-main #pt.bm{background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
body.xb-native-utility #pt .z,body.xb-native-utility #pt .y{float:none;margin:0!important}
body.xb-native-utility #pt form{display:flex;gap:8px;align-items:center}
body.xb-native-utility #pt form .pn{width:auto!important;min-width:64px}
/* bm overflow:hidden must not clip editor menus */
body.xb-native-utility #articleform .bm,body.xb-native-utility .mn>.bm.bw0{overflow:visible}
body.xb-native-utility .mn>.bm.bw0{padding:4px 22px 20px}
body.xb-native-utility .mn>.bm.bw0>h1.mt{margin:16px 0 14px}
/* article form */
body.xb-native-utility #articleform .dopt{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
body.xb-native-utility #articleform .dopt>span.z{float:none;margin:0!important;color:#3a4a63}
body.xb-native-utility #articleform #title,body.xb-native-utility #articleform #htmlname,body.xb-native-utility #articleform #pagetitle{flex:1 1 260px;width:auto;min-width:0;height:44px;font-size:17px}
body.xb-native-utility #articleform .colorwd{width:38px;min-width:38px;padding:0;border-radius:10px}
body.xb-native-utility #articleform .dopt a[id^=highlight_op_]{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;border:1px solid #d6dfec;background:#fbfcfe;color:var(--np-ink)!important;text-indent:0}
body.xb-native-utility #articleform .dopt a.cnt{background:var(--np-tint);border-color:var(--np-blue);color:var(--np-blue2)!important}
body.xb-native-utility #articleform .exfm{margin:14px 0;padding:14px 16px;border:1px solid var(--np-line);border-radius:14px;background:rgba(244,248,255,.8)}
body.xb-native-utility #articleform .exfm h2{font-size:15px;margin:0 0 8px}
body.xb-native-utility #articleform .exfm .sinf,body.xb-native-utility #articleform .exfm .sadd{width:50%;box-sizing:border-box;padding-right:12px}
body.xb-native-utility #articleform .exfm dl{margin:0}
body.xb-native-utility #articleform .exfm dt{margin:8px 0 4px;font-size:13px;color:var(--np-soft)}
body.xb-native-utility #articleform .exfm dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
body.xb-native-utility #articleform .p_fre{width:100%;max-width:320px}
body.xb-native-utility #articleform #from_id{width:90px}
body.xb-native-utility #articleform .bm.bml{margin:14px 0}
body.xb-native-utility #articleform .bm_c .pt{max-width:100%;box-sizing:border-box}
body.xb-native-utility #articleform #raid_div li{padding:6px 0;border-bottom:1px dashed #e6ecf4}
body.xb-native-utility #articleform .ptm{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
body.xb-native-utility #issuance{min-width:150px;height:44px;background:var(--np-blue);border-color:var(--np-blue);color:#f6f9ff!important}
/* editor: style shell only, never toolbar internals' visibility */
body.xb-native-utility .tedt,body.xb-native-utility #e_body,body.xb-native-utility .edt{border:1px solid #d6dfec;border-radius:12px;background:#fdfeff;max-width:100%;box-sizing:border-box}
body.xb-native-utility .tedt .bar,body.xb-native-utility #e_controls,body.xb-native-utility .edt .bar{background:#f4f7fb;border-bottom:1px solid #e3e9f2;border-radius:12px 12px 0 0}
body.xb-native-utility #e_iframe,body.xb-native-utility #e_textarea{max-width:100%;background:#fdfeff}
body.xb-native-utility #e_body{overflow:visible}
body.xb-native-utility #attachbody,body.xb-native-utility .upfl{max-width:100%;overflow-x:auto}
body.xb-native-utility #attachbody table{min-width:520px}
/* popups appended to #append_parent keep native positioning; just theme */
body.xb-native-utility .p_pop,body.xb-native-utility .p_opt,body.xb-native-utility .fwinmask .m_c,body.xb-native-utility .cmen{border-radius:12px;border-color:#d6dfec;box-shadow:0 14px 34px -14px rgba(23,56,120,.4)}
/* tables */
body.xb-native-utility .mn table.dt,body.xb-native-utility #darkroomtable{width:100%}
body.xb-native-utility #darkroomtable{border:1px solid var(--nu-line);border-radius:16px;border-collapse:separate;border-spacing:0;overflow:hidden}
body.xb-native-utility table.dt tr.alt td{background:rgba(237,243,255,.45)}
body.xb-native-utility table.dt tr:hover td{background:rgba(237,243,255,.75)}
body.xb-native-utility table.dt td[colspan]{padding:36px 10px;color:var(--np-soft);text-align:center}
body.xb-native-utility .pgs{background:none!important;border:0!important;box-shadow:none!important;padding:12px 0}
body.xb-native-utility .pg a.nxt{width:auto;padding:0 18px}
/* modcp / tfm / slst */
body.xb-native-utility table.tfm{max-width:100%}
body.xb-native-utility table.tfm td .px{width:100%;max-width:420px}
body.xb-native-utility .slst li{padding:12px 0;border-bottom:1px solid #eef2f7;list-style:none}
body.xb-native-utility .mn .bm_c ul.xl li{line-height:1.8}
/* messages / prompts / empty */
body.xb-native-utility .alert_info,body.xb-native-utility .alert_error,body.xb-native-utility .alert_right,body.xb-native-utility #messagetext{position:relative;max-width:640px;margin:24px auto;padding:28px 26px 26px 26px;border:1px solid var(--nu-line);border-radius:18px;background:var(--nu-glass) none;box-shadow:var(--nu-shadow);font-size:15px;line-height:1.7;color:var(--np-ink);box-sizing:border-box}
body.xb-native-utility .alert_info:before,body.xb-native-utility .alert_error:before,body.xb-native-utility .alert_right:before{content:"";display:block;width:36px;height:4px;margin:0 0 14px;border-radius:2px;background:var(--np-blue)}
body.xb-native-utility .alert_error:before{background:#d9534f}
body.xb-native-utility .alert_right:before{background:#2e9d6a}
body.xb-native-utility .alert_btnleft,body.xb-native-utility #messagetext .alert_btnleft{margin-top:14px}
body.xb-native-utility .nfl{padding:0;border:0;background:none}
body.xb-native-utility .f_c.altw{width:auto}
body.xb-native-utility .emp,body.xb-native-utility .mn>.bm.bw0>p{padding:36px 12px;text-align:center;color:var(--np-soft)}
@media(max-width:899px){
 body.xb-native-utility .mn>.bm.bw0{padding:2px 14px 16px}
 body.xb-native-utility #articleform .exfm .sinf,body.xb-native-utility #articleform .exfm .sadd{float:none;width:100%;padding-right:0}
 body.xb-native-utility #articleform .p_fre{max-width:none}
 /* genuinely tabular data: local scroll */
 body.xb-native-utility #darkroomtable,body.xb-native-utility .mn table.dt{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
 body.xb-native-utility #darkroomtable td:last-child,body.xb-native-utility .mn table.dt td:first-child{white-space:normal;min-width:180px}
 body.xb-native-utility #darkroomtable th{width:auto!important}
 body.xb-native-utility #pt form{width:100%}
 body.xb-native-utility #pt form .px{flex:1;min-width:0}
}
@media(max-width:640px){
 body.xb-native-utility table.tfm,body.xb-native-utility table.tfm tbody,body.xb-native-utility table.tfm tr,body.xb-native-utility table.tfm th,body.xb-native-utility table.tfm td{display:block;width:100%!important;box-sizing:border-box}
 body.xb-native-utility table.tfm th{padding:12px 0 4px;border:0}
 body.xb-native-utility table.tfm td{padding:0 0 12px}
 body.xb-native-utility table.tfm td .px{max-width:none}
 body.xb-native-utility #articleform .px,body.xb-native-utility #articleform select{font-size:16px}
 body.xb-native-utility #issuance{width:100%}
 body.xb-native-utility .alert_info,body.xb-native-utility .alert_error,body.xb-native-utility .alert_right,body.xb-native-utility #messagetext{margin:12px 0;padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){
 body.xb-native-utility #xb-main *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
/* nu2: forced native mobile showmessage (touch/common/showmessage.php): .header row (back/title/home), .jump_c, ajax .tip; plus .tip_msg/.tip_btn variants. native-touch.css not loaded. */
body.xb-native-utility #xb-main .header{display:flex;align-items:center;gap:10px;max-width:640px;margin:8px auto 0;padding:0 4px;height:auto;min-height:44px;background:none;border:0;position:static;box-shadow:none}
body.xb-native-utility #xb-main .header h2{flex:1;margin:0;font-size:16px;font-weight:600;color:var(--np-ink);text-align:center;line-height:1.4}
body.xb-native-utility #xb-main .header .mz,body.xb-native-utility #xb-main .header .my{float:none;flex:0 0 auto}
body.xb-native-utility #xb-main .header .mz a,body.xb-native-utility #xb-main .header .my a{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 12px;border-radius:20px;background:var(--nu-glass);box-shadow:inset 0 0 0 1px var(--nu-line);color:var(--np-blue2)!important;font-size:14px;text-decoration:none;box-sizing:border-box}
/* icon font absent: render readable text glyphs, controls stay visible */
body.xb-native-utility #xb-main .header i.dm-c-left,body.xb-native-utility #xb-main .header i.dm-house{font-style:normal;font-family:inherit}
body.xb-native-utility #xb-main .header i.dm-c-left:before{content:"\2039  \8FD4\56DE"}
body.xb-native-utility #xb-main .header i.dm-house:before{content:"\9996\9875"}
body.xb-native-utility .jump_c,body.xb-native-utility .tip,body.xb-native-utility .tip_msg{max-width:640px;margin:14px auto 24px;padding:26px 24px;border:1px solid var(--nu-line);border-radius:18px;background:var(--nu-glass);box-shadow:var(--nu-shadow);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);font-size:15.5px;line-height:1.75;color:var(--np-ink);text-align:left;box-sizing:border-box;overflow-wrap:anywhere}
body.xb-native-utility .jump_c:before,body.xb-native-utility .tip:before,body.xb-native-utility .tip_msg:before{content:"";display:block;width:36px;height:4px;margin:0 0 14px;border-radius:2px;background:var(--np-blue)}
body.xb-native-utility .tip #messagetext{display:block;margin:0;padding:0;border:0;box-shadow:none;background:none;max-width:none}
body.xb-native-utility .tip #messagetext:before{display:none}
body.xb-native-utility .jump_c>div+div,body.xb-native-utility .tip dd,body.xb-native-utility .tip_btn{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:10px}
body.xb-native-utility .jump_c a,body.xb-native-utility .tip a,body.xb-native-utility .tip_msg a{color:var(--np-blue2);text-decoration:underline;text-underline-offset:3px}
body.xb-native-utility .jump_c a.grey,body.xb-native-utility .tip_btn a{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border-radius:20px;background:var(--np-tint);color:var(--np-blue2)!important;text-decoration:none}
body.xb-native-utility .jump_c .mt10{margin-top:10px}
@media(max-width:640px){
 /* Do not render an empty navigation card when this role has no menu items.
    Never hide a menu containing links, form controls, or interactive roles. */
 body.xb-native-utility #ct>.appl:not(:has(a,button,input,select,textarea,[role="button"])){display:none}
 body.xb-native-utility .jump_c,body.xb-native-utility .tip,body.xb-native-utility .tip_msg{margin:10px 0 20px;padding:20px 16px}
 body.xb-native-utility .jump_c a.grey,body.xb-native-utility .tip_btn a,body.xb-native-utility .tip_btn .pn{flex:1 1 100%;justify-content:center}
}
