/* Reality Roleplay theme. The website layout below uses the full browser viewport. */
.relation-picker { margin-top: 7px; }
.relation-picker .relation-search { margin-top: 10px; padding: 10px; border: 1px solid #333; border-radius: 8px; background: #111; }
.relation-picker .relation-search[hidden] { display: none; }
.relation-query-row { display: flex; gap: 8px; align-items: center; }
.relation-query-row input { min-width: 0; flex: 1; }
.relation-results { max-height: 240px; overflow-y: auto; margin-top: 8px; }
.relation-results .search-result { width: 100%; text-align: left; }
.relation-results .search-result span { min-width: 0; overflow-wrap: anywhere; }
.relation-current:not(:empty) { display: block; color: #22c55e; margin-top: 5px; }
:root {
  --bg: #111111;
  --side: #111111;
  --panel: #1a1a1a;
  --panel2: #1a1a1a;
  --line: #222222;
  --text: #fafafa;
  --muted: #a1a1aa;
  --soft: #a1a1aa;
  --blue: #007fff;
  --cyan: #007fff;
  --green: #22c55e;
  --amber: #f59e0b;
  --red: #ef4444;
  --radius: 10px;
  --shadow: none;
  --frame-width: min(1780px, calc(100vw - 64px));
  --frame-height: min(960px, calc(100dvh - 64px));
  --sidebar-width: 244px;
}
html, body { background: transparent; width: 100%; height: 100%; overflow: hidden; }
body { display: grid; place-items: center; min-height: 100dvh; font-size: 14px; color: var(--text); }
#app { position: relative; width: var(--frame-width); height: var(--frame-height); overflow: hidden; background: var(--bg); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 22px 70px #0005; isolation: isolate; }
#modal-root { position: fixed; inset: 0; pointer-events: none; z-index: 100; }
#modal-root .modal-backdrop { pointer-events: auto; }
.layout { min-height: 0; height: 100%; display: grid; grid-template-columns: var(--sidebar-width) minmax(0, 1fr); }
.sidebar { position: relative; inset: auto; width: auto; height: 100%; min-height: 0; background: var(--side); border-right: 1px solid var(--line); }
.brand { min-height: 76px; height: 76px; padding: 16px 18px; gap: 11px; border-color: var(--line); flex-shrink: 0; }
.brand svg { width: 31px; height: 38px; }
.brand-caption { font-size: 10px; letter-spacing: 1px; color: var(--muted); }
.brand-title { font-size: 17px; letter-spacing: -.35px; color: var(--text); }
.nav-caption { font-size: 10px; color: var(--muted); padding: 16px 20px 9px; letter-spacing: 1.35px; }
.nav { flex: 1; min-height: 0; padding: 0 10px 10px; scrollbar-color: #3a3a3a transparent; }
.nav-link { font-size: 12px; padding: 8px 11px; min-height: 35px; gap: 11px; margin-bottom: 2px; border-radius: 8px; color: var(--muted); }
.nav-link svg { width: 17px; height: 17px; }
.nav-link:hover { background: var(--panel); color: var(--text); }
.nav-link.active { background: var(--blue); color: #fafafa; box-shadow: none; }
.sidebar-bottom { padding: 10px 12px 12px; background: var(--side); flex-shrink: 0; }
.server-card { padding: 10px; gap: 9px; border-color: var(--line); background: var(--panel); border-radius: 8px; }
.server-emblem { width: 31px; height: 34px; border-color: #007fff55; }
.server-emblem svg { width: 20px; height: 27px; }
.server-title { font-size: 11px; }
.server-version, .server-state { font-size: 10px; color: var(--muted); }
.server-version { margin: 1px 0 3px; }
.workspace { margin-left: 0; height: 100%; min-height: 0; min-width: 0; display: flex; flex-direction: column; overflow: hidden; }
.topbar { position: relative; top: auto; flex: 0 0 76px; height: 76px; padding: 0 24px; gap: 20px; background: var(--panel); border-color: var(--line); backdrop-filter: none; }
.page-context { min-width: 178px; display: flex; align-items: center; gap: 11px; }
.page-context-icon { width: 34px; height: 34px; display: grid; place-items: center; color: var(--blue); background: #007fff12; border-radius: 8px; }
.page-context-icon svg { width: 18px; height: 18px; }
.page-context small { display: block; font-size: 10px; color: var(--muted); letter-spacing: .7px; text-transform: uppercase; }
.page-context strong { font-size: 14px; font-weight: 600; display: block; margin-top: 2px; white-space: nowrap; }
.global-search { height: 40px; max-width: 600px; min-width: 180px; padding: 0 13px; margin-left: auto; background: var(--bg); border-color: var(--line); color: var(--muted); font-size: 12px; border-radius: 8px; }
.global-search svg { color: var(--muted); }
.global-search .search-placeholder { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.global-search kbd { font-size: 10px; color: var(--muted); background: var(--panel); border-color: #2d2d2d; }
.top-date { display: none; }
.icon-btn { background: var(--bg); border-color: var(--line); color: var(--muted); }
.icon-btn:hover { background: #252525; border-color: #353535; color: var(--text); }
.profile { background: none; border: 0; border-left: 1px solid #2d2d2d; border-radius: 0; padding: 0 0 0 18px; gap: 11px; min-width: 188px; }
.avatar { width: 36px; height: 36px; background: #007fff13; border: 1px solid #007fff40; color: var(--blue); }
.profile-name { font-size: 13px; font-weight: 600; }
.profile-rank, .profile-badge { font-size: 11px; color: var(--muted); }
.profile-badge { display: none; }
.profile-text, .profile .chevron { display: block; }
.main { flex: 1; min-height: 0; width: 100%; max-width: none; padding: 24px; margin: 0; overflow: auto; scrollbar-width: thin; scrollbar-color: #393939 transparent; }
.welcome-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 82px; margin-bottom: 18px; padding: 0 0 18px; border-bottom: 1px solid var(--line); }
.welcome-bar .eyebrow { color: var(--muted); font-size: 10px; letter-spacing: 1.25px; margin-bottom: 6px; }
.welcome-bar .eyebrow .line { background: var(--blue); width: 17px; }
.welcome-bar h1 { font-size: 25px; font-weight: 650; line-height: 1.25; letter-spacing: -.65px; }
.welcome-bar h1 span { color: var(--blue); }
.welcome-bar p { font-size: 12px; color: var(--muted); margin-top: 6px; }
.welcome-meta { color: var(--muted); display: flex; align-items: center; gap: 9px; font-size: 11px; white-space: nowrap; }
.welcome-meta svg { width: 16px; color: var(--blue); }
.access-banner { background: var(--panel); border-color: var(--line); padding: 13px 16px; border-radius: 10px; margin: 0 0 18px; }
.access-banner h2 { font-size: 12px; }
.access-banner p { font-size: 11px; color: var(--muted); }
.access-banner > svg { color: var(--blue); }
.stats { gap: 14px; margin: 0 0 18px; }
.stat { background: var(--panel); border-color: var(--line); border-radius: 10px; padding: 17px 16px; min-height: 107px; gap: 13px; }
.stat-icon { background: #007fff10; border: 0; color: var(--blue); width: 42px; height: 44px; border-radius: 8px; }
.stat-icon.danger { color: var(--red); background: #ef444412; border: 0; }
.stat-label { color: var(--muted); font-size: 11px; margin-bottom: 6px; }
.stat-value { font-size: 27px; font-weight: 650; }
.stat-caption { font-size: 10px; margin-top: 8px; color: var(--muted); }
.stat-caption svg { width: 11px; height: 11px; }
.dashboard-grid { gap: 16px; grid-template-columns: 1.15fr 1fr .95fr; }
.dashboard-bottom { gap: 16px; grid-template-columns: 1.55fr 1fr; margin-top: 16px; }
.panel { background: var(--panel); border: 1px solid var(--line); border-radius: 10px; box-shadow: none; }
.panel-head { padding: 17px 18px 12px; min-height: 52px; }
.panel-head h2, h2 { font-size: 15px; font-weight: 600; }
.panel-head .text-link, .text-link { font-size: 11px; color: var(--blue); }
.text-link:hover { color: #58aaff; }
.panel-body { padding: 0 18px 15px; }
.dashboard-grid .panel-body { max-height: 336px; overflow: auto; scrollbar-width: thin; scrollbar-color: #3a3a3a transparent; }
.dashboard-grid .empty { min-height: 274px; }
.activity-row, .alert-row { gap: 11px; padding: 12px 0; border-color: var(--line); min-height: 62px; }
.activity-row > div:nth-child(2), .alert-row > div:nth-child(2) { min-width: 0; }
.activity-title { font-size: 12px; color: var(--text); }
.activity-subtitle { font-size: 11px; color: var(--muted); line-height: 1.5; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 280px; }
.activity-meta { font-size: 11px; color: var(--muted); }
.activity-icon { width: 34px; height: 36px; background: #007fff10; border: 0; color: var(--blue); border-radius: 8px; flex-shrink: 0; }
.alert-row:hover { background: #222222; }
.quick-actions { padding: 0 12px 12px; gap: 6px; }
.quick-action { background: var(--panel); border: 1px solid var(--line); border-radius: 8px; min-height: 47px; padding: 8px; gap: 11px; }
.quick-action:hover { background: #222222; border-color: #333333; transform: none; }
.quick-icon { width: 30px; height: 31px; color: var(--blue); background: #007fff12; border: 0; border-radius: 7px; flex-shrink: 0; }
.quick-icon.red { color: var(--red); background: #ef444412; border: 0; }
.quick-icon.purple { color: var(--blue); background: #007fff12; border: 0; }
.quick-action strong { font-size: 12px; font-weight: 500; }
.quick-action small { font-size: 11px; color: var(--muted); margin-top: 2px; }
.quick-action > svg { color: var(--muted); width: 14px; }
.status-list { padding: 0 18px 13px; }
.status-row { font-size: 12px; padding: 10px 0; border-color: var(--line); }
.status-row > svg { color: var(--muted); }
.status-row .status-value { font-size: 11px; }
.status-summary { font-size: 10px; }
.tag { font-size: 11px; padding: 4px 7px; background: #007fff14; border: 1px solid #007fff25; color: #5badff; border-radius: 5px; }
.tag.success { color: #58d783; background: #22c55e12; border-color: #22c55e25; }
.tag.warning { color: #f8ba4c; background: #f59e0b12; border-color: #f59e0b25; }
.tag.danger { color: #f47878; background: #ef444412; border-color: #ef444425; }
.tag.neutral { color: var(--muted); background: #a1a1aa0b; border-color: #a1a1aa20; }
table, td { font-size: 13px; }
th { font-size: 11px; font-weight: 500; padding: 12px; color: var(--muted); border-color: var(--line); }
td { padding: 14px 12px; color: var(--muted); border-color: var(--line); }
.compact-table td { font-size: 13px; padding: 11px 9px; }
.compact-table th { font-size: 11px; padding: 10px 9px; }
.table-primary { color: var(--text); }
.table-secondary { font-size: 11px; color: var(--muted); }
.table-empty { font-size: 12px; color: var(--muted); padding: 35px 16px; }
tbody tr.clickable:hover td { background: #222222; }
.table-wrap { padding: 0 10px 10px; }
.screen-heading { margin-bottom: 22px; padding-top: 0; gap: 20px; }
.screen-heading .eyebrow { font-size: 10px; color: var(--muted); margin-bottom: 8px; }
.screen-heading h1 { font-size: 25px; font-weight: 650; }
.screen-heading p { font-size: 12px; color: var(--muted); line-height: 1.7; }
.btn { border: 1px solid #303030; background: #222222; color: var(--text); font-size: 12px; padding: 10px 14px; min-height: 39px; border-radius: 8px; box-shadow: none; }
.btn:hover { background: #2b2b2b; border-color: #3b3b3b; }
.btn.primary { background: var(--blue); border-color: var(--blue); color: var(--text); box-shadow: none; }
.btn.primary:hover { background: #168aff; border-color: #168aff; }
.btn.danger { background: #ef444414; color: #ff8a8a; border-color: #ef44443b; }
.btn.small { font-size: 11px; min-height: 34px; padding: 7px 11px; }
.btn.ghost { background: transparent; }
.search-field { background: var(--panel); border: 1px solid var(--line); border-radius: 8px; }
.search-field input { background: transparent; font-size: 12px; padding: 12px 11px 12px 0; }
.search-field svg { color: var(--muted); }
input, select, textarea { background: var(--bg); border-color: #303030; color: var(--text); font-size: 13px; padding: 11px 12px; border-radius: 8px; }
input::placeholder, textarea::placeholder { color: #77777e; }
.toolbar select { height: 43px; font-size: 12px; background: var(--panel); border-color: var(--line); }
.result-count { font-size: 11px; color: var(--muted); }
.pagination { border-color: var(--line); color: var(--muted); font-size: 11px; padding: 14px 18px; }
.pagination .btn { font-size: 11px; min-height: 34px; }
.notice, .document-filters { background: var(--panel); border-color: #2d2d2d; border-radius: 8px; color: var(--muted); font-size: 12px; }
.notice svg { color: var(--blue); }
.notice strong { color: var(--text); }
.notice.warning { background: #f59e0b0b; border-color: #f59e0b25; color: #d5b37a; }
.notice.error { background: #ef44440c; border-color: #ef444425; color: #e2a1a1; }
.document-filters .field { font-size: 11px; }
.document-filters input, .document-filters select { font-size: 12px; height: 40px; }
.empty { min-height: 230px; color: var(--muted); }
.empty-icon { background: #007fff0b; border-color: #007fff20; color: var(--blue); width: 46px; height: 46px; border-radius: 10px; }
.empty strong { font-size: 12px; color: var(--text); }
.empty p { font-size: 11px; line-height: 1.8; color: var(--muted); max-width: 290px; }
.empty .text-link { font-size: 11px; }
.info-card p, .account-help { font-size: 12px; color: var(--muted); }
.account-help { border-color: var(--line); }
.footer { color: var(--muted); font-size: 10px; padding: 19px 0 2px; }
.footer .separator { color: #515157; }
.skeleton { background-image: linear-gradient(90deg,#222 25%,#303030 50%,#222 75%); }
.boot { min-height: 100%; }
.modal-backdrop { inset: auto; top: 50%; left: 50%; transform: translate(-50%, -50%); width: var(--frame-width); height: var(--frame-height); border-radius: 10px; padding: 24px; background: #0009; backdrop-filter: blur(3px); }
.modal { background: var(--panel); border: 1px solid #353535; border-radius: 10px; width: 820px; max-height: calc(var(--frame-height) - 48px); box-shadow: 0 18px 65px #0006; }
.modal.wide { width: 1060px; }
.modal.search-modal { width: 800px; margin-top: 36px; }
.modal-header { padding: 20px 24px; border-color: var(--line); background: var(--panel); }
.modal-header h2 { font-size: 18px; }
.modal-subtitle { font-size: 11px; color: var(--muted); margin-top: 5px; }
.modal-header .icon-btn { background: #222222; }
.modal-content { padding: 24px; scrollbar-color: #3a3a3a transparent; min-height: 0; }
.modal-footer { background: var(--panel); border-color: var(--line); padding: 16px 24px; gap: 10px; }
.save-status { font-size: 11px; }
.field label, .field > span, .checkbox-field { color: var(--muted); font-size: 12px; }
.field small { font-size: 11px; color: var(--muted); }
.field input, .field select, .field textarea { font-size: 13px; }
.field-header { font-size: 11px; color: var(--muted); }
.field-header:after { background: var(--line); }
.field-error { font-size: 11px; }
.detail-grid { gap: 20px; }
.detail-item { border-color: var(--line); padding-bottom: 15px; }
.detail-label { font-size: 11px; color: var(--muted); }
.detail-value { font-size: 13px; color: var(--text); line-height: 1.8; }
.detail-actions { margin-top: 22px; }
.section-title { font-size: 13px; margin-top: 24px; padding-top: 20px; border-color: var(--line); }
.file-item, .search-result { background: var(--bg); border-color: var(--line); border-radius: 8px; font-size: 12px; }
.file-item small { font-size: 11px; }
.search-result:hover { background: #222222; }
.search-result strong { font-size: 12px; }
.search-result small { font-size: 11px; color: var(--muted); }
.search-result svg { color: var(--blue); }
.search-group-title { font-size: 10px; color: var(--muted); }
.search-group-title span { border-color: #333333; color: var(--muted); }
.search-integration-note { font-size: 11px; }
.history-entry { border-color: #333333; font-size: 13px; }
.history-entry:before { background: var(--blue); }
.history-entry p, .history-entry summary, .history-entry pre { font-size: 11px; }
.history-entry summary { color: var(--blue); }
.history-entry pre { background: var(--bg); color: var(--muted); }
.fine-item select, .fine-item input { font-size: 12px; }
.fine-amount { font-size: 12px; color: var(--muted); }
.fine-total { background: #007fff0c; border-color: #007fff25; color: var(--muted); font-size: 12px; }
.fine-total strong { color: var(--blue); font-size: 21px; }
.settings-section > p { font-size: 12px; color: var(--muted); }
.settings-section + .settings-section, .settings-actions { border-color: var(--line); }
.role-grid textarea, .catalog-row input { font-size: 12px; }
.permission-list .tag { font-size: 10px; }
.toasts { right: max(52px,calc((100vw - 1780px)/2 + 20px)); bottom: max(52px,calc((100dvh - 960px)/2 + 20px)); max-width: 420px; }
.toast { background: #222222; border-color: #383838; color: var(--text); border-radius: 10px; font-size: 12px; }
.toast.success { background: #15271c; border-color: #22c55e45; }
.toast.error { background: #2b1919; border-color: #ef444445; }
.detail-tabs { display: flex; gap: 5px; border-bottom: 1px solid #2d2d2d; margin: -4px 0 23px; padding-bottom: 0; overflow: auto; }
.detail-tab { border: 0; border-bottom: 2px solid transparent; background: transparent; padding: 13px 14px; margin-bottom: -1px; display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 12px; font-weight: 500; white-space: nowrap; }
.detail-tab svg { width: 16px; height: 16px; }
.detail-tab:hover { color: var(--text); background: #222222; }
.detail-tab[aria-selected="true"] { color: var(--blue); border-bottom-color: var(--blue); }
.detail-tabpanel { min-height: 220px; }
.detail-tabpanel > .section-title:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.linked-object-list { display: grid; gap: 9px; margin-bottom: 24px; }
.linked-object-list .search-result { min-height: 57px; }
.entity-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.tab-error { font-size: 12px; color: var(--muted); line-height: 1.8; }
@media (max-width: 1500px) {
  :root { --sidebar-width: 226px; }
  .topbar { gap: 14px; padding: 0 20px; }
  .page-context { min-width: 160px; }
  .page-context strong { font-size: 13px; }
  .global-search { font-size: 11px; }
  .global-search kbd { display: none; }
  .profile { min-width: 168px; padding-left: 13px; }
  .profile-name { font-size: 11px; }
  .main { padding: 20px; }
  .nav-link { font-size: 11px; }
  .brand-title { font-size: 16px; }
  .stat { padding: 15px 12px; gap: 10px; }
  .stat-icon { width: 34px; height: 40px; }
  .stat-label { font-size: 10px; }
  .stat-caption { font-size: 9px; }
  .dashboard-grid { grid-template-columns: 1fr 1fr; }
  .quick-panel { grid-column: 1 / -1; }
  .quick-actions { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .dashboard-grid .panel-body { max-height: 300px; }
  .dashboard-grid .empty { min-height: 230px; }
  .activity-subtitle { max-width: 320px; }
}
@media (max-width: 1100px) {
  :root { --frame-width: calc(100vw - 32px); --frame-height: calc(100dvh - 32px); --sidebar-width: 216px; }
  .topbar { padding: 0 16px; gap: 12px; flex-basis: 70px; height: 70px; }
  .page-context { min-width: 0; }
  .page-context-icon { display: none; }
  .page-context small { font-size: 9px; }
  .page-context strong { font-size: 12px; }
  .global-search { min-width: 120px; }
  .global-search .search-placeholder { max-width: 180px; }
  .profile { min-width: 0; padding-left: 11px; }
  .profile-text, .profile .chevron { display: none; }
  .main { padding: 18px; }
  .welcome-meta { display: none; }
  .welcome-bar h1 { font-size: 23px; }
  .stats { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
  .stat { min-height: 98px; }
  .dashboard-bottom { grid-template-columns: 1fr; }
  .quick-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .quick-action small { font-size: 10px; }
  .activity-subtitle { max-width: 190px; }
  .toasts { bottom: 32px; right: 32px; }
}
@media (max-width: 760px) {
  :root { --frame-width: 100vw; --frame-height: 100dvh; --sidebar-width: 252px; }
  #app { border-radius: 0; border: 0; box-shadow: none; }
  .layout { display: block; }
  .sidebar { position: absolute; inset: 0 auto 0 0; width: var(--sidebar-width); transform: translateX(-100%); box-shadow: 15px 0 40px #0005; }
  .sidebar.open { transform: translateX(0); }
  .nav-link { font-size: 12px; padding: 10px 12px; min-height: 39px; }
  .brand-title { font-size: 17px; }
  .mobile-backdrop.visible { position: absolute; inset: 0; }
  .workspace { width: 100%; }
  .topbar { flex: 0 0 68px; height: 68px; gap: 10px; padding: 0 13px; }
  .page-context small { display: none; }
  .page-context strong { max-width: 135px; overflow: hidden; text-overflow: ellipsis; font-size: 13px; }
  .global-search { min-width: 38px; flex: 0 0 38px; width: 38px; height: 38px; padding: 0; justify-content: center; margin-left: auto; background: transparent; border: 0; }
  .global-search .search-placeholder, .global-search kbd { display: none; }
  .global-search svg { width: 20px; height: 20px; }
  .profile { border: 0; padding: 0; min-width: 32px; }
  .profile .avatar { width: 32px; height: 32px; }
  .main { padding: 18px 14px; }
  .welcome-bar { min-height: 74px; margin-bottom: 15px; padding-bottom: 16px; }
  .welcome-bar h1 { font-size: 22px; }
  .welcome-bar p { font-size: 11px; line-height: 1.7; }
  .welcome-bar .eyebrow { font-size: 9px; }
  .access-banner { padding: 13px; }
  .access-banner h2 { font-size: 12px; }
  .access-banner p { font-size: 11px; line-height: 1.7; }
  .access-banner .btn { font-size: 11px; margin-left: 28px; }
  .stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-bottom: 15px; }
  .stat { padding: 13px 11px; min-height: 102px!important; gap: 10px; }
  .stat-icon { width: 30px; height: 35px; }
  .stat-icon svg { width: 20px; height: 20px; }
  .stat-value { font-size: 25px; }
  .stat-label { font-size: 10px; }
  .stat-caption { font-size: 9px; }
  .stat:last-child { min-height: 78px!important; }
  .dashboard-grid, .dashboard-bottom { grid-template-columns: 1fr; gap: 15px; }
  .quick-panel { grid-column: auto; }
  .quick-actions { grid-template-columns: 1fr; }
  .quick-action { min-height: 53px; padding: 9px; gap: 12px; }
  .quick-action strong { font-size: 12px; }
  .quick-action small { font-size: 11px; }
  .quick-action > svg { display: block; }
  .panel-head { padding: 16px 15px 11px; }
  .panel-head h2 { font-size: 14px; }
  .panel-head .text-link { font-size: 10px; }
  .panel-body { padding: 0 15px 15px; }
  .activity-title { font-size: 12px; }
  .activity-subtitle { font-size: 11px; max-width: 190px; }
  .activity-meta { font-size: 9px; }
  .dashboard-grid .empty { min-height: 210px; }
  .status-row { font-size: 12px; }
  .status-row .status-value, .status-summary { font-size: 10px; }
  .screen-heading h1 { font-size: 22px; }
  .screen-heading p { font-size: 12px; }
  .btn { font-size: 12px; }
  .toolbar select { font-size: 12px; }
  table, td, .compact-table td { font-size: 12px; }
  th, .compact-table th { font-size: 10px; }
  .table-secondary { font-size: 10px; }
  .footer { font-size: 9px; line-height: 1.8; }
  .modal-backdrop { padding: 10px; border-radius: 0; }
  .modal { max-height: calc(100dvh - 20px); }
  .modal-header { padding: 17px; }
  .modal-content { padding: 17px; }
  .modal-footer { padding: 13px 17px; }
  .modal.search-modal { margin-top: 0!important; }
  .detail-tabs { margin: -4px 0 20px; gap: 0; }
  .detail-tab { font-size: 11px; padding: 12px 10px; gap: 6px; }
  .detail-tab svg { width: 14px; height: 14px; }
  .detail-grid { gap: 16px; }
  .detail-value { font-size: 13px; }
  .fine-item select, .fine-item input { font-size: 11px; }
  .toasts { bottom: 14px; right: 14px; left: 14px; max-width: none; }
  .toast { font-size: 12px; }
}
