:root {
    --bg: #f4f5f7;
    --white: #ffffff;

    --navy: #101f33;
    --navy-2: #172a43;
    --navy-3: #213a5b;

    --text: #19212b;
    --muted: #747e8a;

    --border: #e5e8ec;

    --gold: #b99455;
    --gold-light: #eee2cd;

    --green: #2daf7d;

    --shadow:
        0 24px 80px rgba(14, 26, 42, .10);

    --radius: 24px;
}

* {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    min-height: 100%;
}

body {
    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    color: var(--text);

    background:
        var(--bg);
}

button,
input {
    font: inherit;
}

button {
    cursor: pointer;
}

.background-effects {
    position: fixed;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: .18;
}

.orb-one {
    width: 500px;
    height: 500px;

    background:
        #d0a65c;

    top: -250px;
    right: -180px;
}

.orb-two {
    width: 550px;
    height: 550px;

    background:
        #7b9ab9;

    bottom: -300px;
    left: -250px;
}

.screen {
    display: none;
    min-height: 100vh;
}

.screen.active {
    display: block;
}

.login-layout {
    min-height: 100vh;

    display: grid;

    grid-template-columns:
        minmax(440px, 1.05fr)
        minmax(440px, .95fr);
}

.login-brand-panel {
    position: relative;

    padding:
        52px
        64px;

    display: flex;
    flex-direction: column;

    background:
        radial-gradient(
            circle at 75% 15%,
            rgba(203, 168, 101, .16),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #101f33,
            #0a1727 70%
        );

    color: white;
}

.master-brand {
    display: flex;
    align-items: center;

    gap: 14px;
}

.master-logo {
    width: 48px;
    height: 48px;

    border-radius: 15px;

    display: grid;
    place-items: center;

    font-family: Manrope;
    font-weight: 800;

    font-size: 22px;

    color:
        #132238;

    background:
        linear-gradient(
            145deg,
            #e4c884,
            #aa7c39
        );

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .25);
}

.master-logo.small {
    width: 38px;
    height: 38px;

    border-radius: 12px;

    font-size: 17px;
}

.master-name {
    font-family: Manrope;
    font-weight: 800;

    letter-spacing: .18em;

    font-size: 15px;
}

.master-label {
    margin-top: 3px;

    color:
        #8391a3;

    font-size: 10px;

    letter-spacing:
        .14em;
}

.brand-copy {
    margin:
        auto
        0;
}

.eyebrow {
    font-size: 10px;

    font-weight: 700;

    letter-spacing:
        .14em;

    color:
        var(--gold);

    text-transform:
        uppercase;
}

.brand-copy h1 {
    max-width:
        600px;

    margin:
        18px
        0
        22px;

    font-family:
        Manrope;

    font-size:
        clamp(
            42px,
            5vw,
            66px
        );

    line-height:
        1.04;

    letter-spacing:
        -.045em;
}

.brand-copy h1 span {
    color:
        #d9bc7b;
}

.brand-copy p {
    max-width:
        530px;

    margin: 0;

    color:
        #9da9b8;

    font-size:
        14px;

    line-height:
        1.7;
}

.brand-footer {
    display: flex;
    align-items: center;

    gap: 9px;

    color:
        #8e9cab;

    font-size:
        11px;
}

.live-dot {
    width: 8px;
    height: 8px;

    border-radius:
        50%;

    background:
        var(--green);

    box-shadow:
        0 0 0 5px
        rgba(45, 175, 125, .11);
}

.login-form-panel {
    display: grid;
    place-items: center;

    padding:
        40px;

    background:
        rgba(255, 255, 255, .86);

    backdrop-filter:
        blur(20px);
}

.login-box {
    width:
        min(420px, 100%);
}

.mobile-brand {
    display: none;

    align-items: center;

    gap: 10px;

    margin-bottom:
        38px;
}

.login-box h2 {
    margin:
        9px
        0
        7px;

    font-family:
        Manrope;

    font-size:
        31px;

    letter-spacing:
        -.03em;
}

.login-description {
    color:
        var(--muted);

    font-size:
        13px;

    margin-bottom:
        30px;
}

.field {
    margin-bottom:
        19px;
}

.field label {
    display:
        block;

    margin-bottom:
        8px;

    font-size:
        11px;

    font-weight:
        700;
}

.label-row {
    display:
        flex;

    justify-content:
        space-between;

    align-items:
        center;
}

.text-button {
    border: 0;
    background: none;

    padding: 0;

    color:
        var(--gold);

    font-size:
        10px;
}

.field input {
    width: 100%;

    height: 48px;

    border:
        1px solid
        var(--border);

    border-radius:
        13px;

    padding:
        0
        14px;

    background:
        #fafbfc;

    color:
        var(--text);

    outline:
        none;

    transition:
        .2s;
}

.field input:focus {
    border-color:
        #c4a76e;

    box-shadow:
        0 0 0 4px
        rgba(185, 148, 85, .08);

    background:
        white;
}

.password-wrap {
    position:
        relative;
}

.password-wrap input {
    padding-right:
        65px;
}

.password-toggle {
    position:
        absolute;

    right:
        13px;

    top:
        50%;

    transform:
        translateY(-50%);

    border: 0;

    background:
        none;

    color:
        var(--muted);

    font-size:
        10px;
}

.remember {
    display:
        flex;

    align-items:
        center;

    gap:
        8px;

    margin:
        3px
        0
        23px;

    color:
        var(--muted);

    font-size:
        11px;
}

.remember input {
    accent-color:
        var(--navy);
}

.login-button {
    width:
        100%;

    height:
        49px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        12px;

    border: 0;

    border-radius:
        13px;

    background:
        var(--navy);

    color:
        white;

    font-weight:
        700;

    font-size:
        12px;

    box-shadow:
        0 12px 30px
        rgba(16, 31, 51, .18);

    transition:
        .2s;
}

.login-button:hover {
    transform:
        translateY(-1px);

    background:
        #172b46;
}

.login-button span {
    color:
        #d9bd81;

    font-size:
        17px;
}

.login-error {
    min-height:
        18px;

    margin-top:
        9px;

    text-align:
        center;

    color:
        #b64a4a;

    font-size:
        10px;
}

.security-note {
    margin-top:
        28px;

    padding-top:
        22px;

    border-top:
        1px solid
        var(--border);

    display:
        flex;

    align-items:
        center;

    gap:
        10px;
}

.shield {
    width:
        32px;

    height:
        32px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        10px;

    background:
        #eff8f4;

    color:
        #21825e;

    font-size:
        12px;

    font-weight:
        800;
}

.security-note strong,
.security-note span {
    display:
        block;
}

.security-note strong {
    font-size:
        10px;
}

.security-note span {
    margin-top:
        3px;

    color:
        var(--muted);

    font-size:
        9px;
}

/* COMPANY SCREEN */

#companyScreen {
    background:
        #f5f6f8;
}

.workspace-header {
    min-height:
        76px;

    padding:
        0
        34px;

    background:
        rgba(255, 255, 255, .92);

    border-bottom:
        1px solid
        var(--border);

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    position:
        sticky;

    top: 0;

    z-index:
        10;

    backdrop-filter:
        blur(15px);
}

.workspace-brand {
    display:
        flex;

    align-items:
        center;

    gap:
        11px;
}

.workspace-name {
    font-family:
        Manrope;

    font-size:
        13px;

    font-weight:
        800;
}

.workspace-subtitle {
    margin-top:
        2px;

    color:
        var(--muted);

    font-size:
        9px;
}

.header-actions {
    display:
        flex;

    align-items:
        center;

    gap:
        14px;
}

.header-icon {
    width:
        38px;

    height:
        38px;

    border:
        1px solid
        var(--border);

    border-radius:
        11px;

    background:
        white;

    color:
        var(--navy);
}

.user-menu {
    display:
        flex;

    align-items:
        center;

    gap:
        9px;
}

.user-avatar {
    width:
        36px;

    height:
        36px;

    border-radius:
        11px;

    display:
        grid;

    place-items:
        center;

    background:
        var(--navy);

    color:
        white;

    font-size:
        10px;

    font-weight:
        800;
}

.user-name {
    font-size:
        11px;

    font-weight:
        700;
}

.user-role {
    margin-top:
        2px;

    color:
        var(--muted);

    font-size:
        9px;
}

.logout-button {
    border: 0;

    background:
        none;

    color:
        var(--muted);

    font-size:
        10px;
}

.company-page {
    width:
        min(1350px, calc(100% - 50px));

    margin:
        0
        auto;

    padding:
        52px
        0
        70px;
}

.company-heading {
    display:
        flex;

    justify-content:
        space-between;

    align-items:
        flex-end;

    margin-bottom:
        28px;
}

.company-heading h1 {
    margin:
        7px
        0
        5px;

    font-family:
        Manrope;

    font-size:
        30px;

    letter-spacing:
        -.035em;
}

.company-heading p {
    margin: 0;

    color:
        var(--muted);

    font-size:
        12px;
}

.system-online {
    display:
        flex;

    align-items:
        center;

    gap:
        8px;

    padding:
        9px
        12px;

    border:
        1px solid
        var(--border);

    border-radius:
        999px;

    background:
        white;

    color:
        var(--muted);

    font-size:
        10px;
}

.company-grid {
    display:
        grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap:
        17px;
}

.company-card {
    min-height:
        360px;

    padding:
        22px;

    display:
        flex;

    flex-direction:
        column;

    position:
        relative;

    overflow:
        hidden;

    border:
        1px solid
        var(--border);

    border-radius:
        var(--radius);

    background:
        white;

    box-shadow:
        0 8px 30px
        rgba(16, 31, 51, .04);

    transition:
        .25s;
}

.company-card:hover {
    transform:
        translateY(-4px);

    box-shadow:
        var(--shadow);
}

.company-card.mayam::after {
    content: "";

    position:
        absolute;

    width:
        220px;

    height:
        220px;

    right:
        -100px;

    top:
        -120px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(185, 148, 85, .15),
            transparent 68%
        );
}

.company-card.beebizz::after {
    content: "";

    position:
        absolute;

    width:
        220px;

    height:
        220px;

    right:
        -110px;

    top:
        -110px;

    border-radius:
        50%;

    background:
        radial-gradient(
            circle,
            rgba(88, 125, 170, .12),
            transparent 68%
        );
}

.company-card-top {
    display:
        flex;

    justify-content:
        space-between;

    align-items:
        flex-start;
}

.company-logo {
    width:
        54px;

    height:
        54px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        17px;

    font-family:
        Manrope;

    font-size:
        20px;

    font-weight:
        800;

    color:
        white;
}

.mayam-logo {
    background:
        linear-gradient(
            145deg,
            #182f4c,
            #0e1d31
        );

    box-shadow:
        0 10px 25px
        rgba(16, 31, 51, .17);
}

.beebizz-logo {
    background:
        linear-gradient(
            145deg,
            #346bb0,
            #1d467d
        );
}

.company-status {
    padding:
        6px
        9px;

    border-radius:
        999px;

    font-size:
        9px;

    font-weight:
        800;

    text-transform:
        uppercase;

    letter-spacing:
        .06em;
}

.active-status {
    color:
        #1f825e;

    background:
        #ebf8f3;
}

.active-status span {
    display:
        inline-block;

    width:
        6px;

    height:
        6px;

    margin-right:
        4px;

    border-radius:
        50%;

    background:
        var(--green);
}

.setup-status {
    color:
        #846a40;

    background:
        #f7f0e4;
}

.company-content {
    margin-top:
        29px;
}

.company-category {
    color:
        var(--gold);

    font-size:
        9px;

    font-weight:
        800;

    letter-spacing:
        .12em;
}

.company-content h2 {
    margin:
        7px
        0
        8px;

    font-family:
        Manrope;

    font-size:
        21px;

    letter-spacing:
        -.02em;
}

.company-content p {
    max-width:
        340px;

    margin: 0;

    color:
        var(--muted);

    font-size:
        11px;

    line-height:
        1.6;
}

.company-agents {
    display:
        flex;

    align-items:
        center;

    margin-top:
        26px;
}

.mini-avatar {
    width:
        29px;

    height:
        29px;

    margin-left:
        -5px;

    border:
        2px solid
        white;

    border-radius:
        9px;

    display:
        grid;

    place-items:
        center;

    background:
        #172d47;

    color:
        white;

    font-size:
        7px;

    font-weight:
        800;
}

.mini-avatar:first-child {
    margin-left:
        0;
}

.company-agents > span {
    margin-left:
        9px;

    color:
        var(--muted);

    font-size:
        9px;
}

.coming-space {
    margin-top:
        24px;

    padding:
        15px;

    border:
        1px dashed
        #d8dde4;

    border-radius:
        13px;

    display:
        flex;

    align-items:
        center;

    gap:
        10px;

    color:
        var(--muted);

    font-size:
        9px;
}

.coming-icon {
    width:
        27px;

    height:
        27px;

    border-radius:
        8px;

    display:
        grid;

    place-items:
        center;

    background:
        #f3f5f7;

    font-size:
        15px;
}

.company-footer {
    margin-top:
        auto;

    padding-top:
        21px;

    border-top:
        1px solid
        var(--border);

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;
}

.company-footer strong,
.company-footer span {
    display:
        block;
}

.company-footer strong {
    font-family:
        Manrope;

    font-size:
        17px;
}

.company-footer > div > span {
    margin-top:
        2px;

    color:
        var(--muted);

    font-size:
        8px;
}

.enter-button {
    height:
        38px;

    padding:
        0
        13px;

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    border: 0;

    border-radius:
        11px;

    background:
        var(--navy);

    color:
        white;

    font-size:
        9px;

    font-weight:
        700;
}

.enter-button span {
    color:
        #d5b675;
}

.enter-button.secondary {
    background:
        #eef2f6;

    color:
        #526172;
}

.add-company {
    border-style:
        dashed;

    background:
        rgba(255, 255, 255, .50);
}

.add-company-inner {
    height:
        100%;

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    text-align:
        center;
}

.add-icon {
    width:
        47px;

    height:
        47px;

    border-radius:
        15px;

    display:
        grid;

    place-items:
        center;

    background:
        white;

    border:
        1px solid
        var(--border);

    color:
        var(--gold);

    font-size:
        21px;
}

.add-company h3 {
    margin:
        16px
        0
        7px;

    font-family:
        Manrope;

    font-size:
        15px;
}

.add-company p {
    max-width:
        260px;

    margin: 0;

    color:
        var(--muted);

    font-size:
        10px;

    line-height:
        1.55;
}

.add-button {
    margin-top:
        18px;

    padding:
        9px
        12px;

    border:
        1px solid
        var(--border);

    border-radius:
        10px;

    background:
        white;

    color:
        var(--navy);

    font-size:
        9px;

    font-weight:
        700;
}

.overview-section {
    margin-top:
        42px;
}

.section-title h2 {
    margin:
        5px
        0
        15px;

    font-family:
        Manrope;

    font-size:
        17px;
}

.overview-cards {
    display:
        grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap:
        12px;
}

.overview-card {
    padding:
        17px;

    border:
        1px solid
        var(--border);

    border-radius:
        17px;

    background:
        white;
}

.overview-label {
    display:
        block;

    color:
        var(--muted);

    font-size:
        9px;
}

.overview-card strong {
    display:
        block;

    margin:
        8px
        0
        3px;

    font-family:
        Manrope;

    font-size:
        22px;
}

.overview-card small {
    color:
        var(--muted);

    font-size:
        8px;
}

.overview-card.attention {
    background:
        linear-gradient(
            145deg,
            white,
            #faf5eb
        );

    border-color:
        #eadfc9;
}

.healthy {
    color:
        #238461;
}

.workspace-footer {
    min-height:
        60px;

    padding:
        0
        34px;

    border-top:
        1px solid
        var(--border);

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    color:
        #8a939d;

    font-size:
        8px;
}

@media (max-width: 1050px) {

    .company-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .overview-cards {
        grid-template-columns:
            repeat(2, 1fr);
    }

}

@media (max-width: 850px) {

    .login-layout {
        grid-template-columns:
            1fr;
    }

    .login-brand-panel {
        display:
            none;
    }

    .login-form-panel {
        min-height:
            100vh;

        padding:
            28px;
    }

    .mobile-brand {
        display:
            flex;
    }

    .company-grid {
        grid-template-columns:
            1fr;
    }

    .company-heading {
        align-items:
            flex-start;

        gap:
            20px;

        flex-direction:
            column;
    }

    .workspace-header {
        padding:
            0
            16px;
    }

    .workspace-subtitle,
    .user-menu > div:not(.user-avatar),
    .header-icon {
        display:
            none;
    }

    .company-page {
        width:
            calc(100% - 28px);

        padding-top:
            35px;
    }

}

@media (max-width: 550px) {

    .overview-cards {
        grid-template-columns:
            1fr;
    }

}

/* ==========================================================
   OYA AI OFFICE — GLOBAL READABILITY
   Typography only. No palette/layout changes.
========================================================== */

html{
    font-size:16px;
}

body{
    font-size:15px;
    line-height:1.55;
}

button,
input,
select,
textarea{
    font-size:14px;
}

small{
    font-size:12px;
}

nav a,
.sidebar a,
.menu a{
    font-size:14px;
}

