Project import generated by Copybara.
GitOrigin-RevId: d9e9e3fb4e31372ec1fb43b178994ca78fa8fe70
diff --git a/static/css/ph_core.css b/static/css/ph_core.css
new file mode 100644
index 0000000..c8fc43b
--- /dev/null
+++ b/static/css/ph_core.css
@@ -0,0 +1,923 @@
+/* Copyright 2016 The Chromium Authors. All Rights Reserved.
+ *
+ * Use of this source code is governed by a BSD-style
+ * license that can be found in the LICENSE file or at
+ * https://developers.google.com/open-source/licenses/bsd
+ */
+
+@charset "utf-8";
+
+body {
+ margin: 0 0 3px 0;
+ min-width: 768px;
+}
+
+#monobar {
+ background: var(--chops-primary-header-bg);
+ margin: 0;
+ padding: 0;
+}
+
+#monobar th {
+ white-space: nowrap;
+ vertical-align: middle;
+ font-weight: normal;
+}
+
+.sidebar {
+ background: var(--chops-sidebar-bg);
+ border: var(--chops-normal-border);
+ padding: 4px;
+}
+
+.padded {
+ padding: 4px 1em;
+}
+
+#monobar a#wordmark {
+ font-family: sans-serif;
+ font-variant: small-caps;
+ font-size: 140%;
+ font-weight: bold;
+ font-style: oblique;
+ color: #822;
+ letter-spacing: 1px;
+ text-decoration: none;
+}
+
+#thumbnail_box {
+ background-color: var(--chops-white);
+ vertical-align: middle;
+}
+
+#thumbnail_box a, #thumbnail_box img {
+ display: block;
+}
+
+.toptabs a:link, .toptabs a:visited {
+ color: #444;
+ padding: 0 .5em ;
+ text-decoration: none;
+}
+
+.toptabs a:hover {
+ color: var(--chops-link-color);
+ text-decoration: underline;
+}
+
+.toptabs a.active {
+ font-weight: bold;
+ color: var(--chops-black);
+ text-decoration: none;
+}
+
+#userbar {
+ text-align: right;
+}
+
+#userbar a {
+ color: var(--chops-black);
+}
+
+.subt {
+ background: var(--chops-secondary-header-bg);
+ margin: 0;
+ padding: 4px 1em;
+ border: var(--chops-normal-border);
+ border-width: 1px 0 1px 0;
+}
+
+a:link, a:focus {
+ color: var(--chops-link-color);
+}
+
+a:active {
+ color: red;
+}
+
+input[type="text"] {
+ border-color: #999 #ccc #ccc;
+ border-style: solid;
+ border-width: 1px;
+ padding: 3px 3px;
+}
+
+input[type=button], input[type=reset], input[type=submit], .buttonify {
+ font-size: 100%;
+ background: var(--chops-button-bg);
+ color: var(--chops-button-color) !important;
+
+ padding: 6.1px 10px;
+ margin-right: .6em;
+ border: var(--chops-button-border);
+ border-radius: var(--chops-button-radius);
+ box-shadow: var(--chops-shadow);
+ cursor: pointer;
+ text-decoration: none;
+}
+
+.subt input[type=button], .subt input[type=reset], .subt input[type=submit], .subt .buttonify {
+ padding: 3px 6px;
+}
+
+input[type=submit], input[type=button].primary, a.primary {
+ background: var(--chops-primary-button-bg);
+ color: var(--chops-primary-button-color) !important;
+}
+
+input[type=submit].secondary {
+ background: var(--chops-button-bg);
+ color: var(--chops-button-color) !important;
+}
+
+input[type=submit]:disabled, input[type=button]:disabled {
+ background: var(--chops-button-disabled-bg);
+ color: var(--chops-button-disabled-color) !important;
+}
+
+.button_set {
+ float: right;
+ font-size: 95%;
+ display: flex;
+ margin-left: 2em;
+ margin-bottom: 5px; /* Offsets padding lost by flex+float. */
+}
+
+@-moz-document url-prefix() {
+ .buttonify {
+ padding: 2px 3px 2px 3px;
+ }
+}
+
+input[type=button]:hover, input[type=reset]:hover, input[type=submit]:hover, .buttonify:hover {
+ border-color: #666;
+ text-decoration: none !important;
+}
+
+.choice_chip {
+ padding: 4px 10px;
+ margin-left: 6px;
+ background: var(--chops-choice-bg);
+ color: var(--chops-choice-color);
+ border-radius: 50vh;
+ text-decoration: none;
+}
+
+.active_choice {
+ background: var(--chops-active-choice-bg);
+ color: var(--chops-active-choice-color);
+ font-weight: var(--chops-link-font-weight);
+}
+
+a.choice_chip, a.choice_chip:visited {
+ color: var(--chops-choice-color);
+}
+
+input[type=button]:active, input[type=reset]:active, input[type=submit]:active,
+input.primary:active, .buttonify:active {
+ background: var(--chops-gray-600);
+ color: var(--chops-white) !important;
+}
+
+textarea {
+ border-color: #999 #ccc #ccc;
+ border-style: solid;
+ border-width: 1px;
+}
+
+td td, th th, th td, td th {
+ font-size: 100%;
+}
+
+form {
+ padding: 0;
+ margin: 0;
+}
+
+.hidden {
+ display: none !important;
+}
+
+/* Project tab bar. */
+.gtb {
+ background: var(--chops-white);
+ border-bottom: 1px solid #ccc;
+ padding: 5px 10px 0 5px;
+ white-space: nowrap;
+}
+
+.user_bar {
+ cursor: pointer;
+ float: right;
+ margin: 5px 15px 6px 10px;
+}
+
+.gtb .gtbc {
+ clear: left;
+}
+
+table {
+ border-collapse: separate;
+}
+
+.nowrap { white-space: nowrap; }
+.nowrapspan span { white-space: nowrap; }
+.derived { font-style: italic; }
+
+.bubble_bg {
+ background: #eee;
+ margin-bottom: 0.6em;
+}
+
+.bubble {
+ padding: 4px;
+}
+
+#bub {
+ padding: 0 1px 0 1px;
+}
+
+.bub-top {
+ margin: 0 2px 2px;
+}
+
+.bub-bottom {
+ margin: 2px 2px 0;
+}
+
+.drop-down-bub {
+ font-size: 80%;
+ margin-top: -1px;
+}
+
+
+h4 {
+ color: #222;
+ font-size: 16pt;
+ margin: .4em;
+ padding: 0;
+}
+
+.section {
+ margin: 0 4px 1.6em 4px;
+ padding:4px;
+}
+.section .submit {
+ margin: 8px;
+}
+
+#maincol {
+ padding:4px;
+ background: var(--chops-page-bg);
+}
+
+.isf a, .at a, .isf a:visited, .at a:visited {
+ color: var(--chops-link-color);
+ text-decoration: none;
+}
+
+.at span {
+ margin-right: 1em;
+ white-space: nowrap;
+}
+
+.isf a:hover, .at a:hover {
+ color: var(--chops-link-color);
+ text-decoration: underline;
+}
+
+.at {
+ padding-top: 6px;
+ padding-bottom: 3px;
+}
+
+.st1 .inst1 a,
+.st2 .inst2 a,
+.st3 .inst3 a,
+.st4 .inst4 a,
+.st5 .inst5 a,
+.st6 .inst6 a,
+.st7 .inst7 a,
+.st8 .inst8 a,
+.st9 .inst9 a {
+ color: var(--chops-black);
+ font-weight: bold;
+ text-decoration: none;
+}
+
+.notice, .error {
+ font-weight: bold;
+ padding: 4px 16px;
+ border-radius: 4px;
+}
+
+.notice {
+ background: var(--chops-notice-bubble-bg);
+}
+
+.error {
+ background: var(--chops-error-bubble-bg);
+}
+
+.adminonly {
+ color: #a00;
+ font-style: italic;
+}
+
+.fielderror {
+ color: var(--chops-field-error-color);
+ font-weight: bold;
+ padding: 4px;
+}
+
+.tip, .help {
+ background: var(--chops-help-bubble-bg);
+ font-size: 92%;
+ margin: 5px;
+ padding: 6px;
+ border-radius: 6px;
+}
+
+.tip {
+ width: 14em;
+}
+
+.help {
+ width: 44em;
+}
+
+.x_icon::before {
+ content: "\00D7";
+}
+
+.x_icon {
+ text-decoration: none;
+ font-size: 130%;
+ color: #444 !important;
+ padding: 0 2px;
+ vertical-align:middle;
+}
+
+.x_icon:active {
+ color: var(--chops-white) !important;
+ background: #444;
+}
+
+/* Google standard */
+.gbh {
+ border-top: 1px solid #C9D7F1;
+ font-size: 1px;
+ height: 0;
+ position: absolute;
+ top: 24px;
+ width: 100%;
+}
+
+#pname {
+ font-size:300%;
+ margin: 0;
+ padding: 0;
+}
+
+#pname a,
+#pname a:visited {
+ text-decoration:none;
+ color: #666;
+}
+
+#project_summary_link {
+ text-decoration: none;
+ color: #444;
+}
+
+.vt td,
+.vt th,
+.vt {
+ vertical-align: top;
+}
+
+.indicator {
+ font-size: x-small;
+ color: var(--chops-link-color);
+}
+
+div.h4, table.h4 {
+ background-color: var(--chops-secondary-header-bg);
+ margin-bottom: 2px;
+ padding: 2px;
+ font-weight: bold;
+ position: relative;
+ margin-top: 2px;
+}
+
+.mainhdr {
+ background-color: #ebeff9;
+ border-bottom: 1px solid #6b90da;
+ font-weight: bold;
+ font-size: 133%;
+ padding: 2px;
+}
+
+.secondaryhdr {
+ background-color: #eee;
+ padding: 10px;
+ border-bottom: 1px solid #ddd;
+ border-left: 1px solid #ddd;
+ border-right: 1px solid #ddd;
+}
+
+h1 {
+ font-size: x-large;
+ margin-top: 0px;
+}
+
+h2 {
+ font-size: large;
+}
+
+h3 {
+ font-size: medium;
+ background: #eee;
+ padding: 0.5ex 0.5em 0.5ex 0.5em;
+ margin-right: 2em;
+}
+
+img {
+ border: 0;
+}
+
+#user_bar {
+ text-align: right;
+ margin-bottom: 10px;
+}
+
+#user_bar a {
+ color: var(--chops-link-color);
+ text-decoration: none;
+}
+
+#header {
+ position: relative;
+ height: 55px;
+ padding-top: 6px;
+ margin-bottom: -9px;
+}
+
+#title {
+ margin-left: 171px;
+ background-color: #eee;
+ font-size: large;
+ font-weight: bold;
+ padding-left: 3px;
+ padding-top: 1px;
+ padding-bottom: 1px;
+}
+
+.label { text-decoration: none; color: green !important; }
+.label:hover { text-decoration: underline; }
+
+.fieldvalue { text-decoration: none; }
+.fieldvalue:hover { text-decoration: underline; }
+
+.fieldvalue_url {
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ overflow: hidden;
+}
+.fieldvalue_url:after {
+ content: "\A";
+ white-space: pre;
+}
+
+#colcontrol {
+ padding: 5px;
+}
+
+.cue {
+ margin-top: -4px;
+ padding: 1px;
+ background: var(--chops-notice-bubble-bg);
+ border: 1px solid #f0c36d;
+}
+.cue td span {
+ font-size: 85%;
+ text-align: center;
+ padding: 0 1em;
+}
+
+.results tr td { border-bottom: var(--chops-table-divider); }
+.resultstable tr td { border-bottom: var(--chops-table-divider); }
+
+.results th, .results_lite th {
+ background: var(--chops-table-header-bg);
+ text-align: left;
+ padding: 3px;
+ border: 0;
+ border-right: 1px solid var(--chops-white);
+}
+.results th:last-child { border-right: 0; }
+
+.results th a, .results th a:visited {
+ color: var(--chops-link-color);
+ padding-right: 4px;
+ margin-right: 4px;
+}
+.results td { cursor: pointer }
+.results td { padding: 6px; }
+.results td a { color: var(--chops-black); text-decoration: none; }
+#project_list .results td { padding: 18px; }
+#project_list table.results td.id { text-align: left; }
+
+.results td.id a,
+.results td.project a,
+.results td.url a { color: var(--chops-link-color); white-space: nowrap; }
+.results td.id a:visited,
+.results td.project a:visited,
+.results td.url a:visited { color: purple; }
+.results td.id a:hover, .results td.project a:hover, .results td.url a:hover { color: red; text-decoration: underline; }
+table.results .hoverTarget:hover a { color: #009; }
+.results .label { font-size: 80% }
+.results .selected { background-color: var(--chops-selected-bg); }
+.results td tt { color: #999; font-style: italic; font-weight: bold; }
+.results .displayproperties { font-size: 80%; color: #666; }
+
+.results .grid .gridtile tr { border: 0; }
+.results .grid .gridtile td { border: 0; }
+
+.comptable.all .comprow { display: table-row; }
+.comptable.active .comprow { display: none; }
+.comptable.active .comprow.active { display: table-row; }
+.comptable.toplevel .comprow { display: none; }
+.comptable.toplevel .comprow.toplevel { display: table-row; }
+.comptable.toplevel .comprow.toplevel.deprecated { display: none; }
+.comptable.myadmin .comprow { display: none; }
+.comptable.myadmin .comprow.myadmin { display: table-row; }
+.comptable.mycc .comprow { display: none; }
+.comptable.mycc .comprow.mycc { display: table-row; }
+.comptable.deprecated .comprow { display: none; }
+.comptable.deprecated .comprow.deprecated { display: table-row; }
+
+/* The revision flipper. */
+.flipper { font-family: monospace; font-size: 120%; }
+.flipper ul { list-style-type: none; padding: 0; margin: 0em 0.3em; }
+.flipper b { margin: 0em 0.3em; }
+
+.closed .ifOpened { display: none }
+.closed .opened span.ifOpened { display: inline }
+.opened .ifClosed { display: none }
+.opened .closed span.ifClosed { display: inline }
+
+a.star {
+ text-decoration: none;
+ cursor: pointer;
+ display: inline-block;
+ font-size: 18px;
+}
+
+a.spamflag {
+ text-decoration: none;
+ cursor: pointer;
+}
+
+.h3 {
+ font-size: 130%;
+ font-weight: bolder;
+}
+input { padding-left: 1px; padding-right: 1px; }
+textarea { padding-left: 1px; padding-right: 1px; }
+
+.pagination { font-size: 100%; float: right; white-space: nowrap; }
+.pagination a { margin-left: 0.3em; margin-right: 0.3em; }
+
+.author { margin-bottom: 1em; }
+
+#searchtips { padding-left: 2em; }
+#searchtips p { margin-left: 2em; }
+
+.issueList .inIssueList span,
+.issueAdvSearch .inIssueAdvSearch a,
+.issueSearchTips .inIssueSearchTips a {
+ font-weight: bold;
+ text-decoration: none;
+ color: var(--chops-black);
+}
+
+iframe[frameborder="1"] {
+ border: 1px solid #999;
+}
+
+/* For project menu */
+.menuDiv {
+ margin-top: 5px;
+ border-color: #C9D7F1 #3366CC #3366CC #A2BAE7;
+ border-style: solid;
+ border-width: 1px;
+ z-index: 1001;
+ padding: 0;
+ width: 175px;
+ background: var(--chops-white);
+ overflow: hidden;
+}
+.menuDiv .menuText {
+ padding: 3px;
+ text-decoration: none;
+ background: var(--chops-white);
+}
+.menuDiv .menuItem {
+ color: var(--chops-link-color);
+ padding: 3px;
+ text-decoration: none;
+ background: var(--chops-white);
+}
+.menuDiv .menuItem:hover {
+ color: var(--chops-white);
+ background: #3366CC;
+}
+.menuDiv .categoryTitle {
+ padding-left: 1px;
+}
+.menuDiv .menuCategory,
+.menuDiv .categoryTitle {
+ margin-top: 4px;
+}
+.menuDiv .menuSeparator {
+ margin: 0 0.5em;
+ border: 0;
+ border-top: 1px solid #C9D7F1;
+}
+
+.hostedBy {
+ text-align: center;
+ vertical-align: center;
+}
+
+.fullscreen-popup {
+ position: fixed;
+ right: 4%;
+ left: 4%;
+ top: 5%;
+ max-height: 90%;
+ opacity: 0.85;
+ -moz-opacity: 0.85;
+ -khtml-opacity: 0.85;
+ filter: alpha(opacity=85);
+ -moz-border-radius: 10px;
+
+ background: var(--chops-black);
+ color: var(--chops-white);
+ text-shadow: var(--chops-black) 1px 1px 7px;
+
+ padding: 1em;
+ z-index: 10;
+ overflow-x: hidden;
+ overflow-y: hidden;
+}
+
+/* Make links on this dark background a lighter blue. */
+.fullscreen-popup a {
+ color: #dd0;
+}
+
+div#keys_help th {
+ color: yellow;
+ text-align: left;
+}
+
+div#keys_help td {
+ font-weight: normal;
+ color: var(--chops-white);
+}
+
+td.shortcut {
+ text-align: right;
+}
+
+span.keystroke {
+ color: #8d0;
+ font-family: monospace;
+ font-size: medium;
+}
+
+.list {
+ background-color:var(--chops-white);
+ padding: 5px;
+}
+
+.list-foot {
+ background-color:var(--chops-white);
+ padding: 5px;
+ height: 20px;
+}
+
+.graytext {
+ color: #666;
+}
+
+.vspacer {
+ margin-top: 1em;
+}
+
+.hspacer {
+ margin-right: 1em;
+}
+
+.emphasis {
+ font-weight: bold;
+}
+
+.formrow {
+ vertical-align: top;
+ padding-bottom: .569em;
+ white-space: nowrap;
+ overflow: hidden;
+ padding-top: .2em;
+}
+
+.forminline {
+ display: inline-block;
+ vertical-align: top;
+}
+
+.formlabelgutter {
+ margin-top: 0.3em;
+ text-align: right;
+ vertical-align: top;
+ white-space: normal;
+ width: 13em;
+}
+
+.formlabel {
+ font-weight: bold;
+ text-align: right;
+}
+
+.forminputgutter {
+ margin-top: 0.3em;
+ text-align: left;
+ vertical-align: top;
+ white-space: normal;
+ width: 36em;
+}
+
+.forminput {
+ width: 100%;
+}
+
+.formshortinput {
+ width: 11em;
+}
+
+.formselectgutter {
+ margin-top: 0.3em;
+ text-align: left;
+ vertical-align: top;
+ white-space: normal;
+ width: 18em;
+}
+
+.formselect {
+ width: 18em;
+}
+
+.formqm {
+ margin-left: 0.25em;
+ margin-right: 0.25em;
+}
+
+.formerror {
+ color: #a00;
+ display: block;
+ text-align: left;
+}
+
+.tablerow {
+ vertical-align: top;
+ padding-bottom: .569em;
+ white-space: nowrap;
+ overflow: hidden;
+ padding-top: .2em;
+}
+
+.tablelabelgutter {
+ margin-top: 0.3em;
+ text-align: left;
+ vertical-align: top;
+ white-space: normal;
+ width: 10em;
+}
+
+.tablelabel {
+ font-weight: bold;
+ text-align: left;
+}
+
+/* Gecko */
+html>body .goog-inline-block {
+ display: -moz-inline-box; /* This is ignored by FF3 and later*/
+ display: inline-block; /* This is ignored by pre-FF3 Gecko */
+}
+
+/* Default rule */
+.goog-inline-block {
+ position: relative;
+ display: inline-block;
+}
+
+/* Pre-IE7 */
+* html .goog-inline-block {
+ display: inline;
+}
+
+/* IE7 */
+*:first-child+html .goog-inline-block {
+ display: inline;
+}
+
+#popular {
+ border: solid silver;
+ border-width: 1px 0 1px 0;
+ padding: 0.3em;
+ width: 40em;
+}
+
+#popular table {
+ width: 40em;
+}
+
+#popular td {
+ padding: 2px;
+ white-space: nowrap;
+}
+
+#intro {
+ background:#ada;
+ margin: 3em;
+ width: 52em;
+}
+
+.userlink_avail {
+ display: inline-block;
+ white-space: nowrap;
+}
+
+.availability_none {
+ font-weight: bold;
+ color: #FF1744;
+}
+
+.availability_unsure {
+ font-weight: bold;
+ color: #EF6C00;
+}
+
+.availability_never {
+ font-weight: bold;
+ color: #6A1B9A;
+}
+
+.availability_banned {
+ font-weight: bold;
+ color: var(--chops-black);
+}
+
+/* Just for screen readers. */
+.visually_hidden {
+ border: 0;
+ clip: rect(0 0 0 0);
+ height: 1px;
+ margin: -1px;
+ overflow: hidden;
+ padding: 0;
+ position: absolute;
+ width: 1px;
+}
+
+.not_styled_as_heading {
+ font-size: inherit !important;
+ font-weight: inherit !important;
+ display: inline !important;
+ background: inherit !important;
+ border: none !important;
+ padding: 0 !important;
+ margin: 0 !important;
+}
+
+/* Launch gates table. */
+
+#launch-gates-table {
+ border-collapse: collapse;
+}
+#launch-gates-table td, #launch-gates-table th {
+ border: 1px solid #ddd;
+ padding: 4px;
+}
+#launch-gates-table tr:nth-child(even){background-color: #f2f2f2;}
+
+#launch-gates-table th {
+ text-align: left;
+ background-color: #6ec5ff;
+}
+
+input.unlink_account, input.incoming_invite {
+ font-size: 80%;
+}