@import url('fontface.less');
@import url('variables.less');

@media (max-width: 3000px) {

    //.larger();

    html,
    body {
        padding: 0;
        margin: 0;
        overflow: hidden;
        font-family: "SF Pro Display", sans-serif;
        font-size: 10px;
        font-weight: 500;
        background: @app-background;
        color: @accent;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        word-spacing: normal;
        -webkit-word-spacing: normal;
        -moz-osx-word-spacing: normal;
        -o-word-spacing: normal;
        background-image: url(../../public/bg.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: top;
        margin: 0;
    }

    * {
        font-family: "SF Pro Display", sans-serif;
        box-sizing: border-box;
    }

    h1, h2, h3, h4, h5, h6, p, ul, li, a {
        display: block;
        padding: 0;
        margin: 0;
        text-decoration: none;
        color: @accent;
    }

    app {
        position: relative;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-content: flex-start;
        justify-content: flex-start;
        overflow: hidden;
        max-width: 1280px;
        height: 100vh;
        padding: 3rem;
        margin: 0 auto;
        gap: 1rem;
    }

    .main {
        position: relative;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        flex: 1;
        padding: 0;

        .content-wrapper {
            position: relative;
            overflow: hidden;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            flex-direction: column;
            align-items: flex-start;
            justify-content: flex-start;
            height: 100%;
            padding: 0;
            border-radius: 0.6rem;
            background: @app-wrapper-background;
            box-shadow: 1px 3px 6px rgba(0,0,0,0.1);
            flex: 1;
        }

        .header {
        }
    }

    .side-panel {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: @side-panel-width;
        height: auto;
        border-radius: 0.6rem;

        .panel-wrapper {
            position: relative;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: flex-start;
            justify-content: space-between;
            width: 100%;
            height: auto;
            //background: white;
            background: @app-wrapper-background;
            box-shadow: 1px 3px 6px rgba(0,0,0,0.1);
            border-radius: 0.6rem;
            padding: 3rem 0;
            gap: 3rem;

            .logo {
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: flex-start;
                width: 100%;
                height: 3.6rem;
                padding: 0 3rem;
                flex-shrink: 0;

                svg {
                    height: 3.2rem;
                }
            }

            .nav {
                position: relative;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: space-between;
                width: 100%;
                flex: 1;
                gap: 3rem;
                
                .top-nav {
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    align-items: flex-start;
                    justify-content: flex-start;
                    width: 100%;
                    gap: 3rem;
                }

                .bottom-nav {
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    align-items: flex-start;
                    justify-content: flex-start;
                    width: 100%;
                }

                .nav-group {
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    align-items: flex-start;
                    justify-content: flex-start;
                    width: 100%;
                    gap: 1rem;

                    .nav-title {
                        position: relative;
                        display: block;
                        width: 100%;
                        padding: 0 3rem;

                        span {
                            font-size: @text-small-size;
                            font-weight: 700;
                            color: @text-3;
                        }
                    }

                    .menu {
                        position: relative;
                        display: flex;
                        flex-direction: column;
                        flex-wrap: nowrap;
                        align-items: flex-start;
                        justify-content: flex-start;
                        width: 100%;

                        ul {
                            position: relative;
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                            align-items: flex-start;
                            justify-content: flex-start;
                            width: 100%;

                            li {
                                position: relative;
                                display: flex;
                                flex-direction: row;
                                flex-wrap: nowrap;
                                align-items: flex-start;
                                justify-content: flex-start;
                                width: 100%;

                                a {
                                    position: relative;
                                    display: flex;
                                    flex-direction: row;
                                    flex-wrap: nowrap;
                                    align-items: center;
                                    justify-content: flex-start;
                                    width: 100%;
                                    height: 4.3rem;
                                    padding: 0 3rem;
                                    color: @text-3;
                                    gap: 0.6rem;

                                    span {
                                        font-size: @text-normal-size;
                                        transition: all 0.15s ease-in-out;

                                        &.icon {
                                            font-size: @icon-medium-size;
                                            transition: all 0.15s ease-in-out;
                                        }
                                    }

                                    &:hover, &.active {
                                        span {
                                            color: @accent;

                                            &.icon {
                                                color: @primary-color;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .container {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        max-width: 960px;
    }

    .page-header {
        position: relative;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 3rem 3rem 2rem 3rem;

        .page-title {
            position: relative;
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: flex-start;
            flex: 1;
            height: 3.6rem;

            h1 {
                position: relative;
                font-size: @page-title-size;
            }
        }

        .right-content {
            position: relative;
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: flex-end;
            flex: 1;
            height: 3.6rem;
            gap: 1.6rem;

            .date {
                position: relative;
                font-size: @text-medium-size;
            }

            .status {
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: center;
                height: 3.2rem;
                padding: 0 2rem;
                background: grey;
                border-radius: 0.6rem;
                font-size: @text-normal-size;
                font-weight: 600;
            }

            #status1 {
                background: @border !important;
            }
            #status2 {
                background: @warning-hover-color !important;
            }
            #status3 {
                background: @approved-hover-color !important;
                color: white;
            }
            #status4 {
                background: @in-progress-hover-color !important;
                color: white;
            }
            #status5 {
                background: @open-hover-color !important;
            }
        }
    }

    #cpres {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        gap: 3rem;
        padding: 3rem 0;

        .success-message {
            position: relative;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: center;
            width: 100%;
            font-size: @page-title-size;
            font-weight: 600;
        }

        .token-info {
            position: relative;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: flex-start;
            width: 100%;
            gap: 1.6rem;

            .pre-text {
                font-size: @text-large-size;
                font-weight: 500;
                color: @text-3;
            }

            .phrase {
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: center;
                padding: 0 2rem;
                height: 5.6rem;
                font-size: @text-large-size;
                font-weight: 600;
                background: white;
                letter-spacing: 0.3rem;
                border-radius: 0.6rem;
                box-shadow: 0 3px 6px rgba(0,0,0,0.1);
            }

            .warning {
                font-size: @text-medium-size;
                font-weight: 500;
                color: @text-3;
            }
        }
    }

    .complaint-details {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        padding: 0 3rem;
        gap: 2rem;

        .details-wrapper {
            position: relative;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: flex-start;
            width: 100%;
            background: white;
            box-shadow: 0 3px 6px rgba(0,0,0,0.1);
            border-radius: 0.6rem;
            padding: 0 2rem;
            gap: 1.6rem;

            .element {
                position: relative;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: flex-start;
                justify-content: flex-start;
                flex: 1;
                padding: 1.6rem 0;
                gap: 0.3rem;

                .label {
                    font-size: @text-normal-size;
                    font-weight: 600;
                    color: @accent;
                    white-space: nowrap;
                }
                .value {
                    font-size: @text-medium-size;
                    font-weight: 400;
                    color: @text-3;
                    white-space: nowrap;

                    &.wrap {
                        white-space: normal;
                    }
                }
            }

            &.inline-details {
                background: transparent;
                box-shadow: none;
                padding: 0;

                .element {
                    flex-direction: row;
                    align-items: center;
                    padding: 0;
                    gap: 1.3rem;
                }
            }
        }
    }

    .complaint-description {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        padding: 3rem;
        gap: 1rem;

        .label {
            font-size: @text-normal-size;
            font-weight: 600;
            color: @accent;
        }

        .value {
            font-size: @text-medium-size !important;
            font-weight: 400 !important;
            color: @text-3;

            p {
                font-size: @text-medium-size !important;
                font-weight: 400 !important;
                color: @text-3 !important;
            }

            ul {
                position: relative;
                display: block;
                padding: 1rem 0 1rem 2rem !important;
    
                li {
                    display: list-item !important;
                    font-size: @text-medium-size !important;
                    font-weight: 400 !important;
                    color: @text-3 !important;

                    span {
                        display: list-item !important;
                        font-size: @text-medium-size !important;
                        font-weight: 400 !important;
                        color: @text-3 !important;
                    }
                }
            }
    
            ol {
                position: relative;
                display: block;
                padding: 1rem 0 1rem 2rem !important;
    
                li {
                    display: list-item !important;
                    list-style-type: decimal;
                    font-size: @text-medium-size !important;
                    font-weight: 400 !important;
                    color: @text-3 !important;

                    span {
                        display: list-item !important;
                        font-size: @text-medium-size !important;
                        font-weight: 400 !important;
                        color: @text-3 !important;
                    }
                }
            }
        }
    }

    .home-section {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        flex: 1;
        padding: 0 2rem 2rem 2rem;

        .banner {
            position: relative;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: flex-start;
            justify-content: flex-start;
            width: 100%;
            flex: 1;
            //background: linear-gradient(to bottom, rgba(@primary-color-rgb,0.15) 0%, rgba(@primary-color-rgb,0.05) 100%);
            //background-image: url(../../public/banner-bg-fully.jpg);
            border: 1px solid @border;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center;
            border-radius: 0.6rem;

            .banner-wrapper {
                position: relative;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: center;
                width: 100%;
                //background: linear-gradient(136deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.1) 100%);
                //background: linear-gradient(to top, rgba(0,0,0,0.66) 0%, rgba(0,0,0,0.46) 100%);
                padding: 4.6rem 3rem 4.3rem 3rem;
                flex: 1;
                gap: 4.3rem;

                .container {

                    &.fill {
                        flex: 1;
                        justify-content: center;
                        gap: 3rem;
                    }
                }

                .content-top {
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    align-items: flex-start;
                    justify-content: flex-start;
                    width: 100%;
        
                    .banner-title {
                        position: relative;
                        display: flex;
                        flex-direction: column;
                        flex-wrap: nowrap;
                        align-items: center;
                        justify-content: flex-start;
                        width: 100%;
                        gap: 1rem;
        
                        h2 {
                            position: relative;
                            display: block;
                            font-size: 3.2rem;
                            font-weight: 700;
                            color: @accent;
                            margin: 0 0 1rem 0;
                            text-align: center;
                            //text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.3);
                        }

                        p {
                            position: relative;
                            display: block;
                            font-size: @text-normal-size;
                            text-transform: uppercase;
                            letter-spacing: 0.03rem;
                            color: @text-3;
                            text-align: center;
                            //text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
                        }
                    }
                }
        
                .content-bottom {
                    position: relative;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    align-items: flex-start;
                    justify-content: center;
                    width: 100%;

                    .action-panel {
                        position: relative;
                        display: grid;
                        grid-template-columns: repeat(2, 1fr);
                        width: 100%;
                        padding: 0;
                        gap: 2rem;

                        .action {
                            position: relative;
                            display: flex;
                            flex-direction: column;
                            flex-wrap: nowrap;
                            align-items: flex-start;
                            justify-content: space-between;
                            flex: 1;
                            height: 100%;
                            background: white;
                            border-radius: 0.6rem;
                            padding: 2rem;
                            gap: 1rem;
                            cursor: pointer;
                            box-shadow: 1px 3px 6px rgba(0,0,0,0.1);

                            .action-title {
                                position: relative;
                                display: block;
                                width: 100%;
                                font-size: @text-large-size;
                                font-weight: 700;
                                color: @accent;
                            }

                            .caption {
                                position: relative;
                                display: flex;
                                flex-direction: row;
                                flex-wrap: nowrap;
                                align-items: flex-end;
                                justify-content: space-between;
                                width: 100%;
                                gap: 2rem;

                                .action-description {
                                    position: relative;
                                    display: block;
                                    flex: 1;

                                    p {
                                        font-size: @text-normal-size;
                                        font-weight: 500;
                                        color: @text-3;
                                    }
                                }
                                .action-trigger {
                                    position: relative;
                                    display: block;

                                    .icon {
                                        position: relative;
                                        font-size: @icon-large-size;
                                        color: @primary-color;
                                    }
                                }

                            }
                        }
                    }
                }
            }
        }
    }

    .section {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        
        &.fill {
            flex: 1;
        }
    }

    .home-text {
        position: relative;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        justify-content: flex-start;
        padding: 0;
        width: 100%;

        gap: 1.6rem;

        p {
            font-size: @text-normal-size;
            line-height: 1.6rem;
            text-align: left;
            color: @text-3;
            text-align: left;
        }
    }

    form {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        max-width: 960px;
        gap: 2rem;

        .form-element {
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: flex-start;
            width: 100%;
            gap: 1rem;
        }

        .form-action {
            position: relative;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: center;
            padding: 3rem;
            width: 100%;

            button {
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: center;
                gap: 1.3rem;
                height: 3.6rem;
                padding: 0 2rem 0 2rem;
                border: none;
                background: @primary-color;
                font-size: @text-medium-size;
                font-weight: 600;
                color: white;
                border-radius: 0.6rem;
                cursor: pointer;
            }
        }

        label {
            font-size: @text-small-size;
            font-weight: 600;
            color: @accent;
        }

        input {
            position: relative;
            display: block;
            width: 100%;
            height: 3.6rem;
            background: white;
            border: 1px solid @border;
            border-radius: 0.6rem;
            outline: none;
            padding: 0 1rem;
        }

        textarea {
            position: relative;
            display: block;
            width: 100%;
            min-height: 26rem;
            background: white;
            border: 1px solid @border;
            border-radius: 0.6rem;
            outline: none;
            padding: 1rem;
        }

        select {
            max-width: 26rem;
        }
    }

    .complaint-wrapper {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        padding: 0 3rem 3rem 3rem;

        &.centered-content {
            justify-content: center;
            flex: 1;
        }

        form {
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: flex-start;
            width: 100%;
            gap: 2rem;
        }
    }

    .frame-nav {
        position: relative;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        width: 100%;
        padding: 3rem 0;
        gap: 2rem;

        .nav-item {
            position: relative;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: flex-start;
            //flex: 1;
            cursor: pointer;

            .bullet {
                position: relative;
                display: flex;
                flex-direction: column;
                flex-wrap: nowrap;
                align-items: center;
                justify-content: center;
                width: 3.6rem;
                height: 3.6rem;
                background: transparent;
                border: 2px solid @secondary-color;
                font-size: @text-medium-size;
                font-weight: 600;
                color: @text-5;
                border-radius: 2.5rem;
            }

            .label {
                position: relative;
                display: none;
                font-size: @text-medium-size;
                font-weight: 600;
                padding: 0 0 0 1.3rem;
                color: @text-5;
            }

            &:last-child {
                flex-grow: 0;
                
                .label {
                    padding: 0 0 0 1.3rem;
                }
            }

            &.active {
                .bullet {
                    border-color: @primary-color;
                    color: @primary-color;
                }
                .label {
                    display: block;
                    color: @accent;
                }
                .sep {
                    display: none;
                }
            }
        }
    }

    .selection-frame {
        position: relative;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        padding: 0;
        gap: 2rem;

        .selection-card {
            position: relative;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: flex-start;
            justify-content: flex-start;
            flex: 1;
            background: @app-frame-color;
            box-shadow: 1px 3px 6px rgba(0,0,0,0.1);
            border-radius: 0.6rem;
            padding: 2rem;
            gap: 0.6rem;
            cursor: pointer;

            &.full {
                flex: 100%;
                width: 100%;
            }

            .title {
                position: relative;
                font-size: @text-large-size;
                font-weight: 600;
                width: 100%;
            }

            .caption {
                position: relative;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: flex-end;
                justify-content: flex-start;
                width: 100%;
                gap: 2rem;


                .description {
                    position: relative;
                    flex: 1;

                    p {
                        font-size: @text-small-size;
                        line-height: 1.6rem;
                        color: @text-3;
                        min-height: 2.9rem;
                    }
                }

                .card-trigger {
                    position: relative;
                    display: block;

                    .icon {
                        position: relative;
                        font-size: @icon-large-size;
                        color: @primary-color;
                    }
                }
            }
        }

        .selection-title {
            position: relative;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            justify-content: center;
            flex: 100%;
            width: 100%;
            padding: 3rem;

            h2 {
                position: relative;
                display: block;
                font-size: @page-title-size;
                font-weight: 600;
            }
        }
    }

    .auth-wrapper {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        flex: 1;
        padding: 0 3rem 3rem 3rem;

        .auth-box {
            position: relative;
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            align-items: flex-start;
            justify-content: flex-start;
            background: @app-frame-color;
            width: 43rem;
            padding: 3rem;
            border-radius: 0.6rem;
            gap:0;

            .auth-title {
                position: relative;
                display: block;
                width: 100%;
                margin: 0 0 0.9rem 0;

                span {
                    font-size: @text-giant-size;
                    font-weight: 600;
                }
            }

            .auth-text {
                position: relative;
                display: block;
                width: 100%;
                margin: 0 0 3rem 0;

                p {
                    position: relative;
                    display: block;
                    width: 100%;
                    font-size: @text-normal-size;
                    font-weight: 400;
                    line-height: 1.6rem;
                    color: @text-3;
                }
            }

            form {
                position: relative;
                display: flex;

                .form-action {
                    padding: 1rem 3rem 0 3rem;
                }

                button {
                    position: relative;
                    display: flex;
                    flex-direction: row;
                    flex-wrap: nowrap;
                    align-items: center;
                    justify-content: center;
                    gap: 0.6rem;
                    height: 3.6rem;
                    padding: 0 2rem 0 2rem;
                    border: none;
                    background: @primary-color;
                    font-size: @text-medium-size;
                    font-weight: 600;
                    color: white;
                    border-radius: 0.6rem;
                    cursor: pointer;

                    .icon {
                        font-size: @text-large-size;
                    }
                }
            }
        }
    }

    .toolbar {
        position: relative;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        width: 100%;
        border: 1px solid @border;
        background: white;
        padding: 1rem;
    }

    .toolbar button {
        background: none;
        border: none;
        padding: 5px;
        cursor: pointer;
    }

    .editor {
        border: 1px solid @border;
        width: 100%;
        min-height: 200px;
        padding: 10px;
        margin-top: 5px;
        background: white;
        border-radius: 0.6rem;
        font-size: @text-normal-size !important;
        font-weight: 400;

        p {
        }

        ul {
            position: relative;
            display: block;
            padding: 1rem 0 1rem 2rem !important;

            li {
                display: list-item !important;
            }
        }

        ol {
            position: relative;
            display: block;
            padding: 1rem 0 1rem 2rem !important;

            li {
                display: list-item !important;
                list-style-type: decimal;
            }
        }
    }
}