
// Copyright (c) 2012 Adobe Systems Incorporated. All rights reserved.
//  
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the "Software"), 
// to deal in the Software without restriction, including without limitation 
// the rights to use, copy, modify, merge, publish, distribute, sublicense, 
// and/or sell copies of the Software, and to permit persons to whom the 
// Software is furnished to do so, subject to the following conditions:
//  
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//  
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
// DEALINGS IN THE SOFTWARE.


/*
 * Brackets Default Theme
 *
 * Defines all the variables that one can configure in a theme. This should
 * contain all variables / mixins for UI styling that we want to be able to 
 * change in a theme.
 *
 * Throughout the rest of the LESS files we should _only_ use color
 * variable names that are on the LHS of the list below. So, if we
 * need a new color for some UI element, we should add a variable
 * in this file.
 */

/* Overall Colors */
@background: #002451;
@current-line: #00346e;
@foreground: #ffffff;
@comment: #7285b7;
@red: #ff9da4;
@orange: #ffc58f;
@yellow: #ffeead;
@green: #d1f1a9;
@aqua: #99ffff;
@blue: #bbdaff;
@purple: #ebbbff;

/* 
 * Background colors are ordered from least "intense" to most "intense"
 * So, if the background is light, then @background-color-3 should be
 * lightest, -2 should be darker, and -1 should be darker still.
 *
 * The opposite is true for a dark background -- background-color-3 should be
 * the darkest, -2 should be lighter, and -1 should be lighter still.
 */
@background-color-1: lighten(@background, @bc-color-step-size*2);
@background-color-2: lighten(@background, @bc-color-step-size);
@background-color-3: @background;

/*
 * @content-color-stronger should be should be further away from the
 * background color than @content-color (i.e. more contrasty).
 *
 * @content-color-weaker should be closer to the background color
 * than @content-color (i.e. less contrasty).
 */
@content-color: @foreground;
@content-color-stronger: lighten(@foreground, @bc-color-step-size);
@content-color-weaker: darken(@foreground, @bc-color-step-size);

/* Code Styling */

/* code accent colors */
@accent-keyword: @purple;
@accent-atom: @orange;
@accent-number: @green;
@accent-def: @foreground;
@accent-variable: @orange;
@accent-variable-2: @blue;
@accent-variable-3: @yellow;
@accent-property: @yellow;
@accent-operator: @foreground;
@accent-comment: @comment;
@accent-string: @green;
@accent-string-2: @aqua;
@accent-meta: @red;
@accent-error: @red;
@accent-qualifier: @blue;
@accent-builtin: @yellow;
@accent-bracket: @foreground;
@accent-tag: @blue;
@accent-attribute: @orange;
@accent-header: @purple;
@accent-quote: @blue;
@accent-hr: @orange;
@accent-link: @yellow;
@accent-rangeinfo: @aqua;
@accent-minus: @red;
@accent-plus: @green;

/* inline editor colors */
@inline-background-color-1: lighten(@background, @bc-color-step-size);
@inline-background-color-2: lighten(@background, @bc-color-step-size*2);
@inline-background-color-3: rgba(0,0,0,0);

@inline-color-1: darken(@foreground, @bc-color-step-size*2);
@inline-color-2: darken(@foreground, @bc-color-step-size);
@inline-color-3: @background;

/* Selection colors */
@selection-color-focused: #405db1;
@selection-color-unfocused: #4a5c87;

/* Code font formatting
 *
 * NOTE (JRB): In order to get the web font to load early enough, we have a div called "dummy-text" that
 * is styled with .code-font().
 *
 * The platform-specific selector gets added to the body tag *before* document ready time.
 * We rely on this behavior to load platform-specific web fonts early.
 */
.code-font() {
    color: @content-color;
    // line-height must be specified in px not em because the code font and line number font sizes are different.
    // Sizing via em will cause the code and line numbers to misalign
    line-height: 15px;
    font-size: 12px;
    font-family: 'SourceCodePro', monospace;
}

.code-font-win() {
    .code-font();
}

.code-font-mac() {
    .code-font();
    /* Use the Medium weight on the Mac to counterbalance the grayscale antialiasing. */
    font-family: 'SourceCodePro-Medium', "ＭＳ ゴシック", "MS Gothic", monospace;
}

.code-cursor() {
    // to make a block cursor, use something like this:
    // background-color: fadeout(@blue, 50%);
    // border: none !important;

    // to make an I-cursor, use something like this:
    border-left: 1px solid @content-color !important;

}

/* Variables and Mixins for non-code UI elements that can be styled */
