.groove-dialog{box-sizing:border-box;width:min(830px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);padding:0;overflow:auto;border:1px solid #4c5d71;border-radius:10px;background:#1c2531;color:#dce5ed;box-shadow:0 22px 90px #0009;font:12px/1.5 Inter,system-ui,sans-serif}
.groove-dialog::backdrop{background:#060c13b8;backdrop-filter:blur(3px)}
.groove-dialog *{box-sizing:border-box}.groove-dialog [hidden]{display:none!important}
.groove-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 18px;background:#253342;border-bottom:1px solid #405166}
.groove-eyebrow{color:#b7d6b5;font-size:10px;letter-spacing:.13em;font-weight:700}
.groove-header h2{margin:5px 0 7px;font-size:23px;line-height:1.25;letter-spacing:-.035em}.groove-header p{margin:0;color:#a9bccc;font-size:12px}
.groove-dialog button,.groove-dialog select,.groove-dialog input[type=text]{border:1px solid #4a5d72;border-radius:4px;background:#243344;color:#dde8f2;font:inherit;min-height:34px;padding:6px 9px}
.groove-dialog button{cursor:pointer;font-weight:600;white-space:nowrap}.groove-dialog button:hover:not(:disabled){background:#32465a;border-color:#7c98ad}.groove-dialog :disabled{opacity:.45;cursor:default}
.groove-dialog :focus-visible{outline:2px solid #b7d7ab;outline-offset:2px}.groove-dialog .groove-close{min-width:32px;min-height:30px;padding:0;font-size:22px;background:transparent;border-color:transparent;color:#aabac8}
.groove-section{padding:18px 24px;border-bottom:1px solid #344354}.groove-section h3{margin:0 0 9px;font-size:13px;color:#cfdecf;letter-spacing:.01em}
.groove-help{margin:7px 0 11px;color:#9aafc1;font-size:11px;line-height:1.5}
.groove-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:13px 0}
.groove-dialog label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:11px;color:#b9cbd9}
.groove-dialog select,.groove-dialog input[type=text]{width:100%;min-width:0;color:#e1eaf1}.groove-dialog input::placeholder{color:#879bad}
.groove-inline{display:flex;align-items:center;gap:14px}.groove-inline p{margin:0}.groove-library{display:flex;align-items:flex-end;gap:10px}.groove-library>label{flex:1}
.groove-feel{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:10px 12px;background:#18212c;border:1px solid #3b4a5d;border-radius:6px}
.groove-feel .groove-strength{flex-direction:row;align-items:center;gap:10px;flex:1 1 210px;color:#d1e2d3;font-weight:700}.groove-strength input{flex:1;min-width:70px;max-width:240px;accent-color:#b6d6a9}.groove-strength output{min-width:33px;font-variant-numeric:tabular-nums;color:#c4e2b9}
.groove-feel .groove-check{flex-direction:row;align-items:center;gap:6px;white-space:nowrap}.groove-check input{accent-color:#b7d7ab;margin:0}
.groove-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}.groove-dialog .groove-primary{background:#b4d3aa;border-color:#bdddb3;color:#172518}.groove-dialog .groove-primary:hover:not(:disabled){background:#c6e6bd;border-color:#d4efcd}
.groove-status{margin:0;padding:12px 24px;color:#cad9b5;font-size:12px}.groove-status:empty{display:none}.groove-status[data-kind=error]{color:#f3b5a7;background:#452a2b}
.groove-preview{margin:0 24px 18px;padding:10px 12px;border:1px solid #61715a;border-radius:6px;background:#202e30}.groove-preview-count{margin:0 0 7px;color:#cedfc8;font-weight:600}.groove-table-scroll{overflow-x:auto}
.groove-preview table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}.groove-preview caption{text-align:left;font-size:10px;color:#9bb3b8;margin-bottom:7px}.groove-preview th{text-align:left;font-weight:500;color:#a7c1cb}.groove-preview td,.groove-preview th{padding:5px 8px 5px 0;border-bottom:1px solid #3b4c4f;white-space:nowrap}.groove-preview td:first-child{max-width:250px;overflow:hidden;text-overflow:ellipsis}.groove-preview tr:last-child td{border-bottom:0}
.groove-footer{padding:14px 24px;background:#17212c;border-top:1px solid #334255;color:#91a8bb;font-size:10px}
@media(max-width:550px){.groove-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.groove-header,.groove-section{padding:15px}.groove-header h2{font-size:21px}.groove-fields{gap:9px}.groove-inline{align-items:flex-start;gap:10px}.groove-preview{margin-inline:15px}.groove-status,.groove-footer{padding:12px 15px}.groove-feel{gap:12px}.groove-feel .groove-strength{flex-basis:100%}.groove-dialog button,.groove-dialog select,.groove-dialog input[type=text]{font-size:11px}}
