:root{--shell-blue:#084069;--service-gray:#ebebeb;--service-selected:#d2e6ff}
body{background:var(--shell-blue);font-family:"Segoe UI",Arial,sans-serif}
.service-shell{min-height:100vh;background:var(--shell-blue)}
.service-header{height:95px;background:var(--shell-blue);padding:0 24px;position:relative;box-shadow:none;border:0;display:grid;grid-template-columns:240px 280px 240px;justify-content:center;align-items:center;gap:32px}
.service-title{height:95px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;white-space:nowrap}
.service-title strong{font-size:30px;line-height:1;font-weight:700}.service-title small{font-size:12px;margin-top:8px;letter-spacing:.08em;color:#dbe9f4}
.dama-logo{width:230px;height:65px;object-fit:contain;object-position:center;justify-self:center}
.sleep-number-badge{width:240px;height:64px;border-radius:0;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center}.sleep-number-badge img{width:220px;height:220px;max-width:none;flex-shrink:0;object-fit:contain}
.service-shell>main{height:calc(100vh - 95px);padding:0 22px 22px;background:var(--shell-blue);overflow:hidden}
.service-grid{height:100%;border-radius:0;box-shadow:none;border:0;background:#fff;display:flex;flex-direction:column}
.service-grid .grid-toolbar{min-height:70px;padding:12px 18px}.service-grid .grid-toolbar h1{font-size:17px}.service-grid .table-wrap{height:auto;flex:1}
.service-grid th{background:var(--service-gray);color:#000;font-size:13px;text-transform:none;letter-spacing:0;padding:0;border-right:1px solid #d3d3d3;overflow:visible;cursor:default}
.table-header{height:42px;display:flex;align-items:center;position:relative}.sort-button{height:100%;flex:1;min-width:0;border:0;background:transparent;padding:0 6px 0 10px;display:flex;align-items:center;justify-content:space-between;font-weight:700;cursor:pointer;white-space:nowrap}.sort-button:hover{background:#e1e1e1}
.excel-filter{position:relative;flex:0 0 28px;height:100%}.excel-filter>summary{list-style:none;width:28px;height:100%;display:grid;place-items:center;cursor:pointer}.excel-filter>summary::-webkit-details-marker{display:none}.excel-filter>summary:hover,.excel-filter.filtered>summary{background:#cbdff4;color:#064a7e}.excel-filter svg{width:14px;height:14px}
.excel-filter-menu{position:absolute;right:0;top:40px;width:270px;background:#fff;border:1px solid #8b8b8b;box-shadow:0 8px 24px #0003;padding:9px;z-index:30;color:#111;font-weight:400;text-transform:none;letter-spacing:0}.excel-filter-menu>input{width:100%;height:30px;border:1px solid #9e9e9e;padding:0 8px}.filter-bulk{display:flex;gap:12px;padding:8px 2px 6px;border-bottom:1px solid #ddd}.filter-bulk button,.filter-actions button,.active-filter-bar button,.column-menu-actions button{border:0;background:none;color:#075c98;padding:2px;cursor:pointer;font-size:12px}.filter-values{height:210px;overflow:auto;padding:5px 2px}.filter-values label{display:flex;align-items:center;gap:7px;padding:4px 2px;font-size:12px;white-space:normal}.filter-actions{display:flex;justify-content:space-between;border-top:1px solid #ddd;padding-top:8px}.filter-actions .apply{background:#084069;color:#fff;padding:6px 14px;border-radius:2px}
.active-filter-bar{height:34px;background:#edf6ff;border-bottom:1px solid #b7d5ee;display:flex;align-items:center;gap:8px;padding:0 14px;font-size:12px;color:#25445e}.active-filter-bar svg{width:14px}.active-filter-bar button{margin-left:auto}
.column-menu{width:240px;max-height:430px;overflow:auto}.column-menu-actions{display:flex;justify-content:space-between;padding:4px 8px 8px;border-bottom:1px solid var(--line);margin-bottom:3px;position:sticky;top:-8px;background:#fff;z-index:1}
.detail-page{height:100%;max-width:none;background:#fff;display:flex;flex-direction:column;margin:0;padding:0 8px}.detail-top{flex:0 0 auto;padding:10px 6px;border-bottom:1px solid #ddd}.detail-tab-content{flex:1;min-height:0;overflow:auto;padding:10px 0}.detail-grid{padding:0 2px}.lower-tabs{flex:0 0 34px;order:3;margin:0;border-top:1px solid #aaa;border-bottom:0;background:#f5f5f5;position:sticky;bottom:0;z-index:15;align-items:flex-end}.lower-tabs button{height:33px;min-width:145px;padding:0 18px;border:1px solid #c8c8c8;border-bottom:0;background:#f5f5f5;color:#111;font-size:13px;font-weight:400}.lower-tabs button.active{background:#fff;color:#000;border-top:2px solid #084069;font-weight:700}
.documents-layout{min-height:0;height:100%;border-radius:0;box-shadow:none;border:1px solid #aaa;grid-template-columns:285px minmax(480px,1fr) minmax(300px,40%)}.doc-sources,.preview{background:#fff}.doc-browser{padding:0!important;background:#fff}.doc-heading{font-size:14px}.doc-toolbar{height:45px;background:#fff}.file-list-header,.file-list>button{display:grid;grid-template-columns:24px 1fr 90px 110px}.file-list-header{height:30px;align-items:center;padding:0 14px;background:#f5f5f5;border-bottom:1px solid #d4d4d4;color:#555;font-size:11px}.file-list-header strong{font-weight:600}.file-list>button{padding:7px 14px;border-bottom:1px solid #eee}.file-list>button:hover{background:#edf5fd}.file-list>button.selected{background:var(--service-selected);outline:1px solid #8ab7e2;outline-offset:-1px}.source-group>button.active{background:var(--service-selected);color:#064a7e}.preview iframe{height:calc(100% - 42px);min-height:450px}
.panel{border-radius:2px;box-shadow:none}.button,.doc-actions button,.doc-actions label,.icon-button{border-radius:2px}.button.primary{background:#084069;border-color:#084069}
@media(max-width:1300px){.documents-layout{grid-template-columns:240px 1fr 300px}}

.service-grid th.column-filter-active{background:#d2e6ff;color:#064a7e;box-shadow:inset 0 -3px 0 #1769aa}.column-filter-active .sort-button:hover{background:#bdd9f5}.column-filter-active .sort{color:#1769aa}

/* Account-specific, fixed-width directory layout. */
.layout-controls{display:flex;align-items:center;gap:8px;border:0;margin:0;padding:0;min-width:0}
.layout-controls:disabled{opacity:.6;pointer-events:none}
.grid-layout-status{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:6px 16px;border-bottom:1px solid #dae2e9;color:#536577;font-size:12px}
.grid-layout-status button{background:none;border:0;text-decoration:underline;color:#075c98;cursor:pointer}
.service-grid .resizable-store-table{table-layout:fixed;min-width:0}
.service-grid .resizable-store-table th,.service-grid .resizable-store-table td{min-width:0;max-width:none;box-sizing:border-box}
.resizable-store-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.column-grip{flex:0 0 20px;width:20px;height:100%;padding:0;border:0;background:transparent;color:#687a89;cursor:grab;display:grid;place-items:center}
.column-grip svg{width:15px;height:18px}.column-grip:active{cursor:grabbing}.column-label{overflow:hidden;text-overflow:ellipsis}
.column-resizer{position:absolute;right:-3px;top:0;bottom:0;width:6px;z-index:4;cursor:col-resize;touch-action:none;user-select:none}
.column-resizer:hover,.column-resizer:focus,.column-resizer.resizing{background:#1769aa;outline:0}.column-resizer.resizing{width:3px}
.service-grid th.column-drop-target{box-shadow:inset 4px 0 #1769aa}
.date-filter-menu{white-space:normal;text-align:left}.date-filter-menu>label{display:flex;flex-direction:column;gap:5px;margin-top:12px}
.date-filter-menu input{width:100%;padding:7px;border:1px solid #9babb9}.date-filter-menu p{font-size:12px;line-height:1.4;color:#526273}.date-filter-menu .date-filter-error{color:#a51f1f}
.date-filter-menu button:disabled{opacity:.5;cursor:default}.active-filter-bar{min-height:34px;height:auto;padding-top:6px;padding-bottom:6px}.active-filter-bar>span{flex:1}
.resizable-store-table th:first-child .excel-filter-menu{right:auto;left:0}
