.rank-workspace{display:grid;gap:20px;min-width:0}.rank-panel{padding:24px;min-width:0}.rank-panel h2{margin:0 0 16px}.rank-panel details{margin-top:20px}.rank-panel summary{cursor:pointer;font-weight:600;padding:12px 0}.rank-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:16px 0}.rank-toolbar .field{flex:1 1 160px;min-width:0}.rank-confirm{padding:20px;margin:16px 0;border:1px solid #cbdad6;border-radius:12px;background:#f4f9f7}.rank-confirm button{margin:8px 8px 0 0}.rank-preview{max-height:240px;overflow:auto}.rank-table-scroll{overflow:auto;max-width:100%;border:1px solid #e4e9e7;border-radius:12px}.rank-table-scroll table{width:100%;min-width:1450px;border-collapse:collapse;font-size:13px}.rank-table-scroll td,.rank-table-scroll th{padding:12px;text-align:left;border-bottom:1px solid #e4e9e7;max-width:240px;overflow-wrap:anywhere}.rank-table-scroll th{background:#f4f8f6;white-space:nowrap}.rank-table-scroll td .button{margin:3px;font-size:12px}.rank-workspace small{display:block;max-width:220px;overflow-wrap:anywhere;color:#687971}.rank-stats{display:flex;flex-wrap:wrap;gap:12px}.rank-stats span{padding:16px;background:#f4f8f6;border-radius:10px;flex:1}.rank-stats strong{display:block;font-size:24px;margin-top:8px}.rank-up{color:#087353;font-weight:600}.rank-down{color:#bb3434;font-weight:600}.rank-chart{width:100%;max-width:700px;height:auto;margin:20px 0}.rank-workspace input,.rank-workspace select,.rank-workspace textarea{max-width:100%}@media (max-width:600px){.rank-panel{padding:16px}.rank-toolbar{align-items:stretch}.rank-toolbar .button{flex:1 1 140px}.rank-stats span{flex-basis:40%}.rank-confirm{padding:12px}}.rank-workspace input[type=checkbox]{width:16px;height:16px;min-height:16px;flex:none;vertical-align:middle}.rank-dialog{margin:auto;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #cbdad6;border-radius:16px;padding:24px;color:#203d33;background:#fff}.rank-dialog::backdrop{background:#18392f88}.rank-dialog .button{margin:8px 8px 0 0}.rank-dialog dd{overflow-wrap:anywhere}@media (max-width:600px){.rank-dialog{padding:16px}.rank-dialog .settings-list>div{display:block}.rank-dialog dd{margin:6px 0 16px}.rank-dialog .button{width:100%}}.rank-dialog .settings-list{padding:0}.rank-dialog .settings-list>div{padding:10px 0}@media (max-width:600px){.rank-dialog dd{max-width:none;text-align:left;margin:4px 0}}