mirror of
https://github.com/SteamFramelyHomebrew/framely.git
synced 2026-10-28 21:02:10 +01:00
98 lines
10 KiB
CSS
98 lines
10 KiB
CSS
.storage-settings{width:100%;min-width:0}
|
|
.storage-settings>.list-heading{margin-bottom:28px}
|
|
.storage-section{margin-bottom:0}
|
|
.storage-overview{margin-bottom:16px}
|
|
.storage-overview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
|
|
.storage-overview-heading h2{margin:0 0 4px}
|
|
.storage-overview-heading p{margin:0}
|
|
.storage-overview-total{display:grid;text-align:right;line-height:1.2}
|
|
.storage-overview-total strong{font-size:30px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
|
|
.storage-overview-total span{margin-top:6px;color:var(--muted);font-size:15px}
|
|
.storage-meter{display:flex;width:100%;height:15px;margin-top:28px;border-radius:100px;overflow:hidden;background:#34383e}
|
|
.storage-meter span{height:100%;flex:none;min-width:0}
|
|
.storage-meter-plugin,.storage-dot-plugin{background:#93c5ed}
|
|
.storage-meter-apk,.storage-dot-apk{background:#79aaa4}
|
|
.storage-meter-contexts,.storage-dot-contexts{background:#c1a879}
|
|
.storage-meter-other,.storage-dot-other{background:#626871}
|
|
.storage-meter-free,.storage-dot-free{background:#34383e}
|
|
.storage-overview-usage{display:flex;justify-content:space-between;gap:16px;margin:11px 0 25px;color:var(--muted);font-size:15px}
|
|
.storage-overview-usage strong{color:var(--text);font-weight:550;font-variant-numeric:tabular-nums}
|
|
.storage-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0 22px;border-top:1px solid var(--line)}
|
|
.storage-legend-item{display:flex;align-items:center;gap:11px;min-width:0;padding:13px 0;border-bottom:1px solid var(--line);font-size:16px}
|
|
.storage-legend-item i{width:9px;height:9px;border-radius:50%;flex:none}
|
|
.storage-legend-item span{min-width:0;flex:1;color:var(--muted)}
|
|
.storage-legend-item small{font-size:13px;color:var(--muted)}
|
|
.storage-legend-item strong{font-weight:550;white-space:nowrap;font-variant-numeric:tabular-nums}
|
|
.storage-overview-note{margin:15px 0 0;color:var(--muted);font-size:15px;line-height:1.5}
|
|
/* Category identity stays in the left rail; paths and drill-down data live together on the right. */
|
|
.storage-section{padding:32px 0 36px;margin:0}
|
|
.storage-section-layout{display:grid;grid-template-columns:minmax(210px,27%) minmax(0,1fr);column-gap:clamp(28px,5vw,88px)}
|
|
.storage-section-heading{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
|
|
.storage-kind-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:17px;border:1px solid #4a5560;border-radius:5px;color:var(--blue);background:#93c5ed10}
|
|
.storage-kind-apk{color:#9ac6c0;border-color:#445953;background:#79aaa410}
|
|
.storage-kind-contexts{color:#dbc294;border-color:#605543;background:#c1a87910}
|
|
.storage-section-heading h2{margin:0 0 5px;font-size:25px;line-height:1.2}
|
|
.storage-section-heading .sub{max-width:260px;margin:0;color:var(--muted);font-size:16px;line-height:1.45}
|
|
.storage-size{margin-top:24px;color:var(--text);font-size:29px;font-weight:600;line-height:1.15;letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap}
|
|
.storage-section-content{min-width:0}
|
|
.storage-location{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:15px;min-width:0;min-height:84px;padding:15px 0;border-bottom:1px solid var(--line)}
|
|
.storage-location>svg{align-self:start;margin-top:8px;color:var(--muted)}
|
|
.storage-location>div{display:grid;gap:5px;min-width:0}
|
|
.storage-location span{color:var(--muted);font-size:14px;line-height:1.2}
|
|
.storage-location code,.storage-warning code{font:16px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;word-break:break-word}
|
|
.storage-location button{min-height:44px;padding:9px 14px;flex:none;white-space:nowrap;font-size:16px}
|
|
.storage-section .storage-details{margin:0;padding:0;border:0}
|
|
.storage-section .storage-details summary{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 0;color:var(--text);font-size:16px;font-weight:550;list-style:none;cursor:pointer}
|
|
.storage-section .storage-details summary::-webkit-details-marker{display:none}
|
|
.storage-section .storage-details summary:hover{color:var(--blue)}
|
|
.storage-section .storage-details summary small{margin-left:auto;color:var(--muted);font-size:14px;font-weight:400;font-variant-numeric:tabular-nums}
|
|
.storage-section .storage-details summary svg{color:var(--muted);transition:transform .15s ease}
|
|
.storage-section .storage-details[open] summary svg{transform:rotate(90deg);color:var(--blue)}
|
|
.storage-detail-list{margin:0 0 8px 22px;padding:3px 18px 3px 20px;border-left:2px solid #536273;background:#ffffff07}
|
|
.storage-detail-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-height:61px;padding:11px 0}
|
|
.storage-detail-row+.storage-detail-row{border-top:1px solid #ffffff14}
|
|
.storage-detail-row>div{display:flex;flex-direction:column;min-width:0;gap:3px}
|
|
.storage-detail-row strong{font-size:16px;font-weight:550;line-height:1.4;overflow-wrap:anywhere}
|
|
.storage-detail-row small{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
|
.storage-detail-row>span{flex:none;font-size:16px;font-weight:550;font-variant-numeric:tabular-nums;white-space:nowrap}
|
|
.storage-detail-other strong{color:var(--muted)}
|
|
.storage-empty{margin:0;padding:18px 0;color:var(--muted);font-size:16px}
|
|
.storage-warning{margin:14px 0 0;padding:12px 16px;border-left:3px solid #c6a779;background:#2d2923;color:#ecd7b8;font-size:16px;line-height:1.5}
|
|
.storage-warning code{display:block;margin-top:6px;color:inherit}
|
|
.storage-change{margin:0;padding:20px 0 22px;border-bottom:1px solid var(--line)}
|
|
.storage-change label{margin:0 0 10px;font-size:16px;font-weight:550}
|
|
.storage-target{display:flex;align-items:stretch;gap:10px}
|
|
.storage-target input{min-width:0;flex:1;width:auto!important;margin:0!important;font:16px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}
|
|
.storage-target button{flex:none;white-space:nowrap;font-size:16px}
|
|
.storage-change>.sub{margin:10px 0 0;font-size:14px;line-height:1.5}
|
|
.storage-actions{display:flex;justify-content:flex-end;margin-top:17px}
|
|
.storage-actions button{white-space:nowrap;font-size:16px}
|
|
.storage-progress{display:flex;align-items:center;gap:10px;margin:14px 0;padding:12px 0;color:var(--blue);font-size:16px}
|
|
.storage-location button:active:not(:disabled),.storage-target button:active:not(:disabled),.storage-actions button:active:not(:disabled){transform:scale(.98)}
|
|
@media(prefers-reduced-motion:no-preference){.storage-progress svg{animation:storage-turn 1.4s linear infinite}}
|
|
@keyframes storage-turn{to{transform:rotate(360deg)}}
|
|
.storage-loading{display:grid}
|
|
.storage-loading>div{display:grid;gap:14px;padding:29px 0;border-top:1px solid var(--line)}
|
|
.storage-loading i,.storage-loading span,.storage-loading small{display:block;height:19px;border-radius:3px;background:#ffffff12}
|
|
.storage-loading i{width:150px;height:26px}.storage-loading span{width:min(310px,65%)}.storage-loading small{width:min(460px,80%)}
|
|
.storage-picker-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:16px;background:#000a}
|
|
.storage-picker{display:flex;flex-direction:column;gap:16px;width:min(720px,100%);max-height:min(760px,calc(100dvh - 32px));padding:30px;background:#202020;border:1px solid #626974;border-radius:6px;box-shadow:0 24px 70px #0008;overflow:hidden}
|
|
.storage-picker header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
|
|
.storage-picker header h2{font-size:28px;margin:0 0 4px}
|
|
.storage-picker header p{margin:0;color:var(--muted);font-size:17px}
|
|
.storage-picker header .icon-button{margin:-8px -8px 0 0}
|
|
.storage-picker-location{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:#171717}
|
|
.storage-picker-location .icon-button{min-width:42px;min-height:42px;padding:8px}
|
|
.storage-picker-location code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:16px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
|
|
.storage-picker-roots{display:flex;flex-wrap:wrap;gap:8px}
|
|
.storage-picker-roots button{min-height:42px;padding:8px 12px;font-size:16px}
|
|
.storage-picker-folders{min-height:150px;overflow:auto;border-top:1px solid var(--line)}
|
|
.storage-picker-folders button{display:flex;justify-content:flex-start;width:100%;min-height:54px;padding:10px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;text-align:left}
|
|
.storage-picker-folders button:hover:not(:disabled){background:var(--control-hover)}
|
|
.storage-picker-folders p{padding:22px 10px}
|
|
.storage-picker footer{display:flex;justify-content:flex-end;gap:10px;padding-top:14px;border-top:1px solid var(--line)}
|
|
.storage-picker .error{margin:0}
|
|
@media(max-width:900px){.storage-section-layout{grid-template-columns:1fr;gap:20px}.storage-section-heading{display:grid;grid-template-columns:46px minmax(0,1fr) auto;column-gap:14px;align-items:center}.storage-kind-icon{margin:0;grid-row:1 / span 2}.storage-section-heading h2{font-size:22px}.storage-section-heading .sub{font-size:15px;max-width:none}.storage-size{margin:0;grid-column:3;grid-row:1 / span 2;font-size:22px}.storage-section-content{padding-left:60px}}
|
|
@media(max-width:700px){.storage-overview-total strong{font-size:24px}.storage-legend{grid-template-columns:1fr 1fr;gap:0 14px}.storage-legend-item{font-size:14px;gap:7px}.storage-legend-item strong{font-size:14px}.storage-section{padding:27px 0 31px}.storage-section-layout{gap:16px}.storage-section-content{padding-left:0}.storage-location{grid-template-columns:20px minmax(0,1fr);gap:12px}.storage-location>svg{margin-top:4px}.storage-location button{grid-column:2;justify-self:start;margin-top:4px}.storage-detail-list{margin-left:8px;padding-left:16px;padding-right:8px}.storage-target{flex-wrap:wrap}.storage-target input{flex-basis:100%;width:100%!important}.storage-target button{width:100%}.storage-actions button{width:100%}.storage-picker{max-height:calc(100dvh - 24px);padding:20px}.storage-picker footer button{flex:1;min-width:0;white-space:nowrap}}
|
|
@media(prefers-reduced-motion:reduce){.storage-section .storage-details summary svg{transition:none}}
|