@charset "utf-8"; /* Theme Name: BirdSITE Theme URI: http://www.sysbird.jp/birdsite-theme/ Description: BirdSITE built for photobloggers and photographers. It has good appearance for photos by grid layout. and uses CSS3 media queries for its responsive layout and is therefore optimized for tablet pcs and smart phones. Features include the Theme Customize. You can choose the main color, text color and link color. Author: Sysbird Author URI: https://profiles.wordpress.org/sysbird/ Version: 1.11 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Tags: two-columns, left-sidebar, grid-layout, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-image-header, featured-images, footer-widgets, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, photography Text Domain: birdsite This theme, like WordPress, is licensed under the GPL. */ @import "compass"; @import "compass/reset"; // variable $background-color: #F5F5F5; $text-color: #555; $link-color: #06A; $main_color: #000; $border-color: #CCC; $meta-color: #999; $menu-width: 240px; /*------------------------------ Font Awesome -----------------------------*/ @font-face { font-family: 'FontAwesome'; src: url("font-awesome/fontawesome-webfont.eot?v=4.7.0"); src: url("font-awesome/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("font-awesome/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("font-awesome/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("font-awesome/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg"); font-weight: normal; font-style: normal; } @mixin font-awesome() { display: inline-block; font-family: FontAwesome; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* Index --------------------------------------------- */ h1, h2, h3, h4, h5, h6 { margin: 0.7em 0; line-height:1.2; color: $main_color; } h1 {font-size:2.4rem;} h2 {font-size:2rem;} h3 {font-size:1.8rem;} h4 {font-size:1.6rem;} h5 {font-size:1.4rem;} h6 {font-size:1.2rem;} /* Link --------------------------------------------- */ a { color: $link-color; text-decoration: none; &:hover { text-decoration: underline; } } /* Structure --------------------------------------------- */ html { * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; } } body { margin:0; padding:0; border:0; width:100%; } .container { max-width: 1060px; position: relative; } .wrapper > .container { @include display-flex(); align-items: flex-start; } #header { width: $menu-width; position: -webkit-sticky; position: sticky; top: 7px; z-index: 1; } .main { @include flex(1); } /* Fixed Footer --------------------------------------------- */ body, .wrapper { @include display-flex(); flex-direction: column; min-height: 100vh; } #footer { margin-top: auto; } /* Body -------------------------------------------------------------- */ body { background-color: $background-color; } /* Wrapper -------------------------------------------------------------- */ .wrapper { font-family: 'Avenir', 'Helvetica Neue', 'Helvetica', 'Arial','Hiragino Sans', YuGothic, 'Yu Gothic', Meiryo, 'MS PGothic'; font-size: 0.92em; color: $text-color; word-wrap:break-word; border-top: solid 7px $main_color; } /* Header -------------------------------------------------------------- */ #header { padding-top: 40px; .branding { padding-left: 1.4em; color: $main_color; margin-bottom: 20px; text-align: right; .site-title { font-size: 2.4rem; font-weight: bold; line-height: 1; margin: 0; a { color: $main_color; } } .site-description { margin-top: 1rem; font-size: 1rem; line-height: 1.4; } } .header-image { display: block; margin-bottom: 20px; img { max-width: 100%; vertical-align:bottom } } &.no-title { .branding { margin-bottom: 0; .site-title, .site-description { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); } } } } /* Footer -------------------------------------------------------------- */ #footer { background: $main_color; padding: 40px 0; color: #FFF; ul.row { padding: 0; margin: 0 0 20px 0; list-style: none outside none; @include clearfix; &>li { float: left; min-height: 1px; margin: 0 0 0 3%; width: 30%; } } a { color: #FFF; } .site-title { border-top: solid 3px #FFF; padding: 40px 0 0 20px; line-height: 1.6; .home { font-weight: bold; } .generator { font-family: Georgia, "Bitstream Charter", serif; font-style: italic; &:after { @include font-awesome(); content: "\f19a"; padding-left: 0.4em; padding-right: 0.4em; } } } #back-top { position: fixed; bottom: 20px; right: 20px; z-index: 3; a { background: $border-color; border-radius: 100px; display: block; height: 50px; width: 50px; text-align: center; text-decoration: none; @include opacity( 0.7 ); span { @include hide-text; display: block; } &:hover { text-decoration: none; @include opacity( 0.8 ); } &:before { @include font-awesome(); content: "\f077"; font-size: 30px; display: block; text-align: center; padding-top: 8px; color: $meta-color; } } } } /* Menu -------------------------------------------------------------- */ #menu-wrapper { #small-menu { display: none; /* hide small menu initially */ } .menu { &:not(.drawer-nav) ul#menu-primary-items { transform: translate(0, 0) translateZ(0px) !important; } ul { margin: 0; padding: 0; *zoom: 1; &:after { clear: both; content: ""; display: block; } li { padding: 0; width: $menu-width; text-align: right; position: relative; &:hover > ul { display: block; /* show dropdown on hover */ } a { border-top: dotted 1px $main_color; padding: 0.6em; display: block; width: $menu-width - 2; color: $main_color; text-decoration: none; line-height: 1.2; &:hover { background: #FFF; } } &:first-child { > a { border-top-width: 0px; } } &.menu-item-has-children { >a:after { position: absolute; top: 0.7em; right: 0; width: 0.6em; height: 0.8em; @include font-awesome(); content: "\f0da"; } } ul { background: #FFF; border: dotted 1px $main_color; display: none; /* hide dropdown */ width: $menu-width; position: absolute; top: 0; left: $menu-width; z-index: 2; li { float: none; margin: 0; padding: 0; text-align: left; a { white-space: normal; &:hover { font-weight: bold; } } ul { margin: -1px 0 0 -2px; } } } } } .current-menu-item > a, .current-menu-ancestor > a { font-weight: bold; } } } /* Posts --------------------------------------------- */ #content { padding: 40px 0; h2 { border-bottom: dashed 1px $border-color; padding-bottom: 0.4em; } h3 { border-left: solid 7px $border-color; padding-left: 10px; } p { line-height: 1.6; margin: 0 0 1.6em; } blockquote { margin-left: 1em; padding-left: 1em; border-left: 5px solid $border-color; font-style: italic; } small { line-height: 1; color: $meta-color; } cite { color: $meta-color; display: block; &:before { content: "-"; } } table { max-width: 100%; width: 100%; border-collapse: collapse; border-spacing: 0; margin-bottom: 1.6em; caption { font-size: 1.2rem; font-style: bold; padding: 0.5em 0; } th, td { border: 1px solid $border-color; line-height: 1.4; padding: 0.4em; vertical-align: top; } th { background: $background-color; font-weight: bold; } } pre { border: dotted 1px $border-color; padding: 0.8em; margin-bottom: 1.6em; line-height: 1.4; max-width: 100%; overflow: auto; white-space: pre; white-space: pre-wrap; word-wrap: break-word; } code { background: $background_color; } code, kbd, pre, samp { font-family: monospace,serif; } hr { background-color: $border-color; border: 0 none; height: 1px; margin-bottom: 1.6m; } sup, sub { font-size: 80%; height: 0; line-height: 0; position: relative; vertical-align: baseline; } sub { top: 0.5ex; } sup { bottom: 1ex; } em { font-style: italic; } strong { font-weight: bold; } abbr, acronym { border-bottom: 1px dotted #666; cursor: help; } ul, ol { margin: 0 0 1.6em 1em; padding: 0 0 0 1em; line-height: 1.4; li { padding: 0.2em 0; } ul, ol { margin-bottom: 0; } } ul { list-style: disc; ul { list-style: circle; ul { list-style: square; } } } ol { list-style: decimal; ol { list-style:upper-alpha; ol { list-style:lower-roman; ol { list-style:lower-alpha; } } } } dl { margin:0 0 1em 0; line-height: 1.6; dt { font-weight: bold; } dd { margin: 0 1.5em 1.6em; padding: 0; } } del { color: #C00; } ins { background: #ffc; text-decoration: none; } .hentry { margin-left: 20px; padding: 40px; background: #FFF; .entry-header { margin-bottom: 1.6em; .entry-title { font-size: 2rem; font-weight: normal; color: $text-color; border-bottom: dotted 1px $border-color; padding-bottom: 40px; margin: 0; a { color: $text-color; } } .taxonomy-description { margin-top: 1.6em; } } .entry-content { margin-bottom: 1.6em; @include clearfix; } .entry-meta { clear: both; background: $background-color; line-height: 1.2; padding: 0.8em; margin-bottom: 1.6em; a { color: $text-color; } .icon { margin-bottom: 0.4em; &:before { color: $border-color; @include font-awesome(); padding-right: 0.4em; } } .postdate { &:before { content: "\f017"; } } .author { &:before { content: "\f007"; } } .category { &:before { content: "\f07b"; } } .tag { &:before { content: "\f02b"; } } .comment { &:before { content: "\f075"; } } .parent-post-link { &:before { content: "\f1c5"; } } } } } /* Home Thumbnails */ .home #content { ul.row { padding: 0; margin: 0; list-style: none outside none; margin-top: -20px; overflow: hidden; @include clearfix; li { float: left; position: relative; min-height: 1px; margin: 20px 0 0 20px; padding: 0; width: 250px; height: 250px; background: #FFF; overflow: hidden; .more-link { position: absolute; top: 0; left: 0; width: 250px; height: 250px; a { display: block; width: 250px; height: 250px; @include hide-text; @include opacity( 0.6 ); } } .thumbnail { position: relative; width: 240px; height: 240px; margin: 5px auto; overflow: hidden; img { position: absolute; top: 0; left: 0; display: block; max-width: none; } .more-link { top: -5px; left: -5px; } } .caption { position: absolute; color: #FFF; background-color: rgba(0, 0, 0, 0.5); top: 0; left: 0; width: 250px; height: 250px; line-height: 1.4; overflow: hidden; a { text-decoration: none; color: #FFF; } .entry-header { padding: 0.8em; margin: 0; .entry-title { font-size: 1.6rem; color: #FFF; font-weight: normal; border-bottom: none; padding: 0; a { color: #FFF; } } } .entry-meta { padding: 0 1em; background: none; } .more-link { a { position: relative; &:after { position: absolute; right: 0; bottom: 0; width: 0.5em; height: 1.2em; color: #FFF; @include font-awesome(); content: "\f054"; padding-right: 0.4em; font-size: 3em; text-indent: 0; } } } } &.has-post-thumbnail { .caption { @include opacity( 0 ); } &:hover { .caption { @include opacity( 1 ); @include transition-duration( .7s ); } } } &.sticky { position: relative; .caption { @include opacity( 1 ); } i { position: absolute; top: -3px; right: -15px; font-size: 12px; background: $main-color; color: #fff; text-align: center; width: 50px; padding: 3px; @include rotate(45deg); &:before { @include font-awesome(); content: "\f005"; } } } } } .pagination { padding-left: 20px; } } /* Attachment -------------------------------------------------------------------- */ .attachment { #content { .hentry { .entry-attachment { text-align: center; margin-bottom: 1.6em; .wp-caption { background: none; } } } } } /* Images -------------------------------------------------------------- */ #content .hentry img, .widget img { max-width: 100%; height: auto; } img[class*="align"], img[class*="wp-image-"] { height: auto; } .aligncenter { margin-left: auto; margin-right: auto; display: block; } .alignleft { float: left; margin-right: 0.75em; } .alignright { float: right; margin-left: 0.75em; } img.alignleft, img.alignright, img.aligncenter { margin-bottom: 0.75em; } a:hover img { @include opacity( 0.9 ); } .wp-caption, .gallery-caption { font-size: 0.9em; line-height: 1; color: $meta-color; max-width: 100%; text-align: center; } .wp-caption { max-width: 100%; background-color: $background-color; padding: 5px; p { text-align: center; margin: 5px 0 0 0; line-height: 1; } } /* Gallery -------------------------------------------------------------- */ .gallery-caption { margin: 5px 0 0 0; } .gallery { margin: 0 auto; @include display-flex(); @include flex-wrap( wrap ); .gallery-item { padding: 5px; text-align: center; width: 33%; a { display: block; } img { vertical-align:bottom; } } &.gallery-columns-1 .gallery-item { width: 100%; } &.gallery-columns-2 .gallery-item { width: 50%; } &.gallery-columns-3 .gallery-item { width: 33.33%; } &.gallery-columns-4 .gallery-item { width: 25%; } &.gallery-columns-5 .gallery-item { width: 20%; } &.gallery-columns-6 .gallery-item { width: 16.66%; } &.gallery-columns-7 .gallery-item { width: 14.28%; } &.gallery-columns-8 .gallery-item { width: 12.5%; } &.gallery-columns-9 .gallery-item { width: 11.11%; } } /* Make sure videos and embeds fit their containers -------------------------------------------------------------- */ embed, iframe, object, video { max-width: 100%; } .entry-content .twitter-tweet-rendered { max-width: 100% !important; /* Override the Twitter embed fixed width */ } /* Text meant only for screen readers. -------------------------------------------------------------- */ .screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; } .screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ } /* Pagination at archive -------------------------------------------------------------------- */ .pagination { clear: both; color: $link-color; padding: 0; @include clearfix; a.page-numbers, .current { display: inline-block; background: #FFF; color: $link-color; border:solid 1px $link-color; text-decoration:none; text-align: center; padding: 0.4em 0.6em; margin: 0.1em 0.1em 0.1em 0; &.prev, &.next { background: none; border: none; } } a.page-numbers:hover { background: $background-color; &.prev, &.next { background: none; text-decoration: underline; } } .current { color: #FFF; background: $link-color; border:solid 1px $link-color; } a.next { padding-right: 0; &:after { @include font-awesome(); content: "\f054"; padding-left: 0.4em; } } a.prev { padding-left: 0; &:before { @include font-awesome(); content: "\f053"; padding-right: 0.4em; } } } /* Page link at singular -------------------------------------------------------------------- */ .page-link { clear: both; margin: 1.6em 0; color: $link-color; span { background: $link-color; color: #FFF; padding: 0.4em 0.6em; margin: 0.1em 0 0.1em 0; text-decoration:none; font-weight: normal; text-align: center; border: solid 1px $link-color; display: inline-block; line-height: 1; } a { span { color: $link-color; background: #FFF; &:hover { background: $background-color; } } } } /* Post Navigation at Single page -------------------------------------------------------------------- */ .nav-links { margin-top: 40px; line-height: 1.2; @include clearfix; .nav-next { a { &:before { @include font-awesome(); content: "\f053"; padding-right: 0.4em; } } } .nav-previous { display: block; float: right; a { &:after { @include font-awesome(); content: "\f054"; padding-left: 0.4em; } } } } /* Comments -------------------------------------------------------------- */ #comments { margin-top: 20px; display: block; .navigation { position: relative; height: 1em; padding-bottom: 10px; margin-bottom: 1em; .nav-previous a { position: absolute; top: 0; right: 0; padding-left: 1em; &:after { @include font-awesome(); content: "\f054"; padding-left: 0.4em; } } .nav-next a { position: absolute; top: 0; left: 0; padding-right: 1em; &:before { @include font-awesome(); content: "\f053"; padding-right: 0.4em; } } } ol.commentlist { list-style: none; margin: 0; padding-left: 0; li.pingback, li.comment { border-left: 2px solid $border-color; clear: both; margin-bottom: 1.6em; padding: 0 0 0 10px; position: relative; list-style: none; &:after { @include clearfix; } .comment-author { .fn { display: inline; font-weight: bold; color: #000; &:before { content: none; } } img { border: none; margin: 0 10px 10px 0; float: left; } } .comment-meta { font-size: 0.96em; line-height: 1.6; margin-bottom: 1.6em; a { border-bottom: none; color: $meta-color; } } .comment-awaiting-moderation { font-size: 0.96em; color: $meta-color; } &.bypostauthor .comment-author .fn { color: $main_color; } .reply { margin-bottom: 1.6em; a.comment-reply-link { &:before { @include font-awesome(); content: "\f112"; padding-right: 0.2em; } } } } } } /* Archive -------------------------------------------------------------------- */ .archive, .search, .error404 { #content { .hentry { .entry-header { margin-bottom: 0; } } ul { margin: 0; padding: 0; list-style: none; li { border-bottom: dotted 1px $border-color; line-height: 1.2; padding: 0; a { display: block; padding: 5px 0; color: $text-color; @include clearfix; &:hover { text-decoration: none; background: $background-color; } } p { margin: 0 0 0 60px; line-height: 1.2; font-size: 1.2rem; } img { float: left; margin-right: 10px; width: 50px; height: 50px; } .postdate { color: $meta-color; font-size: 0.85rem; margin-top: 5px; display: block; &:before { @include font-awesome(); content: "\f017"; padding-right: 0.4em; } } } } } } /* Widget -------------------------------------------------------------- */ .widget { margin-bottom: 2em; a { text-decoration: none; &:hover { text-decoration: underline; } } .widget_image img { height: auto; max-width: 100%; } h3 { font-size: 1.4rem; font-weight: normal; margin: 0 0 10px 0; padding: 0 0 5px 0; border-bottom: solid 3px #FFF; color: #FFF; } ul { list-style: none; padding: 0; margin-left: 0; line-height: 1.4; overflow: hidden; li { margin: -1px 0 0 0; border-top: dotted 1px #FFF; padding: 0.4em 0 0.4em 0.8em; text-indent: -0.4em; &:before { @include font-awesome(); content: "\f0da"; } a { color: #FFF; } ul { padding: 0.5em 0 0 1em; } } } table { width: 100%; margin-bottom: 0; padding-bottom: 0; } .textwidget { line-height: 1.4; a { text-decoration: underline; } } #wp-calendar { border-collapse: collapse; border-spacing: 0; caption { font-size: 1.4rem; font-weight: normal; margin-bottom: 10px; } tbody { th, td { text-align: center; border-top: 1px solid $border-color; padding: 8px; a { font-weight: bold; display: block; padding: 2px 0; margin: 0 auto; background: #FFF; color: $main_color; &:hover { background: $border-color; text-decoration: none; } } } } thead { th { padding: 8px; text-align: center; } } tfoot { border-top: 1px solid $border-color; a { font-size: 1.2em; } #next { text-align: right; } td { padding: 8px 0; } } } } /* Forms -------------------------------------------------------------- */ form { input { font-size: 100%; } } #commentform { border: 1px dotted $border-color; padding: 10px 15px 0; margin-bottom: 1.6em; p { margin-bottom: 0.8em; } label { padding: 0 0 5px 0; display: block; } input:not([id="submit"]) { width: 100%; max-width: 300px; padding: 5px; background: #FFF; border: solid 1px $border-color; } textarea { width: 100%; height: 100px; padding:5px; background: #FFF; border: solid 1px $border-color; } input#submit { padding: 5px 10px; } #email-notes { display: block; } .form-allowed-tags { line-height: 1.2; code { display: block; } } } .post-password-form { input:not([type="submit"]) { padding: 5px; background: #FFF; border: solid 1px $border-color; } } /* Searcform --------------------------------------------- */ #searchform { width: 100%; position: relative; border: solid 1px $main-color; padding: 1%; border-radius: 4px; background: #FFF; max-width: 500px; @include display-flex(); #s { padding: 5px 10px 5px 5px; line-height: 1; border: none; @include flex(1); } #searchsubmit { border: none; cursor: pointer; width: 20%; margin: 0; background: #FFF; color: $main-color; -webkit-appearance: button; font-size: 1.2em; text-align: right; &:before { font-size: 1.4rem; @include font-awesome(); content: "\f002"; } } } /* Media queries for responsive design --------------------------------------------- */ /* --- Smartphones and small Tablet PCs --- */ @media screen and (max-width: 810px) { .home #content { ul.row { li { float: none; .more-link { a { position: relative; &:after { position: absolute; right: 0; bottom: 0; width: 0.5em; height: 1.2em; color: #FFF; @include font-awesome(); content: "\f054"; padding-right: 0.4em; font-size: 3em; text-indent: 0; } } } } } } #footer { padding: 20px 0; .container { padding: 0 10px; } ul.row { margin: 0 0 10px 0; &>li { float: none; width: 100%; margin: 0; } } .site-title { padding: 10px 0 0 0; text-align: center; } } .widget { ul { li { border-top: none; display: inline; ul { margin-left: 2em; padding-top: 0; li{ a { padding: 0.2em 0.2em 0.2em 0; } } } } @include clearfix; } } .gallery { .gallery-item { padding: 2px; } .wp-caption, .gallery-caption { display: none; } } } /* --- Smartphones and small Tablet PCs --- */ @media screen and (max-width: 600px) { body, .wrapper { display: block; } #footer { margin-top: 0; } .wrapper { font-size: 1em; } .wrapper > .container { display: block; align-items: stretch; } .main { display: block; flex: none; width: 100%; } #header { width: 100%; padding: 0; position: static; .branding { padding: 2.4em 0; margin-bottom: 0; text-align: center; .site-description { display: none; } } .header-image { margin-bottom: 0; } &.no-image { min-height: 2.2em; padding: 0; } &.no-title { .branding { padding: 0; } } } #content { margin: 0 auto; padding: 0; .hentry { margin-left: 0; padding: 2%; .entry-header { margin-bottom: 10px; .entry-title { padding-bottom: 10px; } } } } .pagination { padding: 0 10px 10px; text-align: center; } .home { #header { margin-bottom: 20px; &.no-image { margin-bottom: 0; } } #content { ul.row { li { margin: 20px auto 0; } } .pagination { padding-left: 10px; padding-bottom: 20px } } } .single { #content #nav-below { margin-bottom: 1.6em; } } .nav-links { margin-top: 20px; } /* small menu */ #menu-wrapper { #small-menu { display: block; } .menu { ul#menu-primary-items { clear: both; padding: 0 5px 5px; li { clear: both; float: none; width: 100%; margin-top: -1px; background: none; text-align: left; a { white-space: normal; padding: 0.4em; width: auto; &:hover { background: none; } } &:first-child { > a { border-top-width: 1px; } } &.menu-item-has-children { >a:after { @include font-awesome(); content: ""; } } ul { width: auto; position: static; left: 0; display: block; border: none; background: none; width: 100%; li { border: none; background: none; margin-left: 2em; width: auto; } } } } } } } @media screen and (min-width: 600px) { /* ensure .menu is visible on desktop version */ ul#menu-primary-items { display: block !important; } } /* admin-bar --------------------------------------------- */ @media screen and (max-width: 600px) { .admin-bar { .drawer-hamburger, .drawer-nav { top: 46px; } } }