*{box-sizing:border-box}body{margin:0;background:#f5f7fa;color:#202a39;font:14px/1.6 system-ui,sans-serif}aside{position:fixed;width:238px;inset:0 auto 0 0;background:#fff;border-right:1px solid #e3e7ed;padding:30px 22px;display:flex;flex-direction:column;gap:16px}.brand{font-size:21px;font-weight:700}aside p{color:#8a94a4;font-size:12px;margin:0}nav{display:grid;gap:8px;margin-top:12px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dbe1ea;background:white;border-radius:8px;padding:8px 15px;color:#374253}nav button{border:0;text-align:left;padding:12px 16px}nav button.active,.primary{background:#5068e8;color:white}aside a{margin-top:auto;color:#5068e8;text-decoration:none}main{margin-left:238px;padding:35px 42px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}small{color:#909bab;font-size:11px;letter-spacing:1px}h1{font-size:26px;margin:6px 0}header button{height:36px}section{background:#fff;border:1px solid #e4e8ef;border-radius:12px;overflow:auto;padding:24px}table{width:100%;border-collapse:collapse;white-space:nowrap}td,th{text-align:left;padding:16px 14px;border-bottom:1px solid #edf0f5}th{color:#7f8999;background:#f9fafc;font-size:12px;font-weight:500}td{max-width:320px;overflow:hidden;text-overflow:ellipsis}.pill{display:inline-block;padding:2px 9px;border-radius:5px;background:#edf7f0;color:#38815c}.muted{color:#8d97a5}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.empty{text-align:center;padding:80px 0;color:#8d97a5}dialog{border:1px solid #e1e6ef;border-radius:14px;box-shadow:0 24px 80px #16213c30;width:620px;max-width:95vw;max-height:90vh;padding:28px}dialog::backdrop{background:#17203966}label{display:grid;gap:6px;margin:12px 0}input,select,textarea{width:100%;padding:10px;border:1px solid #dbe1ea;border-radius:6px;background:white}textarea{resize:vertical}footer{display:flex;justify-content:flex-end;gap:12px}dialog p{color:#8993a3;font-size:12px}#notice{color:#4d61ce;min-height:30px}#editError,#loginError{color:#b74350}@media(max-width:800px){aside{position:static;width:auto}nav{grid-template-columns:repeat(3,1fr)}main{margin:0;padding:20px}}

.access-rule{border:1px solid #eadfe3;border-radius:12px;margin:12px 0;padding:16px}.tier-row{display:flex;gap:12px;align-items:end}.tier-row label{flex:1}.feature-enabled{width:auto}#editor{max-height:90vh;overflow:auto;width:min(760px,90vw)}

[hidden]{display:none!important}

.block-row{border:1px solid #dbe1ea;border-radius:10px;padding:15px;margin:12px 0}
