﻿/* ==========================================================
   Base
   ----------------------------------------------------------
   Design tokens, reset, document defaults and small utilities.
   ========================================================== */

@font-face {
    font-family: "Stem";
    src: url("../fonts/Stem-Thin.otf") format("opentype");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Stem";
    src: url("../fonts/Stem-Light.otf") format("opentype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Stem";
    src: url("../fonts/Stem-Medium.otf") format("opentype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Stem";
    src: url("../fonts/Stem-Bold.otf") format("opentype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --brand-yellow: #FFB635;
    --brand-yellow-75: #FFC85C;
    --brand-yellow-50: #FFDA9A;
    --brand-yellow-25: #FFECC9;
    --brand-charcoal: #373936;
    --brand-charcoal-75: #6A6B68;
    --brand-charcoal-50: #9B9C9A;
    --brand-charcoal-25: #CDCDCC;
    --brand-magenta: #C1204C;
    --brand-teal: #009479;
    --brand-orange: #FF6C00;
    --brand-purple: #9167CA;    
    --toolbar-background: #faf8f4;
    --primary-color: var(--brand-charcoal);
    --accent-color: var(--brand-yellow);
    --text-color: var(--brand-charcoal);
    --background-color: #F9F8F6;
    --border-color: #dcdfdc;
    --white: #ffffff;
    --light-gray: #f4f2ec;
    --dark-gray: var(--brand-charcoal);
    --orange-dark: var(--brand-yellow-25);
    --orange-medium: #fff4dc;
    --orange-light: #fff8e9;
    --yellow-light: #f4f2ec;
    --gray-1: #f8f7f4;
    --gray-2: #ffffff;
    --blue-dark: var(--brand-charcoal);
    --blue-light: var(--brand-yellow-25);
    --green: var(--brand-teal);
    --red: var(--brand-magenta);
    --gray-button: var(--brand-charcoal-75);
    --data-table-row-height: 28px;
    /* --app-sidebar-offset: 10px; */
    --app-sidebar-offset: 0px;
    --app-sidebar-width-collapsed: 60px;
    --app-sidebar-width-expanded: 278px;
    --app-top-bar-height: 70px;
    --app-shell-header-control-size: 28px;
    --app-shell-header-y: calc((var(--app-top-bar-height) - var(--app-shell-header-control-size)) / 2);
    --app-shell-header-control-center-y: calc(var(--app-sidebar-offset) + var(--app-shell-header-y) + (var(--app-shell-header-control-size) / 2));
    --app-shell-divider-height: 1px;
    --app-shell-divider-y: calc(var(--app-sidebar-offset) + var(--app-top-bar-height));
    --app-shell-background: var(--background-color);
    --app-surface: #ffffff;
    --app-sidebar-background: #292929;
    --app-sidebar-background-2: #3c3c3c;

    /* --- Палитра Gantt-планнера (источник: planner/css/layout.css) --- */
    --polyus-gold: #efa900;
    --polyus-gold-hover: #d69600;
    --polyus-bg-dark: #111315;
    --polyus-bg-card: #1a1d20;
    --polyus-border: #262a2f;
    --polyus-container: #262b2c;
    --text-main: #e5e7eb;
    --text-muted: #8e96a0;
    --today-red: #ef4444;
    --event-fill: rgba(26, 29, 32, 0.915);
    --event-border: rgba(44, 49, 54, 0.6);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body { 
    background-color: var(--background-color);
    color: var(--text-color); 
    font-family: 'Segoe UI', Arial, sans-serif; 
    display: flex; 
    flex-direction: column; 
    height: 100vh; 
    width: 100vw; 
    overflow: hidden; 
}

.hidden {
    display: none !important;
}

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* TODO: replace legacy ID selector with .status-tracker. */
#statusTracker { 
    text-align: center; 
    padding: 30px; 
    font-weight: bold; 
    color: #4A5568; 
    font-style: italic; 
}

#fileFallbackInput { 
    display: none; 
}


