.ip-panel{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.ip-panel h2{font-size:var(--fs-lg)}.ip-panel h3{font-size:var(--fs-md)}.ip-field{flex-direction:column;gap:3px;min-width:0;display:flex}.ip-field__label{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 6px;line-height:1.3;display:flex}.ip-field__control{align-items:center;gap:6px;min-width:0;display:flex}.ip-field__control input,.ip-field__control select,.ip-field__control textarea{flex:auto;width:100%;min-width:0}.ip-field__control input,.ip-field__control select{height:32px}.ip-field__control textarea{resize:vertical;min-height:64px}.ip-field__unit{font-size:var(--fs-xs);color:var(--text-muted);flex:none;min-width:1.6em}.ip-field__hint{font-size:var(--fs-xs);color:var(--text-muted);margin:0;line-height:1.35}.ip-field__error{font-size:var(--fs-xs);color:var(--danger-text);margin:0;line-height:1.35}.ip-field__mod{padding:0 6px;font-size:.6875rem}.ip-field--modified .ip-field__control input,.ip-field--modified .ip-field__control select{border-color:var(--warn);background:var(--warn-soft)}.ip-field--error .ip-field__control input,.ip-field input[aria-invalid=true]{border-color:var(--danger)}.ip-grid{gap:var(--space-2) var(--space-3);grid-template-columns:repeat(auto-fill,minmax(118px,1fr));min-width:0;display:grid}.ip-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-grid--wide{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.ip-span-all{grid-column:1/-1}.ip-check{align-items:flex-start;gap:8px;min-width:0;display:flex}.ip-check input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:2px 0 0;padding:0}.ip-check label{cursor:pointer;overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.ip-checks{gap:var(--space-2) var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.ip-btn-sm{min-height:28px;font-size:var(--fs-sm);padding:0 10px}.ip-btn-row{gap:var(--space-2);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.ip-btn-row--end{justify-content:flex-end}.ip-link{color:var(--accent-text);font-size:var(--fs-sm);background:0 0;border:0;padding:0;text-decoration:underline}.ip-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);min-width:0}.ip-section__title{justify-content:space-between;align-items:center;gap:var(--space-2);padding:9px var(--space-3);cursor:pointer;border-radius:var(--radius);font-weight:600;list-style:none;display:flex}.ip-section__title::-webkit-details-marker{display:none}.ip-section__title:before{content:"";border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);width:7px;height:7px;transition:transform var(--t-fast) var(--ease);flex:none;margin-right:2px;transform:rotate(-45deg)}.ip-section[open]>.ip-section__title:before{transform:rotate(45deg)}.ip-section__title>span:first-of-type{flex:1;min-width:0}.ip-section__title:hover{background:var(--surface-3)}.ip-section__body{gap:var(--space-3);padding:var(--space-1) var(--space-3) var(--space-3);flex-direction:column;min-width:0;display:flex}.ip-subhead{font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-1);font-weight:700}.ip-info{justify-content:space-between;gap:var(--space-2);font-size:var(--fs-sm);min-width:0;display:flex}.ip-info__label{color:var(--text-muted);min-width:0}.ip-info__value{text-align:right;overflow-wrap:anywhere}.ip-note{font-size:var(--fs-xs);color:var(--text-muted);overflow-wrap:anywhere;margin:0;line-height:1.4}.ip-note--warn{color:var(--warn-text)}.ip-empty{padding:var(--space-3);text-align:center;color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:var(--radius)}.ip-scroll{max-height:240px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:auto}.ip-table-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);max-width:100%;position:relative;overflow:auto}.ip-table{width:100%;font-size:var(--fs-sm)}.ip-table th,.ip-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;padding:5px 8px}.ip-table th{background:var(--surface-3);color:var(--text-muted);font-weight:600;font-size:var(--fs-xs);z-index:1;position:sticky;top:0}.ip-table td.num,.ip-table th.num{text-align:right}
