/* Shared interaction and layout vocabulary across public pages and admin tools. */
html:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;scroll-padding-top:20px}
html:root body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important;font-size:14px;line-height:1.65;text-rendering:optimizeLegibility}
html:root body:has(>.nf-sitebar){display:block!important;margin:0;min-height:100dvh}
.nf-sitebar{position:relative;z-index:10;box-sizing:border-box;width:min(1440px,calc(100% - 32px));margin:16px auto 0;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 18px;border:1px solid #3c4e69;border-radius:18px;background:linear-gradient(125deg,#1b293e,#25364e 70%,#39263e);box-shadow:0 8px 28px #0002;color:#eef4ff}
html:root body h1,html:root body h2,html:root body h3,html:root body h4{font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important}
.nf-sitebrand{display:flex;align-items:center;gap:14px;min-width:0;text-decoration:none!important;color:#f0f5ff!important}.nf-sitebrand img{display:block;width:110px;height:47px;object-fit:contain;flex-shrink:0}.nf-sitebrand>span{font-size:12px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.nf-sitebrand small{display:block;color:#b2c2da;font-size:8px;letter-spacing:.1em;margin-top:3px;font-weight:500}
.nf-site-nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.nf-site-nav a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:1px solid #64768d;border-radius:10px;font:650 12px/1.5 system-ui,sans-serif;text-decoration:none;white-space:nowrap;color:#263449!important;background:linear-gradient(160deg,#f7faff,#ccd5e2 52%,#e9f0f8);box-shadow:inset 0 1px #fff8;transition:transform .18s,box-shadow .18s}.nf-site-nav a:hover{transform:translateY(-2px);box-shadow:0 4px 14px #0003}.nf-site-nav a[aria-current=page]{color:#892940!important;border-color:#f5bfdb;box-shadow:inset 0 -3px #bc496d;background:linear-gradient(160deg,#fff3fa,#dbccdf 52%,#f9e8f4)}
html:root body button,html:root body input,html:root body textarea,html:root body select{font-family:inherit!important}html:root body button,html:root body .btn,html:root body .back-btn{min-height:36px;line-height:1.5}html:root body input:not([type=checkbox]):not([type=radio]):not([type=hidden]),html:root body select{min-height:40px}html:root body label{line-height:1.65}html:root body button:disabled{cursor:not-allowed;opacity:.55}html:root body a:focus-visible,html:root body button:focus-visible,html:root body input:focus-visible,html:root body textarea:focus-visible,html:root body select:focus-visible{outline:2px solid #bad5ff!important;outline-offset:3px}
html:root body .wrap,html:root body.nrofunz-panel .layout,html:root body .wrapper{margin-top:18px!important}html:root body .wrapper{width:min(1160px,calc(100% - 32px));margin-left:auto;margin-right:auto}html:root body .table-wrap,html:root body .table-container{max-width:100%;overflow:auto;overscroll-behavior-x:contain}html:root body th{font-size:12px;line-height:1.5}html:root body td{font-size:13px;line-height:1.6}html:root body .modal-box{scrollbar-color:#71839f #19283c;scrollbar-width:thin}html:root body .modal-box .modal-scroll-body{overscroll-behavior:contain}html:root body .modal-box input:not([type=checkbox]):not([type=radio]){font-size:16px}
@media(max-width:960px){.nf-sitebar{gap:12px;flex-wrap:wrap}.nf-site-nav{flex:1}.nf-sitebrand>span{display:none}}
@media(max-width:600px){.nf-sitebar{width:calc(100% - 20px);margin-top:10px;padding:10px;border-radius:15px;gap:9px;justify-content:center}.nf-sitebrand img{width:115px;height:43px}.nf-sitebrand>span{display:block;font-size:11px}.nf-sitebrand small{font-size:7px}.nf-site-nav{width:100%;flex-basis:100%;display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:3px;gap:6px;scrollbar-width:thin}.nf-site-nav a{flex:1 0 auto;padding:8px 10px;font-size:11px;min-height:38px}html:root body .wrap,html:root body .wrapper{width:calc(100% - 20px)!important;margin-top:12px!important}html:root body td{font-size:12px}.nf-settings{margin-top:16px!important}}
@media(max-width:600px){.nf-site-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;gap:5px}.nf-site-nav a{min-width:0;padding:8px 2px;font-size:11px}.nf-sitebar{z-index:50}}
@media(prefers-reduced-motion:reduce){.nf-site-nav a{transition:none}.nf-site-nav a:hover{transform:none}}
