Change general design theme

This commit is contained in:
Jesús
2020-12-14 23:44:29 -05:00
parent 9d0be82e74
commit 7a765dc664
30 changed files with 5448 additions and 1526 deletions

557
youtube/static/channel.css Normal file
View File

@@ -0,0 +1,557 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.author-container {
display: grid;
grid-template-columns: 1fr;
margin: auto;
grid-template-areas:
"author"
"summary"
"subscribe";
}
.author {
grid-area: author;
display: grid;
grid-template-columns: 100px 1fr;
grid-column-gap: 1rem;
align-items: center;
justify-self: center;
}
.summary { grid-area: summary; }
.summary p {
text-align: center;
}
.subscribe {
grid-area: subscribe;
justify-self: center;
}
.subscribe .btn-subscribe {
background-color: var(--buttom);
color: var(--buttom-text);
text-shadow: none;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
border: none;
border-radius: 0.2rem;
}
/* Video list item */
.video-container {
display: grid;
grid-row-gap: 0.5rem;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.item-video.channel-item {
border-radius: 50%;
width: 150px;
height: 150px;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.playlist-item .thumbnail-info {
position: absolute;
right: 0px;
bottom: 0px;
height: 100%;
width: 50%;
text-align: center;
white-space: pre-line;
opacity: .8;
color: var(--text);
font-size: 0.8125rem;
background: var(--secondary-background);
padding: 0;
}
.playlist-item .thumbnail-info span {
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
text-transform: none;
}
.thumbnail-img {
margin: auto;
display: block;
max-height: 100%;
max-width: 100%;
}
.info-box {
grid-area: info-box;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto auto auto auto;
grid-gap: 1px;
grid-template-areas:
"."
"."
"."
"."
".";
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
.horizontal-stats {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.horizontal-stats > li {
display: inline;
}
.horizontal-stats > li:first-child::after {
content: " | ";
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.author-container {
max-width: 50vw;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

View File

@@ -1,148 +1,283 @@
.video-metadata{
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
h1, h2, h3, h4, h5, h6, div, button {
margin: 0;
padding: 0;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
border-radius: 5px;
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
margin: 0 auto;
max-width: 80ch;
}
/* comments */
.comments-area {
display: grid;
grid-row-gap: 0.5rem;
}
.comments-area textarea {
resize: vertical;
}
.video-metadata {
display: grid;
grid-template-columns: auto 1fr;
grid-column-gap: 0.5rem;
grid-template-rows: auto auto 1fr auto;
grid-template-areas:
"video-metadata-thumbnail-box ."
"video-metadata-thumbnail-box ."
"video-metadata-thumbnail-box .";
}
.video-metadata > .video-metadata-thumbnail-box{
grid-row: 1 / span 3;
}
.video-metadata > .title{
word-wrap:break-word;
grid-row: 1;
}
.video-metadata > h2{
grid-row: 2;
font-size: 0.875rem;
}
.video-metadata > span{
grid-row:3;
}
.video-metadata > hr{
grid-row: 4;
grid-column: 1 / span 2;
width: 100%;
}
.comment-form{
.video-metadata > h2 {
font-size: 0.875rem;
}
.video-metadata-thumbnail-box {
grid-area: video-metadata-thumbnail-box;
}
.comment-form {
display: grid;
align-content: start;
justify-items: start;
align-items: start;
grid-row-gap: 0.5rem;
}
#comment-account-options{
display:grid;
grid-auto-flow: column;
grid-column-gap: 10px;
margin-top:10px;
margin-bottom:10px;
}
#comment-account-options a{
margin-left:10px;
}
.comments-area{
display:grid;
.post-comment-button {
justify-self: end;
}
.comments-area textarea{
resize: vertical;
justify-self:stretch;
}
.post-comment-button{
margin-top:10px;
justify-self:end;
}
.comment-links{
display:grid;
grid-auto-flow: column;
grid-column-gap: 10px;
justify-content:start;
}
.comments{
margin-top:10px;
grid-row-gap: 10px;
.comments {
display: grid;
align-content:start;
grid-row-gap: 0.5rem;
}
.comment{
display:grid;
grid-template-columns: auto auto 100px 1fr;
grid-template-rows: 0fr 0fr 0fr 0fr;
background-color: var(--interface-color);
justify-content: start;
}
.comment .author-avatar{
grid-column: 1;
grid-row: 1 / span 3;
align-self: start;
margin-right: 5px;
height:32px;
width:32px;
}
.comment .author-avatar-img{
max-height: 100%;
}
.comment address{
grid-column: 2;
grid-row: 1;
margin-right:15px;
white-space: nowrap;
overflow:hidden;
}
.comment .text{
grid-column: 2 / span 3;
grid-row: 2;
white-space: pre-wrap;
min-width: 0;
word-wrap: break-word;
}
.comment .permalink{
grid-column: 3;
grid-row: 1;
white-space: nowrap;
}
.comment .likes{
grid-column:2;
grid-row:3;
font-weight:bold;
white-space: nowrap;
}
.comment .bottom-row{
grid-column:2 / span 3;
grid-row:4;
justify-self:start;
.comment {
display: grid;
grid-auto-flow: column;
grid-column-gap: 10px;
grid-template-columns: repeat(3, auto) 3fr;
grid-template-rows: repeat(4, auto);
grid-column-gap: 0.4rem;
grid-template-areas:
"author-avatar author-name permalink permalink"
"author-avatar comment-text comment-text comment-text"
". comment-likes comment-likes comment-likes"
". button-row button-row button-row";
background: var(--secondary-background);
}
details.replies > summary{
background-color: var(--interface-color);
border-style: outset;
border-width: 1px;
font-weight: bold;
padding-bottom: 0px;
}
.author-avatar { grid-area: author-avatar; }
.author-name { grid-area: author-name; }
.permalink { grid-area: permalink; }
.comment-text { grid-area: comment-text; }
.comment-likes { grid-area: comment-likes; }
.button-row { grid-area: button-row; }
.replies-open-new-tab{
display: inline-block;
margin-top: 5px;
}
details.replies .comment{
width: 600px;
}
.more-comments{
justify-self:center;
margin-top:10px;
.more-comments {
justify-self: center;
margin-top: 10px;
margin-bottom: 10px;
background: var(--secondary-background);
padding: 5px;
/* disable text selection */
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 780px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
position: absolute;
}
}

View File

@@ -1,39 +1,17 @@
body{
--interface-color: #333333;
--text-color: #cccccc;
--background-color: #000000;
--video-background-color: #080808;
:root {
--background: #121212;
--text: #FFF;
--secondary-hover: #73828c;
--secondary-focus: #616161;
--secondary-inverse: #FFF;
--secondary-background: #424242;
--link: #22aaff;
--link-visited: #7755ff;
--buttom: #dcdcdb;
--buttom-text: #415462;
--button-border: #91918c;
--buttom-hover: #BBB;
--search-text: #FFF;
--time-background: #000;
--time-text: #FFF;
}
a:link {
color: #22aaff;
}
a:visited {
color: #7755ff;
}
a:not([href]){
color: var(--text-color);
}
.comment .permalink{
color: #ffffff;
}
.setting-item{
background-color: #444444;
}
.muted{
background-color: #111111;
color: gray;
}
.muted a:link {
color: #10547f;
}

View File

@@ -1,18 +1,17 @@
body{
--interface-color: #dadada;
--text-color: #222222;
--background-color: #bcbcbc;
--video-background-color: #dadada;
}
.comment .permalink{
color: #000000;
}
.setting-item{
background-color: #eeeeee;
}
.muted{
background-color: #888888;
:root {
--background: #2d3743;
--text: #FFF;
--secondary-hover: #73828c;
--secondary-focus: rgba(115, 130, 140, 0.125);
--secondary-inverse: #FFF;
--secondary-background: #102027;
--link: #22aaff;
--link-visited: #7755ff;
--buttom: #dcdcdb;
--buttom-text: #415462;
--button-border: #91918c;
--buttom-hover: #BBB;
--search-text: #FFF;
--time-background: #000;
--time-text: #FFF;
}

197
youtube/static/home.css Normal file
View File

@@ -0,0 +1,197 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
border-radius: 5px;
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
margin: 0 auto;
max-width: 80ch;
}
.code-error {
background: var(--secondary-background);
padding: 1rem;
}
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 780px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
position: absolute;
}
}

View File

@@ -1,19 +1,17 @@
body{
--interface-color: #ffffff;
--text-color: #222222;
--background-color: #f8f8f8;
--video-background-color: #ffffff;
:root {
--background: #FAFAFA;
--text: #415462;
--secondary-hover: #415462;
--secondary-focus: rgba(115, 130, 140, 0.125);
--secondary-inverse: #FFF;
--secondary-background: #eeeeee;
--link: #22aaff;
--link-visited: #7755ff;
--buttom: #dcdcdb;
--buttom-text: #415462;
--button-border: #91918c;
--buttom-hover: #BBB;
--search-text: #415462;
--time-background: #000;
--time-text: #FFF;
}
.comment .permalink{
color: #000000;
}
.setting-item{
background-color: #f8f8f8;
}
.muted{
background-color: #888888;
}

View File

@@ -0,0 +1,527 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.playlist-metadata {
display: grid;
grid-template-columns: 1fr;
margin: auto;
grid-template-areas:
"play-title"
"play-action";
}
.play-title {
grid-area: play-title;
text-align: center;
}
.play-action {
grid-area: play-action;
}
/* Video list item */
.video-container {
display: grid;
grid-row-gap: 0.5rem;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.playlist-item .thumbnail-info {
position: absolute;
right: 0px;
bottom: 0px;
height: 100%;
width: 50%;
text-align: center;
white-space: pre-line;
opacity: .8;
color: var(--text);
font-size: 0.8125rem;
background: var(--secondary-background);
padding: 0;
}
.playlist-item .thumbnail-info span {
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
text-transform: none;
}
.thumbnail-img {
margin: auto;
display: block;
max-height: 100%;
max-width: 100%;
}
.info-box {
grid-area: info-box;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto auto auto auto;
grid-gap: 1px;
grid-template-areas:
"."
"."
"."
"."
".";
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
.horizontal-stats {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.horizontal-stats > li {
display: inline;
}
.horizontal-stats > li:first-child::after {
content: " | ";
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.playlist-metadata {
max-width: 50vw;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

349
youtube/static/normalize.css vendored Normal file
View File

@@ -0,0 +1,349 @@
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
line-height: 1.15; /* 1 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
========================================================================== */
/**
* Remove the margin in all browsers.
*/
body {
margin: 0;
}
/**
* Render the `main` element consistently in IE.
*/
main {
display: block;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/* Grouping content
========================================================================== */
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/* Text-level semantics
========================================================================== */
/**
* Remove the gray background on active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* 1. Remove the bottom border in Chrome 57-
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/* Embedded content
========================================================================== */
/**
* Remove the border on images inside links in IE 10.
*/
img {
border-style: none;
}
/* Forms
========================================================================== */
/**
* 1. Change the font styles in all browsers.
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
font-family: inherit; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
}
/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input { /* 1 */
overflow: visible;
}
/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select { /* 1 */
text-transform: none;
}
/**
* Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Correct the padding in Firefox.
*/
fieldset {
padding: 0.35em 0.75em 0.625em;
}
/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
* `fieldset` elements in all browsers.
*/
legend {
box-sizing: border-box; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}
/**
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
vertical-align: baseline;
}
/**
* Remove the default vertical scrollbar in IE 10+.
*/
textarea {
overflow: auto;
}
/**
* 1. Add the correct box sizing in IE 10.
* 2. Remove the padding in IE 10.
*/
[type="checkbox"],
[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Remove the inner padding in Chrome and Safari on macOS.
*/
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/* Interactive
========================================================================== */
/*
* Add the correct display in Edge, IE 10+, and Firefox.
*/
details {
display: block;
}
/*
* Add the correct display in all browsers.
*/
summary {
display: list-item;
}
/* Misc
========================================================================== */
/**
* Add the correct display in IE 10+.
*/
template {
display: none;
}
/**
* Add the correct display in IE 10.
*/
[hidden] {
display: none;
}

537
youtube/static/playlist.css Normal file
View File

@@ -0,0 +1,537 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.playlist-metadata {
display: grid;
grid-template-columns: 1fr;
margin: auto;
grid-template-areas:
"author"
"summary"
"playlist-stats";
}
.author {
grid-area: author;
display: grid;
grid-template-columns: 100px 1fr;
grid-column-gap: 1rem;
align-items: center;
justify-self: center;
}
.summary {
grid-area: summary;
justify-self: start;
}
.playlist-stats {
grid-area: playlist-stats;
justify-self: start;
}
/* Video list item */
.video-container {
display: grid;
grid-row-gap: 0.5rem;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.playlist-item .thumbnail-info {
position: absolute;
right: 0px;
bottom: 0px;
height: 100%;
width: 50%;
text-align: center;
white-space: pre-line;
opacity: .8;
color: var(--text);
font-size: 0.8125rem;
background: var(--secondary-background);
padding: 0;
}
.playlist-item .thumbnail-info span {
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
text-transform: none;
}
.thumbnail-img {
margin: auto;
display: block;
max-height: 100%;
max-width: 100%;
}
.info-box {
grid-area: info-box;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto auto auto auto;
grid-gap: 1px;
grid-template-areas:
"."
"."
"."
"."
".";
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
.horizontal-stats {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.horizontal-stats > li {
display: inline;
}
.horizontal-stats > li:first-child::after {
content: " | ";
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.playlist-metadata {
max-width: 50vw;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

495
youtube/static/search.css Normal file
View File

@@ -0,0 +1,495 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.result-info {
justify-self: center;
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* Video list item */
.video-container {
display: grid;
grid-row-gap: 0.5rem;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.item-video.channel-item .thumbnail.channel {
padding: 0px;
text-align: center;
}
.item-video.channel-item .thumbnail-img.channel {
width: 56.25%;
position: relative;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.playlist-item .thumbnail-info {
position: absolute;
right: 0px;
bottom: 0px;
height: 100%;
width: 50%;
text-align: center;
white-space: pre-line;
opacity: .8;
color: var(--text);
font-size: 0.8125rem;
background: var(--secondary-background);
padding: 0;
}
.playlist-item .thumbnail-info span {
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
text-transform: none;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
.horizontal-stats > li {
display: inline;
}
.horizontal-stats > li:first-child::after {
content: " | ";
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

241
youtube/static/settings.css Normal file
View File

@@ -0,0 +1,241 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
border-radius: 5px;
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
margin: 0 auto;
width: 100%;
}
.settings-form {
background-color: var(--secondary-background);
padding: 1rem;
}
.settings-list {
display: grid;
grid-row-gap: 1rem;
list-style: none;
padding: 0px;
}
.setting-item {
display: grid;
grid-template-columns: auto auto;
background-color: var(--secondary-focus);
align-items: center;
padding: 5px;
}
.setting-item select {
max-width: 100%;
justify-self: end;
}
.setting-item input {
max-width: 80px;
justify-self: end;
}
.settings-form input[type="submit"] {
cursor: pointer;
}
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 780px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
position: absolute;
background: var(--background);
padding-right: 4rem;
}
.main {
display: grid;
justify-content: center;
}
.settings-form {
width: 50vw;
}
.setting-item select {
max-width: 250px;
}
.setting-item input {
max-width: 250px;
}
}

View File

@@ -0,0 +1,530 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.sidebar-links {
display: grid;
grid-template-columns: 1fr;
margin: auto;
grid-template-areas:
"sidebar-title"
"sidebar-action";
align-items: center;
justify-items: center;
justify-content: center;
}
.sidebar-title {
grid-area: sidebar-title;
text-align: center;
}
.sidebar-action {
grid-area: sidebar-action;
}
/* Video list item */
.video-container {
display: grid;
grid-row-gap: 0.5rem;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.playlist-item .thumbnail-info {
position: absolute;
right: 0px;
bottom: 0px;
height: 100%;
width: 50%;
text-align: center;
white-space: pre-line;
opacity: .8;
color: var(--text);
font-size: 0.8125rem;
background: var(--secondary-background);
padding: 0;
}
.playlist-item .thumbnail-info span {
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
text-transform: none;
}
.thumbnail-img {
margin: auto;
display: block;
max-height: 100%;
max-width: 100%;
}
.info-box {
grid-area: info-box;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto auto auto auto;
grid-gap: 1px;
grid-template-areas:
"."
"."
"."
"."
".";
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
.horizontal-stats {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.horizontal-stats > li {
display: inline;
}
.horizontal-stats > li:first-child::after {
content: " | ";
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.sidebar-links {
max-width: 50vw;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

View File

@@ -0,0 +1,403 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 1px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
/* playlist */
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* /playlist */
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
display: grid;
grid-row-gap: 1rem;
}
/* fix hr when is children of grid */
hr {
width: 100%;
}
.import-export {
display: grid;
grid-template-columns: 1fr;
margin: auto;
grid-template-areas:
"subscriptions-import-form";
align-items: center;
justify-items: center;
justify-content: center;
}
.subscriptions-import-form {
grid-area: subscriptions-import-form;
text-align: center;
}
.sub-list-controls {
display: grid;
grid-row-gap: 0.2rem;
}
.subscriptions-import-form input[type='submit'],
.sub-list-controls button[type='submit'],
.sub-list-controls input[type='reset'] {
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.tag-group-list {
display: grid;
grid-template-columns: 1fr;
margin: auto;
}
.sub-list {
display: grid;
grid-template-columns: 1fr;
margin: auto;
}
/* pagination */
.main .pagination-container {
display: grid;
justify-content: center;
}
.main .pagination-container .pagination-list {
display: grid;
grid-auto-flow: column;
grid-column-gap: 0.5rem;
}
.main .pagination-container .pagination-list .page-link {
border-style: none;
font-weight: bold;
text-align: center;
background: var(--secondary-focus);
text-decoration: none;
align-self: center;
padding: .5rem;
width: 1rem;
}
.main .pagination-container .pagination-list .page-link.is-current {
background: var(--secondary-background);
}
/* /video list item */
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.info-box {
grid-gap: 2px;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 600px) {
.video-container {
display: grid;
grid-row-gap: 0.5rem;
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
"main main main main"
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 100px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.import-export {
max-width: 50vw;
}
.sub-list-controls {
grid-template-columns: repeat(8, auto);
max-height: 1rem;
grid-column-gap: 0.5rem;
justify-content: center;
align-items: center;
}
/* playlist */
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 100px);
}
.play-clean > button {
padding-left: 0px;
padding-right: 0px;
padding-bottom: 6px;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.video-container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1rem;
grid-column-gap: 1rem;
}
}

633
youtube/static/watch.css Normal file
View File

@@ -0,0 +1,633 @@
html {
font-family: "liberation serif", "times new roman", calibri, carlito, serif;
background: var(--background);
color: var(--text);
}
body {
display: grid;
grid-gap: 20px;
grid-template-areas:
"header"
"main"
"footer";
/* Fix height */
height: 100vh;
grid-template-rows: auto 1fr auto;
/* fix top and bottom */
margin-left: 1rem;
margin-right: 1rem;
}
img {
width: 100%;
height: auto;
}
video {
width: 100%;
height: auto;
max-height: 480px;
}
a:link {
color: var(--link);
}
a:visited {
color: var(--link-visited);
}
input[type="text"],
input[type="search"] {
background: var(--background);
border: 1px solid var(--button-border);
border-radius: 5px;
padding: 0.4rem 0.4rem;
font-size: 15px;
color: var(--search-text);
}
input[type='search'] {
border-bottom: 1px solid var(--button-border);
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-radius: 0px;
}
header {
display: grid;
grid-gap: 4px;
grid-template-areas:
"home"
"form"
"playlist";
grid-area: header;
}
.home {
grid-area: home;
margin-left: auto;
margin-right: auto;
margin-bottom: 1rem;
margin-top: 1rem;
}
.form {
display: grid;
grid-gap: 4px;
grid-template-areas:
"search-box"
"search-button"
"dropdown";
grid-area: form;
}
.search-box {
grid-area: search-box;
}
.search-button {
grid-area: search-button;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.search-button:hover {
background-color: var(--buttom-hover);
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
z-index: 1;
}
.dropdown-label {
grid-area: dropdown-label;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.dropdown-label:hover {
background-color: var(--buttom-hover);
}
.playlist {
display: grid;
grid-gap: 4px;
grid-template-areas:
"play-box"
"play-hidden"
"play-add"
"play-clean";
grid-area: playlist;
}
.play-box {
grid-area: play-box;
}
.play-hidden {
grid-area: play-hidden;
}
.play-add {
grid-area: play-add;
cursor: pointer;
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-add:hover {
background-color: var(--buttom-hover);
}
.play-clean {
display: grid;
grid-area: play-clean;
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
border: 1px solid var(--button-border);
color: var(--buttom-text);
border-radius: 5px;
}
.play-clean > button:hover {
background-color: var(--buttom-hover);
}
/* ------------- Menu Mobile sin JS ---------------- */
/* input hidden */
.opt-box {
display: none;
}
.dropdown-content {
display: none;
grid-area: dropdown-content;
}
label[for=options-toggle-cbox] {
cursor: pointer;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#options-toggle-cbox:checked ~ .dropdown-content {
display: inline-grid;
white-space: nowrap;
padding-left: 1rem;
}
/*- ----------- End Menu Mobile sin JS ------------- */
.main {
grid-area: main;
margin: 0 auto;
display: grid;
grid-grap: 1px;
grid-template-columns: 1fr;
grid-template-areas:
"sc-video"
"sc-info";
}
.sc-video { grid-area: sc-video; }
.sc-info {
display: grid;
grid-template-columns: 1fr;
grid-gap: 1px;
grid-template-areas:
"video-info"
"side-videos"
"comments-area-outer";
grid-area: sc-info;
}
.video-info {
grid-area: video-info;
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-areas:
"v-title v-title"
"v-uploaded v-views"
"v-published v-likes-dislikes"
"external-player-controls v-checkbox"
"v-download v-download"
"v-description v-description"
"v-music-list v-music-list"
"v-more-info v-more-info";
}
.v-title {
grid-area: v-title;
margin: 0px;
}
.v-uploaded { grid-area: v-uploaded; }
.v-views {
grid-area: v-views;
justify-self: end;
}
.v-published { grid-area: v-published; }
.v-likes-dislikes {
grid-area: v-likes-dislikes;
justify-self: end;
}
.external-player-controls {
grid-area: external-player-controls;
}
.external-player-controls input.speed {
width: 65px;
text-align: center;
}
.v-checkbox {
grid-area: v-checkbox;
justify-self: end;
}
.v-download { grid-area: v-download; }
.v-download > ul.download-dropdown-content {
background: var(--secondary-background);
padding-left: 0px;
}
.v-download > ul.download-dropdown-content > li.download-format {
list-style: none;
padding: 0.4rem 0;
padding-left: 1rem;
}
.v-download > ul.download-dropdown-content > li.download-format a.download-link {
text-decoration: none;
}
.v-description {
grid-area: v-description;
background-color: var(--secondary-background);
margin-top: 0.4rem;
white-space: pre-wrap;
word-wrap: break-word;
padding: 5px;
}
.v-music-list {
grid-area: v-music-list;
padding-bottom: 1rem;
}
.v-music-list table,th,td{
border: 1px solid;
}
.v-music-list th,td{
padding-left:4px;
padding-right:5px;
}
.v-music-list caption{
text-align:left;
font-weight:bold;
margin-bottom:5px;
}
.v-more-info {
grid-area: v-more-info;
}
.v-more-info > .more-info-content {
background-color: var(--secondary-background);
padding: 5px;
}
.side-videos { grid-area: side-videos; }
/* playlist items */
.side-videos .site-playlist {
border-style: solid;
border-width: 2px;
border-color: var(--secondary-focus);
margin-bottom: 1rem;
}
.side-videos .site-playlist .playlist-header {
background-color: var(--secondary-background);
padding: 1rem;
border-bottom-style: solid;
border-bottom-width: 2px;
border-bottom-color: var(--secondary-focus);
}
.side-videos .site-playlist .playlist-header h3 {
margin: 0px;
padding: 0px;
}
.side-videos .site-playlist .playlist-header .playlist-metadata {
list-style: none;
display: grid;
justify-content: start;
padding: 0;
margin: 0px;
grid-template-columns: repeat(3, auto);
grid-column-gap: 1rem;
}
.side-videos .site-playlist .playlist-videos {
display: grid;
grid-row-gap: 1rem;
height: 300px;
overflow-y: scroll;
padding-top: 1rem;
}
.side-videos .site-playlist .playlist-videos article.item-box {
padding-left: 1rem;
}
/* /playlist items */
.comments-area-outer { grid-area: comments-area-outer; }
.related-videos-inner {
padding-top: 10px;
display: grid;
grid-row-gap: 1rem;
}
.item-box {
display: grid;
grid-template-columns: 1.9fr 0.1fr;
grid-template-rows: 1fr;
grid-gap: 1px;
grid-template-areas:
"item-video item-checkbox";
}
.item-video {
grid-area: item-video;
display: grid;
grid-template-columns: auto;
grid-template-rows: repeat(4, auto);
grid-row-gap: 0.4rem;
grid-template-areas:
"thumbnail-box"
"info-box";
align-items: center;
font-size: 0.7rem;
}
.item-video a {
text-decoration: none;
cursor: pointer;
}
.thumbnail-box {
grid-area: thumbnail-box;
position: relative;
}
.thumbnail {
padding: 28.125%;
position: relative;
box-sizing: border-box;
}
.thumbnail-img {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
object-fit: cover;
}
.length {
z-index: 100;
position: absolute;
background-color: rgba(35, 35, 35, 0.75);
color: #fff;
border-radius: 2px;
padding: 2px;
font-size: 16px;
right: 0.25em;
bottom: -0.75em;
}
.info-box {
grid-area: info-box;
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto auto auto auto auto;
grid-gap: 1px;
grid-template-areas:
"."
"."
"."
"."
".";
}
.title {
font-size: 0.8rem;
margin: 0px;
font-weight: normal;
overflow: hidden;
text-overflow: ellipsis;
}
.info-box address {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.thumbnail-info {
background-color: var(--time-background);
color: #fff;
padding: 2px 5px;
text-transform: uppercase;
font-weight: 700;
font-size: 12px;
position: absolute;
right: 0;
bottom: .2rem;
}
.item-checkbox {
grid-area: item-checkbox;
justify-self: start;
align-self: center;
min-width: 30px;
margin: 0px;
}
.stats {
display: flex;
justify-content: space-between;
}
/* comments */
.comments-area {
display: grid;
grid-row-gap: 0.5rem;
}
.comments {
display: grid;
grid-row-gap: 0.5rem;
}
.comment {
display: grid;
grid-template-columns: repeat(3, auto) 3fr;
grid-template-rows: repeat(4, auto);
grid-column-gap: 0.4rem;
grid-template-areas:
"author-avatar author-name permalink permalink"
"author-avatar comment-text comment-text comment-text"
". comment-likes comment-likes comment-likes"
". button-row button-row button-row";
background: var(--secondary-background);
}
.author-avatar { grid-area: author-avatar; }
.author-name { grid-area: author-name; }
.permalink { grid-area: permalink; }
.comment-text { grid-area: comment-text; }
.comment-likes { grid-area: comment-likes; }
.button-row { grid-area: button-row; }
.more-comments {
justify-self: center;
margin-top: 10px;
margin-bottom: 10px;
background: var(--secondary-background);
padding: 5px;
/* disable text selection */
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.footer {
grid-area: footer;
}
.footer > p {
text-align: center;
}
@media (min-width: 480px) {
.item-video {
font-size: 0.85rem;
}
.title {
font-size: 1rem;
}
}
@media (min-width: 992px) {
body {
display: grid;
grid-template-columns: 0.3fr 2fr 1fr 0.3fr;
grid-template-rows: auto 1fr auto;
grid-template-areas:
"header header header header"
". main main ."
"footer footer footer footer";
}
.form {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". search-box search-button dropdown";
grid-area: form;
position: relative;
}
.dropdown {
display: grid;
grid-gap: 1px;
grid-template-columns: minmax(50px, 120px);
grid-template-areas:
"dropdown-label"
"dropdown-content";
grid-area: dropdown;
background: var(--background);
padding-right: 4rem;
z-index: 1;
position: absolute;
}
.playlist {
display: grid;
grid-gap: 1px;
grid-template-columns: 1fr 1.4fr 0.3fr 1.3fr;
grid-template-areas: ". play-box play-add play-clean";
grid-area: playlist;
}
.play-clean {
grid-template-columns: minmax(50px, 120px);
}
.play-clean > button {
padding-bottom: 6px;
padding-left: .75em;
padding-right: .75em;
padding-top: 6px;
text-align: center;
white-space: nowrap;
background-color: var(--buttom);
color: var(--buttom-text);
border-radius: 5px;
cursor: pointer;
}
.main {
grid-area: main;
margin: 0px;
}
.sc-info {
display: grid;
grid-template-columns: 3fr 1fr;
grid-gap: 1px 40px;
grid-template-areas:
"video-info side-videos"
"comments-area-outer side-videos"
". side-videos";
grid-area: sc-info;
}
}