:root{--bg: #f4f1ea;--bg-strong: #e6dcc9;--ink: #1f1c16;--ink-soft: #5a5347;--brand: #0f6f66;--brand-strong: #0a4e48;--panel: #fffdf8;--border: #d4c8b0;--danger: #a52e2e;--success: #1f7a3a;--shadow: 0 16px 30px rgba(32, 28, 22, .1)}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,Segoe UI,sans-serif;background:radial-gradient(circle at top right,#fff2cd 0,transparent 44%),linear-gradient(135deg,#ece7db,#f7f5ef);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-loading{padding:3rem}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem}.auth-card{width:min(500px,100%);background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:2rem;box-shadow:var(--shadow)}.auth-tag{margin:0;color:var(--brand);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.auth-card h1{margin-top:.4rem;margin-bottom:1.2rem}.auth-card form{display:grid;gap:.8rem}label{display:grid;gap:.35rem}label span{font-size:.85rem;color:var(--ink-soft)}input,textarea,select{width:100%;border:1px solid var(--border);background:#fff;border-radius:10px;padding:.65rem .75rem}textarea{min-height:110px;resize:vertical}button{border:1px solid var(--brand-strong);background:linear-gradient(180deg,var(--brand) 0%,var(--brand-strong) 100%);color:#f6fffd;border-radius:10px;padding:.55rem .85rem}button:hover{filter:brightness(1.02)}.ghost-btn{background:transparent;color:var(--ink);border-color:var(--border)}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:linear-gradient(170deg,#1d2220,#0e1312);color:#edf8f5;padding:1.2rem 1rem;display:flex;flex-direction:column;gap:1rem}.brand h1{margin:0;font-size:1.4rem}.brand-subtitle{margin:0;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:#97c7bf}.tenant-select-wrap span{color:#9ab7b1}.tenant-select-wrap select{background:#ffffff14;color:#edf8f5;border-color:#ffffff29}.nav-links{display:grid;gap:.35rem}.nav-link{border-radius:10px;padding:.6rem .75rem;color:#d2e5df;transition:background .2s ease}.nav-link:hover,.nav-link.active{background:#3a947f40;color:#fff}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding-top:.9rem;display:grid;gap:.4rem}.sidebar-footer p{margin:0;font-size:.82rem;color:#adccc5}.main-content{padding:1.5rem}.stack-gap{display:grid;gap:1.2rem}.panel{background:var(--panel);border-radius:18px;border:1px solid var(--border);box-shadow:var(--shadow);padding:1rem}.panel h2{margin:0}.panel p{margin:.35rem 0 0;color:var(--ink-soft)}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.dashboard-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.metric-card{border:1px solid var(--border);border-radius:14px;padding:.8rem;background:#fffaf1}.metric-card p{margin:0;font-size:.85rem}.metric-card strong{font-size:1.8rem}.entity-grid{display:grid;gap:1rem;grid-template-columns:1.35fr 1fr}.entity-list{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.55rem;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.row-actions,.editor-actions{display:flex;flex-wrap:wrap;gap:.4rem}.field-row{margin-bottom:.65rem}.json-box{min-height:110px;font-family:IBM Plex Mono,Consolas,monospace}.publish-block{margin-top:1rem;border-top:1px dashed var(--border);padding-top:.9rem}.publish-block h4{margin:.6rem 0}.versions-list{display:grid;gap:.45rem}.settings-form{display:grid;gap:.75rem}.inline-form{display:grid;grid-template-columns:1.5fr 1fr .8fr auto;gap:.5rem;margin-bottom:1rem}.error-text{color:var(--danger);margin:.5rem 0}.info-text{color:var(--success);margin:.5rem 0}.empty-state{color:var(--ink-soft);margin-top:.8rem}@media(max-width:1100px){.entity-grid,.inline-form{grid-template-columns:1fr}}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:20;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.main-content{padding:1rem}}
