_common.scss 20 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028
  1. // If you are using IntelliJ Rider, you can simply turn on the SCSS compiler, otherwise here is how to convert scss to uss
  2. // # Install Sass
  3. // gem install sass
  4. //
  5. // # Convert
  6. // sass --sourcemap=none --style=expanded --scss --no-cache Main_Dark.scss Main_Dark.uss
  7. // sass --sourcemap=none --style=expanded --scss --no-cache Main_Light.scss Main_Light.uss
  8. //
  9. // # Watch
  10. // sass --watch --sourcemap=none --style=expanded --scss --no-cache Main_Light.scss:Main_Light.uss Main_Dark.scss:Main_Dark.uss
  11. //
  12. // Sass to Uss Notes
  13. // - Sass converts rgb(0,0,0) to css 'black'. Uss doesn't support named colors. The workaround is to set the color in sass as #000000
  14. //
  15. // Uss Notes
  16. // Runtime\UIElements\Managed\StyleSheets\StyleSheetCache.cs:50 to see which properties are available (until there is a doc)
  17. //--------------------------------------------------------------------------------------------------
  18. // Helper Mixins
  19. //--------------------------------------------------------------------------------------------------
  20. @mixin border($top, $right, $bottom, $left) {
  21. @if $top != 'auto' {border-top-width: $top;}
  22. @if $left != 'auto' {border-left-width: $right;}
  23. @if $bottom != 'auto' {border-bottom-width: $bottom;}
  24. @if $right != 'auto' {border-right-width: $left;}
  25. }
  26. @mixin border-box($width: 1) {
  27. @include border($width, $width, $width, $width);
  28. }
  29. @mixin padding($top, $right, $bottom, $left) {
  30. @if $top != 'auto' {padding-top: $top;}
  31. @if $left != 'auto' {padding-left: $left;}
  32. @if $bottom != 'auto' {padding-bottom: $bottom;}
  33. @if $right != 'auto' {padding-right: $right;}
  34. }
  35. @mixin padding-box($size) {
  36. @include padding($size, $size, $size, $size);
  37. }
  38. @mixin margin($top, $right, $bottom, $left) {
  39. @if $top != 'auto' {margin-top: $top;}
  40. @if $left != 'auto' {margin-left: $left;}
  41. @if $bottom != 'auto' {margin-bottom: $bottom;}
  42. @if $right != 'auto' {margin-right: $right;}
  43. }
  44. @mixin margin-box($size) {
  45. @include margin($size, $size, $size, $size);
  46. }
  47. @mixin slice($top, $right, $bottom, $left) {
  48. @if $top != 'auto' {-unity-slice-top: $top;}
  49. @if $left != 'auto' {-unity-slice-left: $left;}
  50. @if $bottom != 'auto' {-unity-slice-bottom: $bottom;}
  51. @if $right != 'auto' {-unity-slice-right: $right;}
  52. }
  53. @mixin slice-box($size) {
  54. @include slice($size, $size, $size, $size);
  55. }
  56. @mixin position($top, $right, $bottom, $left) {
  57. @if $top != 'auto' {top: $top;}
  58. @if $left != 'auto' {left: $left;}
  59. @if $bottom != 'auto' {bottom: $bottom;}
  60. @if $right != 'auto' {right: $right;}
  61. }
  62. @mixin text-clip() {
  63. overflow: hidden;
  64. }
  65. @mixin selected-element() {
  66. background-color: $unity-list-selected-background;
  67. color: $unity-text-color-highlight;
  68. }
  69. @mixin active-tab() {
  70. background-color: $unity-background-dark-contrast;
  71. color: $unity-text-color-highlight;
  72. }
  73. @mixin inactive-tab() {
  74. background-color: $unity-background-light-contrast;
  75. color: $unity-text-color;
  76. }
  77. @mixin button($top, $right, $bottom, $left) {
  78. flex: 0 0 auto;
  79. @include padding($top, $right, $bottom, $left);
  80. @include slice(4, 6, 4, 6);
  81. &.display-none {
  82. position: absolute;
  83. border-radius: 0;
  84. width: 0;
  85. height: 0;
  86. min-height: 0;
  87. max-height: 0;
  88. min-width: 0;
  89. max-width: 0;
  90. border-top-width: 0;
  91. border-left-width: 0;
  92. border-bottom-width: 0;
  93. border-right-width: 0;
  94. min-width: 0;
  95. @include border-box(0);
  96. @include padding-box(0);
  97. @include margin-box(0);
  98. @include slice-box(0);
  99. visibility: hidden;
  100. }
  101. &:hover {
  102. color: $unity-text-color;
  103. }
  104. }
  105. @mixin button-box($size) {
  106. @include button($size, $size, $size, $size);
  107. }
  108. //--------------------------------------------------------------------------------------------------
  109. // Font
  110. //--------------------------------------------------------------------------------------------------
  111. @mixin font-small() {
  112. font-size: 9;
  113. }
  114. @mixin font-normal() {
  115. font-size: 12;
  116. }
  117. //--------------------------------------------------------------------------------------------------
  118. // Styles
  119. //--------------------------------------------------------------------------------------------------
  120. #container {
  121. -unity-position: absolute;
  122. @include position(0, 0, 0, 0);
  123. }
  124. .display-none {
  125. position: absolute;
  126. overflow: hidden;
  127. border-radius: 0;
  128. width: 0;
  129. height: 0;
  130. min-height: 0;
  131. max-height: 0;
  132. min-width: 0;
  133. max-width: 0;
  134. border-top-width: 0;
  135. border-left-width: 0;
  136. border-bottom-width: 0;
  137. border-right-width: 0;
  138. @include border-box(0);
  139. @include padding-box(0);
  140. @include margin-box(0);
  141. }
  142. .row {
  143. flex: 1 0 0;
  144. flex-direction: row;
  145. }
  146. .column {
  147. flex: 1 0 0;
  148. flex-direction: column;
  149. }
  150. .tag {
  151. @include border-box(1);
  152. @include padding(1, 3, 1, 3);
  153. @include font-small();
  154. border-radius: 5;
  155. -unity-text-align: middle-center;
  156. border-color: #000000;
  157. color: #000000;
  158. }
  159. $spinner-large-size: 32;
  160. $spinner-large-half-size: 16;
  161. $spinner-normal-size: 14;
  162. $spinner-normal-half-size: 7;
  163. $toolbar-height: 18;
  164. #toolbarContainer {
  165. flex: 0 0 auto;
  166. flex-direction: row;
  167. align-items: flex-start;
  168. height: $toolbar-height;
  169. #toolbarView {
  170. flex: 1 0 0;
  171. flex-direction: row;
  172. align-items: flex-start;
  173. background-image: $toolbar-background;
  174. margin-top: -1;
  175. @include slice(1, 1, 1, 1);
  176. .toolbarButton {
  177. flex: 1 0 0;
  178. font-size: 9;
  179. -unity-text-align: middle-center;
  180. background-image: $toolbar-button-background;
  181. @include button-box(0);
  182. @include margin(0, -1, 0, 0);
  183. @include padding(0, 5, 0, 5);
  184. height: 19;
  185. &.space {
  186. margin-left: 7;
  187. }
  188. &.active {
  189. background-image: $toolbar-button-active-background;
  190. }
  191. &.pulldown {
  192. &:active {
  193. background-image: $toolbar-button-background;
  194. }
  195. }
  196. }
  197. #toolbarLeft {
  198. flex: 0 0 auto;
  199. flex-direction: row;
  200. align-items: flex-start;
  201. }
  202. #toolbarRight {
  203. flex: 1 0 0;
  204. flex-direction: row;
  205. justify-content: flex-end;
  206. #toolbarSearch {
  207. flex: 1 0 0;
  208. height: $toolbar-height;
  209. max-width: 500;
  210. flex-direction: row;
  211. @include margin(0, 5, 0, 0);
  212. }
  213. }
  214. }
  215. }
  216. #searchContainer {
  217. flex: 1 0 0;
  218. flex-direction: row;
  219. align-items: center;
  220. justify-content: flex-start;
  221. height: 14;
  222. @include margin(0, 0, 0, 0);
  223. #searchTextField {
  224. flex: 1 0 0;
  225. font-size: 9;
  226. background-image: $toolbar-search-textfield-background;
  227. @include margin(2, 5, 1, 5);
  228. @include padding(2, 17, 1, 17);
  229. @include slice(1, 0, 1, 14);
  230. height: 14;
  231. &:focus {
  232. background-image: $toolbar-search-textfield-focus-background;
  233. }
  234. &.placeholder {
  235. color: $unity-background-dark-contrast;
  236. }
  237. }
  238. #searchCancelButton {
  239. width: 14;
  240. height: 15;
  241. background-image: $toolbar-search-cancel-off-background;
  242. @include button-box(0);
  243. @include slice(1, 14, 1, 0);
  244. @include margin(3, 0, 2, -10);
  245. @include padding-box(0);
  246. @include border-box(0);
  247. &.on {
  248. background-image: $toolbar-search-cancel-background;
  249. }
  250. &:active {
  251. background-image: $toolbar-search-cancel-active-background;
  252. }
  253. }
  254. }
  255. #detailListView {
  256. flex: 1 0 0;
  257. flex-direction: row;
  258. .link {
  259. color: $link-text-color;
  260. background: rgba(0, 0, 0, 0);
  261. background-image: none;
  262. @include margin-box(0);
  263. @include padding-box(0);
  264. cursor: link;
  265. }
  266. .emptyArea {
  267. flex: 1 0 0;
  268. @extend .column;
  269. .title {
  270. -unity-text-align: middle-center;
  271. font-size: 14;
  272. }
  273. .loading {
  274. -unity-position: relative;
  275. @include position($spinner-normal-half-size, auto, auto, $spinner-normal-half-size);
  276. @include border-box(0);
  277. @include padding-box(0);
  278. @include margin-box(0);
  279. @include slice-box(0);
  280. width: $spinner-normal-size;
  281. height: $spinner-normal-size;
  282. max-width: $spinner-normal-size;
  283. max-height: $spinner-normal-size;
  284. }
  285. }
  286. #headerTitle {
  287. flex: 1 0 0;
  288. font-size: 12;
  289. color: $unity-text-color;
  290. }
  291. #spinnerContainer {
  292. -unity-position: absolute;
  293. @include position(3, 0, auto, 2);
  294. width: 14;
  295. flex: 0.1 0 0;
  296. flex-direction: column;
  297. align-items: center;
  298. }
  299. .loading {
  300. -unity-position: relative;
  301. @include position($spinner-normal-half-size, auto, auto, $spinner-normal-half-size);
  302. @include border-box(0);
  303. @include padding-box(0);
  304. @include margin-box(0);
  305. @include slice-box(0);
  306. width: $spinner-normal-size;
  307. height: $spinner-normal-size;
  308. max-width: $spinner-normal-size;
  309. max-height: $spinner-normal-size;
  310. }
  311. .combo {
  312. @extend .row;
  313. @include margin-box(3);
  314. @include padding-box(3);
  315. .popup {
  316. @include padding(0, 0, 0, 8);
  317. @include margin-box(0);
  318. border-top-width-left-radius: 0;
  319. border-bottom-width-left-radius: 0;
  320. }
  321. .button {
  322. flex: 1 0 0; // Make buttons take all the parent's free space
  323. @include font-normal();
  324. @include border-box(0);
  325. @include margin-box(0);
  326. @include padding(2, 6, 3, 6);
  327. @include slice(4, $background-button-slice-middle, 4, $background-button-slice-middle);
  328. -unity-text-align: middle-center;
  329. border-left-width: 0;
  330. border-top-width: 0;
  331. border-right-width: 0;
  332. border-bottom-width: 0;
  333. background-image: $background-mid-button;
  334. border-top-width-right-radius: 0;
  335. border-bottom-width-right-radius: 0;
  336. border-top-width-left-radius: 0;
  337. border-bottom-width-left-radius: 0;
  338. &.selected {
  339. background-image: $background-mid-button-selected;
  340. color: $unity-text-color-highlight;
  341. }
  342. &.first {
  343. @include slice(4, $background-button-slice-right, 4, 6);
  344. background-image: $background-left-button;
  345. &.selected {
  346. background-image: $background-left-button-selected;
  347. }
  348. }
  349. &.last {
  350. @include slice(4, 6, 4, $background-button-slice-left);
  351. background-image: $background-right-button;
  352. &.selected {
  353. background-image: $background-right-button-selected;
  354. }
  355. }
  356. &.small {
  357. flex: 0.5 0 0;
  358. @include padding(0, 0, 0, 0);
  359. }
  360. }
  361. }
  362. //--------------------------------------------------------------------------------------------------
  363. // Package List
  364. //--------------------------------------------------------------------------------------------------
  365. #packageListGroup {
  366. width: 270;
  367. #listContainerOuter {
  368. @extend .column;
  369. }
  370. #groupContainerOuter {
  371. #headerContainer {
  372. flex: 1 0 0;
  373. flex-direction: row;
  374. align-items: center;
  375. border-color: rgba(0,0,0, 0.5);
  376. background-color: $group-background-color;
  377. border-bottom-width: 1px;
  378. #headerCaret {
  379. flex: 0 0 auto;
  380. font-size: 10px;
  381. -unity-font-style: bold;
  382. color: $caret-text-color;
  383. width: 16px;
  384. @include padding(3, 0, 3, 5);
  385. }
  386. #headerTitle {
  387. color: $group-text-color;
  388. @include margin-box(0);
  389. @include padding(3, 0, 3, 2);
  390. @include border-box(0);
  391. }
  392. &.hidden {
  393. height: 0;
  394. width: 0;
  395. }
  396. }
  397. #groupContainer {
  398. @include margin(0, 0, 0, 0);
  399. }
  400. }
  401. #packageList, #listContainer, #listGroups {
  402. @extend .column;
  403. }
  404. #scrollView {
  405. @extend .column;
  406. #VerticalScroller {
  407. bottom: 0;
  408. }
  409. #HorizontalScroller {
  410. height: 0;
  411. }
  412. #ContentViewport {
  413. bottom: 0;
  414. #ContentView {
  415. right: 0;
  416. left: 0;
  417. }
  418. }
  419. }
  420. #noResult {
  421. #noResultText {
  422. -unity-word-wrap: true;
  423. }
  424. }
  425. }
  426. //--------------------------------------------------------------------------------------------------
  427. // Package Item
  428. //--------------------------------------------------------------------------------------------------
  429. PackageGroup.collapsed {
  430. PackageItem.unselected {
  431. position: absolute;
  432. overflow: hidden;
  433. border-radius: 0;
  434. width: 0;
  435. height: 0;
  436. min-height: 0;
  437. max-height: 0;
  438. min-width: 0;
  439. max-width: 0;
  440. border-top-width: 0;
  441. border-left-width: 0;
  442. border-bottom-width: 0;
  443. border-right-width: 0;
  444. @include border-box(0);
  445. @include padding-box(0);
  446. @include margin-box(0);
  447. }
  448. }
  449. PackageItem.selected {
  450. .package {
  451. @include selected-element();
  452. #packageName, #packageVersion {
  453. color: $unity-text-color-highlight;
  454. }
  455. }
  456. }
  457. .package {
  458. flex: 1 0 0;
  459. flex-direction: row;
  460. align-items: center;
  461. @include margin(0, 0, 0, 0);
  462. border-color: rgba(0,0,0, 0.5);
  463. border-bottom-width: 1;
  464. .status {
  465. flex: 0 0 14;
  466. width: 14;
  467. height: 14;
  468. @include margin(auto, 0, auto, 2);
  469. &.installed {
  470. background-image: $installed-package-background;
  471. &.no-icon {
  472. background-image: none;
  473. }
  474. }
  475. &.outdated {
  476. background-image: $background-status-outdated;
  477. &.no-icon {
  478. background-image: none;
  479. }
  480. }
  481. &.inprogress {
  482. background-image: none;
  483. }
  484. &.error {
  485. background-image: $background-status-error;
  486. }
  487. }
  488. .name {
  489. flex: 1 0 0;
  490. @include font-normal();
  491. @include margin(auto, 5, auto, 0);
  492. @include text-clip();
  493. }
  494. .version {
  495. flex: 0 0 auto;
  496. @include margin(auto, 5, auto, 0);
  497. @include font-small;
  498. }
  499. }
  500. //--------------------------------------------------------------------------------------------------
  501. // Package Details
  502. //--------------------------------------------------------------------------------------------------
  503. #detailsGroup {
  504. flex: 1 0 0;
  505. border-left-width: 1px;
  506. border-color: rgba(0,0,0, 0.5);
  507. #detailsContainer {
  508. flex: 1 0 0;
  509. flex-direction: column;
  510. -unity-position: relative;
  511. }
  512. }
  513. #detailView {
  514. flex: 1 0 0;
  515. #VerticalScroller {
  516. bottom: 0;
  517. }
  518. #ContentViewport {
  519. #ContentView {
  520. -unity-position: absolute;
  521. @include position(0, 0, auto, 0);
  522. }
  523. }
  524. .detail {
  525. flex: 1 0 0;
  526. flex-direction: column;
  527. @include padding-box(5);
  528. .header {
  529. flex: 1 0 0;
  530. flex-direction: row;
  531. align-items: flex-start;
  532. margin-bottom: 8;
  533. #titleContainer {
  534. flex: 0.9 0 0;
  535. #detailTitle {
  536. font-size: 18;
  537. -unity-font-style: bold;
  538. -unity-word-wrap: true;
  539. @include margin(0, 0, 0, 4);
  540. }
  541. }
  542. $controls-height: 19;
  543. #detailsControls {
  544. flex: 1 0 0;
  545. height: $controls-height;
  546. flex-direction: row;
  547. align-items: center;
  548. flex-wrap: wrap;
  549. @include margin(3, 0, 0, 0);
  550. }
  551. #updateCombo {
  552. flex: 1 0 0;
  553. height: $controls-height;
  554. align-items: center;
  555. @include margin(0, 0, 0, 0);
  556. @include padding(0, 0, 0, 0);
  557. #update {
  558. flex: 0 0 auto;
  559. }
  560. #updateDropdownContainer {
  561. min-width: 65;
  562. max-width: 150;
  563. height: $controls-height;
  564. flex: 0 0 auto;
  565. .popup {
  566. @include font-normal();
  567. height: $controls-height;
  568. &:focus {
  569. background-image: $popup-background;
  570. }
  571. &:hover {
  572. .textElement {
  573. color: $unity-text-color;
  574. }
  575. }
  576. .textElement {
  577. margin-top: 2;
  578. }
  579. }
  580. }
  581. .action {
  582. flex: 0 0 auto;
  583. @include margin-box(0);
  584. @include font-normal();
  585. @include padding(2, 4, 3, 4);
  586. right: -3;
  587. &:hover {
  588. color: $unity-text-color;
  589. }
  590. }
  591. }
  592. #updateContainer {
  593. height: $controls-height;
  594. flex: 1 0 0;
  595. align-items: flex-end;
  596. @include padding-box(0);
  597. }
  598. .button {
  599. height: $controls-height;
  600. @include font-normal();
  601. @include button(3,3,4,3);
  602. }
  603. }
  604. #detailVersion {
  605. font-size: 16;
  606. max-height: 30;
  607. }
  608. #detailName {
  609. flex: 1 0 0;
  610. max-height: 20;
  611. -unity-font-style: italic;
  612. }
  613. #detailPackageStatus {
  614. flex: 1 0 0;
  615. -unity-font-style: bold;
  616. -unity-word-wrap: true;
  617. }
  618. #detailTag {
  619. width: 60;
  620. @include font-normal();
  621. border-radius: 5;
  622. border-color: rgb(180, 180, 180);
  623. @include border-box(2);
  624. -unity-text-align: middle-center;
  625. }
  626. #detailDesc, #detailModuleReference {
  627. flex: 1 0 0;
  628. @include font-normal();
  629. -unity-word-wrap: true;
  630. &.empty {
  631. -unity-font-style: italic;
  632. }
  633. }
  634. #detailAuthor {
  635. flex: 1 0 0;
  636. @include font-normal();
  637. -unity-word-wrap: true;
  638. }
  639. #detailWarning {
  640. flex: 1 0 0;
  641. flex-direction: row;
  642. text-color: #BDBDBD;
  643. background-color: rgba(96, 96, 96, 0.20);
  644. @include border-box(1);
  645. @include margin(4, auto, 4, auto);
  646. border-color: #232323;
  647. #warningIcon
  648. {
  649. flex: auto 0 0;
  650. background-image: $background-info;
  651. min-width: 30;
  652. min-height: 30;
  653. max-width: 30;
  654. max-height: 30;
  655. @include margin(4, 4, 4, 4);
  656. }
  657. #warningMessage
  658. {
  659. flex: 1 0 0;
  660. flex-direction: column;
  661. Label {
  662. @include margin(4, auto, 0, auto);
  663. -unity-word-wrap: true;
  664. @include font-normal();
  665. }
  666. Button {
  667. @include margin(0, auto, 4, auto);
  668. -unity-text-align: middle-left;
  669. @include font-small();
  670. }
  671. }
  672. }
  673. #detailCategory {
  674. flex: 1 0 0;
  675. @include font-normal();
  676. -unity-word-wrap: true;
  677. @include margin(auto, auto, 5, auto);
  678. }
  679. #changeLogContainer, #viewLicensesContainer {
  680. flex: 0 0 auto;
  681. flex-direction: row;
  682. }
  683. #detailActions, .detailActions {
  684. flex: 0 0 auto;
  685. flex-direction: row;
  686. margin-left: 2;
  687. @extend .row;
  688. .detailAction {
  689. @include margin(auto, 0, auto, 0);
  690. @include padding(auto, 2, auto, 2);
  691. border-left-width: 2;
  692. border-right-width: 2;
  693. }
  694. .detailActionSeparator {
  695. @include margin(auto, 0, auto, 0);
  696. @include padding(auto, 0, auto, 0);
  697. border-left-width: 0;
  698. border-right-width: 0;
  699. }
  700. #thirdPartyNoticeLabel {
  701. @include margin(4, 0, 4, 0);
  702. @include padding-box(0);
  703. -unity-word-wrap: true;
  704. }
  705. #viewThirdParty {
  706. border-right-width: 0;
  707. }
  708. }
  709. .versionContainer {
  710. @extend .row;
  711. align-items: center;
  712. justify-content: flex-start;
  713. #detailVersion {
  714. flex: 0 0 auto;
  715. }
  716. }
  717. .tag {
  718. border-color: $package-tag-color;
  719. color: $package-tag-color;
  720. &.verified {
  721. border-color: $package-tag-recommended-color;
  722. color: $package-tag-recommended-color;
  723. }
  724. }
  725. .tagLines {
  726. }
  727. .tagLine {
  728. flex: 0 0 auto;
  729. flex-direction: row;
  730. }
  731. .tagContainer {
  732. }
  733. }
  734. }
  735. #detailError {
  736. -unity-position: absolute;
  737. @include position(5, 5, auto, 5);
  738. min-height: 200;
  739. -unity-word-wrap: true;
  740. &.display-none {
  741. @include position(0, 0, 0, 0);
  742. width: 0;
  743. height: 0;
  744. min-height: 0;
  745. max-height: 0;
  746. @include border-box(0);
  747. @include padding-box(0);
  748. @include margin-box(0);
  749. }
  750. }
  751. #packageStatusBar {
  752. -unity-position: relative;
  753. flex: 0 0 auto;
  754. @include margin(2, 0, 0, 0);
  755. border-color: rgba(0, 0, 0, 0.5);
  756. @include border(1, 0, 0, 0);
  757. }
  758. #statusBarContainer {
  759. flex-direction: row;
  760. align-items: center;
  761. justify-content: space-between;
  762. #loadingContainer{
  763. flex-direction: row;
  764. align-items: center;
  765. justify-content: flex-start;
  766. margin-left: 2;
  767. #loadingIcon {
  768. background-image: $background-status-error;
  769. width: 16;
  770. height: 16;
  771. margin-left: -12;
  772. margin-right: 0;
  773. }
  774. #loadingText {
  775. padding-left: 2;
  776. -unity-font-style: italic;
  777. &.icon {
  778. margin-left: 0;
  779. }
  780. }
  781. }
  782. #moreAddOptionsButton {
  783. font-size: 16;
  784. background-image: none;
  785. @include margin(0, 0, -2, 0);
  786. @include padding(3, 6, 6, 6);
  787. border-color: rgba(0, 0, 0, 0.5);
  788. @include border(0, 1, 0, 0);
  789. }
  790. }
  791. #packageAddFromUrlField {
  792. -unity-position: absolute;
  793. @include position(-35, 0, 0, 0);
  794. }
  795. #addFromUrlFieldContainer {
  796. border-color: rgba(0, 0, 0, 0.5);
  797. @include border(1, 0, 1, 0);
  798. flex-direction: row;
  799. justify-content: space-between;
  800. align-items: center;
  801. height: 35;
  802. background-color: $unity-background;
  803. #urlTextField {
  804. flex: 1 0 0;
  805. height: 20;
  806. -unity-text-align: middle-left;
  807. }
  808. #addFromUrlButton {
  809. flex: 0 0 auto;
  810. height: 20;
  811. }
  812. }
  813. }
  814. .alert {
  815. background-color: rgba(200,0,0,0.8);
  816. border-color: #FF0000;
  817. flex-direction: row;
  818. @include border-box(1);
  819. @include padding(5, 10, 5, 10);
  820. #alertMessage {
  821. flex: 1 0 0;
  822. color: $unity-text-color-highlight;
  823. -unity-word-wrap: true;
  824. @include text-clip();
  825. }
  826. #close {
  827. flex: 0 0 auto;
  828. max-height: 30;
  829. @include position(auto, auto, auto, 5);
  830. @include button(3,3,4,3);
  831. }
  832. }
  833. .spinner {
  834. flex: 0 0 auto;
  835. @include position(-$spinner-normal-half-size, auto, auto, -$spinner-normal-half-size);
  836. min-width: $spinner-normal-size;
  837. min-height: $spinner-normal-size;
  838. max-width: $spinner-normal-size;
  839. max-height: $spinner-normal-size;
  840. background-image: $background-spinner-normal;
  841. }
  842. .largeSpinner {
  843. flex: 0 0 auto;
  844. @include position(-$spinner-large-half-size, auto, auto, -$spinner-large-half-size);
  845. min-width: $spinner-large-size;
  846. min-height: $spinner-large-size;
  847. max-width: $spinner-large-size;
  848. max-height: $spinner-large-size;
  849. background-image: $background-spinner-large;
  850. }