html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:stretch;
    height:100vh;
}

header, footer {
    flex-grow:0;
    flex-shrink:0;
}

main {
    flex-grow:1;
    display:flex;
}

h1 {
    font-family: Georgia, 'Times New Roman', serif;
}

.width-wrap {
    width: 100%;
    padding: 0 3.69%;
    max-width: none;
}

@media (min-width:1300px) {
    .width-wrap {
        padding: 0 3rem;
    }
}


.navbar .organization {
    display:none;
}
@media (min-width: 768px)  {
    .navbar .organization {
        display: inline-block;
    }
}
.navbar .logo {
    width: 50px;
    vertical-align:top;
}

.breadcrumb a {
    color: #e64b38;
    font-size:.875rem;
}

.folder-tree-layout {
    width: 100%;
}
.folder-tree-layout .folder-tree-nav {
    display:none;
}
.folder-tree-layout .main-content {
    padding: 1.5rem 3.69vw;
}

@media (min-width:768px) {
    .folder-tree-layout {
        position:relative;
    }

    .folder-tree-layout .folder-tree-nav {
        display:block;
        position:absolute;
        left:0;
        top:0;
        bottom:0;
        width: 33%;
        padding:1.5rem .75em 1.5rem 3.69vw;
        border-right: 1px solid #eee;
        overflow:auto;
    }

    .folder-tree-layout .main-content {
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 67%;
        padding: 1.5rem 3.69vw 1.5rem 1.5rem;
        overflow: auto;
    }
}
@media (min-width:1100px) {
    .folder-tree-layout {
        --nav-width:350px;
    }

    .folder-tree-layout .folder-tree-nav {
        width: calc(3.69vw + var(--nav-width));
    }
    .folder-tree-layout .main-content {
        width: calc(100vw - 3.69vw - var(--nav-width));
    }
}
@media (min-width:1300px) {
    .folder-tree-layout .folder-tree-nav {
        padding-left:3rem;
        width: calc(3rem + var(--nav-width));
    }
    .folder-tree-layout .main-content {
        padding-right: 3rem;
        width: calc(100vw - 3rem - var(--nav-width));
    }
}


.folder-tree li ul {
    margin-left:1.25rem;
}

.folder-tree a {
    display:block;
    padding:.25em;
    border:1px solid transparent;

    color:black;
    text-decoration:none;
    
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.folder-tree a:hover,
.folder-tree a:focus {
    background:#cef;
    border-color:#cef;
}

.folder-tree .active > a {
    background: #cef;
    border-color: #0d6efd;
}


.folder-contents {
    margin:2rem 0;
}
.folder-contents a {
    color:black;
    text-decoration:none;
}
.folder-contents .row {
    padding-top:.25em;
    padding-bottom:.25em;
}
.folder-contents .row:nth-child(odd) {
    background:#eee;
}
.folder-contents .row:hover {
    background:#cef;
}
.folder-contents .col-9 {
    width:calc(100% - 120px);
}
.folder-contents .action
{
    display:flex;
    justify-content:flex-end;
    width:40px;
}
.folder-contents .action .name {
    display:none;
}


.scrollbox {
    border:1px solid #eee;
    border-radius:4px;
    padding:.75rem;
    max-height:300px;
    overflow:auto;
}

.scrollbox .list-unstyled:last-child {
    margin-bottom:0;
}


.acct-mgmt {
    padding-top:1.5rem;
    padding-bottom:1.5rem;
}
.login-form {
    max-width:700px;
    margin:0 auto;
}


fieldset {
    padding-top:2rem;
}


.intro th {
    text-align:right;
    padding-right:.75em;
}

.qr-code {
    text-align:center;
}
.qr-code svg {
    max-width:100%;
}
.actions {
    text-align:center;
}