/* Readability and interaction polish shared by the six intranets. */
.ux-form-notice{margin:0 0 14px;padding:11px 13px;border:1px solid rgba(239,100,110,.42);border-radius:10px;background:rgba(239,100,110,.1);color:var(--text,#fff);font-size:13px;font-weight:750;line-height:1.55}
.ux-draft-notice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:11px 13px;border:1px solid var(--line,#343844);border-radius:10px;background:var(--panel2,var(--panel,#171a21));font-size:13px}.ux-draft-notice span{flex:1;min-width:180px}.ux-draft-notice button{min-height:34px;padding:6px 10px;border:1px solid var(--line,#343844);border-radius:8px;background:transparent;color:inherit;font:inherit;font-weight:750;cursor:pointer}
.ux-button-spinner{display:inline-block;width:14px;height:14px;margin-right:7px;vertical-align:-2px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ux-spin .7s linear infinite}
@keyframes ux-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){
  html{scroll-padding-bottom:92px}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px!important}
  button,.btn,[role="button"],a.side-link,a.nav-link,.nav a{min-height:42px}
  .content small,.public-body small,.apply-page small,.public-page small{font-size:12px}
  .panel-head,.page-head{gap:10px}
  .panel-head>*,.page-head>*{min-width:0}
  .application-step-actions{position:sticky;bottom:8px;z-index:30;padding:10px;border:1px solid var(--line,#343844);border-radius:12px;background:color-mix(in srgb,var(--panel,#171a21) 94%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
  .table-wrap{max-width:100%;overscroll-behavior-x:contain}
  .ux-mobile-table{min-width:0!important;width:100%}
  .ux-mobile-table thead{display:none}
  .ux-mobile-table tbody,.ux-mobile-table tr,.ux-mobile-table td{display:block;width:100%;box-sizing:border-box}
  .ux-mobile-table tbody tr{margin:0 0 10px;padding:10px 12px;border:1px solid var(--line,#343844);border-radius:11px;background:var(--panel,var(--panel2,#171a21))}
  .ux-mobile-table tbody td{display:grid;grid-template-columns:minmax(86px,.7fr) minmax(0,1.3fr);gap:10px;padding:7px 0!important;border:0!important;text-align:right!important;overflow-wrap:anywhere}
  .ux-mobile-table tbody td::before{content:attr(data-label);color:var(--muted,#9299a3);font-size:12px;font-weight:750;text-align:left}
  .ux-mobile-table tbody tr.mobile-empty-row,.ux-mobile-table tbody tr:has(td[colspan]){display:block}
  .ux-mobile-table tbody td[colspan]{display:block;text-align:center!important}
  .ux-mobile-table tbody td[colspan]::before{display:none}
}
@media(prefers-reduced-motion:reduce){.ux-button-spinner{animation:none!important}}


body.ux-list-navigating main,body.ux-list-navigating .content,body.ux-list-navigating .page-shell{opacity:.76;transform:translate3d(0,2px,0);transition:opacity .12s ease,transform .12s ease;pointer-events:none}
@media(prefers-reduced-motion:reduce){body.ux-list-navigating main,body.ux-list-navigating .content,body.ux-list-navigating .page-shell{transform:none;transition:none}}

/* 짧은 UI 문구는 글자 단위로 꺾이지 않도록 유지합니다. */
.btn,.badge,.panel-badge,.headcount-badge,.status-pill,.rank-display,.rank-preview,.history-page-move,.history-page-numbers a,.period-nav a,.period-nav strong,.row-actions button,.row-actions a{white-space:nowrap;word-break:keep-all;overflow-wrap:normal}
.rank-display,.rank-preview{max-width:100%}
.side-link,.nav a{word-break:keep-all}
.ux-mobile-table .btn,.ux-mobile-table .badge,.ux-mobile-table .panel-badge,.ux-mobile-table .rank-display{justify-self:end;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}


