/* Library and My Shelf extend the Academy's existing type and palette. */
.mdfa-root .mdv-library{--mdv-line:#e6dfef;--mdv-ink:#21105e;--mdv-text:#5b5274;--mdv-purple:#5d2fc7;font-family:"Roboto",Arial,sans-serif;color:var(--mdv-ink)}
.mdfa-root .mdv-library [hidden],.mdfa-root .mdv-library-native[hidden]{display:none!important}
.mdfa-root .mdv-library *{box-sizing:border-box}
.mdfa-root .mdv-library-head{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--mdv-line);padding:27px 0 24px}
.mdfa-root .mdv-library-kicker{display:block;font:500 10px/1.6 "Roboto Mono",monospace;letter-spacing:.12em;color:var(--mdv-purple)}
.mdfa-root .mdv-library h1{font:500 clamp(34px,4vw,46px)/1.14 "Cormorant Garamond",Georgia,serif;letter-spacing:-.025em;text-transform:none;margin:8px 0 11px;text-wrap:balance}
.mdfa-root .mdv-library-head p{max-width:60ch;margin:0;color:var(--mdv-text);font:400 14px/1.75 "Roboto",Arial,sans-serif}
.mdfa-root .mdv-library-mark{width:76px;height:76px;flex:none;fill:none;stroke:#6b45a0;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.mdfa-root .mdv-library-tabs{display:flex;gap:18px;align-items:center;margin:4px 0 21px;border-bottom:1px solid var(--mdv-line)}
.mdfa-root .mdv-library-tabs button{font:500 13px/1.5 "Roboto",Arial,sans-serif;padding:15px 4px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--mdv-text);cursor:pointer;min-height:45px}
.mdfa-root .mdv-library-tabs button[aria-selected="true"]{color:var(--mdv-purple);border-bottom-color:var(--mdv-purple)}
.mdfa-root .mdv-library-tabs .mdv-library-refresh{margin-left:auto;font-size:11px;border:0}
.mdfa-root .mdv-library-continue{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 24px;margin:0 0 23px;border:1px solid #e2d5f0;border-radius:7px;background:#f9f5ff}
.mdfa-root .mdv-library-continue h2{font:500 25px/1.25 "Cormorant Garamond",Georgia,serif;letter-spacing:0;text-transform:none;margin:7px 0}
.mdfa-root .mdv-library-continue p{font:400 12px/1.65 "Roboto",Arial,sans-serif;color:var(--mdv-text);margin:0}
.mdfa-root .mdv-library .mdv-library-button,.mdfa-root .mdv-native-shelf-tools button{display:inline-flex;justify-content:center;align-items:center;gap:6px;border:1px solid #d5c7e9;border-radius:5px;background:#fff;color:var(--mdv-purple,#5d2fc7);padding:10px 14px;font:500 12px/1.5 "Roboto",Arial,sans-serif;min-height:42px;text-decoration:none;cursor:pointer}
.mdfa-root .mdv-library .mdv-library-button.is-primary{background:#5d2fc7;border-color:#5d2fc7;color:#fff}
.mdfa-root .mdv-library .mdv-library-button.is-quiet{border-color:transparent;background:transparent;padding-left:0;padding-right:0}
.mdfa-root .mdv-library .mdv-library-button.is-remove{color:#874b55;border-color:#e0cbd1;background:#fff}
.mdfa-root .mdv-library button:disabled{opacity:.55;cursor:wait}
.mdfa-root .mdv-library-search{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 17px}
.mdfa-root .mdv-library-search label{flex:1;max-width:470px;display:grid;gap:6px;color:#493465;font:500 11px/1.55 "Roboto",Arial,sans-serif}
.mdfa-root .mdv-library input,.mdfa-root .mdv-library select,.mdfa-root .mdv-library textarea{font:400 14px/1.6 "Roboto",Arial,sans-serif;color:#34254e;border:1px solid #d4c8e8;border-radius:5px;background:#fff;padding:10px 12px;min-width:0;max-width:100%;box-shadow:none}
.mdfa-root .mdv-library-count{font:400 10px/1.55 "Roboto Mono",monospace;color:#827491;margin:0 0 9px;white-space:nowrap}
.mdfa-root .mdv-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:17px;margin-top:18px}
.mdfa-root .mdv-library-card{display:flex;flex-direction:column;min-width:0;padding:23px 22px 17px;border:1px solid var(--mdv-line);border-radius:7px;background:#fff;position:relative}
.mdfa-root .mdv-library-card-head{display:flex;align-items:center;gap:10px;min-height:38px;margin-bottom:15px}
.mdfa-root .mdv-library-card-head svg{width:32px;height:32px;fill:none;stroke:#775398;stroke-width:1.3;flex:none}
.mdfa-root .mdv-library-card-head span{font:400 9px/1.6 "Roboto Mono",monospace;letter-spacing:.05em;text-transform:uppercase;color:#85768f}
.mdfa-root .mdv-library-card h3{font:500 25px/1.18 "Cormorant Garamond",Georgia,serif;letter-spacing:-.01em;text-transform:none;margin:0 0 10px;overflow-wrap:anywhere}
.mdfa-root .mdv-library-card p{font:400 12px/1.75 "Roboto",Arial,sans-serif;color:var(--mdv-text);margin:0 0 14px;overflow-wrap:anywhere}
.mdfa-root .mdv-library-card .mdv-library-source-label{font:400 10px/1.6 "Roboto Mono",monospace;color:#776585;margin-top:auto;margin-bottom:13px}
.mdfa-root .mdv-library-card-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #eee8f3;padding-top:13px}
.mdfa-root .mdv-library-card-actions .mdv-library-button{font-size:11px;padding:9px 11px}
.mdfa-root .mdv-library-shelf-list{border-top:1px solid var(--mdv-line);margin-top:18px}
.mdfa-root .mdv-library-shelf-item{display:flex;justify-content:space-between;align-items:center;gap:22px;border-bottom:1px solid var(--mdv-line);padding:22px 2px}
.mdfa-root .mdv-library-shelf-item h3{font:500 25px/1.2 "Cormorant Garamond",Georgia,serif;letter-spacing:0;text-transform:none;margin:5px 0 7px;overflow-wrap:anywhere}
.mdfa-root .mdv-library-shelf-item p{font:400 12px/1.65 "Roboto",Arial,sans-serif;color:var(--mdv-text);margin:0;overflow-wrap:anywhere}
.mdfa-root .mdv-library-shelf-actions{display:flex;flex-wrap:wrap;gap:8px;flex:none;max-width:270px}
.mdfa-root .mdv-library-empty{padding:31px 25px;background:#fbf9ff;border:1px solid var(--mdv-line);border-radius:6px;margin-top:17px}
.mdfa-root .mdv-library-empty h2{font:500 28px/1.3 "Cormorant Garamond",Georgia,serif;margin:0 0 10px;text-transform:none}
.mdfa-root .mdv-library-empty p{font:400 13px/1.75 "Roboto",Arial,sans-serif;color:var(--mdv-text);margin:0 0 13px;max-width:66ch}
.mdfa-root .mdv-library-status{padding:11px 14px;border:1px solid #d8c9e9;background:#faf6ff;border-radius:5px;color:#5b4773;font:400 12px/1.65 "Roboto",Arial,sans-serif;margin:0 0 18px;overflow-wrap:anywhere}
.mdfa-root .mdv-library-status[data-mode="error"]{background:#fff7f0;border-color:#e4cbb4;color:#744e37}
.mdfa-root .mdv-library-status a,.mdfa-root .mdv-library-status button{margin-left:12px}
.mdfa-root .mdv-library-reader-head{padding:18px 0 20px;border-bottom:1px solid var(--mdv-line)}
.mdfa-root .mdv-library-reader-head h2{font:500 clamp(29px,3vw,38px)/1.15 "Cormorant Garamond",Georgia,serif;margin:14px 0 9px;text-transform:none;letter-spacing:-.02em}
.mdfa-root .mdv-library-reader-source{font:400 11px/1.65 "Roboto Mono",monospace;color:#80708e;margin:0}
.mdfa-root .mdv-library-reader-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:13px;padding:17px 0}
.mdfa-root .mdv-library-pager{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.mdfa-root .mdv-library-pager label{display:flex;align-items:center;gap:7px;font:400 12px/1.55 "Roboto",Arial,sans-serif}
.mdfa-root .mdv-library-pager input{width:66px;padding:9px 7px;text-align:center}
.mdfa-root .mdv-library-pager button{padding:9px 12px!important}
.mdfa-root .mdv-library-zoom{display:flex;align-items:center;gap:7px;font:400 12px/1.5 "Roboto",Arial,sans-serif}
.mdfa-root .mdv-library-zoom select{padding:9px 10px;font-size:12px}
.mdfa-root .mdv-library-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0 0 17px}
.mdfa-root .mdv-library-stage{min-height:260px;padding:22px;background:#eee8f1;border:1px solid #e2dbe9;border-radius:6px;overflow:auto;text-align:center;overscroll-behavior-x:contain}
.mdfa-root .mdv-library-stage canvas{display:block;margin:0 auto;background:#fff;box-shadow:0 3px 18px #35204320;max-width:none}
.mdfa-root .mdv-library-render-message{font:400 14px/1.7 "Roboto",Arial,sans-serif;color:#5b5274;margin:40px auto;max-width:56ch;text-align:left}
.mdfa-root .mdv-library-text-resource{white-space:pre-wrap;text-align:left;max-width:78ch;background:#fff;margin:0 auto;padding:26px 30px;font:400 15px/1.85 "Roboto",Arial,sans-serif;color:#493e5b;border-radius:4px;overflow-wrap:anywhere}
.mdfa-root .mdv-library-reader-note{font:400 11px/1.65 "Roboto",Arial,sans-serif;color:#81718c;margin:12px 0}
.mdfa-root .mdv-library-accessible{margin:21px 0 12px;border:1px solid var(--mdv-line);border-radius:5px;padding:16px 19px;background:#fbf9ff}
.mdfa-root .mdv-library-accessible summary{font:500 12px/1.6 "Roboto",Arial,sans-serif;cursor:pointer;color:#5d2fc7}
.mdfa-root .mdv-library-page-text{font:400 14px/1.85 "Roboto",Arial,sans-serif;white-space:pre-wrap;color:#493e5b;margin-top:18px;overflow-wrap:anywhere;text-align:left}
.mdfa-root .mdv-library-worksheet{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:17px 0 7px;border-top:1px solid var(--mdv-line);margin-top:19px}
.mdfa-root .mdv-library-worksheet label{display:grid;gap:5px;font:500 11px/1.4 "Roboto",Arial,sans-serif;color:#665379;min-width:190px}
.mdfa-root .mdv-library-worksheet p{flex-basis:100%;font:400 11px/1.65 "Roboto",Arial,sans-serif;color:#81718c;margin:0}
.mdfa-root .mdv-library-dialog{box-sizing:border-box;width:min(570px,calc(100vw - 32px));max-height:calc(100dvh - 36px);overflow:auto;margin:auto;border:1px solid #d4c8e8;border-radius:8px;padding:28px;background:#fff;box-shadow:0 20px 70px #21105e30;color:#34254e;font:400 14px/1.7 "Roboto",Arial,sans-serif}
.mdfa-root .mdv-library-dialog:not([open]){display:none}
.mdfa-root .mdv-library-dialog::backdrop{background:#21105e70}
.mdfa-root .mdv-library-dialog h2{font:500 33px/1.2 "Cormorant Garamond",Georgia,serif;letter-spacing:-.02em;margin:8px 0 16px;text-transform:none}
.mdfa-root .mdv-library-dialog p{font:400 13px/1.7 "Roboto",Arial,sans-serif;color:#5b5274;margin:0 0 15px}
.mdfa-root .mdv-library-dialog blockquote{font:400 13px/1.75 "Roboto",Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 17px;padding:12px 15px;border:0;border-left:2px solid #bea0dc;background:#f9f5ff}
.mdfa-root .mdv-library-dialog label{display:block;font:500 12px/1.55 "Roboto",Arial,sans-serif;margin:16px 0 7px}
.mdfa-root .mdv-library-dialog textarea{width:100%;min-height:125px;resize:vertical}
.mdfa-root .mdv-library-dialog .mdv-library-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:23px}
.mdfa-root .mdv-library-dialog .mdv-library-dialog-error{color:#844541;white-space:pre-wrap;margin-top:13px}
.mdfa-root .mdv-library-nav{font:500 12.5px/1.5 "Roboto Mono",monospace;background:transparent;border:0;border-bottom:2px solid transparent;color:#554b72;padding:9px 0;white-space:nowrap;cursor:pointer}
.mdfa-root .mdv-native-shelf-tools{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:13px 15px;margin-bottom:18px;background:#f7f1ff;border:1px solid #e0d2ed;border-radius:5px}
.mdfa-root .mdv-native-shelf-tools>span{font:400 11px/1.6 "Roboto",Arial,sans-serif;color:#675178;flex:1;min-width:150px}
.mdfa-root .mdv-native-shelf-tools button{font-size:11px;padding:8px 11px}
.mdfa-root .mdv-library :is(button,a,input,select,textarea,summary):focus-visible,.mdfa-root .mdv-library-nav:focus-visible,.mdfa-root .mdv-native-shelf-tools button:focus-visible{outline:2px solid #5d2fc7;outline-offset:3px}
.mdfa-root .mdv-library :is(button,a,summary):hover,.mdfa-root .mdv-library-nav:hover{background:#F7F1FF;color:#32195e}
.mdfa-root .mdv-library h1:focus,.mdfa-root .mdv-library h2:focus{outline:none}
@media(max-width:1050px){.mdfa-root .mdv-library-shelf-item{align-items:flex-start}.mdfa-root .mdv-library-shelf-actions{max-width:200px}}
@media(max-width:650px){.mdfa-root .mdv-library-head{padding-top:22px}.mdfa-root .mdv-library-mark{width:45px;height:45px}.mdfa-root .mdv-library-head p{font-size:13px}.mdfa-root .mdv-library-grid{grid-template-columns:1fr;gap:13px}.mdfa-root .mdv-library-card{padding:19px}.mdfa-root .mdv-library-continue{align-items:flex-start;flex-direction:column;padding:19px;gap:13px}.mdfa-root .mdv-library-search{align-items:stretch;flex-direction:column;gap:10px}.mdfa-root .mdv-library-count{margin:0}.mdfa-root .mdv-library-shelf-item{flex-direction:column;gap:13px}.mdfa-root .mdv-library-shelf-actions{max-width:none}.mdfa-root .mdv-library-stage{padding:8px}.mdfa-root .mdv-library-pager{gap:6px}.mdfa-root .mdv-library-reader-tools{align-items:flex-start}.mdfa-root .mdv-library-dialog{padding:23px 21px}.mdfa-root .mdv-library input,.mdfa-root .mdv-library textarea{font-size:16px}.mdfa-root .mdv-library-text-resource{padding:19px;font-size:14px}.mdfa-root .mdv-library-accessible{padding:14px}.mdfa-root .mdv-library-worksheet select{max-width:100%;font-size:14px}}
@media(prefers-reduced-motion:reduce){.mdfa-root .mdv-library *{scroll-behavior:auto!important}}
