/* Default */
body { background-color: #eff3f6; cursor: default; font-family: Arial,sans-serif !important; font-size: 11px; height: 100%; margin: 0px; min-width: 1100px; overflow-y: scroll; width: 100%; }
a { color: #777; cursor: pointer; outline: none; text-decoration: none; }
button { background-color: transparent; border: none; cursor: pointer; padding-block: 0px; padding-inline: 0px; }
img { border: 0px; }
img[src=''] { display: none; }
input:focus { outline: none; }
p { margin: 0px; }
select:focus { outline: none; }
textarea:focus { outline: none; }
:focus-visible { outline: none; }

/* page */
.page { height: 100%; width: 100%; }
.page .top-col { background-color: #fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15); height: 55px; left: 270px; min-width: 795px; position: fixed; right: 0; top: 0; z-index: 50; }
.page .top-col .menu { background: url(/images/default/menu.png) no-repeat center; background-size: 28px 28px; display: none; height: 32px; width: 32px; padding: 12px 10px; }
.page .top-col .top-title { color: #fff; padding: 10px 0px 10px 15px; }
.page .top-col .top-title .logo { background: url(/images/default/logo.png) no-repeat center; background-size: cover; float: left; height: 36px; margin: 0px 10px 0px 0px; width: 36px; }
.page .top-col .top-title .title { float: left; padding-top: 4px; }
.page .top-col .top-title .title .name { color: #000; font-size: 14px; font-weight: bold; }
.page .top-col .top-title .title .desc { color: #9fa4b1; font-size: 10px; }
.page .top-col .menu-tab { border-bottom: solid 5px transparent; float: left; padding: 20px 20px 20px 20px; transition: all 0.3s; }
.page .top-col .menu-tab .menu-icon { color: #999; float: left; font-size: 16px; text-align: center; width: 16px; }
.page .top-col .menu-tab .menu-title { color: #999; float: left; font-size: 13px; font-weight: bold; padding-left: 10px; }
.page .top-col .menu-tab:hover { border-bottom: solid 5px #d9d9d9; box-shadow: inset 0px -8px 12px -8px rgba(245, 247, 249, 0.25); }
.page .top-col .menu-tab.selected { border-bottom: solid 5px #1a237e; box-shadow: inset 0px -8px 12px -8px rgba(100, 181, 246, 0.25); color: #1a237e !important; }
.page .top-col .menu-tab.selected .menu-icon { color: #1a237e; }
.page .top-col .menu-tab.selected .menu-title { color: #1a237e; }
.page .top-col .control { margin-left: 100px; }
.page .top-col .control-link { border-right: solid 2px #f1f3f5; color: #999; cursor: pointer; font-size: 12px; font-weight: bold; min-width: 20px; padding: 5px 15px; margin: 15px 10px 6px 0px; text-align: center; transition: all 0.3s; }
.page .top-col .control-link:hover { color: #3f51b5; }
.page .top-col .profile-link { color: #515151; cursor: pointer; font-size: 11px; font-weight: bold; min-width: 40px; margin-right: 20px; padding: 10px; transition: all 0.3s; }
.page .top-col .profile-link:hover { color: #3f51b5; }
.page .left-col { background: linear-gradient(115deg, #0a1a33, #0f2748); box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15); bottom: 0px; left: 0px; overflow-x: hidden; overflow-y: scroll; position: fixed; top: 0px; transition: all 0.3s ease-in-out; width: 270px; z-index: 52; }
.page .left-col { scrollbar-color: rgba(255, 255, 255, 0) transparent; scrollbar-width: thin; }
.page .left-col::-webkit-scrollbar { display: block; width: 5px; }
.page .left-col::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.2); border-radius: 4px; }
.page .left-col::-webkit-scrollbar-track { background: transparent; }
.page .left-col .logo { background: url(/images/default/logo.png) center no-repeat; background-size: contain; height: 36px; margin: 0px 0px 0px 20px; width: 36px; }
.page .left-col .system-title { color: #fff; font-size: 14px; font-weight: bold; margin: 3px 0px 0px 10px; padding: 0px 0px 0px 0px; width: 170px; }
.page .left-col .system-desc { color: #fff;  font-size: 12px; margin: 0px 0px 0px 10px; width: 200px; }
.page .left-col .list { align-items: center; border-radius: 7px; color: #fff; cursor: pointer; font-size: 12px; font-weight: bold; margin: 10px 5px 0px 15px; padding: 15px; transition: all 0.3s; }
.page .left-col .list .list-icon { text-align: center; width: 30px; }
.page .left-col .list .list-text { color: #fff; font-size: 13px; font-weight: bold; padding: 2px 10px; text-align: left; width: 170px; }
.page .left-col .list:hover { background-color: rgba(255, 255, 255, 0.1); color: #fff; }
.page .left-col .list.selected { background: linear-gradient(90deg, #1a237e, #3f51b5); color: #fff; opacity: 1; }
.page .left-col .list.selected .list-text { color: #fff; }
.page .center-col { min-width: 795px; padding: 85px 20px 50px 300px; transition: padding 0.3s; z-index: 10; }
.page .center-col .content-title { left: 320px; position: fixed; top: 3px; z-index: 51; }
.page .center-col .content-title .seperator { border-left: solid 2px #d1d3d5; height: 25px; margin: 10px 20px; }
.page .center-col .content-title .menu-tab { border-bottom: solid 5px transparent; cursor: pointer; float: left; padding: 15px; transition: all 0.3s; }
.page .center-col .content-title .menu-tab .menu-title { color: #999; float: left; font-size: 13px; font-weight: bold; }
.page .center-col .content-title .menu-tab:hover { border-bottom: solid 5px #d9d9d9; box-shadow: inset 0px -8px 12px -8px rgba(245, 247, 249, 0.25); }
.page .center-col .content-title .menu-tab.selected { border-bottom: solid 5px #1a237e; box-shadow: inset 0px -8px 12px -8px rgba(100, 181, 246, 0.25); color: #1a237e !important; }
.page .center-col .content-title .menu-tab.selected .menu-title { color: #1a237e; }
.page .center-col .content { clear: both; }

.login-page { bottom: 0px; left: 0px; position: fixed; right: 0px; top: 0px; width: 100%; }
.login-page .left-panel { background: linear-gradient(180deg, #fff 30%, #f7f8f9, #f1f2f3); bottom: 0px; left: 0px; min-height: 500px; position: absolute; top: 0px; width: 100%; z-index: 10; }
.login-page .left-panel .top-banner { padding: 10px 20px; }
.login-page .left-panel .top-banner .title { color: #070e26; float: left; font-size: 19px; font-weight: bold; margin: 8px 0px 0px 0px; }
.login-page .left-panel .top-banner .color-title { background: linear-gradient(90deg, #1a237e, #3f51b5 50%, #304ffe); background-clip: text; color: transparent; float: left; font-size: 19px; font-weight: bold; margin: 8px 0px 0px 0px; }
.login-page .left-panel .inner { height: 500px; margin: 100px auto 10px auto; width: 380px; }
.login-page .left-panel .header { padding: 0px 0px 30px 0px; }
.login-page .left-panel .header .color-title { background: linear-gradient(90deg, #1a237e, #3f51b5 50%, #304ffe); background-clip: text; color: transparent; font-size: 20px; font-weight: bold; }
.login-page .right-panel { background-size: cover; bottom: 0px; box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2); min-height: 500px; position: fixed; right: 0px; top: 0px; width: 30%; z-index: 20; }
.login-page .right-panel.picture-01 { background: #f7f8f9 url(/images/default/background/bg-front-01.jpg) no-repeat right; background-size: cover; }
.login-page .right-panel.picture-02 { background: #f7f8f9 url(/images/default/background/bg-front-02.jpg) no-repeat center; background-size: cover; }
.login-page .right-panel.picture-03 { background: #f7f8f9 url(/images/default/background/bg-front-03.jpg) no-repeat center; background-size: cover; }
.login-page .right-panel.picture-04 { background: #f7f8f9 url(/images/default/background/bg-front-04.jpg) no-repeat center; background-size: cover; }
.login-page .right-panel.picture-05 { background: #f7f8f9 url(/images/default/background/bg-front-05.jpg) no-repeat center; background-size: cover; }
.login-page .right-panel.picture-06 { background: #f7f8f9 url(/images/default/background/bg-front-06.jpg) no-repeat center; background-size: cover; }
.login-page .right-panel .scan { background: linear-gradient(90deg, transparent, #fff, transparent); height: 3px; position: fixed; right: 0; top: 0; width: 30%; }

/* class */
.box { background-color: #fff; box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1); border-radius: 7px; padding: 30px; transition: all 0.3s; }
.box.hover:hover { box-shadow: 1px 1px 15px rgba(0, 0, 0, 0.25); }
.box .box-title { background: linear-gradient(0, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75)); border-radius: 7px; color: #fff; font-size: 14px; font-weight: bold; transition: all 0.5s; }
.box .box-desc { border-top: solid 3px #3f51b5; color: #fff; font-size: 11px; font-weight: normal; margin-top: 5px; padding-top: 5px; transition: all 0.5s; }
.box.hover:hover .box-title { background: none; background-color: #1a237e; box-shadow: 1px 1px 30px rgba(100, 181, 246, 0.25); }
.box.hover:hover .box-desc { border-top: solid 3px #fff; }
.box.disabled { opacity: 0.3; }
.item { background: #fff; border: solid 2px transparent; border-radius: 7px; float: left; padding: 15px; margin: 0px 20px 20px 0px; transition: all 0.3s; max-width: 250px; min-height: 80px; user-select: none; width: 95%; }
.item:hover { background: #f3f9fe; background: linear-gradient(135deg, #fff 5%, #f3f9fe); border-left: solid 2px #1a237e; border-bottom: solid 2px #1a237e; border-right: solid 2px #3f51b5; border-top: solid 2px #3f51b5; box-shadow: 1px 1px 10px rgba(100, 181, 246, 0.15); }
.pager { background-color: #fff; border: solid 1px #e9e9e9; box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.15); border-radius: 5px; bottom: 20px; color: #777; font-size: 12px; padding: 7px 10px; position: fixed; right: 30px; transition: all 0.3s; }
.tab { background-color: #fff; border-radius: 5px; color: #9fa4b1; cursor: pointer; font-size: 13px; font-weight: bold; margin: 5px; padding: 15px 10px; transition: all 0.3s; user-select: none; min-width: 60px; }
.tab:hover { background-color: #f5f7f9; color: #1a237e; }
.tab.selected { background-color: rgba(100, 181, 246, 0.1); color: #1a237e; }

/* search */
.search-page { background: #ffffff; display: flex; flex-direction: column; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; min-height: 100vh; }
.search-center { align-items: center; display: flex; flex: 1; flex-direction: column; justify-content: center; padding: 60px 20px; text-align: center; }
.search-header { align-items: center; background: #ffffff; border-bottom: 1px solid #ebebeb; display: flex; flex-direction: column; padding: 25px 30px 15px 30px; }
.search-logo { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; font-size: 64px; font-weight: 700; letter-spacing: -2px; margin-bottom: 25px; user-select: none; }
.search-header .search-logo { font-size: 36px; letter-spacing: -1px; margin-bottom: 15px; }
.search-form { align-items: center; display: flex; flex-direction: column; max-width: 620px; width: 100%; }
.search-box { align-items: center; background: #ffffff; border: 1px solid #dfe1e5; border-radius: 28px; box-shadow: 0 1px 6px rgba(32,33,36,.12); display: flex; height: 48px; margin-bottom: 20px; padding: 0 16px; transition: all 0.2s ease-in-out; width: 100%; }
.search-box:hover, .search-box:focus-within { border-color: rgba(223,225,229,0); box-shadow: 0 2px 10px rgba(32,33,36,.22); }
.search-input { background: transparent; border: none; color: #202124; flex: 1; font-size: 16px; outline: none; padding: 0 10px; }
.search-icon { color: #9aa0a6; font-size: 16px; }
.search-clear { background: transparent; border: none; border-radius: 50%; color: #70757a; cursor: pointer; font-size: 14px; padding: 6px; }
.search-clear:hover { background: #f1f3f4; color: #202124; }
.search-btn-container { display: flex; justify-content: center; }
.search-btn { background-color: #f8f9fa; border: 1px solid #f8f9fa; border-radius: 6px; color: #3c4043; cursor: pointer; font-size: 14px; font-weight: 500; padding: 9px 24px; transition: all 0.15s ease; }
.search-btn:hover { background-color: #f1f3f4; border-color: #dadce0; box-shadow: 0 1px 2px rgba(60,64,67,.3); color: #202124; }
.search-results-container { margin: 0 auto; max-width: 720px; padding: 20px 20px 60px 20px; width: 100%; }
.search-stats { color: #70757a; font-size: 13px; margin-bottom: 22px; }
.search-result-card { border-bottom: 1px solid #f1f3f4; margin-bottom: 26px; padding-bottom: 16px; }
.search-result-cite { color: #202124; font-size: 13px; margin-bottom: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.search-result-title { font-size: 20px; font-weight: 500; line-height: 1.3; margin: 0 0 6px 0; }
.search-result-title a { color: #1a0dab; text-decoration: none; }
.search-result-title a:hover { text-decoration: underline; }
.search-result-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.search-badge { align-items: center; background: #f1f3f4; border-radius: 4px; color: #3c4043; display: inline-flex; font-size: 12px; padding: 3px 8px; }
.search-result-snippet { color: #4d5156; font-size: 14px; line-height: 1.55; }
.search-no-results { padding: 20px 0; }
.search-suggestions-list { color: #4d5156; line-height: 1.8; margin: 10px 0 0 20px; }
.search-modal-card { background: #ffffff; border-radius: 12px; box-shadow: 0 10px 35px rgba(0,0,0,.2); margin: 60px auto; max-width: 560px; padding: 30px; }
@media (max-width: 768px) {
    .search-logo { font-size: 46px; }
    .search-header .search-logo { font-size: 30px; }
}
