The code powering m.abunchtell.com https://m.abunchtell.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

700 lines
12 KiB

  1. $no-columns-breakpoint: 600px;
  2. $sidebar-width: 240px;
  3. $content-width: 840px;
  4. .admin-wrapper {
  5. display: flex;
  6. justify-content: center;
  7. height: 100%;
  8. .sidebar-wrapper {
  9. flex: 1 1 $sidebar-width;
  10. height: 100%;
  11. background: $ui-base-color;
  12. display: flex;
  13. justify-content: flex-end;
  14. }
  15. .sidebar {
  16. width: $sidebar-width;
  17. height: 100%;
  18. padding: 0;
  19. overflow-y: auto;
  20. .logo {
  21. display: block;
  22. margin: 40px auto;
  23. width: 100px;
  24. height: 100px;
  25. }
  26. @media screen and (max-width: $no-columns-breakpoint) {
  27. & > a:first-child {
  28. display: none;
  29. }
  30. }
  31. ul {
  32. list-style: none;
  33. border-radius: 4px 0 0 4px;
  34. overflow: hidden;
  35. margin-bottom: 20px;
  36. @media screen and (max-width: $no-columns-breakpoint) {
  37. margin-bottom: 0;
  38. }
  39. a {
  40. display: block;
  41. padding: 15px;
  42. color: $darker-text-color;
  43. text-decoration: none;
  44. transition: all 200ms linear;
  45. border-radius: 4px 0 0 4px;
  46. i.fa {
  47. margin-right: 5px;
  48. }
  49. &:hover {
  50. color: $primary-text-color;
  51. background-color: darken($ui-base-color, 5%);
  52. transition: all 100ms linear;
  53. }
  54. &.selected {
  55. background: darken($ui-base-color, 2%);
  56. border-radius: 4px 0 0;
  57. }
  58. }
  59. ul {
  60. background: darken($ui-base-color, 4%);
  61. border-radius: 0 0 0 4px;
  62. margin: 0;
  63. a {
  64. border: 0;
  65. padding: 15px 35px;
  66. }
  67. }
  68. .simple-navigation-active-leaf a {
  69. color: $primary-text-color;
  70. background-color: $ui-highlight-color;
  71. border-bottom: 0;
  72. border-radius: 0;
  73. &:hover {
  74. background-color: lighten($ui-highlight-color, 5%);
  75. }
  76. }
  77. }
  78. & > ul > .simple-navigation-active-leaf a {
  79. border-radius: 4px 0 0 4px;
  80. }
  81. }
  82. .content-wrapper {
  83. flex: 2 1 $content-width;
  84. overflow: auto;
  85. }
  86. .content {
  87. max-width: $content-width;
  88. padding: 20px 15px;
  89. padding-top: 60px;
  90. padding-left: 25px;
  91. @media screen and (max-width: $no-columns-breakpoint) {
  92. max-width: none;
  93. padding: 15px;
  94. padding-top: 30px;
  95. }
  96. h2 {
  97. color: $secondary-text-color;
  98. font-size: 24px;
  99. line-height: 28px;
  100. font-weight: 400;
  101. padding-bottom: 40px;
  102. border-bottom: 1px solid lighten($ui-base-color, 8%);
  103. margin-bottom: 40px;
  104. }
  105. h3 {
  106. color: $secondary-text-color;
  107. font-size: 20px;
  108. line-height: 28px;
  109. font-weight: 400;
  110. margin-bottom: 30px;
  111. }
  112. h4 {
  113. text-transform: uppercase;
  114. font-size: 13px;
  115. font-weight: 700;
  116. color: $darker-text-color;
  117. padding-bottom: 8px;
  118. margin-bottom: 8px;
  119. border-bottom: 1px solid lighten($ui-base-color, 8%);
  120. }
  121. h6 {
  122. font-size: 16px;
  123. color: $secondary-text-color;
  124. line-height: 28px;
  125. font-weight: 400;
  126. }
  127. .fields-group h6 {
  128. color: $primary-text-color;
  129. font-weight: 500;
  130. }
  131. .directory__tag > a,
  132. .directory__tag > div {
  133. box-shadow: none;
  134. }
  135. .directory__tag .table-action-link .fa {
  136. color: inherit;
  137. }
  138. .directory__tag h4 {
  139. font-size: 18px;
  140. font-weight: 700;
  141. color: $primary-text-color;
  142. text-transform: none;
  143. padding-bottom: 0;
  144. margin-bottom: 0;
  145. border-bottom: none;
  146. }
  147. & > p {
  148. font-size: 14px;
  149. line-height: 18px;
  150. color: $secondary-text-color;
  151. margin-bottom: 20px;
  152. strong {
  153. color: $primary-text-color;
  154. font-weight: 500;
  155. @each $lang in $cjk-langs {
  156. &:lang(#{$lang}) {
  157. font-weight: 700;
  158. }
  159. }
  160. }
  161. }
  162. hr {
  163. width: 100%;
  164. height: 0;
  165. border: 0;
  166. border-bottom: 1px solid rgba($ui-base-lighter-color, .6);
  167. margin: 20px 0;
  168. &.spacer {
  169. height: 1px;
  170. border: 0;
  171. }
  172. }
  173. .muted-hint {
  174. color: $darker-text-color;
  175. a {
  176. color: $highlight-text-color;
  177. }
  178. }
  179. .positive-hint {
  180. color: $valid-value-color;
  181. font-weight: 500;
  182. }
  183. .negative-hint {
  184. color: $error-value-color;
  185. font-weight: 500;
  186. }
  187. }
  188. @media screen and (max-width: $no-columns-breakpoint) {
  189. display: block;
  190. overflow-y: auto;
  191. -webkit-overflow-scrolling: touch;
  192. .sidebar-wrapper,
  193. .content-wrapper {
  194. flex: 0 0 auto;
  195. height: auto;
  196. overflow: initial;
  197. }
  198. .sidebar {
  199. width: 100%;
  200. padding: 0;
  201. height: auto;
  202. }
  203. }
  204. }
  205. .filters {
  206. display: flex;
  207. flex-wrap: wrap;
  208. .filter-subset {
  209. flex: 0 0 auto;
  210. margin: 0 40px 10px 0;
  211. &:last-child {
  212. margin-bottom: 20px;
  213. }
  214. ul {
  215. margin-top: 5px;
  216. list-style: none;
  217. li {
  218. display: inline-block;
  219. margin-right: 5px;
  220. }
  221. }
  222. strong {
  223. font-weight: 500;
  224. text-transform: uppercase;
  225. font-size: 12px;
  226. @each $lang in $cjk-langs {
  227. &:lang(#{$lang}) {
  228. font-weight: 700;
  229. }
  230. }
  231. }
  232. a {
  233. display: inline-block;
  234. color: $darker-text-color;
  235. text-decoration: none;
  236. text-transform: uppercase;
  237. font-size: 12px;
  238. font-weight: 500;
  239. border-bottom: 2px solid $ui-base-color;
  240. &:hover {
  241. color: $primary-text-color;
  242. border-bottom: 2px solid lighten($ui-base-color, 5%);
  243. }
  244. &.selected {
  245. color: $highlight-text-color;
  246. border-bottom: 2px solid $ui-highlight-color;
  247. }
  248. }
  249. }
  250. }
  251. .report-accounts {
  252. display: flex;
  253. flex-wrap: wrap;
  254. margin-bottom: 20px;
  255. }
  256. .report-accounts__item {
  257. display: flex;
  258. flex: 250px;
  259. flex-direction: column;
  260. margin: 0 5px;
  261. & > strong {
  262. display: block;
  263. margin: 0 0 10px -5px;
  264. font-weight: 500;
  265. font-size: 14px;
  266. line-height: 18px;
  267. color: $secondary-text-color;
  268. @each $lang in $cjk-langs {
  269. &:lang(#{$lang}) {
  270. font-weight: 700;
  271. }
  272. }
  273. }
  274. .account-card {
  275. flex: 1 1 auto;
  276. }
  277. }
  278. .report-status,
  279. .account-status {
  280. display: flex;
  281. margin-bottom: 10px;
  282. .activity-stream {
  283. flex: 2 0 0;
  284. margin-right: 20px;
  285. max-width: calc(100% - 60px);
  286. .entry {
  287. border-radius: 4px;
  288. }
  289. }
  290. }
  291. .report-status__actions,
  292. .account-status__actions {
  293. flex: 0 0 auto;
  294. display: flex;
  295. flex-direction: column;
  296. .icon-button {
  297. font-size: 24px;
  298. width: 24px;
  299. text-align: center;
  300. margin-bottom: 10px;
  301. }
  302. }
  303. .simple_form.new_report_note,
  304. .simple_form.new_account_moderation_note {
  305. max-width: 100%;
  306. }
  307. .batch-form-box {
  308. display: flex;
  309. flex-wrap: wrap;
  310. margin-bottom: 5px;
  311. #form_status_batch_action {
  312. margin: 0 5px 5px 0;
  313. font-size: 14px;
  314. }
  315. input.button {
  316. margin: 0 5px 5px 0;
  317. }
  318. .media-spoiler-toggle-buttons {
  319. margin-left: auto;
  320. .button {
  321. overflow: visible;
  322. margin: 0 0 5px 5px;
  323. float: right;
  324. }
  325. }
  326. }
  327. .back-link {
  328. margin-bottom: 10px;
  329. font-size: 14px;
  330. a {
  331. color: $highlight-text-color;
  332. text-decoration: none;
  333. &:hover {
  334. text-decoration: underline;
  335. }
  336. }
  337. }
  338. .spacer {
  339. flex: 1 1 auto;
  340. }
  341. .log-entry {
  342. margin-bottom: 20px;
  343. line-height: 20px;
  344. &__header {
  345. display: flex;
  346. justify-content: flex-start;
  347. align-items: center;
  348. padding: 10px;
  349. background: $ui-base-color;
  350. color: $darker-text-color;
  351. border-radius: 4px 4px 0 0;
  352. font-size: 14px;
  353. position: relative;
  354. }
  355. &__avatar {
  356. margin-right: 10px;
  357. .avatar {
  358. display: block;
  359. margin: 0;
  360. border-radius: 50%;
  361. width: 40px;
  362. height: 40px;
  363. }
  364. }
  365. &__content {
  366. max-width: calc(100% - 90px);
  367. }
  368. &__title {
  369. word-wrap: break-word;
  370. }
  371. &__timestamp {
  372. color: $dark-text-color;
  373. }
  374. &__extras {
  375. background: lighten($ui-base-color, 6%);
  376. border-radius: 0 0 4px 4px;
  377. padding: 10px;
  378. color: $darker-text-color;
  379. font-family: $font-monospace, monospace;
  380. font-size: 12px;
  381. word-wrap: break-word;
  382. min-height: 20px;
  383. }
  384. &__icon {
  385. font-size: 28px;
  386. margin-right: 10px;
  387. color: $dark-text-color;
  388. }
  389. &__icon__overlay {
  390. position: absolute;
  391. top: 10px;
  392. right: 10px;
  393. width: 10px;
  394. height: 10px;
  395. border-radius: 50%;
  396. &.positive {
  397. background: $success-green;
  398. }
  399. &.negative {
  400. background: lighten($error-red, 12%);
  401. }
  402. &.neutral {
  403. background: $ui-highlight-color;
  404. }
  405. }
  406. a,
  407. .username,
  408. .target {
  409. color: $secondary-text-color;
  410. text-decoration: none;
  411. font-weight: 500;
  412. }
  413. .diff-old {
  414. color: lighten($error-red, 12%);
  415. }
  416. .diff-neutral {
  417. color: $secondary-text-color;
  418. }
  419. .diff-new {
  420. color: $success-green;
  421. }
  422. }
  423. a.name-tag,
  424. .name-tag,
  425. a.inline-name-tag,
  426. .inline-name-tag {
  427. text-decoration: none;
  428. color: $secondary-text-color;
  429. .username {
  430. font-weight: 500;
  431. }
  432. &.suspended {
  433. .username {
  434. text-decoration: line-through;
  435. color: lighten($error-red, 12%);
  436. }
  437. .avatar {
  438. filter: grayscale(100%);
  439. opacity: 0.8;
  440. }
  441. }
  442. }
  443. a.name-tag,
  444. .name-tag {
  445. display: flex;
  446. align-items: center;
  447. .avatar {
  448. display: block;
  449. margin: 0;
  450. margin-right: 5px;
  451. border-radius: 50%;
  452. }
  453. &.suspended {
  454. .avatar {
  455. filter: grayscale(100%);
  456. opacity: 0.8;
  457. }
  458. }
  459. }
  460. .speech-bubble {
  461. margin-bottom: 20px;
  462. border-left: 4px solid $ui-highlight-color;
  463. &.positive {
  464. border-left-color: $success-green;
  465. }
  466. &.negative {
  467. border-left-color: lighten($error-red, 12%);
  468. }
  469. &.warning {
  470. border-left-color: $gold-star;
  471. }
  472. &__bubble {
  473. padding: 16px;
  474. padding-left: 14px;
  475. font-size: 15px;
  476. line-height: 20px;
  477. border-radius: 4px 4px 4px 0;
  478. position: relative;
  479. font-weight: 500;
  480. a {
  481. color: $darker-text-color;
  482. }
  483. }
  484. &__owner {
  485. padding: 8px;
  486. padding-left: 12px;
  487. }
  488. time {
  489. color: $dark-text-color;
  490. }
  491. }
  492. .report-card {
  493. background: $ui-base-color;
  494. border-radius: 4px;
  495. margin-bottom: 20px;
  496. &__profile {
  497. display: flex;
  498. justify-content: space-between;
  499. align-items: center;
  500. padding: 15px;
  501. .account {
  502. padding: 0;
  503. border: 0;
  504. &__avatar-wrapper {
  505. margin-left: 0;
  506. }
  507. }
  508. &__stats {
  509. flex: 0 0 auto;
  510. font-weight: 500;
  511. color: $darker-text-color;
  512. text-transform: uppercase;
  513. text-align: right;
  514. a {
  515. color: inherit;
  516. text-decoration: none;
  517. &:focus,
  518. &:hover,
  519. &:active {
  520. color: lighten($darker-text-color, 8%);
  521. }
  522. }
  523. .red {
  524. color: $error-value-color;
  525. }
  526. }
  527. }
  528. &__summary {
  529. &__item {
  530. display: flex;
  531. justify-content: flex-start;
  532. border-top: 1px solid darken($ui-base-color, 4%);
  533. &:hover {
  534. background: lighten($ui-base-color, 2%);
  535. }
  536. &__reported-by,
  537. &__assigned {
  538. padding: 15px;
  539. flex: 0 0 auto;
  540. box-sizing: border-box;
  541. width: 150px;
  542. color: $darker-text-color;
  543. &,
  544. .username {
  545. white-space: nowrap;
  546. overflow: hidden;
  547. text-overflow: ellipsis;
  548. }
  549. }
  550. &__content {
  551. flex: 1 1 auto;
  552. max-width: calc(100% - 300px);
  553. &__icon {
  554. color: $dark-text-color;
  555. margin-right: 4px;
  556. font-weight: 500;
  557. }
  558. }
  559. &__content a {
  560. display: block;
  561. box-sizing: border-box;
  562. width: 100%;
  563. padding: 15px;
  564. text-decoration: none;
  565. color: $darker-text-color;
  566. }
  567. }
  568. }
  569. }
  570. .one-line {
  571. white-space: nowrap;
  572. overflow: hidden;
  573. text-overflow: ellipsis;
  574. }
  575. .ellipsized-ip {
  576. display: inline-block;
  577. max-width: 120px;
  578. overflow: hidden;
  579. text-overflow: ellipsis;
  580. vertical-align: middle;
  581. }