:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color:#0f172a;background-color:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f8fafc,#eef2ff 80%)}button{font:inherit}.page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.topbar{display:flex;flex-direction:column;gap:1rem 2rem;align-items:flex-start}.menu-toggle{display:none;border:1px solid #e5e7eb;background:#fff;padding:.55rem .75rem;border-radius:10px;font-weight:700;cursor:pointer}.menu-toggle:hover{border-color:#cbd5e1;background:#eef2ff}.app-name{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:#5b6473;margin:0 0 .25rem}.muted{color:#5b6473;margin:0}.layout{display:flex;gap:1rem;position:relative;min-height:70vh}.sidebar{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;box-shadow:0 6px 18px #0f172a0f;width:240px;flex-shrink:0;position:sticky;top:1rem;align-self:flex-start}.sidebar__list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.sidebar button{border:1px solid #e5e7eb;background:#f8fafc;padding:.65rem .8rem;border-radius:10px;text-align:left;font-weight:600;color:#0f172a;transition:all .2s ease}.sidebar button:hover{border-color:#cbd5e1;background:#eef2ff}.sidebar button.active{background:#4f46e5;color:#fff;border-color:#4338ca}.content{display:flex;flex-direction:column;gap:1rem;flex:1}.resource__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.resource__overline{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-size:.8rem;margin:0}.resource__actions button{padding:.6rem .95rem;border-radius:12px;border:1px solid transparent;font-weight:700;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;box-shadow:0 10px 20px #6366f12e;transition:transform .1s ease,box-shadow .2s ease}.resource__actions button:hover{transform:translateY(-1px);box-shadow:0 14px 26px #6366f140}.resource__actions button.secondary{background:#f8fafc;color:#0f172a;border-color:#e5e7eb;box-shadow:none}.resource__actions button.secondary:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a14}.resource__grid{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}.panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;box-shadow:0 6px 18px #0f172a0f}.panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem .85rem}.form-field{display:flex;flex-direction:column;gap:.35rem;font-weight:600;color:#0f172a}.form-field input,.form-field textarea{border:1px solid #d5d7dd;border-radius:10px;padding:.6rem .75rem;background:#fff;font:inherit;color:#0f172a;caret-color:#4f46e5}.form-field input::placeholder,.form-field textarea::placeholder{color:#94a3b8}.option-group{display:flex;flex-wrap:wrap;gap:.4rem}.option-group--radio{gap:.5rem}.option-radio{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .7rem;border:1px solid #e5e7eb;background:#f8fafc;color:#0f172a;border-radius:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.option-radio input{accent-color:#4f46e5;cursor:pointer}.option-radio.active{background:#eef2ff;border-color:#4f46e5;color:#1f2a4d}.option-radio:hover{border-color:#cbd5e1}.lookup{display:flex;flex-direction:column;gap:.3rem}.lookup input{border:1px solid #d5d7dd;border-radius:10px;padding:.6rem .75rem;background:#fff;font:inherit;color:#0f172a;caret-color:#4f46e5}.lookup-list{list-style:none;margin:0;padding:0;border:1px solid #e5e7eb;border-radius:10px;max-height:220px;overflow:auto;background:#fff}.lookup-list li+li{border-top:1px solid #e5e7eb}.lookup-list button{width:100%;text-align:left;padding:.5rem .75rem;background:transparent;border:none;color:#0f172a}.lookup-list button:hover{background:#eef2ff}.small{font-size:.9rem}.form-field textarea{min-height:96px}.checkbox-field{display:flex;align-items:center;gap:.5rem;font-weight:500}.required{color:#ef4444;margin-left:4px}.form-actions{margin-top:.75rem;display:flex;gap:.5rem}.panel button{border-radius:10px;border:1px solid #4f46e5;background:#4f46e5;color:#fff;padding:.6rem .9rem;font-weight:700;cursor:pointer}.panel button:hover{background:#4338ca;border-color:#4338ca}.panel button.ghost{background:#f8fafc;color:#0f172a;border-color:#e5e7eb}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.card{border:1px solid #e5e7eb;border-radius:12px;padding:.85rem;background:#fff;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 4px 12px #0f172a0f}.card__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem .75rem}.card__field{display:flex;flex-direction:column;gap:.25rem}.card__label{font-size:.9rem;color:#5b6473}.card__value{font-weight:700;color:#0f172a;word-break:break-word}.card__actions{display:flex;gap:.4rem;flex-wrap:wrap}.card__actions button{padding:.5rem .8rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:transparent;border-radius:10px}.icon-btn svg{pointer-events:none}.icon-btn:hover{transform:translateY(-1px)}.icon-btn--delete{color:#dc2626}.icon-btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem;margin-bottom:.75rem}.filter-field{display:flex;flex-direction:column;gap:.35rem;font-weight:600;color:#0f172a}.filter-field input,.filter-field select{border:1px solid #d5d7dd;border-radius:10px;padding:.5rem .65rem;background:#fff;font:inherit;color:#0f172a;caret-color:#4f46e5}.modal-backdrop{position:fixed;inset:0;background:#0f172a61;display:flex;align-items:center;justify-content:center;padding:1.25rem;z-index:20}.modal{background:#fff;border-radius:16px;box-shadow:0 18px 48px #0f172a47;width:min(780px,96vw);max-height:90vh;overflow:auto;padding:1.25rem;border:1px solid #e5e7eb}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.modal button{border-radius:10px;border:1px solid #4f46e5;background:#4f46e5;color:#fff;padding:.6rem .9rem;font-weight:700;cursor:pointer}.modal button.ghost{background:#f8fafc;color:#0f172a;border-color:#e5e7eb}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar-overlay{position:fixed;inset:0;background:#0f172a52;z-index:15}@media(max-width:900px){.layout{gap:.5rem}.sidebar{position:fixed;top:0;left:0;height:100vh;width:260px;border-radius:0;box-shadow:0 18px 48px #0f172a47;transform:translate(-110%);transition:transform .2s ease;z-index:20}.sidebar.open{transform:translate(0)}.content{padding-bottom:2rem}.menu-toggle{display:inline-flex;align-items:center;gap:.4rem}}.table-wrapper{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:.95rem}th,td{border-bottom:1px solid #e5e7eb;padding:.6rem;text-align:left}th{background:#f8fafc;color:#475569;font-weight:700}td.actions{display:flex;gap:.4rem}td.actions button{padding:.4rem .65rem}td.actions .ghost{color:#ef4444}.id-cell{font-family:SFMono-Regular,ui-monospace,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem}.error{color:#dc2626;margin-top:.5rem}@media(max-width:1024px){.resource__grid,.layout{grid-template-columns:1fr}}
