:root{font-family:"Noto Sans JP","Yu Gothic UI","Meiryo",sans-serif;font-size:14px;color:#17243b;background:#fff;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%;width:100%}body{line-height:1.55;background:#fff}a{color:#174b91}a:hover{background:#eaf1fc}button,input,select,textarea{font:inherit;line-height:1.4}input:not([type=hidden]),select,textarea{border:1px solid #8695a9;border-radius:3px;max-width:100%;padding:5px 7px;background:#fff;color:#17243b}input[type=button],input[type=submit],button{cursor:pointer;background:#f4f7fc;border:1px solid #91a5bf;border-radius:4px;padding:5px 10px;min-height:32px;white-space:nowrap}input[type=checkbox],input[type=radio]{width:16px;height:16px;vertical-align:middle;padding:0;accent-color:#2459a4}input[readonly],textarea[readonly]{background:#f3f5f8}textarea{vertical-align:top;resize:vertical}a:focus-visible,input:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #e6a429;outline-offset:-2px}dialog{padding:0;border:1px solid #8799b2;border-radius:6px;box-shadow:0 12px 45px #17243b44}dialog::backdrop{background:#17243b55}.app-shell{height:100dvh;min-height:0;display:grid;grid-template-rows:66px minmax(0,1fr) 24px;overflow:hidden}.app-shell iframe{display:block;width:100%;height:100%;border:0}.shell-workspace{min-height:0;display:grid;grid-template-columns:224px minmax(0,1fr)}.shell-workspace aside,.shell-workspace main{min-height:0;min-width:0}.shell-workspace aside{border-right:1px solid #bccce1;background:#eff4fb}.app-shell footer{display:flex;align-items:center;justify-content:center;font-size:11px;background:#eff3f8;border-top:1px solid #d8e0eb;white-space:nowrap}.header-page{overflow:hidden}.system-heading{height:40px;display:flex;align-items:center;justify-content:space-between;background:#244f9a;padding:0 18px;color:#fff}.system-heading>a{font-size:19px;font-weight:700;color:white;text-decoration:none}.system-heading .logout-link{font-size:13px;font-weight:400}.system-meta{height:26px;background:#e3edfc;display:flex;gap:12px;justify-content:space-between;align-items:center;padding:0 18px;font-size:12px;white-space:nowrap}.menu-page{background:#eff4fb;padding:8px;overflow-y:auto}.menu-group{margin:0 0 8px}.menu-heading{display:block;text-align:left;width:100%;font-weight:700;border:0;border-bottom:1px solid #bdcce0;border-radius:0;background:#dce8f8;color:#163d78;padding:7px 10px;min-height:34px}.menu-heading::after{content:'−';float:right}.menu-heading[aria-expanded=false]::after{content:'+'}.menu-page .menu2{margin:0;border:0;padding:0;font-size:13px;background:transparent}.menu2 a{display:block;padding:6px 10px 6px 17px;text-decoration:none;color:#1d3452;border-radius:3px;overflow-wrap:anywhere}.menu2 a:hover{background:#dbe8fb}.menu2 a[aria-current=page]{background:#fff0cf;color:#553800;box-shadow:inset 3px 0 #d99b27}.business-page{padding:20px 24px;background:#f7f9fc;overflow:auto}.business-content{max-width:1400px;margin:0 auto;min-width:0}h1{font-size:20px;line-height:1.4;margin:0 0 14px;color:#173d75}h2{font-size:15px;margin:0}.form-message:empty{display:none}.form-message{color:#a52929;margin-bottom:10px}.hidden-fields{display:none}.edit-fields{background:#fff;border:1px solid #cbd6e5;border-radius:5px;overflow:hidden}.field{display:grid;grid-template-columns:150px minmax(0,1fr);border-bottom:1px solid #e0e7f0;min-width:0}.field:last-child{border-bottom:0}.field-label{background:#e6eefb;padding:10px 12px;display:flex;align-items:flex-start;white-space:nowrap;font-weight:500}.field-value{padding:8px 12px;min-width:0;display:flex;gap:6px;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere}.field-value>textarea{width:100%;min-height:56px}.field-value>input[type=text]{min-width:0}.field-value>input[type=radio]{flex:0 0 auto}.address-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;width:100%;align-items:start}.address-card{min-width:0;border:1px solid #ced9e8;border-radius:4px;overflow:hidden}.address-card h2{background:#dce8f8;padding:7px 10px}.address-card .field{grid-template-columns:112px minmax(0,1fr)}.address-card .field-label{padding:8px;font-size:13px;background:#f0f5fc}.address-card .field-value{padding:6px 8px;gap:5px}.field-actions{display:flex;flex-wrap:wrap;gap:5px;width:100%}.checkbox-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.checkbox-options label{white-space:nowrap}.form-actions{display:flex;justify-content:flex-start;gap:16px;padding:16px 0;position:sticky;bottom:0;background:#f7f9fcf5;border-top:1px solid #dbe3ee;z-index:2}.search-panel{background:#fff;border:1px solid #cbd6e5;padding:12px;margin-bottom:14px;border-radius:5px}.search-fields,.search-actions{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}.search-fields{margin-bottom:12px}.search-fields>div,.search-fields>label,.search-actions>span,.search-actions>label{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-width:0}.search-fields input{max-width:230px}.results-scroll{overflow:auto;max-height:calc(100dvh - 215px);border:1px solid #becde1;background:white;border-radius:4px}.results-table{border-collapse:collapse;width:100%;min-width:850px;table-layout:fixed;font-size:14px}.results-table th{background:#dce8f8;color:#1c3f70;text-align:left;padding:9px 10px;position:sticky;top:0;z-index:1;box-shadow:0 1px #adbed5}.results-table td{padding:6px 10px;vertical-align:top;overflow-wrap:anywhere;background:transparent}.record-primary td{padding-bottom:2px}.record-secondary td{padding-top:2px;border-bottom:1px solid #d4dfed;font-size:13px}.record-actions{white-space:nowrap}.record-actions a{display:inline-block;padding:2px 4px;text-decoration:underline}.legacy-content{padding:16px;overflow:auto}.legacy-content table{height:auto;max-width:none;border-collapse:separate}.legacy-content>form>table{margin:0 auto}.legacy-content td{vertical-align:top}.legacy-content .font1,.legacy-content .font2{font-size:14px}.legacy-content td[align=right],.legacy-content .td_ttl{white-space:nowrap}.legacy-content #tbl_ms{max-height:calc(100dvh - 200px);overflow:auto}.login-page{display:grid;min-height:100dvh;place-content:center;padding:24px;background:#eff4fb}.login-card{width:min(420px,calc(100vw - 48px));padding:28px;background:#fff;border:1px solid #c5d3e6;border-radius:6px}.login-card h1{margin-bottom:22px}.login-card label{display:grid;gap:6px;margin:14px 0}.login-card input:not([type=submit]){width:100%}.login-card input[type=submit]{margin-top:10px;width:100%;background:#244f9a;color:#fff}.login-card .form-message{font-size:13px}@media(max-width:1050px){.address-columns{grid-template-columns:minmax(0,1fr)}.business-page{padding:16px}.address-card .field{grid-template-columns:130px minmax(0,1fr)}}@media(max-width:900px){.shell-workspace{grid-template-columns:200px minmax(0,1fr)}.field{grid-template-columns:130px minmax(0,1fr)}.business-page{padding:12px}.field-value{padding:8px}.system-meta{padding:0 10px}}@media(max-width:620px){.shell-workspace{grid-template-columns:170px minmax(0,1fr)}.menu-page{padding:4px}.menu2 a{padding-left:10px}.field{grid-template-columns:minmax(0,1fr)}.field-label{padding:6px 8px}.address-card .field{grid-template-columns:minmax(0,1fr)}.business-page{padding:10px}.system-meta{font-size:10px;gap:4px}.system-heading{padding:0 10px}}@media print{.app-shell{display:block;overflow:visible;height:auto}.shell-header,.shell-workspace aside,.app-shell footer,.form-actions,.search-panel{display:none}.shell-workspace{display:block}.business-page{padding:0;background:#fff}.results-scroll{max-height:none;overflow:visible}.results-table{min-width:0}}

/* Related fields retain their reading order and share rows when space permits. */
.field-value>textarea{flex:1 1 0;width:0;min-width:0}
@media(min-width:1051px){.edit-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.edit-fields>.field{grid-column:1/-1}.edit-fields>.compact-field{grid-column:auto;grid-template-columns:150px minmax(0,1fr)}.edit-fields>.compact-field .field-value input[type=text]{width:min(100%,260px)}}

/* Screen theme: retain field order, columns and navigation. Never style report paper. */
@media screen {
 :root {
  --ui-ink:#202020;
  --ui-muted:#555555;
  --ui-page:#ffffff;
  --ui-surface:#ffffff;
  --ui-border:#9aaac0;
  --ui-primary:#2548b1;
  --ui-primary-hover:#003399;
  --ui-soft:#e3e3e3;
  font-size:14px;
  color:var(--ui-ink);
 }
 body {line-height:1.5;background-image:none;color:var(--ui-ink)}
 a:link,a:visited {color:#0000cd}
 a:hover {background-color:#ffdead}
 h1 {font-size:16pt;color:#003399}
 h2 {font-size:14px}
 input:not([type=hidden]),select,textarea,button {
  font-size:14px !important;
  color:var(--ui-ink);
  border-color:#696969;
  border-radius:6px;
 }
 input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,button {min-height:30px}
 input[type=button],input[type=submit],button {
  background:#f0f0f0;
  box-shadow:0 1px 2px #17324d0c;
 }
 input[type=button]:hover,input[type=submit]:hover,button:hover {
  background:var(--ui-soft);
  border-color:var(--ui-primary);
 }
 input[type=button]:active,input[type=submit]:active,button:active {background:#d8d8d8}
 input[type=checkbox],input[type=radio] {accent-color:var(--ui-primary)}
 input[readonly],textarea[readonly] {background-color:#eeeeee;color:#404040}
 input:disabled,select:disabled,textarea:disabled,button:disabled {color:#687487;background-color:#edf0f4;cursor:default;box-shadow:none}
 a:focus-visible,input:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible {outline-color:var(--ui-primary)}
 dialog {border-color:var(--ui-border);border-radius:10px;box-shadow:0 18px 60px #17324d30}
 dialog::backdrop {background:#172b4d55}
 .system-heading {background:#2548b1}
 .system-heading>a:link,.system-heading>a:visited {color:white}
 .system-heading>a:hover {background:#2557ad}
 .system-heading .logout-link {font-size:14px}
 .system-meta {background:#b8d1ff;color:#202020;font-size:12px}
 .shell-workspace aside {border-color:var(--ui-border);background:#c3daf9}
 .app-shell footer {background:#dddddf;color:#555555;border-color:#dce3eb}
 .menu-page {padding:6px;background:#c3daf9}
 .menu-group {margin-bottom:4px}
 .menu-page .menu-heading {
  font-size:14px !important;
  line-height:1.4;
  min-height:32px;
  padding:4px 10px;
  color:#003399;
  background:#ffffff;
  border-color:#d5dee8;
  border-radius:5px;
  box-shadow:none;
 }
 .menu-heading:hover {background:#ffdead}
 .menu-page .menu2 {font-size:14px;line-height:1.4}
 .menu2 a:link,.menu2 a:visited {padding-top:3px;padding-bottom:3px;color:#202020;border-radius:5px}
 .menu2 a:hover {background:#ffdead;color:#003399}
 .menu2 a[aria-current=page] {background:#ffdead;color:#202020;box-shadow:inset 3px 0 var(--ui-primary)}
 .business-page {background:var(--ui-page)}
 .edit-fields,.search-panel,.address-card {border-color:var(--ui-border);border-radius:8px;background:var(--ui-surface);box-shadow:0 2px 8px #17324d05}
 .field {border-color:#c8d6e8}
 .field-label {padding-top:8px;padding-bottom:8px;background:#b8d1f3;color:#202020;white-space:normal;overflow-wrap:anywhere}
 .field-value {padding-top:6px;padding-bottom:6px}
 .address-card h2 {background:#c3daf9;color:#202020}
 .address-card .field-label {font-size:14px;background:#b8d1f3}
 .address-card .field-value {padding-top:4px;padding-bottom:4px}
 .form-actions {padding-top:10px;padding-bottom:10px;background:#fffffff5;border-color:#d6dfe8}
 .form-message {color:#a12626}
 .results-scroll {border-color:var(--ui-border);border-radius:8px}
 /* Keep the existing search/results positions, with one results scrollbar. */
 .list-page {height:100dvh;overflow:hidden}
 .list-page .business-content {height:100%;display:flex;flex-direction:column}
 .list-page .business-content>h1,.list-page .form-message {flex-shrink:0}
 .list-page .business-content>form {display:flex;flex-direction:column;flex:1;min-height:0;margin:0}
 .list-page .search-panel,.list-page .list-controls {flex-shrink:0}
 .list-page .results-scroll {flex:1;min-height:0;max-height:none}
 .results-table {font-size:14px}
 .results-table th {color:#202020;background:#c3daf9;box-shadow:0 1px #9aaac0}
 .record-secondary td {font-size:14px;border-color:#dce3eb}
 .results-table tbody tr:hover {background:#fffacd}
 .legacy-content {background:var(--ui-page)}
 .legacy-content .font1,.legacy-content .font2 {font-size:14px}
 .legacy-content .font10,.legacy-content .font11,.legacy-content .font12 {font-size:12px}
 .legacy-content .font13,.legacy-content .font14,.legacy-content .font15 {font-size:14px}
 .legacy-content .td_ttl,.legacy-content .tr_ttl,.legacy-content .komoku,.legacy-content #list td {color:#202020;background:#c3daf9;border-color:#9aaac0}
 .legacy-content .item_name_01 {color:#202020;background:#6791c9;background-image:none}
 .legacy-content [bgcolor="#b8d1f3" i] {background-color:#b8d1f3}
 .legacy-content [bgcolor="#c3daf9" i] {background-color:#c3daf9}
 .legacy-content [bgcolor="#9dd1f3" i] {background-color:#9dd1f3}
 .legacy-content [bgcolor="skyblue" i] {background-color:#87ceeb}
 .legacy-content [bgcolor="lightsteelblue" i] {background-color:#b0c4de}
 .legacy-content [bgcolor="#a2dba8" i] {background-color:#a2dba8}
 .legacy-content [bgcolor="powderblue" i] {background-color:#b0e0e6}
 .legacy-content .meisai_paint {background:#eeeeee}
 .legacy-content .meisai_sel_paint {background:#fffacd}
 .login-page {background:#dddddf}
 .login-card {border-color:#9aaac0;border-radius:12px;box-shadow:0 12px 36px #17324d0c}
 .login-card input[type=submit] {background:var(--ui-primary);border-color:var(--ui-primary);color:white;box-shadow:0 2px 4px #0f766e20}
 .login-card input[type=submit]:hover {background:var(--ui-primary-hover)}
 .login-card .form-message {font-size:14px}
 /* Keep actions visually grouped; numeric text fields retain right alignment. */
 input[type=button],input[type=submit],button {text-align:center !important;text-indent:0;letter-spacing:normal}
 .pagination-summary {display:inline-flex;align-items:center;gap:4px;white-space:nowrap;vertical-align:middle}
 .pagination-summary input {width:64px}
 .pagination-buttons {display:inline-flex !important;gap:6px !important;align-items:center;vertical-align:middle;white-space:nowrap;margin-left:8px;border:0;border-radius:0;overflow:visible;background:transparent}
 .pagination-buttons input[type=button] {width:34px;min-width:34px;min-height:30px;margin:0;padding:3px 4px;border:1px solid #696969;border-radius:4px;box-shadow:none}
 .pagination-buttons input:focus-visible {outline-offset:-2px}
 input[type=button].lookup-button {
  width:32px !important;min-width:32px !important;height:30px !important;min-height:30px;padding:0 !important;
  text-indent:-9999px !important;overflow:hidden;vertical-align:middle;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23243247' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E");
  background-position:center;background-repeat:no-repeat;background-size:18px 18px;
 }
 input[type=button].lookup-button:disabled {opacity:.55}
 .legacy-dialog {border-color:#696969;overflow:hidden}
 html.search-dialog-root {height:100%;overflow:hidden}
 body.search-dialog-page {height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:10px 12px;background:#ffffff}
 .search-dialog-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;margin-bottom:8px}
 .search-dialog-heading h1 {margin:0;font-size:16px}
 .search-dialog-heading button {min-height:28px;padding:3px 10px}
 .search-dialog-page>form {display:flex;flex-direction:column;flex:1;min-height:0;margin:0}
 .search-dialog-filters {flex-shrink:0;padding:8px 10px;margin-bottom:8px;border:1px solid #9aaac0;border-radius:6px;background:#fff}
 .lookup-filter-row {display:flex;align-items:center;gap:4px;margin-bottom:5px;min-width:0}
 .lookup-filter-row>span:first-child {flex:0 0 90px}
 .lookup-filter-row>span:last-child {min-width:0}
 .lookup-filter-controls {display:flex;align-items:center;gap:6px;flex-wrap:wrap}
 .lookup-filter-controls input[type=text] {max-width:100%;min-width:0}
 .lookup-help {font-size:12px;color:#555555;margin:2px 0 5px}
 .lookup-pagination {display:flex;align-items:center;gap:6px;flex-wrap:wrap}
 .lookup-pagination .pagination-buttons {margin-left:0}
 .lookup-context {flex-shrink:0;margin:0 0 6px;padding:5px 8px;border-radius:4px;background:#a2dba8}
 .search-dialog-page .lookup-results {flex:1;min-height:0;max-height:none !important;overflow:auto;overscroll-behavior:contain;border:1px solid #9aaac0;border-radius:6px;background:#fff}
 .search-dialog-page .lookup-table {width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:14px}
 .search-dialog-page .lookup-table-wide {min-width:670px}
 .lookup-table th,.lookup-table td {padding:5px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
 .lookup-table th {position:sticky;top:0;z-index:1;background:#c3daf9;color:#202020;border-bottom:1px solid #9aaac0}
 .lookup-table td {border-bottom:1px solid #e4e9ef}
 .lookup-table tbody tr:hover {background:#e3e3e3}
 .lookup-table a {display:block}
 /* Three compact bands keep criteria, actions and paging distinct. */
 .list-controls {width:100%;max-width:100%;padding:8px 10px;margin:0 0 10px;border:1px solid #9aaac0;border-radius:6px;background:#fff;text-align:left}
 .list-criteria {display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px}
 .keyword-query {display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}
 .list-query-actions {display:inline-flex;align-items:center}
 /* Existing business actions, in a consistent reading/tab order. */
 .registration-actions {position:sticky;bottom:0;z-index:10;display:flex;justify-content:center;align-items:center;gap:16px;width:100%;max-width:1500px;margin:12px auto 0;padding:10px 12px;background:#fff;border-top:1px solid #aab7c8;box-shadow:0 -2px 5px #0000000a}
 .registration-actions > span {display:inline-flex;align-items:center}
 .registration-actions :is(input,button) {min-width:96px;min-height:36px!important;text-align:center}
 html:has(.registration-actions) {scroll-padding-bottom:84px}
 .registration-page :is(input,select,textarea) {scroll-margin-bottom:84px}
 .list-criteria > .list-create-actions {display:inline-flex;align-items:center;margin-left:auto}
 .master-list-actions.empty-list-actions {display:none}
 .list-page-heading {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}
 .list-page-heading .list-return-navigation {justify-self:start}
 .list-page-heading::after {content:""}
 .filter-field {display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0;margin:0}
 .filter-label {min-width:84px;white-space:nowrap}
 .filter-field input[type=text] {min-width:0;max-width:230px}
 .filter-range {display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0;max-width:100%}
 .range-end {display:inline-flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}
 .range-end input[type=text] {min-width:0}
 /* Search-only household code range: 65% of the previous 134px. */
 .list-controls .range-end input[name="FRM[DAN_CD_STR]"],
 .list-controls .range-end input[name="FRM[DAN_CD_END]"] {width:87.1px}
 /* Only the household-management list criteria; address export is excluded. */
 .list-controls:has(> .master-list-actions) input[name="FRM[KEYWORD]"][size="25"] {width:184px}
 .list-controls:has(> .master-list-actions) input[name="FRM[KEYWORD]"][size="20"] {width:163.2px}
 .list-controls .filter-field:has(input[name="FRM[DAN_CD_STR]"]) > .filter-label {min-width:0}

 .list-tool-row {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-top:8px}
 .list-controls>.list-tool-row:first-child {margin-top:0}
 .list-action-buttons {display:flex;flex-wrap:wrap;align-items:center;gap:8px}
 .sort-field {gap:6px}
 .list-pagination {display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:8px;padding-top:8px;border-top:1px solid #c8d6e8}
 .list-pagination .pagination-buttons {margin-left:0}
 .list-pagination .sort-field {margin-left:auto}
 /* Match the keyword input offset; keep create separate from search/print. */
 .master-list-actions {display:grid;grid-template-columns:84px minmax(0,1fr) auto;column-gap:6px;row-gap:8px}
 .master-list-actions .list-back-actions,.master-list-actions .list-create-actions {display:flex;align-items:center}
 .master-list-actions .list-create-actions {justify-content:flex-end}
 .list-pagination .list-print-actions {display:inline-flex;align-items:center;gap:8px;margin-left:24px}

 /* Original-system palette. Action categories: CSS attributes cover the common tag controls without
    changing button names, values, handlers, or dimensions. */
 :is(input[type=button],input[type=submit],button):not(.lookup-button):is([name="BUTTON_SER"],[name="BUTTON_SEARCH"],[value*="検"][value*="索"]):enabled {
  background-color:#2548b1;border-color:#2548b1;color:#fff;
 }
 :is(input[type=button],input[type=submit],button):not(.lookup-button):is([name="BUTTON_SER"],[name="BUTTON_SEARCH"],[value*="検"][value*="索"]):enabled:hover {
  background-color:#003399;border-color:#003399;
 }
}
@media print {.registration-actions {display:none}}

/* Registration labels use measured text widths; retain field order and type size. */
@media screen {
 .registration-page .edit-fields > .field {grid-template-columns:170px minmax(0,1fr)}
 .registration-page .address-card .field {grid-template-columns:130px minmax(0,1fr)}
 .registration-page .field-label {white-space:nowrap;overflow-wrap:normal;word-break:normal}
 .registration-page.legacy-content td {height:auto;line-height:1.5}
 .registration-page.legacy-content td:is([bgcolor="#b8d1f3" i],.td_ttl),
 .registration-page.legacy-content table:has(> colgroup:nth-of-type(2)):not(:has(> colgroup:nth-of-type(3))) > tbody > tr > td:first-child:not([colspan]) {
  white-space:nowrap;overflow:visible;word-break:normal;overflow-wrap:normal;
 }
 .registration-page.legacy-content table.font1[width="600"]:has(> colgroup) {width:min(100%,780px)}
 .registration-page.legacy-content table.font1[width="600"]:has(> colgroup) > colgroup:first-of-type {width:150px}
 .registration-page.legacy-content table.font1[width="600"]:has(> colgroup) > colgroup:nth-of-type(2) {width:auto}
}
@media screen and (max-width:620px) {
 .registration-page .edit-fields > .field,.registration-page .address-card .field {grid-template-columns:minmax(0,1fr)}
 .registration-page .field-label {white-space:normal;overflow-wrap:break-word}
}

/* Data widths are display hints; server validation remains authoritative. */
@media screen {
 input.data-width-input {width:var(--data-input-width);max-width:100%;min-width:0}
 .registration-page .field-value input.data-width-input,
 .registration-page .edit-fields>.compact-field .field-value input.data-width-input {width:var(--data-input-width)}
 .registration-page textarea {max-width:100%;min-height:64px}
 .data-list-wrapper {width:100%!important;max-width:100%!important;table-layout:fixed;height:auto!important}
 .data-results-scroll {width:min(100%,var(--data-region-width))!important;max-width:100%;min-width:0;align-self:flex-start;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain;border:1px solid #9aaac0!important;position:relative}
 .data-results-table {width:var(--data-table-width)!important;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:14px}
 .data-results-table :is(td,th) {padding:6px 9px;vertical-align:top;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
 .data-results-table thead {position:sticky;top:0;z-index:2}
 .data-results-table thead :is(td,th) {background:#c3daf9;color:#202020;border-bottom:1px solid #9aaac0}
 .data-results-table tbody td {border-bottom:1px solid #e0e7f0}
 .data-results-table tbody tr:hover > td,
 .data-results-table tbody tr:focus-within > td {background-color:#fff0dc}
 .data-results-table tbody tr.record-primary:has(+ tr.record-secondary:hover) > td,
 .data-results-table tbody tr.record-primary:hover + tr.record-secondary > td,
 .data-results-table tbody tr.record-primary:focus-within + tr.record-secondary > td {background-color:#fff0dc}
 .data-results-table a {display:inline-block;white-space:nowrap}
 .data-results-table td.data-row-actions {white-space:nowrap;overflow-wrap:normal}
 .data-results-table .record-primary td {border-bottom:0;padding-bottom:2px}
 .data-results-table .record-secondary td {padding-top:2px}
 .data-results-scroll:focus-visible {outline:2px solid #2548b1;outline-offset:-2px}
}

/* Related controls form one visual group; space between groups remains larger. */
@media screen {
 .date-input {text-align:left!important;letter-spacing:.055em;font-variant-numeric:tabular-nums}
 .data-results-table td.readable-date,.display-value.readable-date {text-align:left!important;white-space:nowrap!important;font-variant-numeric:tabular-nums;overflow-wrap:normal}
 .readable-date .date-era {margin-right:.45em}
 .readable-date .date-separator {display:inline-block;margin:0 .3em}
 .display-value {display:inline-block;min-height:26px;line-height:26px;padding:0 2px;vertical-align:middle;max-width:100%;overflow-wrap:anywhere}
 .check-option {display:inline-flex;align-items:center;gap:3px;white-space:nowrap;margin-right:8px;vertical-align:middle}
 .check-option input[type=checkbox] {margin:0;flex:none}
 .check-option label {margin:0;padding:0;cursor:pointer}
 .aligned-controls {vertical-align:middle!important}
 .aligned-controls :is(input:not([type=hidden]),button,select,.display-value),
 .filter-range :is(input,button,select),.range-end :is(input,button,select) {vertical-align:middle;margin-top:0;margin-bottom:0}
 .aligned-controls :is(input[type=text],input[type=button],button,select),
 .filter-range :is(input[type=text],input[type=button],button,select) {height:32px;min-height:32px;box-sizing:border-box}
 .filter-range,.range-end,.field-value,.keyword-query {align-items:center}
}
@media screen {td.readable-date {text-align:left!important;white-space:nowrap!important;font-variant-numeric:tabular-nums}}
@media screen {
 .aligned-controls :is(input[type=text],input[type=button],button,select),
 .filter-range :is(input[type=text],input[type=button],button,select) {height:32px!important;min-height:32px!important;max-height:32px}
}

/* Quiet, rounded controls with explicit hover/focus states. */
@media screen {
 :is(input[type=button],input[type=submit],button):not(.menu-heading) {
  appearance:none;-webkit-appearance:none;border:1px solid #a5b3c5;border-radius:7px!important;
  background-color:#f5f7fa;color:#25364d;box-shadow:0 1px 2px #20334d12;
  font-weight:500;text-align:center;transition:background-color .12s,border-color .12s,box-shadow .12s;
 }
 :is(input[type=button],input[type=submit],button):not(.menu-heading):enabled:hover {background-color:#e8edf4;border-color:#7089a8;box-shadow:0 2px 4px #20334d18}
 :is(input[type=button],input[type=submit],button):not(.menu-heading):enabled:active {box-shadow:inset 0 1px 2px #20334d20}
 :is(input[type=button],input[type=submit],button):disabled {box-shadow:none;opacity:.55;cursor:default}
 :is(input[type=button],input[type=submit],button):focus-visible {outline:2px solid #2548b1;outline-offset:2px}
 * {scrollbar-width:auto;scrollbar-color:#93a4b9 #f0f3f7}
 @supports selector(::-webkit-scrollbar) {
  * {scrollbar-color:auto}
  ::-webkit-scrollbar {width:14px;height:14px}
  ::-webkit-scrollbar-track {background:#f0f3f7;border-radius:8px}
  ::-webkit-scrollbar-thumb {background:#93a4b9;border:3px solid #f0f3f7;border-radius:8px;min-height:36px}
  ::-webkit-scrollbar-thumb:hover {background:#657e9f}
  ::-webkit-scrollbar-button {display:none;width:0;height:0}
  ::-webkit-scrollbar-corner {background:#f0f3f7}
 }
 .data-results-table thead :is(td,th) {text-align:left;box-shadow:inset -1px 0 #aebfda}
 .date-input {letter-spacing:normal;font-variant-numeric:tabular-nums}
}
@media (prefers-reduced-motion:reduce) {button,input {transition:none!important}}

/* Search criteria and results share the same outer edges, independently of column widths. */
@media screen {
 .data-results-scroll {width:100%!important;align-self:stretch;background:#fff}
 input.date-input[type=text] {min-width:208px;width:var(--data-input-width,208px)!important;max-width:100%;word-spacing:2px;letter-spacing:.025em;text-align:left!important}
}
@media screen {.data-results-table :is(td,th).list-frame-fill {padding:0;border-left:0;box-shadow:none}}
