:root{--bg:#f4f7fb;--panel:#ffffff;--muted:#6b7280;--text:#0f172a;--border:#e5e7eb;--brand:#2563eb;--brand2:#1e40af;--ok:#16a34a;--warn:#f59e0b;--bad:#ef4444;--shadow: 0 10px 30px rgba(2,6,23,.08);--radius:16px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:radial-gradient(1200px 500px at 20% 0%,#e8f0ff 0%,var(--bg) 45%) fixed;color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;top:0;left:0;width:260px;height:100vh;overflow-y:auto;background:linear-gradient(180deg,var(--brand2),var(--brand));color:#fff;z-index:1000}.main{margin-left:260px;padding:18px 18px 34px;min-width:0}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px;margin-bottom:14px;color:#fff}.sidebar .small{color:#ffffffbf}.brand .logo{width:36px;height:36px;border-radius:12px;background:#ffffff29;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #fff3}.nav{margin-top:12px;display:flex;flex-direction:column;gap:6px}.nav a{padding:10px 12px;border-radius:12px;display:flex;align-items:center;gap:10px;opacity:.92}.nav a:hover{background:#ffffff1a}.nav a.active{background:#ffffff29;box-shadow:inset 0 0 0 1px #ffffff2e;opacity:1}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#ffffffbf;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search{flex:1;display:flex;gap:10px;align-items:center;border:1px solid var(--border);background:#fff;border-radius:999px;padding:10px 12px;max-width:720px}.search input{border:none;outline:none;width:100%}.btn{border:1px solid var(--border);background:#fff;padding:10px 12px;border-radius:12px;cursor:pointer}.btn.primary{background:var(--brand);border-color:#fff3;color:#fff}.btn:hover{filter:brightness(.98)}.select{border:1px solid var(--border);background:#fff;padding:10px 12px;border-radius:12px}.page{margin-top:16px}.h1{font-size:26px;margin:4px 0 14px}.sub{color:var(--muted);margin-top:-6px;margin-bottom:14px}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.card{background:#ffffffe6;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;min-height:60px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:var(--muted);font-weight:700;padding:10px 8px;border-bottom:1px solid var(--border)}.table td{padding:10px 8px;border-bottom:1px solid #f0f2f6}.small{font-size:12px;color:var(--muted)}.right{text-align:right}.mobile-menu-toggle,.mobile-menu-close,.navigation-backdrop{display:none}.grid>*,.responsive-grid>*,.relation-grid>*{min-width:0}.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (max-width: 1200px){.topbar{flex-wrap:wrap}.topbar-shortcuts,.topbar .actions{display:flex;flex-wrap:wrap;gap:10px;min-width:0;max-width:100%}.topbar select{min-width:0;max-width:100%}.responsive-row{flex-wrap:wrap}.responsive-row>*{min-width:0;max-width:100%}}@media (max-width: 900px){.main{margin-left:0;padding:10px 10px 24px}.app-shell{min-height:100svh}.page{min-width:0;margin-top:12px}.page .page{margin-top:0}.main,.modal-backdrop,.hcModalShell{overflow-wrap:anywhere}.app-sidebar{width:min(320px,calc(100vw - 48px))!important;height:100vh!important;height:100dvh!important;background:var(--bg);box-shadow:var(--shadow);visibility:hidden;transform:translate(-100%);overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom,0px)}.menu-open .app-sidebar{visibility:visible;transform:translate(0)}.mobile-menu-toggle,.mobile-menu-close{display:inline-flex;align-items:center;gap:8px}.mobile-menu-close{margin-bottom:14px}.navigation-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;border:0;background:#0f172a80}.app-sidebar a{min-height:44px}.topbar{padding:10px;gap:10px}.topbar-shortcuts,.topbar .actions{width:100%}.topbar .actions select{flex:1 1 180px;width:0}.grid,.responsive-grid,.responsive-stack{grid-template-columns:minmax(0,1fr)!important}.grid>*,.responsive-grid>*,.responsive-stack>*{min-width:0;grid-column:auto!important}.responsive-width{min-width:0!important;max-width:100%!important;width:100%!important}.responsive-row{gap:10px}.relation-grid{grid-template-columns:minmax(64px,.65fr) minmax(0,2fr) minmax(60px,1fr)!important;column-gap:8px!important}.table-scroll{width:100%;min-width:0;overscroll-behavior-x:contain}.table-scroll>table{min-width:600px}.table th,.table td{overflow-wrap:anywhere}.card{min-width:0}input:not([type=checkbox]):not([type=radio]),select,textarea{min-width:0;max-width:100%;font-size:16px}button,.btn,select,input:not([type=checkbox]):not([type=radio]){min-height:44px}button{white-space:normal}label:has(input[type=checkbox]),label:has(input[type=radio]){min-height:44px}input[type=checkbox],input[type=radio]{flex-shrink:0}.modal-backdrop,.hcModalShell{z-index:1100!important;padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))!important;height:100vh;height:100dvh;overflow-y:auto!important;align-items:start!important;place-items:start center!important;overscroll-behavior:contain}.modal-backdrop>div,.hcModalShell>.hcModal{min-width:0!important;width:100%!important;max-width:100%!important;max-height:calc(100vh - 32px)!important;max-height:calc(100dvh - max(8px,env(safe-area-inset-top,0px)) - max(8px,env(safe-area-inset-bottom,0px)))!important;overflow:auto!important;border-radius:12px!important}.modal-backdrop>div>*{flex-shrink:0}.hcModalShell .hcTitle{min-width:0;flex-basis:100%}.hcModalShell .hcModal{overflow:hidden!important}.hcModalShell .hcBody{min-height:0}}@media (max-width: 480px){.topbar{position:relative!important}.topbar-shortcuts{gap:6px}.topbar-shortcuts .btn{flex:1 1 auto;padding-inline:8px}.h1{font-size:23px}}@supports (padding: env(safe-area-inset-top)){.main{padding-top:calc(18px + env(safe-area-inset-top,0px));padding-bottom:calc(34px + env(safe-area-inset-bottom,0px));padding-left:calc(18px + env(safe-area-inset-left,0px));padding-right:calc(18px + env(safe-area-inset-right,0px))}}@media (max-width: 900px){@supports (padding: env(safe-area-inset-top)){.main{padding-top:calc(10px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));padding-left:calc(10px + env(safe-area-inset-left,0px));padding-right:calc(10px + env(safe-area-inset-right,0px))}}}
