/* Category color identifies a file type, never permission to remove it. */
.type-icon{display:block;flex-shrink:0;fill:var(--type-color,#e5c685);overflow:visible;transform-origin:center;transition:transform .38s cubic-bezier(.22,.8,.25,1)}
.tone-gold{--type-color:#edc77f}.tone-violet{--type-color:#bc9aff}.tone-coral{--type-color:#ffad9d}.tone-lavender{--type-color:#c5afff}.tone-pink{--type-color:#f7a8db}.tone-ice{--type-color:#b5dcee}.tone-rose{--type-color:#f5a4b7}.tone-mint{--type-color:#97d7b4}.tone-peach{--type-color:#ffc2a1}.tone-blue{--type-color:#a6baff}.tone-sky{--type-color:#94ccff}.tone-aqua{--type-color:#9bdedd}.tone-teal{--type-color:#8cc9c2}.tone-silver{--type-color:#c9cdd9}
.demo-row .row-folder{display:flex;align-self:start;align-items:center;height:20px;color:inherit;line-height:1}
.demo-row:hover .row-folder{transform:none}
.demo-row:hover .row-folder .type-icon,.demo-row:focus-visible .row-folder .type-icon{transform:translateY(-2px) rotate(-9deg)}
.demo-row[data-folder="Downloads"]:hover .type-icon{transform:translateY(3px)}
.demo-row[data-folder="Caches"]:hover .type-icon{transform:rotate(14deg)}
.demo-inspector .folder-icon{display:flex;line-height:1;font-size:16px;height:20px;margin-bottom:12px}
.map-view .demo-row .row-folder{display:flex;height:16px}
.map-view .demo-row{justify-content:flex-start;gap:7px}
.map-view .demo-row strong{margin-top:auto}
.map-view .demo-row:first-child .type-icon{--type-color:#172811}
.map-view .demo-row:nth-child(5){gap:7px}
.map-view .demo-row:nth-child(5)>span:nth-child(2){margin-right:auto}
.map-view .demo-row:nth-child(5) strong{margin-top:0}
.source-selected{display:flex;align-items:center;gap:7px}
.source-selected>span{margin:0}
.story-map>div>.story-type{display:flex;align-items:center;gap:6px;min-width:0}
.story-map .type-icon{--type-color:#293c19}
.story-map .story-other .type-icon{--type-color:#e4eddb}
.filetype-guide{margin-top:34px;padding:28px 0 0;border-top:1px solid var(--line)}
.filetype-guide-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:20px}
.filetype-guide h3{font-size:22px;line-height:1.3;margin:0;letter-spacing:-.035em}
.filetype-guide-heading>p{font-size:14px;color:var(--muted);margin:0}
.filetype-picker{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}
.filetype-button{border:1px solid transparent;border-radius:7px;background:transparent;color:#c5cfc0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding:16px 5px 12px;min-width:0;font-size:14px;line-height:1.4;transition:transform .3s cubic-bezier(.22,.8,.25,1)}
.filetype-button:hover{color:var(--text)}
.filetype-button>span{max-width:100%;overflow-wrap:anywhere;text-wrap:balance}
.filetype-button[aria-pressed="true"]{border-color:#627151;background:#202d22;color:var(--text)}
.filetype-button:active{transform:scale(.96)}
.filetype-button:hover .type-icon,.filetype-button:focus-visible .type-icon{transform:translateY(-4px) rotate(-10deg)}
.filetype-button[data-type="downloads"]:hover .type-icon{transform:translateY(4px)}
.filetype-button[data-type="settings"]:hover .type-icon{transform:rotate(60deg)}
.filetype-button[data-type="audio"]:hover .type-icon{transform:translateY(-3px) rotate(14deg)}
.filetype-button[data-type="cloud"]:hover .type-icon{transform:translateX(4px)}
.filetype-button[data-type="caches"]:hover .type-icon{transform:rotate(18deg)}
.filetype-context{margin-top:19px;padding-top:17px;border-top:1px solid var(--line);display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;min-height:75px}
.filetype-context strong{font-size:16px;font-weight:550;line-height:1.65}
.filetype-context p{margin:0;color:var(--muted);font-size:16px;line-height:1.65;max-width:70ch}
.filetype-guide .type-color-note{margin:15px 0 0;font-size:12px;color:#a4b69a}
.filetype-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.65fr) auto;gap:16px;align-items:end;margin-bottom:18px}
.filetype-tools label{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}
.filetype-tools input,.filetype-tools select{width:100%;min-width:0;height:44px;border:1px solid #4c584d;border-radius:6px;background:#19211b;color:var(--text);font:inherit;font-size:14px;line-height:1.4}
.filetype-tools input{padding:10px 12px 10px 38px}
.filetype-tools input::placeholder{color:#a1b09d;opacity:1}
.filetype-tools input:focus-visible,.filetype-tools select:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}
.filetype-search-input{position:relative}
.filetype-search-input>span{position:absolute;top:14px;left:13px;pointer-events:none}
.filetype-tools .type-icon{--type-color:#b7c5b0}
.filetype-select{display:grid;grid-template-columns:minmax(0,1fr) 32px}
.filetype-select select{appearance:none;grid-column:1/-1;grid-row:1;padding:10px 32px 10px 12px}
.filetype-select>span{grid-column:2;grid-row:1;place-self:center;pointer-events:none}
#filetype-reset{height:44px;border:1px solid #4c584d;border-radius:6px;background:transparent;color:var(--text);font-size:14px;padding:8px 12px}
#filetype-reset:hover{background:#263326}
.filetype-results{display:flex;justify-content:space-between;gap:15px;margin-bottom:12px;font-size:12px;color:var(--muted)}
#filetype-count{font-variant-numeric:tabular-nums;color:#d5e3cb}
.filetype-scroll{max-height:430px;overflow-y:auto;scrollbar-gutter:stable;scrollbar-color:#596d51 #19211b;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 8px;scroll-padding:12px}
.filetype-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.filetype-scroll .filetype-button{min-height:96px;scroll-margin:12px}
.filetype-scroll .filetype-button:focus-visible{outline-offset:0}
.filetype-button[hidden],.filetype-context[hidden],.filetype-empty[hidden]{display:none}
.filetype-empty{padding:46px 20px;text-align:center}
.filetype-empty strong{font-size:20px;font-weight:550}
.filetype-empty p{margin:10px auto 0;max-width:420px;font-size:15px;color:var(--muted)}
.filetype-context{grid-template-columns:220px minmax(0,1fr);border-top:0;margin-top:0;padding-top:22px;min-height:100px}
.filetype-selected{display:flex;align-items:flex-start;gap:12px}
.filetype-selected>span{padding-top:2px}
@media(max-width:800px){.filetype-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#filetype-reset{grid-column:2;justify-self:end;height:36px}.filetype-context{grid-template-columns:1fr}.filetype-scroll{max-height:410px}}
@media(max-width:540px){.filetype-tools{gap:12px}.filetype-search{grid-column:1/-1}.filetype-category{grid-column:1}.filetype-tools{grid-template-columns:minmax(0,1fr) auto}.filetype-tools input,.filetype-tools select{font-size:16px;height:48px}.filetype-search-input>span{top:16px}#filetype-reset{height:48px;font-size:13px}.filetype-results{font-size:11px;gap:8px}.filetype-scroll .filetype-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.filetype-scroll{padding:10px 4px;max-height:395px}.filetype-scroll .filetype-button{min-height:106px;font-size:13px}.filetype-selected>strong{font-size:17px}}
@media(max-width:800px){.filetype-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.filetype-guide-heading{display:block}.filetype-guide-heading>p{margin-top:10px}.filetype-context{grid-template-columns:1fr;gap:6px;min-height:130px}}
@media(max-width:540px){.filetype-button{font-size:14px;padding:15px 4px;gap:10px}.filetype-guide{margin-top:28px}.filetype-guide h3{font-size:24px}.filetype-guide-heading>p{font-size:16px}.filetype-context{min-height:165px}.demo-inspector .folder-icon{display:flex;grid-column:1/-1}.demo-row .row-folder{height:22px}.filetype-guide .type-color-note{font-size:13px}}
@media(prefers-reduced-motion:reduce){.type-icon,.filetype-button{transition:none!important}.filetype-button:hover .type-icon,.filetype-button:focus-visible .type-icon,.filetype-button:active,.demo-row:hover .type-icon,.demo-row:focus-visible .type-icon{transform:none!important}}
@media(max-width:360px){.filetype-scroll .filetype-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
