//
// Component: Base
//
// ========================================================================


// Variables
// ========================================================================

@base-body-background:                          @global-background;
@base-body-font-family:                         @global-font-family;
@base-body-font-weight:                         300;
@base-body-font-size:                           @global-font-size;
@base-body-line-height:                         @global-line-height;
@base-body-color:                               @global-color;

@base-link-color:                               @global-link-color;
@base-link-text-decoration:                     none;
@base-link-hover-color:                         @global-link-hover-color;
@base-link-hover-text-decoration:               underline;

@base-strong-font-weight:                       bolder;
@base-code-font-size:                           @global-small-font-size;
@base-code-font-family:                         Consolas, monaco, monospace;
@base-code-color:                               @global-danger-background;
@base-em-color:                                 @global-danger-background;
@base-ins-background:                           #ffd;
@base-ins-color:                                @global-color;
@base-mark-background:                          #ffd;
@base-mark-color:                               @global-color;
@base-quote-font-style:                         italic;
@base-small-font-size:                          12px;

@base-margin-vertical:                          @global-margin;

@base-heading-font-family:                      'AmsiProCond';
@base-heading-font-weight:                      normal;
@base-heading-color:                            @global-emphasis-color;
@base-heading-text-transform:                   none;
@base-heading-margin-top:                       @global-medium-margin;
@base-h1-font-size-m:                           @global-xxlarge-font-size;
@base-h1-font-size:                             @base-h1-font-size-m * 0.85;
@base-h1-line-height:                           1.2;
@base-h2-font-size-m:                           @global-xlarge-font-size;
@base-h2-font-size:                             @base-h2-font-size-m * 0.85;
@base-h2-line-height:                           1.3;
@base-h3-font-size:                             @global-large-font-size;
@base-h3-line-height:                           1.4;
@base-h4-font-size:                             @global-medium-font-size;
@base-h4-line-height:                           1.4;
@base-h5-font-size:                             @global-font-size;
@base-h5-line-height:                           1.4;
@base-h6-font-size:                             @global-small-font-size;
@base-h6-line-height:                           1.4;

@base-list-padding-left:                        30px;

@base-hr-margin-vertical:                       @global-margin;
@base-hr-border-width:                          @global-border-width;
@base-hr-border:                                @global-border;

@base-blockquote-font-size:                     @global-medium-font-size;
@base-blockquote-line-height:                   1.5;
@base-blockquote-font-style:                    italic;
@base-blockquote-margin-vertical:               @global-margin;
@base-blockquote-footer-margin-top:             @global-small-margin;
@base-blockquote-footer-font-size:              @global-small-font-size;
@base-blockquote-footer-line-height:            1.5;

@base-pre-font-size:                            @global-small-font-size;
@base-pre-line-height:                          1.5;
@base-pre-font-family:                          @base-code-font-family;
@base-pre-color:                                @global-color;

@base-selection-background:                     #39f;
@base-selection-color:                          @global-inverse-color;

//
// New
//

@base-code-padding-horizontal:                  6px;
@base-code-padding-vertical:                    2px;
@base-code-background:                          @global-muted-background;

@base-blockquote-color:                         @global-emphasis-color;

@base-blockquote-footer-color:                  @global-color;

@base-pre-padding:                              10px;
@base-pre-background:                           @global-background;
@base-pre-border-width:                         @global-border-width;
@base-pre-border:                               @global-border;
@base-pre-border-radius:                        3px;


// Body
// ========================================================================

.hook-base-body() {}


// Links
// ========================================================================

.hook-base-link() {}

.hook-base-link-hover() {}


// Text-level semantics
// ========================================================================

.hook-base-code() {
    padding: @base-code-padding-vertical @base-code-padding-horizontal;
    background: @base-code-background;
}


// Headings
// ========================================================================

.hook-base-heading() {}

.hook-base-h1() {}

.hook-base-h2() {}

.hook-base-h3() {}

.hook-base-h4() {}

.hook-base-h5() {}

.hook-base-h6() {}


// Horizontal rules
// ========================================================================

.hook-base-hr() {}


// Blockquotes
// ========================================================================

.hook-base-blockquote() {
    color: @base-blockquote-color;
}

.hook-base-blockquote-footer() {

    color: @base-blockquote-footer-color;

    &::before { content: "— "; }

}


// Preformatted text
// ========================================================================

.hook-base-pre() {
    padding: @base-pre-padding;
    border: @base-pre-border-width solid @base-pre-border;
    border-radius: @base-pre-border-radius;
    background: @base-pre-background;
}


// Miscellaneous
// ========================================================================

.hook-base-misc() {}


// Inverse
// ========================================================================

@inverse-base-blockquote-color:                @inverse-global-emphasis-color;
@inverse-base-blockquote-footer-color:         @inverse-global-color;

@inverse-base-color:                           @inverse-global-color;
@inverse-base-link-color:                      @inverse-global-emphasis-color;
@inverse-base-link-hover-color:                @inverse-global-emphasis-color;
@inverse-base-code-color:                      @inverse-global-color;
@inverse-base-em-color:                        @inverse-global-emphasis-color;
@inverse-base-heading-color:                   @inverse-global-emphasis-color;
@inverse-base-hr-border:                       @inverse-global-border;

.hook-inverse-base-link() {}
.hook-inverse-base-link-hover() {}

.hook-inverse-base-code() {
    background: @inverse-global-muted-background;
}

.hook-inverse-base-heading() {}

.hook-inverse-base-h1() {}
.hook-inverse-base-h2() {}
.hook-inverse-base-h3() {}
.hook-inverse-base-h4() {}
.hook-inverse-base-h5() {}
.hook-inverse-base-h6() {}

.hook-inverse-base-blockquote() { color: @inverse-base-blockquote-color; }
.hook-inverse-base-blockquote-footer() { color: @inverse-base-blockquote-footer-color; }

.hook-inverse-base-hr() {}