.btn-add{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--accent);color:var(--text-strong);border:none;font-size:1.6rem;font-weight:600;line-height:1;cursor:pointer;flex-shrink:0;transition:filter 120ms ease,transform 120ms ease}.btn-add:hover{filter:brightness(1.1)}.btn-add:active{transform:scale(.95)}.btn-add:focus-visible{outline:none;box-shadow:var(--ring)}.page-header.with-add{display:flex;align-items:baseline;gap:1rem}.page-header.with-add h1{margin:0;flex:1}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:opacity 200ms ease;z-index:90}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;width:min(540px,100vw);height:100vh;background:var(--panel);border-left:1px solid var(--line);box-shadow:-8px 0 24px rgba(0,0,0,.3);transform:translateX(100%);transition:transform 220ms cubic-bezier(.2,.7,.2,1);z-index:100;display:flex;flex-direction:column}.drawer.open{transform:translateX(0)}.drawer-head{padding:1rem 1.4rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:1rem}.drawer-head h2{margin:0;font-size:1.1rem}.drawer-close{background:0 0;border:none;color:var(--muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:.2rem .4rem;border-radius:4px}.drawer-close:hover{color:var(--text);background:var(--hover)}.drawer-body{padding:1.4rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.drawer-form{display:flex;flex-direction:column;gap:.7rem;width:100%}.drawer-form>label{display:grid;grid-template-columns:minmax(0,9rem)minmax(0,1fr);align-items:center;gap:.7rem;width:100%}.drawer-form>label>.field-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-form input[type=text],.drawer-form input[type=password],.drawer-form input:not([type]),.drawer-form textarea{width:100%;min-width:0}.drawer-form textarea{background:var(--field-bg);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.4rem .6rem;font:inherit;line-height:1.4;resize:vertical;min-height:4.6rem}.drawer-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.drawer-form>label.drawer-form-row-tall{align-items:start}.drawer-form>label.drawer-form-row-tall>.field-label{padding-top:.45rem}.drawer-form>label>.gsel{width:100%;min-width:0}.drawer-form .ability-picker{min-width:0;width:100%}.drawer-form-actions{display:flex;justify-content:flex-start;gap:.5rem;padding-top:.6rem;border-top:1px dashed var(--line);margin-top:.4rem;width:100%}.code-chip{display:inline-block;background:0 0;color:var(--accent);border:1px solid var(--accent-line);border-radius:var(--radius-sm);padding:1px 5px;font-family:ui-monospace,monospace;font-size:.85rem;white-space:nowrap}