style.css
assembler source, ASCII text
1@import url("/static/efficient-ui/MASTER.css"); 2 3:root { 4--color-branch: var(--color-primary-1); 5--color-branch-text: var(--color-primary-1-text); 6--color-tag: var(--color-accent-1); 7--color-tag-text: var(--color-accent-1-text); 8--color-pending: #4caf50; 9--color-pending-text: #ffffff; 10--color-rejected: #ff9800; 11--color-rejected-text: #ffffff; 12--color-merged: #9c27b0; 13--color-merged-text: #ffffff; 14--color-done: #607D8B; 15--color-done-text: #ffffff; 16--color-insertion: #00C85366; 17--color-insertion-line-number: #00C853; 18--color-insertion-text: currentColor; 19--color-deletion: #D5000066; 20--color-deletion-text: currentColor; 21--color-deletion-line-number: #D50000; 22--color-code-line-number: #455A64; 23} 24 25.big-button { 26font-size: 1.5em; 27} 28 29.ripple-pad { 30background: #ffffff99; 31position: absolute; 32opacity: 1; 33transform: scale(0); 34animation: RippleEffect 375ms cubic-bezier(0, 0.55, 0.45, 1) forwards; 35} 36 37@keyframes RippleEffect { 38to { 39transform: scale(1); 40opacity: 0; 41} 42} 43 44button, input, .button, select { 45position: relative; 46overflow: hidden; 47} 48 49.error-page-container { 50align-items: center; 51justify-content: center; 52width: 100%; 53height: 100%; 54} 55 56/* 57@media screen and (max-width: 896px) { 58.navbar { 59flex-flow: column nowrap; 60height: fit-content; 61} 62} 63*/ 64 65@media screen and (max-width: 640px) { 66#repo-table > * > tr > :is(td, th):is(:nth-child(3), :nth-child(4)) { 67display: none; 68} 69 70.commit-message { 71display: none !important; 72} 73} 74 75/* 76@media screen and (max-width: 544px) { 77.navbar > ul { 78flex-flow: row wrap; 79justify-content: center; 80} 81#commit-dialog { 82align-items: stretch; 83} 84} 85@media screen and (max-width: 512px) { 86.breadcrumbs { 87flex-flow: column nowrap; 88justify-content: center; 89height: auto; 90gap: 1em; 91} 92} 93*/ 94 95.file-icon { 96font-size: 1.25em; 97} 98 99.file-name, .commit-message { 100display: inline-block; 101white-space: nowrap; 102overflow: hidden; 103text-overflow: ellipsis; 104} 105 106.file-link { 107text-decoration: none; 108} 109 110.button { 111text-decoration: none; 112} 113 114.password-error { 115background: var(--color-error); 116color: var(--color-error-text); 117padding: 8px; 118gap: 4px; 119border-radius: 2px; 120} 121 122#username p { 123font-size: 1.5em; 124font-weight: 300; 125} 126 127.box-center { 128align-items: center; 129} 130 131#global-nav > x-hbox > a > x-hbox { 132height: 100%; 133} 134 135footer { 136background: var(--color-callout-1); 137color: var(--color-callout-1-text); 138padding: 16px; 139} 140footer a { 141color: var(--color-callout-1-text) !important; 142} 143body { 144display: flex; 145flex-flow: column; 146} 147main { 148flex: 1 0 auto; 149} 150body > footer hr { 151border-color: #ffffff80; 152margin: 8px 0; 153} 154 155.branch-icon { 156width: 2em; 157font-size: 32px; 158align-items: center; 159justify-content: center; 160display: flex; 161} 162 163dd { 164margin-left: 2em; 165} 166 167.navbar-mini { 168--height-navbar: 48px; 169} 170 171.dialog-tools { 172position: relative; 173left: 8px; 174} 175 176.thumbnail-marquee { 177height: 1.5em; 178overflow: hidden; 179position: relative; 180} 181 182.inner-thumbnail-marquee { 183position: absolute; 184width: 100%; 185height: 100%; 186overflow: visible; 187text-align: center; 188animation: marquee 3000ms linear infinite; 189} 190 191@keyframes marquee { 1920% { 193transform: translateX(200%); 194} 195100% { 196transform: translateX(-200%); 197} 198} 199 200#sidenav-trigger { 201height: 32px; 202aspect-ratio: 1/1; 203display: flex; 204align-items: center; 205justify-content: center; 206} 207 208@media screen and (min-width: 481px) { 209#sidenav-trigger { 210display: none; 211} 212#global-nav { 213padding-left: 1em; 214} 215} 216 217@media screen and (max-width: 480px) { 218#main-nav-links-desktop { 219display: none; 220} 221 222#global-nav { 223padding-left: 0.5em; 224} 225} 226 227hr { 228border-color: currentColor; 229border-width: 1px; 230margin: 1em 0; 231opacity: 0.5; 232} 233 234.state-label { 235writing-mode: vertical-lr; 236text-transform: uppercase; 237padding: 1em; 238margin: 0; 239} 240 241.state-label-2 { 242text-transform: uppercase; 243padding: 0.5em; 244margin: 0; 245} 246 247.breadcrumbs > x-buttonbox iconify-icon { 248font-size: 1.5rem; 249} 250 251.breadcrumbs > x-buttonbox > a { 252display: flex; 253align-items: center; 254} 255 256#repo-tabs > li > a { 257display: flex; 258flex-flow: row wrap; 259gap: 0.5ch; 260text-transform: uppercase; 261position: relative; 262overflow: hidden; 263padding: 4px 16px; 264} 265 266#repo-tabs > li.selected > a { 267box-shadow: inset 0 -0.25rem var(--color-accent); 268} 269 270#repo-nav { 271padding-left: 0; 272} 273 274x-buttonbox.segmented { 275box-shadow: var(--shadow-button); 276padding: 0; 277gap: 0; 278overflow: hidden; 279border-radius: var(--radius-button); 280width: fit-content; 281} 282 283x-buttonbox.segmented > * { 284border-radius: 0; 285} 286 287.vote-button:not(.selected) { 288box-shadow: none !important; 289color: inherit !important; 290background: transparent !important; 291outline: 0.1px solid #00000080; 292} 293 294.vote-button:not(.selected):hover { 295background: var(--color-flat-button-hover) !important; 296} 297 298.vote-button { 299padding: 4px; 300} 301 302.vote-score { 303min-width: 3ch; 304text-align: center; 305} 306 307.reply-area, .resolved-comments { 308box-shadow: var(--shadow-card); 309margin: var(--margin-card); 310border-radius: var(--radius-card); 311background: var(--color-card); 312color: var(--color-card-text); 313border: var(--border-card); 314overflow: hidden; /* So rounded corners can cut through the content */ 315display: flex; 316flex-flow: column nowrap; 317height: 100%; 318} 319 320.reply-area > summary, .resolved-comments > summary { 321display: flex; 322align-items: center; 323cursor: pointer; 324padding: var(--padding-card); 325padding-top: var(--padding-card-top); 326text-transform: uppercase; 327font-weight: 500; 328transition: box-shadow 250ms cubic-bezier(0.33, 1, 0.68, 1); 329} 330 331.reply-area > form { 332padding: var(--padding-card); 333padding-top: var(--padding-card-top); 334} 335 336.reply-area > summary::before, .resolved-comments > summary::before { 337content: " "; 338background-image: url("/static/efficient-ui/icons/expand.svg"); 339transform: rotate(-90deg); 340width: 1.5em; 341height: 1.5em; 342background-size: contain; 343background-repeat: no-repeat; 344transition: transform 250ms cubic-bezier(0.33, 1, 0.68, 1); 345} 346 347.reply-area[open] > summary::before, .resolved-comments[open] > summary::before { 348transform: rotate(0); 349} 350 351.reply-area[open] > summary { 352box-shadow: var(--shadow-card); 353} 354 355.post-author { 356color: inherit; 357text-decoration: inherit; 358} 359 360.post-details { 361color: var(--color-caption-text); 362} 363 364#forum-banner { 365background: var(--color-navbar); 366color: #ffffff; 367min-height: 56px; 368position: sticky; 369top: 0; 370z-index: 1; 371box-shadow: var(--shadow-navbar); 372} 373 374#forum-banner h1 { 375font-size: 1rem; 376font-weight: 600; 377} 378 379#forum-banner a, .nolink { 380color: inherit; 381text-decoration: none; 382} 383 384header { 385z-index: 2; 386} 387 388.icon-button { 389border-radius: 50%; 390aspect-ratio: 1/1; 391height: 3rem; 392width: 3rem; 393padding: 0; 394font-size: 1.5rem; 395background: transparent !important; 396box-shadow: none !important; 397} 398 399#cookie-info { 400background: var(--color-primary); 401color: var(--color-primary-text); 402align-items: center; 403justify-content: space-between; 404} 405 406#cookie-info > p { 407padding: 8px 1em; 408} 409 410.interrupt-top { 411--mask: conic-gradient(from 135deg at top, #0000, #000 0 90deg,#0000 90deg) 50%/16px 100%; 412padding-top: calc(var(--padding-code) + 8px); 413-webkit-mask: var(--mask); 414mask: var(--mask); 415} 416 417.diff-position { 418width: 100%; 419background: var(--color-code-line-number); 420color: var(--color-code-text); 421font: var(--mono-font); 422font-size: 20px; 423line-height: 24px; 424padding: 8px; 425} 426 427.code-view { 428white-space: normal; 429padding: 0; 430display: grid; 431grid-template-columns: min-content min-content; 432grid-auto-rows: min-content; 433width: 100%; 434overflow: auto; 435} 436 437.code-view > :is(code, ins, del, x-codeline) { 438white-space: pre; 439font: inherit; 440color: inherit; 441background: inherit; 442display: inline; 443padding: 0; 444margin: 0; 445width: 100%; 446padding-left: 1ch; 447} 448 449.code-view > .line-number:first-child, 450.code-view > .line-number:first-child + :is(code, ins, del, x-codeline) { 451padding-top: 1ch; 452align-items: flex-end; 453} 454 455.code-view > .line-number:nth-last-child(2), 456.code-view > :is(code, ins, del, x-codeline):last-child { 457padding-bottom: 1ch; 458align-items: flex-start; 459} 460 461.line-number { 462display: inline-block; 463box-sizing: border-box; 464text-align: right; 465padding: 0 1ch !important; 466background: var(--color-code-line-number); 467position: sticky; 468left: 0; 469user-select: none; 470font-weight: 500; 471font: var(--mono-font); 472box-shadow: none; 473width: 100%; 474border-radius: 0; 475min-height: 0; 476cursor: cell; 477} 478 479.line-number:has(+ ins) { 480background: var(--color-insertion-line-number); 481} 482 483.line-number:has(+ del) { 484background: var(--color-deletion-line-number); 485} 486 487ins, .code-view > ins { 488background: var(--color-insertion); 489color: var(--color-insertion-text); 490text-decoration: none; 491} 492 493del, .code-view > del { 494background: var(--color-deletion); 495color: var(--color-deletion-text); 496text-decoration: none; 497} 498 499strong, em { 500font: inherit; 501} 502 503.emphasis-1 { 504font-style: italic; 505} 506 507.emphasis-2 { 508font-weight: 700; 509} 510 511.emphasis-3 { 512font-style: italic; 513font-weight: 700; 514} 515 516.emphasis-4 { 517text-decoration: underline; 518} 519 520.emphasis-5 { 521text-decoration: underline; 522font-style: italic; 523} 524 525.emphasis-6 { 526text-decoration: underline; 527font-weight: 700; 528} 529 530.emphasis-7 { 531text-decoration: underline; 532font-style: italic; 533font-weight: 700; 534} 535 536#favourites-table { 537width: 100%; 538} 539 540#favourites-table > thead > tr > th:nth-child(1) { 541width: 100%; 542} 543 544#favourites-table > thead > tr > th:not(:nth-child(1)) { 545writing-mode: vertical-lr; 546} 547 548#favourites-table > tbody > tr > td:not(:nth-child(1)) { 549vertical-align: middle; 550text-align: center; 551} 552 553#favourites-table > tbody > tr > td:not(:nth-child(1)) > input { 554display: inline-flex; 555margin: 0; 556} 557 558#change-avatar-label { 559cursor: pointer; 560position: relative; 561width: max(25%, 128px); 562aspect-ratio: 1/1; 563border-radius: var(--radius-avatar); 564overflow: hidden; 565} 566 567#change-avatar-label:hover::before { 568position: absolute; 569content: attr(data-change-label); 570background: #00000080; 571color: #ffffff; 572width: 100%; 573height: 100%; 574display: flex; 575align-items: center; 576justify-content: center; 577} 578 579#pagination { 580display: flex; 581gap: 1em; 582justify-content: center; 583align-items: center; 584font-size: 1.5em; 585font-weight: 600; 586flex: 1 0 auto; 587} 588 589#pagination > a { 590text-decoration: none; 591color: var(--color-accent-1); 592} 593 594#pagination-options { 595justify-content: center; 596align-items: space-between; 597gap: 1em; 598width: 100%; 599} 600 601.comment { 602/* Span all columns */ 603grid-column: 1 / -1; 604padding: 1em; 605background: var(--color-card); 606color: var(--color-card-text); 607font: var(--body-font); 608box-shadow: var(--shadow-card); 609z-index: 2; 610border-radius: var(--radius-card); 611border: var(--border-card); 612display: flex; 613flex-flow: column nowrap; 614} 615 616.resolved-comments { 617grid-column: 1 / -1; 618font: var(--body-font); 619} 620 621small { 622font-size: 1em; /* more like LARGE :D, <small> has another semantic meaning which remains valid */ 623} 624