.dt-wrapper{margin-top:1.5rem}.dt-toolbar{background:var(--white);border:1px solid #eee;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.6rem .8rem;display:flex;box-shadow:0 1px 2px #0000000a}.dt-rules{flex-wrap:wrap;flex:1;align-items:center;gap:.4rem;min-width:0;display:flex}.dt-rules-empty{color:var(--gray);opacity:.7;font-size:.8rem;font-style:italic}.dt-actions{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.dt-btn{background:var(--white);color:var(--gray);cursor:pointer;border:1px solid #d1d5db;border-radius:16px;padding:.3rem .75rem;font-size:.8rem;line-height:1.4;transition:all .15s}.dt-btn:hover,.dt-btn.dt-sort-btn{border-color:var(--dark-mint);color:var(--dark-mint)}.dt-btn.dt-sort-btn:hover{background:#f0faf0}.dt-btn.dt-reset{color:var(--gray);border:none;margin-left:.25rem}.dt-btn.dt-reset:hover{color:#c33;background:#fee2e2;border:none}.dt-chip{border:1px solid #0000;border-radius:16px;align-items:center;gap:.35rem;padding:.2rem .25rem .2rem .55rem;font-size:.78rem;line-height:1.4;display:inline-flex}.dt-chip-glyph{font-size:.85rem;line-height:1}.dt-chip-filter{color:#374151;background:#f3f4f6;border-color:#e5e7eb}.dt-chip-filter .dt-chip-glyph{color:#6b7280}.dt-chip-sort{border-color:var(--dark-mint);color:var(--dark-mint);background:#f0faf0}.dt-chip-sort .dt-chip-glyph{font-weight:700}.dt-chip-idx{background:var(--dark-mint);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;font-size:.6rem;font-weight:700;line-height:1;display:inline-flex}.dt-chip-toggle{cursor:pointer;color:var(--dark-mint);background:0 0;border:none;padding:0;font-size:.95rem;font-weight:700;line-height:1}.dt-chip-toggle:hover{opacity:.7}.dt-chip-remove{cursor:pointer;color:var(--gray);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;padding:0;font-size:1rem;line-height:1;transition:all .15s;display:inline-flex}.dt-chip-remove:hover{color:#c33;background:#fee2e2}.dt-form-slot{margin-bottom:1rem}.dt-form{background:var(--white);border:1px solid #eee;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .75rem;display:flex;box-shadow:0 1px 2px #0000000a}.dt-form-label{color:var(--gray);letter-spacing:.02em;white-space:nowrap;margin-right:.1rem;font-size:.72rem;font-weight:600}.dt-form select,.dt-form input{background:var(--white);color:inherit;border:1px solid #e5e7eb;border-radius:4px;padding:.35rem .55rem;font-size:.85rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.dt-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23228b22' d='M5 6L0 0h10z'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:.6rem;padding-right:1.6rem}.dt-form select:hover,.dt-form input:hover{border-color:#d1d5db}.dt-form select:focus,.dt-form input:focus{border-color:var(--dark-mint);outline:none;box-shadow:0 0 0 2px #228b222e}.dt-form input::placeholder{color:#9ca3af}.dt-form .dt-form-add{background:var(--dark-mint);color:var(--white);border-color:var(--dark-mint);font-weight:600}.dt-form .dt-form-add:hover{color:var(--white);background:#1c7a1c;border-color:#1c7a1c;box-shadow:0 1px 3px #228b2233}.dt-form .dt-form-cancel{color:var(--gray);background:0 0;border:none}.dt-form .dt-form-cancel:hover{color:var(--gray);background:#f3f4f6;border:none}.dt-header-menu{border-left:3px solid var(--dark-mint);padding-left:.7rem}.dt-header-menu .dt-btn{flex:auto}.dt-th-interactive{cursor:pointer;user-select:none}.dt-th-interactive:hover .dt-th-label{text-decoration:underline}.dt-th-badge{color:var(--dark-mint);font-size:.7rem;font-weight:700}.dt-scroll{overflow-x:auto}.dt-table{border-collapse:collapse;width:100%;font-size:.9rem}.dt-table thead th{text-align:left;border-bottom:2px solid var(--dark-mint);color:var(--dark-mint);white-space:nowrap;padding:.75rem .6rem;font-weight:600}.dt-table tbody td{vertical-align:top;border-bottom:1px solid #eee;padding:.6rem}.dt-table tbody tr:hover{background:#f0faf0}
