/* File storage visual system, derived from the approved prototype. */
.file-storage-prototype .file-storage-main{min-height:0;overflow:hidden;display:flex;flex-direction:column}.file-storage-prototype .file-storage-tabs{margin-bottom:12px}.file-storage-prototype .file-storage-hero{flex:none}.file-storage-prototype .file-storage-shortcuts{flex:none}.fs-svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.file-storage-prototype .file-storage-panel{flex:1;min-height:0}.file-storage-prototype .file-storage-panel.is-category{margin-top:0}.file-storage-prototype .file-storage-panel-head{flex:none;height:60px}.file-storage-prototype .file-storage-panel-head label{height:36px}.file-storage-prototype .file-storage-breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.file-storage-prototype .file-storage-breadcrumb button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-storage-prototype .file-storage-tools{flex:none;min-height:58px;padding:10px 16px}.fs-left-tools,.fs-right-tools,.file-storage-prototype .file-storage-bulk{display:flex;align-items:center;gap:8px}.fs-right-tools{margin-left:auto}.file-storage-prototype .file-storage-upload,.file-storage-prototype .secondary-btn,.file-storage-prototype .file-storage-bulk button,.file-storage-prototype .file-storage-refresh{height:36px;display:inline-flex;align-items:center;gap:7px;border:1px solid #ccdbe5;border-radius:7px;background:#fff;color:#27485b;padding:0 13px;font:inherit;cursor:pointer}.file-storage-prototype .file-storage-upload{border-color:#00966f;background:#00966f;color:#fff;font-weight:700}.file-storage-prototype .file-storage-upload input{position:absolute;opacity:0;width:1px;height:1px}.file-storage-prototype .secondary-btn:hover,.file-storage-prototype .file-storage-bulk button:hover,.file-storage-prototype .file-storage-refresh:hover{color:#008f69;border-color:#90cdbc}.file-storage-prototype button:disabled{opacity:.45;cursor:not-allowed}.file-storage-prototype .danger{color:#d45151!important;border-color:#f1c5c5!important}.file-storage-prototype .file-storage-view-switch{display:flex}.file-storage-prototype .file-storage-view-switch button,.file-storage-prototype .file-storage-refresh{width:36px;padding:0;display:grid;place-items:center}.file-storage-prototype .file-storage-view-switch button{height:36px;border:1px solid #ccdbe5;background:#fff;color:#446374;cursor:pointer}.file-storage-prototype .file-storage-view-switch button:first-child{border-radius:7px 0 0 7px}.file-storage-prototype .file-storage-view-switch button+button{margin-left:-1px;border-radius:0 7px 7px 0}.file-storage-prototype .file-storage-view-switch button.active{color:#00966f;background:#eaf7f3}.file-storage-prototype .file-storage-list{flex:1;min-height:0;overflow:auto;background:#fff}.file-storage-prototype .file-storage-list-head,.file-storage-prototype .file-storage-row{display:grid;grid-template-columns:52px minmax(300px,420px) 172px minmax(70px,1fr) 110px 130px 170px;align-items:center;min-width:940px;min-height:58px;padding:0 16px;border-bottom:1px solid #edf2f3;column-gap:0}.file-storage-prototype .file-storage-list-head{position:sticky;top:0;z-index:4;min-height:44px;background:#f8fafb;color:#647d91;font-size:13px}.file-storage-prototype .file-storage-list-head input,.file-storage-prototype .file-storage-row>input,.fs-share-row>input,.fs-recycle-row>input{justify-self:center;accent-color:#00966f}.file-storage-prototype .file-storage-list-head small{margin-left:18px;color:#90a2af;font-weight:400}.file-storage-prototype .file-storage-row:hover,.file-storage-prototype .file-storage-row.selected{background:#f1faf7}.file-storage-prototype .file-storage-name{height:58px;display:flex;align-items:center;gap:13px;min-width:0;border:0;background:transparent;color:#1d415d;text-align:left;font:inherit;cursor:pointer}.file-storage-prototype .file-storage-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fs-file,.fs-folder{display:grid;place-items:center;position:relative;flex:0 0 auto;width:30px;height:34px;border-radius:5px;background:#e7eef3;color:#647e94;font-size:9px;font-style:normal}.fs-file.folder,.fs-folder{width:36px;height:28px;border-radius:5px;background:#2daf83;color:transparent}.fs-file.folder:before,.fs-folder:before{content:"";position:absolute;left:3px;top:-6px;width:16px;height:8px;border-radius:4px 4px 0 0;background:inherit}.fs-file.pdf{background:#fff0ee;color:#d65e55}.fs-file.sheet{background:#e6f5ed;color:#25865f}.fs-file.doc{background:#e8f1fc;color:#397ac2}.fs-file.image{background:#f0ecfb;color:#735db4}.file-storage-prototype .file-storage-actions{grid-column:3;display:flex;align-items:center;justify-content:flex-start;gap:5px;width:172px;opacity:0;transition:.16s}.file-storage-prototype .file-storage-row:hover .file-storage-actions,.file-storage-prototype .file-storage-row.selected .file-storage-actions{opacity:1}.file-storage-prototype .file-storage-actions button,.fs-share-row>div button,.fs-recycle-row>div button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#1686ef;cursor:pointer}.file-storage-prototype .file-storage-actions button:hover,.fs-share-row>div button:hover,.fs-recycle-row>div button:hover{background:#e7f2ff;color:#0870de}.file-storage-prototype .file-storage-row>span:nth-of-type(1){grid-column:5}.file-storage-prototype .file-storage-row>span:nth-of-type(2){grid-column:6}.file-storage-prototype .file-storage-row>span:nth-of-type(3){grid-column:7}.file-storage-prototype .file-storage-list-head>span:nth-of-type(1){grid-column:2}.file-storage-prototype .fs-action-head{grid-column:3!important;justify-self:start;color:#8093a1}.file-storage-prototype .file-storage-list-head>span:nth-of-type(3){grid-column:5}.file-storage-prototype .file-storage-list-head>span:nth-of-type(4){grid-column:6}.file-storage-prototype .file-storage-list-head>span:nth-of-type(5){grid-column:7}.file-storage-prototype .fs-remove-shortcut{grid-column:3;border:0;background:transparent;color:#008f69;cursor:pointer}.file-storage-prototype .file-storage-empty{min-height:260px;display:grid;place-items:center}.file-storage-prototype .file-storage-list.is-grid .file-storage-list-head{display:flex;min-width:0;padding-left:30px}.file-storage-prototype .file-storage-list.is-grid .file-storage-list-head input{margin-right:12px}.file-storage-prototype .file-storage-list.is-grid .file-storage-list-head span:not(:first-of-type){display:none}.file-storage-prototype .file-storage-list.is-grid .file-storage-row{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;min-height:142px;height:142px;padding:19px 8px 10px;border:1px solid transparent;border-radius:10px}.file-storage-prototype .file-storage-list.is-grid .file-storage-row:hover{background:#f5f9fc}.file-storage-prototype .file-storage-list.is-grid .file-storage-row>input{position:absolute;left:11px;top:11px}.file-storage-prototype .file-storage-list.is-grid .file-storage-name{height:110px;flex-direction:column;justify-content:flex-start;gap:13px;text-align:center}.file-storage-prototype .file-storage-list.is-grid .fs-file.folder{width:62px;height:48px;margin-top:10px}.file-storage-prototype .file-storage-list.is-grid .fs-file.folder:before{left:5px;top:-7px;width:27px;height:10px}.file-storage-prototype .file-storage-list.is-grid .fs-file:not(.folder){width:46px;height:56px;margin-top:4px}.file-storage-prototype .file-storage-list.is-grid .file-storage-name b{max-width:100%;white-space:normal;text-align:center;line-height:1.4}.file-storage-prototype .file-storage-list.is-grid .file-storage-actions,.file-storage-prototype .file-storage-list.is-grid .file-storage-row>span,.file-storage-prototype .file-storage-list.is-grid .fs-remove-shortcut{display:none}.file-storage-prototype .file-storage-list.is-grid .file-storage-row{display:flex}.file-storage-prototype .file-storage-list.is-grid:has(.file-storage-row){display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));align-content:start;gap:8px;padding:14px 16px}.file-storage-prototype .file-storage-list.is-grid .file-storage-list-head{grid-column:1/-1}.fs-context{position:fixed;z-index:2001;width:174px;padding:7px;border:1px solid #e1e9ee;border-radius:10px;background:#fff;box-shadow:0 15px 40px rgba(22,43,58,.18)}.fs-context button{display:flex;width:100%;height:37px;align-items:center;gap:9px;border:0;border-radius:6px;background:#fff;color:#365467;text-align:left;padding:0 10px;cursor:pointer}.fs-context button:hover{background:#edf7f4;color:#008f69}.fs-context .danger:hover{background:#fff1f1;color:#c44}.file-storage-prototype .file-storage-share-note{color:#526f7e}.file-storage-prototype .file-storage-share-note span{margin-left:7px;color:#91a1ad;font-size:12px}.fs-share-head,.fs-share-row{grid-template-columns:44px minmax(250px,1fr) 88px 90px 100px 120px 160px!important}.fs-recycle-head,.fs-recycle-row{grid-template-columns:52px minmax(280px,1fr) 112px 110px 120px 170px!important}.fs-share-row,.fs-recycle-row{display:grid;align-items:center;min-height:58px;padding:0 16px;border-bottom:1px solid #edf2f3}.fs-share-row:hover,.fs-recycle-row:hover{background:#f5faf8}.fs-share-row>div,.fs-recycle-row>div{display:flex;gap:4px}.file-storage-prototype .file-storage-panel>footer{flex:none}.fs-location-dialog{width:min(540px,94vw);padding:0;overflow:hidden}.fs-location-dialog header{padding:20px 22px 14px;border-bottom:1px solid #e4ebef}.fs-location-dialog header small{display:block;margin-top:5px;color:#8495a2;font-weight:400}.fs-location-crumb{display:flex;gap:8px;align-items:center;min-height:46px;padding:0 18px;background:#f5f9f8;overflow:auto}.fs-location-crumb button{border:0;background:transparent;color:#08775c;cursor:pointer;white-space:nowrap}.fs-location-list{height:280px;overflow:auto;padding:8px 12px}.fs-location-list>button{display:flex;width:100%;height:60px;align-items:center;gap:13px;padding:0 12px;border:0;border-bottom:1px solid #eef2f4;background:#fff;text-align:left;cursor:pointer}.fs-location-list>button:hover{background:#eef8f5}.fs-location-list span{display:flex;flex-direction:column;gap:4px}.fs-location-list small,.fs-location-list p{color:#8b9aa6}.fs-location-list em{margin-left:auto;color:#9eacb6;font-size:20px;font-style:normal}.fs-location-list p{text-align:center;padding:75px 0}.fs-detail-dialog dl{display:grid;grid-template-columns:90px 1fr;gap:12px;margin:0}.fs-detail-dialog dt{color:#8494a0}.fs-detail-dialog dd{margin:0;color:#29485b;word-break:break-all}.fs-shortcut-dialog{max-height:80vh;overflow:auto}.fs-shortcut-option{display:flex!important;align-items:center!important;grid-template-columns:none!important;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f3;cursor:pointer}.fs-shortcut-option input{accent-color:#008f69}.file-storage-prototype .file-storage-dialog select{height:42px;border:1px solid #cbdce4;border-radius:7px;background:#fff;padding:0 9px;font:inherit}@media(max-width:1100px){.file-storage-prototype .file-storage-list-head,.file-storage-prototype .file-storage-row{grid-template-columns:46px minmax(270px,360px) 150px minmax(18px,1fr) 95px 120px 150px}.file-storage-prototype .file-storage-actions{width:150px}.file-storage-prototype .file-storage-hero{grid-template-columns:1fr minmax(270px,.8fr)}.file-storage-prototype .file-storage-count{display:none}}@media(max-width:780px){.file-storage-prototype .file-storage-hero{grid-template-columns:1fr}.file-storage-prototype .file-storage-metric{display:none}.fs-right-tools{margin-left:0}.file-storage-prototype .file-storage-tools{align-items:flex-start;flex-direction:column}.file-storage-prototype .file-storage-tabs{overflow:auto}.file-storage-prototype .file-storage-tabs>button{white-space:nowrap}}
