17bd08c30SSascha Leib#botmon__admin { 2f125bc8dSSascha Leib 3f125bc8dSSascha Leib section[role="tabpanel"] { 4f125bc8dSSascha Leib margin: .25rem 0; 5f125bc8dSSascha Leib } 6f125bc8dSSascha Leib 793a5b18bSSascha Leib /* grid layout classes (taken from the Ad-Hoc Wrap plugin) */ 893a5b18bSSascha Leib .grid-2-columns, 993a5b18bSSascha Leib .grid-3-columns { 1093a5b18bSSascha Leib display: grid; 1193a5b18bSSascha Leib } 1293a5b18bSSascha Leib .grid-2-columns { 1393a5b18bSSascha Leib grid-template-columns: 1fr 1fr; 1493a5b18bSSascha Leib grid-gap: 0 .5em; 1593a5b18bSSascha Leib } 1693a5b18bSSascha Leib .grid-3-columns { 1793a5b18bSSascha Leib grid-template-columns: 1fr 1fr 1fr; 1893a5b18bSSascha Leib grid-gap: 0 .33em; 1993a5b18bSSascha Leib } 2093a5b18bSSascha Leib 2193a5b18bSSascha Leib /* the "today" tab: */ 227bd08c30SSascha Leib #botmon__today { 23f125bc8dSSascha Leib 2493a5b18bSSascha Leib /* item header */ 25f125bc8dSSascha Leib header { 269bc80cc5SSascha Leib background-color: #F0F0F0; 27f125bc8dSSascha Leib color: #333; 289bc80cc5SSascha Leib border: #CCC solid 1px; 299bc80cc5SSascha Leib border-radius: .5rem .5rem 0 0; 309bc80cc5SSascha Leib margin: .5rem 0 1pt 0; 319bc80cc5SSascha Leib padding: .25rem .5rem; 32f125bc8dSSascha Leib font-size: 1rem; 33454b7f55SSascha Leib line-height: 1.25; 349bc80cc5SSascha Leib } 359bc80cc5SSascha Leib 369bc80cc5SSascha Leib /* list formatting */ 379bc80cc5SSascha Leib dl { 389bc80cc5SSascha Leib & { 399bc80cc5SSascha Leib border-left: #555 solid 1px; 409bc80cc5SSascha Leib padding-left: .5rem; 419bc80cc5SSascha Leib margin: 0; 42454b7f55SSascha Leib font-size: 1rem; 43454b7f55SSascha Leib line-height: 1.5; 449bc80cc5SSascha Leib } 459bc80cc5SSascha Leib &:first-child { 469bc80cc5SSascha Leib border-left: none; 479bc80cc5SSascha Leib padding-left: 0; 489bc80cc5SSascha Leib } 499bc80cc5SSascha Leib dt { 509bc80cc5SSascha Leib margin-bottom: .2em; 519bc80cc5SSascha Leib } 529bc80cc5SSascha Leib dd { 539bc80cc5SSascha Leib display: flex; 549bc80cc5SSascha Leib justify-content: space-between; 559bc80cc5SSascha Leib padding: 0; margin: 0; 569bc80cc5SSascha Leib } 579bc80cc5SSascha Leib dd:nth-child(even) { 589bc80cc5SSascha Leib background-color: #EEE; 59f125bc8dSSascha Leib } 60f125bc8dSSascha Leib } 619bc80cc5SSascha Leib 6293a5b18bSSascha Leib /* Content */ 637bd08c30SSascha Leib #botmon__today__content { 6493a5b18bSSascha Leib & details { 659bc80cc5SSascha Leib & { 669bc80cc5SSascha Leib margin: 0 0 1pt 0; 67454b7f55SSascha Leib text-align: left; 689bc80cc5SSascha Leib } 699bc80cc5SSascha Leib summary { 709bc80cc5SSascha Leib & { 7193a5b18bSSascha Leib display: flex; 7293a5b18bSSascha Leib justify-content: flex-start; 7393a5b18bSSascha Leib align-items: center; 7493a5b18bSSascha Leib column-gap: .25em; 759bc80cc5SSascha Leib font-weight: bold; 769bc80cc5SSascha Leib font-size: 1rem; 77454b7f55SSascha Leib line-height: 1.5; 789bc80cc5SSascha Leib margin: 0; 7993a5b18bSSascha Leib padding: .25em; 8093a5b18bSSascha Leib color: #333; 8193a5b18bSSascha Leib cursor: pointer; 829bc80cc5SSascha Leib } 83454b7f55SSascha Leib &::marker, &::before { 8493a5b18bSSascha Leib content: none; 85454b7f55SSascha Leib display: none; 869bc80cc5SSascha Leib } 8793a5b18bSSascha Leib &::before { 8893a5b18bSSascha Leib content: ''; 899bc80cc5SSascha Leib display: inline-block; 9093a5b18bSSascha Leib width: 1.25em; height: 1.25em; 9193a5b18bSSascha Leib background: transparent url('img/chevron.svg') center no-repeat; 9293a5b18bSSascha Leib background-size: 1.25em; 9393a5b18bSSascha Leib transform: rotate(-90deg); 9493a5b18bSSascha Leib transition-duration: .25s; 959bc80cc5SSascha Leib } 969bc80cc5SSascha Leib } 979bc80cc5SSascha Leib &[open] { 9843d9de6bSSascha Leib & > summary::before { 9993a5b18bSSascha Leib transform: rotate(0deg); 1009bc80cc5SSascha Leib } 1019bc80cc5SSascha Leib } 1029bc80cc5SSascha Leib & > div { 1039bc80cc5SSascha Leib padding: .5rem; 10493a5b18bSSascha Leib border: #CCC solid 1px; 10593a5b18bSSascha Leib border-top-width: 0; 10693a5b18bSSascha Leib border-radius: 0 0 .25rem .25rem; 1079bc80cc5SSascha Leib } 10893a5b18bSSascha Leib & details summary { 10993a5b18bSSascha Leib background-color: transparent; 11093a5b18bSSascha Leib border: transparent none 0; 11193a5b18bSSascha Leib } 11293a5b18bSSascha Leib } 11393a5b18bSSascha Leib & > details > summary { 11493a5b18bSSascha Leib background-color: #F0F0F0; 11593a5b18bSSascha Leib border: #CCC solid 1px; 1169bc80cc5SSascha Leib } 1179bc80cc5SSascha Leib } 1189bc80cc5SSascha Leib 11993a5b18bSSascha Leib /* visitor lists: */ 12093a5b18bSSascha Leib #botmon__today__visitorlists { 12193a5b18bSSascha Leib details ul { 12293a5b18bSSascha Leib margin: 0; 12393a5b18bSSascha Leib padding: 0; 12493a5b18bSSascha Leib list-style: none; 12593a5b18bSSascha Leib } 12693a5b18bSSascha Leib details ul > li { 12793a5b18bSSascha Leib margin: 0 0 0 .75rem; 12893a5b18bSSascha Leib padding: 0; 12993a5b18bSSascha Leib color: #000; 13093a5b18bSSascha Leib } 13193a5b18bSSascha Leib details ul > li > details { 132f4417fdeSSascha Leib border: #ccc solid 1px; 133f4417fdeSSascha Leib border-radius: .5em; 13493a5b18bSSascha Leib } 13593a5b18bSSascha Leib details ul > li > details > summary { 13693a5b18bSSascha Leib display: flex; 13793a5b18bSSascha Leib justify-content: space-between; 13893a5b18bSSascha Leib align-items: center; 13993a5b18bSSascha Leib column-gap: .5em; 14093a5b18bSSascha Leib font-weight: normal; 14193a5b18bSSascha Leib font-size: 1rem; 14293a5b18bSSascha Leib line-height: 1.5; 143f4417fdeSSascha Leib background-color: #F0F0F0; 144f4417fdeSSascha Leib border-bottom: #CCC solid 1px; 145f4417fdeSSascha Leib border-radius: .5em; 14693a5b18bSSascha Leib } 14793a5b18bSSascha Leib 14893a5b18bSSascha Leib details ul > li > details > summary > span { 14993a5b18bSSascha Leib display: flex; 150f4417fdeSSascha Leib align-items: center; 15193a5b18bSSascha Leib column-gap: .25em; 15293a5b18bSSascha Leib } 15393a5b18bSSascha Leib details ul > li > details > summary > span:first-child { 15493a5b18bSSascha Leib flex-grow: 1; 15593a5b18bSSascha Leib } 15693a5b18bSSascha Leib details ul > li > details > summary > span > span { 157f4417fdeSSascha Leib display: flex; 158f4417fdeSSascha Leib align-items: center; 159f4417fdeSSascha Leib column-gap: .25em; 16093a5b18bSSascha Leib height: 1.5em; 16193a5b18bSSascha Leib overflow: hidden; 16293a5b18bSSascha Leib } 16393a5b18bSSascha Leib details ul > li > details > summary > span > span::before { 16493a5b18bSSascha Leib content: ''; 16593a5b18bSSascha Leib display: inline-block; 166f4417fdeSSascha Leib min-width: 1.25em; height: 1em; 16793a5b18bSSascha Leib text-align: center; 16893a5b18bSSascha Leib background: transparent url('img/placeholder.svg') center no-repeat; 16993a5b18bSSascha Leib background-size: 1em; 17093a5b18bSSascha Leib } 17193a5b18bSSascha Leib details ul > li > details > summary > span > span.icon { 17293a5b18bSSascha Leib width: 1.25em; 17393a5b18bSSascha Leib overflow: hidden; 17493a5b18bSSascha Leib } 17593a5b18bSSascha Leib details ul > li > details > summary > span > span[title] { 17693a5b18bSSascha Leib cursor: help; 17793a5b18bSSascha Leib } 17893a5b18bSSascha Leib 17993a5b18bSSascha Leib dl.visitor_details { 18093a5b18bSSascha Leib & { 18193a5b18bSSascha Leib display: grid; 18293a5b18bSSascha Leib grid-template-columns: min-content auto; 183f4417fdeSSascha Leib border-left: transparent none 0; 18493a5b18bSSascha Leib } 18593a5b18bSSascha Leib dt { 18693a5b18bSSascha Leib grid-column: 1; 18793a5b18bSSascha Leib white-space: nowrap; 18893a5b18bSSascha Leib } 18993a5b18bSSascha Leib dd { 19093a5b18bSSascha Leib grid-column: 2; 19193a5b18bSSascha Leib display: inline-block; 19293a5b18bSSascha Leib background-color: transparent; 19393a5b18bSSascha Leib } 194f4417fdeSSascha Leib dd.pages { 195f4417fdeSSascha Leib & { 196f4417fdeSSascha Leib } 197f4417fdeSSascha Leib ul { 198f4417fdeSSascha Leib li { 199f4417fdeSSascha Leib & { 200f4417fdeSSascha Leib display: flex; 201f4417fdeSSascha Leib justify-content: space-between; 202f4417fdeSSascha Leib align-items: center; 203f4417fdeSSascha Leib } 204f4417fdeSSascha Leib } 205f4417fdeSSascha Leib } 206f4417fdeSSascha Leib } 20793a5b18bSSascha Leib } 20893a5b18bSSascha Leib dd.has_icon::before { 20993a5b18bSSascha Leib content: ''; 21093a5b18bSSascha Leib display: inline-block; 21193a5b18bSSascha Leib width: 1.25em; height: 1.25em; 21293a5b18bSSascha Leib background: transparent url('img/placeholder.svg') center no-repeat; 21393a5b18bSSascha Leib background-size: 1em; 21493a5b18bSSascha Leib } 21593a5b18bSSascha Leib 216*bc55f6a6SSascha Leib ul.eval { 217*bc55f6a6SSascha Leib li { 218*bc55f6a6SSascha Leib display: flex; 219*bc55f6a6SSascha Leib justify-content: space-between; 220*bc55f6a6SSascha Leib align-items: center; 221*bc55f6a6SSascha Leib } 222*bc55f6a6SSascha Leib li:nth-child(odd) { 223*bc55f6a6SSascha Leib background-color: #EEE; 224*bc55f6a6SSascha Leib } 225*bc55f6a6SSascha Leib li.total { 226*bc55f6a6SSascha Leib border-top: #333 solid 1px; 227*bc55f6a6SSascha Leib font-style: italic; 228*bc55f6a6SSascha Leib } 229*bc55f6a6SSascha Leib } 230*bc55f6a6SSascha Leib 23143d9de6bSSascha Leib /* bot icons */ 23243d9de6bSSascha Leib span.bot::before, dd.bot::before { background-image: url('img/robot.svg') } 23343d9de6bSSascha Leib span.bot_bingbot::before, dd.bot_bingbot::before { background-image: url('img/bing.svg') } 23443d9de6bSSascha Leib span.bot_googlebot::before, dd.bot_googlebot::before, 23543d9de6bSSascha Leib span.bot_googleads::before, dd.bot_googleads::before, 23643d9de6bSSascha Leib span.bot_googleapi::before, dd.bot_googleapi::before { background-image: url('img/google.svg') } 23743d9de6bSSascha Leib span.bot_applebot::before, dd.bot_applebot::before { background-image: url('img/apple.svg') } 238f4417fdeSSascha Leib span.bot_openai::before, dd.bot_openai::before { background-image: url('img/openai.svg') } 23943d9de6bSSascha Leib span.bot_metabots::before, dd.bot_metabots::before { background-image: url('img/meta.svg') } 24043d9de6bSSascha Leib span.bot_yandexbots::before, dd.bot_yandexbots::before { background-image: url('img/yandex.svg') } 24143d9de6bSSascha Leib span.bot_seznambot::before, dd.bot_seznambot::before { background-image: url('img/seznam.svg') } 24243d9de6bSSascha Leib 24343d9de6bSSascha Leib /* user info */ 244f4417fdeSSascha Leib span.user_known::before { background-image: url('img/user.svg') } 24593a5b18bSSascha Leib 24693a5b18bSSascha Leib /* platform icons */ 24743d9de6bSSascha Leib span.platform_win10::before, dd.platform_win10::before { background-image: url('img/win11.svg') } 248259d3b85SSascha Leib span.platform_macos::before, dd.platform_macos::before { background-image: url('img/apple.svg') } 24943d9de6bSSascha Leib span.platform_linux::before, dd.platform_linux::before { background-image: url('img/linux.svg') } 25043d9de6bSSascha Leib span.platform_ios::before, dd.platform_ios::before { background-image: url('img/ios.svg') } 25143d9de6bSSascha Leib span.platform_android::before, dd.platform_android::before { background-image: url('img/android.svg') } 25243d9de6bSSascha Leib span.platform_winold::before, dd.platform_winold::before { background-image: url('img/winold.png') } 253259d3b85SSascha Leib span.platform_macosold::before, dd.platform_macosold::before { background-image: url('img/macos.svg') } 25443d9de6bSSascha Leib span.platform_tizen::before, dd.platform_tizen::before { background-image: url('img/tizen.png') } 25543d9de6bSSascha Leib span.platform_hmos::before, dd.platform_hmos::before { background-image: url('img/hmos.svg') } 25643d9de6bSSascha Leib span.platform_chromium::before, dd.platform_chromium::before { background-image: url('img/chromium.svg') } 257f4417fdeSSascha Leib span.platform_bsd::before, dd.platform_bsd::before { background-image: url('img/freebsd.png') } 25893a5b18bSSascha Leib 25993a5b18bSSascha Leib /* browser icons */ 26043d9de6bSSascha Leib span.client_opera::before, dd.client_opera::before { background-image: url('img/opera.svg') } 26143d9de6bSSascha Leib span.client_msie::before, dd.client_msie::before { background-image: url('img/msie.svg') } 26243d9de6bSSascha Leib span.client_brave::before, dd.client_brave::before { background-image: url('img/brave.svg') } 26343d9de6bSSascha Leib span.client_msedge::before, dd.client_msedge::before { background-image: url('img/msedge.svg') } 26443d9de6bSSascha Leib span.client_chrome::before, dd.client_chrome::before { background-image: url('img/chrome.svg') } 26543d9de6bSSascha Leib span.client_chromeold::before, dd.client_chromeold::before { background-image: url('img/chromeold.svg') } 26643d9de6bSSascha Leib span.client_safari::before, dd.client_safari::before { background-image: url('img/safari.png') } 26743d9de6bSSascha Leib span.client_ddg::before, dd.client_ddg::before { background-image: url('img/ddg.svg') } 26843d9de6bSSascha Leib span.client_firefox::before, dd.client_firefox::before { background-image: url('img/firefox.png') } 26943d9de6bSSascha Leib span.client_samsung::before, dd.client_samsung::before { background-image: url('img/samsung.svg') } 27043d9de6bSSascha Leib span.client_uc::before, dd.client_uc::before { background-image: url('img/uc.svg') } 27143d9de6bSSascha Leib span.client_huawei::before, dd.client_huawei::before { background-image: url('img/huawei.png') } 272259d3b85SSascha Leib span.client_vivaldi::before, dd.client_vivaldi::before { background-image: url('img/vivaldi.svg') } 273259d3b85SSascha Leib span.client_aol::before, dd.client_aol::before { background-image: url('img/aol.png') } 27493a5b18bSSascha Leib 27593a5b18bSSascha Leib /* ip address type */ 27643d9de6bSSascha Leib span.ip6::before, dd.ip6::before { background-image: url('img/ip6.svg') } 27743d9de6bSSascha Leib span.ip4::before, dd.ip4::before { background-image: url('img/ip4.svg') } 27843d9de6bSSascha Leib span.ip0::before, dd.ip0::before { background-image: url('img/localhost.svg') } 27993a5b18bSSascha Leib 28093a5b18bSSascha Leib /* user agent */ 28143d9de6bSSascha Leib span.agent::before { background-image: url('img/info.svg') } 28293a5b18bSSascha Leib 283f4417fdeSSascha Leib /* pageviews */ 284f4417fdeSSascha Leib span.pageviews { 285f4417fdeSSascha Leib border: #999 solid 1px; 286f4417fdeSSascha Leib padding: 0 2px; 287f4417fdeSSascha Leib font-size: smaller; 288f4417fdeSSascha Leib border-radius: .25em; 289f4417fdeSSascha Leib } 290f4417fdeSSascha Leib span.pageviews::before { background-image: url('img/page.svg') } 291f4417fdeSSascha Leib 29293a5b18bSSascha Leib } 29393a5b18bSSascha Leib 29493a5b18bSSascha Leib /* item footer */ 295f125bc8dSSascha Leib footer { 296f125bc8dSSascha Leib & { 297f125bc8dSSascha Leib display: flex; 298f125bc8dSSascha Leib align-items: center; 299f125bc8dSSascha Leib column-gap: .25rem; 3009bc80cc5SSascha Leib background-color: #F0F0F0; 301f125bc8dSSascha Leib color: #333; 3029bc80cc5SSascha Leib border: #CCC solid 1px; 3039bc80cc5SSascha Leib border-radius: 0 0 .5rem .5rem; 3049bc80cc5SSascha Leib margin: 1pt 0 0 0; 305f125bc8dSSascha Leib padding: .25rem .5rem; 306454b7f55SSascha Leib line-height: 1.25; 307f125bc8dSSascha Leib } 308f125bc8dSSascha Leib & > svg { 309f125bc8dSSascha Leib width: 1.25em; height: 1.25em; 310f125bc8dSSascha Leib fill: #333; 311f125bc8dSSascha Leib flex-shrink: 0; 312f125bc8dSSascha Leib } 313f125bc8dSSascha Leib & > span { 314f125bc8dSSascha Leib font-size: .96rem; 315f125bc8dSSascha Leib line-height: 1.25rem; 316f125bc8dSSascha Leib } 317f125bc8dSSascha Leib & > span.error { 318f125bc8dSSascha Leib color: #961D1B; 319f125bc8dSSascha Leib font-weight: bold; 320f125bc8dSSascha Leib } 321f125bc8dSSascha Leib } 322f125bc8dSSascha Leib } 323f125bc8dSSascha Leib} 324454b7f55SSascha Leib 325454b7f55SSascha Leib/* dark mode overrides */ 326454b7f55SSascha Leib@media (prefers-color-scheme: dark) { 327454b7f55SSascha Leib body.darkmode.mode_admin #botmon__admin { 328454b7f55SSascha Leib 329454b7f55SSascha Leib #botmon__today { 330454b7f55SSascha Leib 331454b7f55SSascha Leib header { 332454b7f55SSascha Leib background-color: #0c0c0d; 333454b7f55SSascha Leib color: #adadb3; 334454b7f55SSascha Leib border-color: #666; 335454b7f55SSascha Leib } 336454b7f55SSascha Leib 337454b7f55SSascha Leib /* list formatting */ 338454b7f55SSascha Leib dl { 339454b7f55SSascha Leib & { 340454b7f55SSascha Leib border-left-color: #777; 341454b7f55SSascha Leib } 342454b7f55SSascha Leib dt { 343454b7f55SSascha Leib color: #adadb3; 344454b7f55SSascha Leib } 345454b7f55SSascha Leib dd:nth-child(even) { 34693a5b18bSSascha Leib background-color: #333337; 347454b7f55SSascha Leib } 348454b7f55SSascha Leib } 349454b7f55SSascha Leib 35093a5b18bSSascha Leib #botmon__today__content > details { 35193a5b18bSSascha Leib summary { 352454b7f55SSascha Leib & { 353454b7f55SSascha Leib background-color: #0c0c0d; 354454b7f55SSascha Leib color: #adadb3; 355454b7f55SSascha Leib border-color: #666; 356454b7f55SSascha Leib } 357454b7f55SSascha Leib &::after { 358454b7f55SSascha Leib color: #76b0fd; 359454b7f55SSascha Leib } 360454b7f55SSascha Leib } 36193a5b18bSSascha Leib & > div { 36293a5b18bSSascha Leib border-color: #666; 36393a5b18bSSascha Leib } 36493a5b18bSSascha Leib } 365454b7f55SSascha Leib 36643d9de6bSSascha Leib /* visitor lists: */ 36743d9de6bSSascha Leib #botmon__today__visitorlists { 36843d9de6bSSascha Leib details ul > li { 36943d9de6bSSascha Leib color: #aeaeae; 37043d9de6bSSascha Leib } 37143d9de6bSSascha Leib } 37243d9de6bSSascha Leib 373454b7f55SSascha Leib footer { 374454b7f55SSascha Leib & { 375454b7f55SSascha Leib background-color: #0c0c0d; 376454b7f55SSascha Leib color: #adadb3; 377454b7f55SSascha Leib border-color: #CCC; 378454b7f55SSascha Leib } 379454b7f55SSascha Leib & > svg { 380454b7f55SSascha Leib fill: #777; 381454b7f55SSascha Leib } 382454b7f55SSascha Leib & > span.error { 383454b7f55SSascha Leib color: #961D1B; 384454b7f55SSascha Leib } 385454b7f55SSascha Leib } 386454b7f55SSascha Leib } 387454b7f55SSascha Leib } 388454b7f55SSascha Leib} 38993a5b18bSSascha Leib/* layout overrides for narrow screens: */ 39093a5b18bSSascha Leib@media (max-width: 670px) { 39193a5b18bSSascha Leib #botmon__admin { 39293a5b18bSSascha Leib .grid-2-columns, 39393a5b18bSSascha Leib .grid-3-columns { 39493a5b18bSSascha Leib grid-template-columns: 100%; 39593a5b18bSSascha Leib } 39693a5b18bSSascha Leib } 39793a5b18bSSascha Leib} 398