/* The law workspace and its dialogs share one restrained visual language. */
:root{--law-ui-accent:#234a70;--law-ui-action:#193f63;--law-ui-line:#7d94ae30;--law-ui-surface:#fff;--law-ui-ink:#173a5e;--law-ui-soft:#f3f6fa}
html[data-law-theme=dark]{--law-ui-accent:#79a9d6;--law-ui-action:#285679;--law-ui-surface:#192b3b;--law-ui-ink:#e6eff8;--law-ui-soft:#23384b}
.hero-stack .hero-panel{border-top:4px solid var(--law-ui-accent);box-shadow:none;background:var(--law-ui-surface);border-radius:16px;padding:20px}
.hero-stack .hero-panel::after{display:none}
#lawUpcomingCard .legislative-item{background:#f6f8fb;border-left-color:#d8e3ee}
html[data-law-theme=dark] #lawUpcomingCard .legislative-item{background:#1c3041;border-left-color:#344d61}
.hero-side,.workspace > .detail{border-top:4px solid var(--law-ui-accent)}
.hero-side .draft-filter-shell,.workspace > .detail .selected-law-sheet{border-top:0}
.hero-stack .metric-row{gap:0;margin-top:16px}
.hero-stack .metric{background:transparent;border:0;border-radius:0;padding:4px 16px;border-left:1px solid var(--law-ui-line)}
.hero-stack .metric:first-child{border-left:0;padding-left:0}
.hero-stack .metric-label{letter-spacing:0;font-size:12px;color:var(--muted)}
.hero-stack .metric-value{font-size:28px;color:var(--law-ui-ink);font-variant-numeric:tabular-nums;line-height:1.4}
.hero-stack .metric-note{font-size:12px;line-height:1.6}
.hero-stack .legislative-item{border-radius:8px;background:var(--law-ui-soft);border:0;border-left:3px solid var(--law-ui-line);box-shadow:none}
.hero-stack .legislative-column-head{letter-spacing:0;font-size:12px}
.main-admin-bar{border-radius:10px;box-shadow:none;border:1px solid var(--law-ui-line)}
.main-admin-button,.detail-admin-save,.detail-admin-cancel,.detail-admin-delete{min-height:44px;border-radius:9px;box-shadow:none;font-size:13px;line-height:1.4}
.main-admin-button:not(.secondary),.detail-admin-save{background:var(--law-ui-action);color:#fff}
.main-admin-button.secondary,.detail-admin-cancel{background:transparent;border:1px solid var(--law-ui-line);color:var(--law-ui-ink)}
.detail-admin-backdrop{background:#0b1c2f99;backdrop-filter:blur(3px);padding:24px}
.detail-admin-backdrop [role=dialog]{box-sizing:border-box;border-radius:16px;border:1px solid var(--law-ui-line);border-top:4px solid var(--law-ui-accent);background:var(--law-ui-surface);color:var(--law-ui-ink);box-shadow:0 24px 80px #07172a40;max-height:calc(100dvh - 48px);scrollbar-width:thin}
.detail-admin-modal-header{padding-bottom:18px;border-bottom:1px solid var(--law-ui-line);align-items:flex-start;gap:16px}
.detail-admin-modal-title{font-size:23px;line-height:1.4;letter-spacing:-.03em;color:var(--law-ui-ink);overflow-wrap:anywhere}
.detail-admin-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border:1px solid var(--law-ui-line);border-radius:9px;color:var(--law-ui-ink);background:transparent}
.detail-admin-close:hover{background:var(--law-ui-soft)}
.detail-admin-footer,.legal-article-popover-actions{border-top:1px solid var(--law-ui-line);padding-top:16px;gap:12px}
.detail-admin-label{font-size:12px;letter-spacing:0;line-height:1.5;color:var(--muted)}
.detail-admin-input,.detail-admin-select,.detail-admin-textarea{border-radius:8px;min-height:44px;background:var(--law-ui-surface);color:var(--law-ui-ink);border:1px solid #7d94ae60;font-size:14px;box-shadow:none}
.detail-admin-textarea{line-height:1.7;min-height:112px}
.detail-admin-section-title{padding:16px 0 10px;font-size:15px;letter-spacing:0;color:var(--law-ui-ink)}
.detail-admin-backdrop :is(button,a,input,select,textarea,summary):focus-visible,.main-admin-button:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
#globalRequirementSearchBackdrop #globalRequirementSearchBackdrop .law-search-tabs{background:transparent;border-radius:0;padding:0;gap:20px;border-bottom:1px solid var(--law-ui-line)}
#globalRequirementSearchBackdrop .law-search-tab{min-height:44px;border-radius:0;background:transparent;border:0;border-bottom:3px solid transparent;color:var(--muted);box-shadow:none;padding:10px 4px;font-size:14px}
#globalRequirementSearchBackdrop .law-search-tab.active{background:transparent;color:var(--law-ui-ink);border-bottom-color:var(--law-ui-accent);box-shadow:none}
#lawSearchPurpose{color:var(--muted);font-size:13px;line-height:1.6;margin:6px 0 0}
#lawUnifiedSearchForm .law-detail-search-box{border-radius:9px;background:var(--law-ui-surface);border:1px solid #7d94ae60;min-height:48px}
#lawUnifiedSearchForm button{border-radius:9px;min-height:48px;font-size:13px;box-shadow:none}
#lawUnifiedSearchForm button[type=submit]{background:var(--law-ui-action);color:#fff}
#lawSearchReset{background:transparent;color:var(--law-ui-ink);border:1px solid var(--law-ui-line)}
.law-search-guidance button{min-height:36px;border-radius:6px;background:var(--law-ui-soft);color:var(--law-ui-ink);border:1px solid var(--law-ui-line)}
.law-search-query-tip{border-radius:0;border:0;border-left:3px solid var(--law-ui-accent);background:var(--law-ui-soft);padding:12px 14px;font-size:12px;line-height:1.7;color:var(--law-ui-ink)}
.law-search-advanced summary{min-height:44px;box-sizing:border-box;padding:12px 0;cursor:pointer}
#globalRequirementSearchBackdrop .registry-search-result-row,.law-search-document-header{border-radius:8px;border:1px solid var(--law-ui-line);background:var(--law-ui-soft);color:var(--law-ui-ink);padding:14px;box-shadow:none}
#globalRequirementSearchBackdrop .registry-search-result-row:hover,.law-search-document-header:hover{border-color:var(--law-ui-accent)}
.law-search-attachment-card{border-radius:8px;background:var(--law-ui-soft);border:1px solid var(--law-ui-line)}
.global-requirement-detail-body .requirement-detail-card{border-radius:10px;background:var(--law-ui-soft);box-shadow:none;border:1px solid var(--law-ui-line);padding:16px}
.global-requirement-detail-body .requirement-detail-card-title{font-size:12px;letter-spacing:0;color:var(--muted)}
.global-requirement-detail-body .requirement-detail-card-content{font-size:14px;line-height:1.7;color:var(--law-ui-ink)}
.detail-admin-backdrop :is(.legal-article-chip,.related-document-chip){border-radius:7px;white-space:normal;overflow-wrap:anywhere;line-height:1.5;min-height:36px}
.linked-document-viewer-toolbar,.linked-document-viewer-tabs,.legislative-registry-preview-tabs{gap:8px}
.law-detail-card{border-radius:14px;box-shadow:none;border:1px solid var(--law-ui-line)}
.law-detail-page .law-detail-card{border-top:4px solid var(--law-ui-accent)}
.law-detail-card .section-title{letter-spacing:0;font-size:13px}
.selected-law-actions button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 14px;border-radius:10px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-align:left}
.selected-law-upcoming-list{overflow:auto;min-height:0;line-height:1.7}
.selected-law-upcoming-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--law-ui-line)}
.selected-law-upcoming-list h3{margin:0;font-size:16px}
.selected-law-upcoming-info{min-width:0;flex:1}
.selected-law-upcoming-info p{margin:8px 0 0;font-size:13px;color:var(--muted)}
.selected-law-upcoming-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;flex:none;margin-left:auto}
.selected-law-upcoming-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:10px 16px;border-radius:9px;font:inherit;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer;white-space:nowrap}
.selected-upcoming-compare{border:1px solid var(--law-ui-action);background:var(--law-ui-action);color:#fff}
.selected-upcoming-original{border:1px solid var(--law-ui-line);background:transparent;color:var(--law-ui-ink)}
.selected-law-upcoming-actions :is(button,a):hover{filter:brightness(.92)}
@media(max-width:480px){.selected-law-upcoming-list article{gap:12px}.selected-law-upcoming-actions{flex-direction:column}.selected-law-upcoming-actions :is(button,a){padding:10px 12px}}
.selected-law-mobile-toggle{display:none}
@media(max-width:768px){
 .workspace > #detailPanel{order:-1;height:auto;max-height:none}
 .selected-law-mobile-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:#193f63;color:#fff;cursor:pointer}
 html[data-law-theme=dark] .selected-law-mobile-toggle{background:#285679}
 .selected-law-mobile-toggle:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
 #detailPanel.selected-law-collapsed :is(#selectedLawMeta,#selectedLawSource,#selectedLawBody){display:none}
 #detailPanel.selected-law-collapsed .selected-law-actions{border-bottom:0;padding-bottom:0}
 #detailPanel .selected-law-heading{padding-top:0}
 #detailPanel .selected-law-sheet{height:auto}
 #lawRegistryCard.mobile-collapsed :is(.registry-table,.mobile-registry-pager,.registry-card-actions){display:none}
 #lawRegistryCard .registry-card-header{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:12px}
 #lawRegistryCard .registry-card-title-area{flex:1;min-width:0}
 #lawRegistryMobileToggle{display:inline-flex;align-items:center;justify-content:center;justify-self:end;grid-column:2;grid-row:1;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:10px;background:#193f63;color:#fff;box-shadow:none}
 .mobile-collapse-heading{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}
 #lawUpcomingMobileToggle,#lawFilterMobileToggle{margin-left:auto;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:#193f63;color:#fff}
 html[data-law-theme=dark] :is(#lawRegistryMobileToggle,#lawUpcomingMobileToggle,#lawFilterMobileToggle){background:#285679;color:#fff}
 #lawRegistryMobileToggle:hover{border-color:var(--law-ui-accent)}
 #lawRegistryMobileToggle:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
 #lawRegistryCard .registry-card-actions{grid-column:1 / -1}
 .hero-stack .hero-panel{padding:16px}.hero-stack .metric{padding:4px 10px}.hero-stack .metric-value{font-size:24px}
 .detail-admin-backdrop{padding:12px}.detail-admin-backdrop [role=dialog]{max-height:calc(100dvh - 24px);border-radius:12px;padding:16px}
 .detail-admin-modal-title{font-size:20px}.detail-admin-modal-header{gap:10px;padding-bottom:12px}
 .detail-admin-footer-right{flex-wrap:wrap;gap:8px}.detail-admin-grid{grid-template-columns:minmax(0,1fr)}
 #globalRequirementSearchBackdrop #globalRequirementSearchBackdrop .law-search-tabs{gap:16px}#globalRequirementSearchBackdrop .law-search-tab{font-size:13px}.law-search-guidance{flex-wrap:wrap}
 .global-requirement-detail-body .requirement-detail-card{padding:12px}
}
#siteNoticeOverlay,#registryUpdateOverlay{background:#0b1c2f99!important;backdrop-filter:blur(3px)!important}
#siteNoticeOverlay>div,#registryUpdateOverlay>[role=dialog]{border-radius:16px!important;border-top:4px solid var(--law-ui-accent);background:var(--law-ui-surface)!important;color:var(--law-ui-ink)!important;max-height:calc(100dvh - 32px)!important}
#siteNoticeOverlay :is(h2,p,div),#registryUpdateOverlay :is(h2,p,div){color:inherit}
#siteNoticeContent,#registryUpdateSummary{color:var(--law-ui-ink)!important;font-size:14px!important;line-height:1.7!important}
#siteNoticeOverlay button,#registryUpdateOverlay button{min-height:44px;border-radius:9px!important;font-size:13px!important}
#siteNoticeConfirmBtn,#registryUpdateConfirmBtn{background:var(--law-ui-action)!important;color:#fff!important}
#siteNoticeCloseBtn,#registryUpdateCloseBtn,#siteNoticeHideTodayBtn,#registryUpdateHideTodayBtn{background:var(--law-ui-soft)!important;color:var(--law-ui-ink)!important}
@media(prefers-reduced-motion:reduce){.detail-admin-backdrop *, .hero-stack *{scroll-behavior:auto;transition:none;animation:none}}
@media(max-width:768px){
 html[data-page-mode=detail] body,body[data-page-mode=detail]{padding:0}
 html[data-page-mode=detail] body .site-topbar,body[data-page-mode=detail] .site-topbar{width:100%;margin:0 0 14px;top:0}
 html[data-page-mode=detail] body .law-detail-page{padding-left:12px;padding-right:12px;margin-left:0;margin-right:0}
 .shell{padding-left:12px;padding-right:12px}
 .registry .registry-table,.registry .table-body{min-width:0;overflow-x:visible}
 .registry .table-head{display:none}
 .registry .table-row{min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px 12px}
 .registry .table-row .law-name{grid-column:1 / -1}
 .registry .table-row .table-cell{justify-content:flex-start!important;align-items:flex-start;font-size:12px;white-space:normal}
 .registry .table-row .table-cell::before{display:block;content:attr(data-label);color:var(--muted);font-size:11px;margin-right:8px;flex:none}
 .registry .sub-law-row{display:flex;flex-direction:column;gap:4px}
 .registry .sub-law-item{width:100%;white-space:normal}
 .registry .sub-law-text{white-space:normal;overflow:visible;text-overflow:clip}
 .registry .registry-table.order-mode .table-row{grid-template-columns:1fr 1fr}
 .registry .order-controls{grid-column:1 / -1}
 .selected-law-heading,.selected-law-body{padding-left:0;padding-right:0}
 .selected-law-actions{padding-left:0;padding-right:0;grid-template-columns:1fr}
 .law-detail-page{padding-left:12px;padding-right:12px;margin-left:0;margin-right:0}
 .law-detail-page .law-detail-table{min-width:0;width:100%}
 .law-detail-page .law-detail-table-head{display:none}
 .law-detail-page .law-detail-table-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 12px;min-width:0}
 .law-detail-page .law-detail-category-cell{font-size:11px;line-height:1.5;align-self:start;color:var(--muted)}
 .law-detail-page .law-detail-obligation,.law-detail-page .requirement-description{grid-column:1 / -1;font-size:14px;line-height:1.6}
 .law-detail-page .law-detail-obligation{font-weight:700}
 .law-detail-page .requirement-description{display:block;max-height:none;-webkit-line-clamp:unset;white-space:normal}
 .law-detail-page .law-detail-importance-cell{grid-column:1 / 2}
 .law-detail-page .law-detail-action-cell{grid-column:2 / -1;justify-content:flex-end}
 .law-detail-page .law-detail-action-cell button{min-height:44px;min-width:88px}
 .law-detail-page .law-detail-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .law-detail-filter-button{min-height:44px;gap:8px;font-size:12px}
 .law-detail-dropdown{max-width:calc(100vw - 48px)}
 .law-detail-info-title{white-space:normal!important;font-size:24px!important;line-height:1.4!important}
 .hero-side .draft-filter-grid{grid-template-columns:1fr}
 .hero-side .draft-filter-section{height:auto;max-height:240px}
 .hero-side .draft-filter-section .chip-row{display:flex;flex-direction:row;flex-wrap:wrap;overflow:auto;gap:6px}
 .hero-side .draft-filter-section .chip{width:auto;min-height:44px}
 .mobile-section-toggle,.legislative-link,.legislative-compare-btn{min-height:44px;min-width:44px}
 .detail-admin-backdrop input,.detail-admin-backdrop select,.detail-admin-backdrop textarea,.search-box input,.law-detail-search-box input{font-size:16px!important}
 .detail-admin-backdrop{align-items:center}
 .detail-admin-backdrop [role=dialog]{overflow-y:auto;overscroll-behavior:contain}
 .detail-admin-footer{flex-shrink:0}.detail-admin-footer-right{width:100%;justify-content:flex-end}
 .global-requirement-detail-body{grid-template-columns:1fr!important}
 .upcoming-candidate-card-inline{flex-wrap:wrap}
}
