﻿/*==================================================
AIRA.CSS
Aira AI Assistant
Pendamping Ginjal Sehat
==================================================*/

/*=========================================
WIDGET
=========================================*/

.aira-widget{

    position:fixed;

    right:20px;

    bottom:20px;

    z-index:9999;

}

/*=========================================
AVATAR
=========================================*/

.aira-avatar{

    width:72px;

    height:72px;

    border-radius:50%;

    overflow:hidden;

    cursor:pointer;

    background:#fff;

    border:4px solid #fff;

    box-shadow:
        0 12px 30px rgba(0,188,212,.25);

    animation:airaFloat 3s ease-in-out infinite;

    transition:.3s;

}

.aira-avatar:hover{

    transform:scale(1.05);

}

.aira-avatar img{

    width:100%;

    height:100%;

    object-fit:cover;

}

/*=========================================
ONLINE INDICATOR
=========================================*/

.aira-online{

    position:absolute;

    right:5px;

    bottom:5px;

    width:16px;

    height:16px;

    border-radius:50%;

    background:#2ecc71;

    border:2px solid #fff;

}

/*=========================================
CHAT BUBBLE
=========================================*/

.aira-bubble{

    position:absolute;

    right:88px;

    bottom:12px;

    width:270px;

    background:#fff;

    border-radius:18px;

    padding:18px;

    box-shadow:
        0 15px 35px rgba(0,0,0,.15);

}

.aira-bubble::after{

    content:"";

    position:absolute;

    right:-10px;

    bottom:25px;

    border-width:10px 0 10px 12px;

    border-style:solid;

    border-color:
        transparent
        transparent
        transparent
        #fff;

}

/*=========================================
TITLE
=========================================*/

.aira-title{

    font-size:16px;

    font-weight:700;

    color:#00a8c6;

    margin-bottom:8px;

}

/*=========================================
MESSAGE
=========================================*/

.aira-message{

    font-size:13px;

    color:#555;

    line-height:1.7;

}

/*=========================================
BUTTON
=========================================*/

.aira-btn{

    margin-top:12px;

    display:inline-block;

    padding:8px 16px;

    border-radius:30px;

    background:#00bcd4;

    color:#fff;

    font-size:13px;

    font-weight:600;

    transition:.3s;

}

.aira-btn:hover{

    background:#0097a7;

    color:#fff;

    text-decoration:none;

}

/*=========================================
ANIMATION
=========================================*/

@keyframes airaFloat{

0%{
    transform:translateY(0);
}

50%{
    transform:translateY(-8px);
}

100%{
    transform:translateY(0);
}

}
/*==================================================
BASE.CSS
Pendamping Ginjal Sehat
==================================================*/

/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{

    width:100%;
    overflow-x:hidden;

}

body{

    font-family:'Poppins',sans-serif;

    font-size:14px;

    background:#edf7fb;

    color:#444;

    line-height:1.6;

    overflow-x:hidden;

}

/* LINK */

a{

    color:#2196f3;

    text-decoration:none;

    transition:.3s;

}

a:hover{

    color:#0d6efd;

    text-decoration:none;

}

/* IMAGE */

img{

    max-width:100%;

    height:auto;

}

/* CARD */

.card{

    border:none;

}

/* SHADOW */

.shadow-soft{

    box-shadow:
    0 10px 35px rgba(0,0,0,.08);

}

/* RADIUS */

.radius-15{

    border-radius:15px;

}

.radius-20{

    border-radius:20px;

}

.radius-25{

    border-radius:25px;

}

/* BACKGROUND */

.bg-primary-soft{

    background:#eef8ff;

}

.bg-info-soft{

    background:#e8fbff;

}

/* TEXT */

.text-primary{

    color:#114b8c!important;

}

.text-info{

    color:#00bcd4!important;

}

.text-muted{

    color:#888!important;

}

/* TITLE */

.section-title{

    font-size:22px;

    font-weight:700;

    color:#114b8c;

}

/* SUB TITLE */

.section-subtitle{

    color:#777;

    font-size:14px;

}

/* ANIMATION */

.transition{

    transition:.3s;

}

.fade-hover:hover{

    transform:translateY(-3px);

}

#previewFoto{

    width:180px;
    height:180px;

    object-fit:cover;

    border-radius:15px;

    border:3px solid #0d6efd;

    box-shadow:0 4px 15px rgba(0,0,0,.15);

}
/*==================================================
BUTTON.CSS
Pendamping Ginjal Sehat
==================================================*/

/* Button Default */

.btn{

    border-radius:14px;

    font-weight:600;

    transition:.3s;

}

/* Login & Register */

.btn-login,
.btn-register{

    width:100%;

    height:56px;

    border:none;

    color:#fff;

    font-size:16px;

    background:linear-gradient(
        90deg,
        #00bcd4,
        #2196f3
    );

    box-shadow:
        0 8px 20px rgba(33,150,243,.25);

}

.btn-login:hover,
.btn-register:hover{

    color:#fff;

    transform:translateY(-2px);

    background:linear-gradient(
        90deg,
        #00acc1,
        #1976d2
    );

}

/* Outline */

.btn-outline-primary{

    border:1px solid #2196f3;

    color:#2196f3;

    background:#fff;

}

.btn-outline-primary:hover{

    color:#fff;

    background:#2196f3;

}

/* Success */

.btn-success{

    background:#28a745;

    border:none;

}

.btn-success:hover{

    background:#218838;

}

/* Danger */

.btn-danger{

    border:none;

}

/* Small */

.btn-sm{

    border-radius:10px;

    padding:8px 15px;

}

/* Icon */

.btn i{

    margin-right:8px;

}

/* Full Width */

.btn-block{

    width:100%;

}

/* Disabled */

.btn:disabled{

    opacity:.7;

    cursor:not-allowed;

}

/* Responsive */

@media(max-width:576px){

.btn-login,
.btn-register{

    height:52px;

    font-size:15px;

}

}
/*==================================================
CARD.CSS
Pendamping Ginjal Sehat
====================================================*/

/* Wrapper */

.login-wrapper{

    position:relative;

    z-index:10;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:20px;

    margin-top:-120px;

}

/* Card */

.login-card{

    width:100%;

    max-width:460px;

    border:none;

    border-radius:28px;

    overflow:hidden;

    background:rgba(255,255,255,.96);

    backdrop-filter:blur(15px);

    -webkit-backdrop-filter:blur(15px);

    box-shadow:
        0 20px 55px rgba(0,0,0,.15);

    transition:.3s;

}

.login-card:hover{

    transform:translateY(-3px);

    box-shadow:
        0 25px 60px rgba(0,0,0,.18);

}

/* Body */

.login-body{

    padding:35px;

}

/* Divider */

.card-divider{

    height:1px;

    background:#edf2f7;

    margin:25px 0;

}

/* Alert */

.card-alert{

    border-radius:15px;

    margin-bottom:20px;

}

/* Responsive */

@media(max-width:768px){

.login-wrapper{

    margin-top:-190px;

}

.login-body{

    padding:25px;

}

}

@media(max-width:576px){

.login-wrapper{

    padding:15px;

}

.login-card{

    border-radius:22px;

}

.login-body{

    padding:20px;

}

}
/*==================================================
FOOTER.CSS
Pendamping Ginjal Sehat
==================================================*/

/*=========================================
FOOTER
=========================================*/

.app-footer{

    margin-top:30px;

    padding:25px 15px;

    text-align:center;

    color:#777;

    font-size:13px;

}

/*=========================================
COPYRIGHT
=========================================*/

.app-footer strong{

    color:#114b8c;

}

/*=========================================
DESCRIPTION
=========================================*/

.footer-description{

    margin-top:8px;

    color:#999;

    font-size:12px;

}

/*=========================================
LINK
=========================================*/

.footer-link{

    color:#00bcd4;

    font-weight:500;

    transition:.3s;

}

.footer-link:hover{

    color:#0d6efd;

    text-decoration:none;

}

/*=========================================
SOCIAL
=========================================*/

.footer-social{

    margin-top:15px;

}

.footer-social a{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    width:40px;

    height:40px;

    margin:0 5px;

    border-radius:50%;

    background:#fff;

    color:#00bcd4;

    box-shadow:0 5px 15px rgba(0,0,0,.08);

    transition:.3s;

}

.footer-social a:hover{

    background:#00bcd4;

    color:#fff;

    transform:translateY(-3px);

}

/*=========================================
VERSION
=========================================*/

.footer-version{

    margin-top:10px;

    font-size:11px;

    color:#aaa;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:576px){

.app-footer{

    padding:20px 10px;

    font-size:12px;

}

.footer-social a{

    width:36px;

    height:36px;

    margin:0 3px;

}

.footer-description{

    font-size:11px;

}

.footer-version{

    font-size:10px;

}

}
/*==================================================
FORM.CSS
Pendamping Ginjal Sehat
==================================================*/

/* Judul Section */

.form-title{

    font-size:18px;

    font-weight:600;

    color:#114b8c;

    margin-bottom:20px;

}

/* Form Group */

.form-group{

    margin-bottom:18px;

}

/* Label */

.form-group label{

    display:block;

    margin-bottom:8px;

    font-size:14px;

    font-weight:600;

    color:#555;

}

/* Input */

.form-control{

    width:100%;

    height:55px;

    border:1px solid #d9e4ec;

    border-radius:14px;

    padding:0 18px;

    font-size:14px;

    color:#444;

    background:#fff;

    transition:.3s;

}

/* Textarea */

textarea.form-control{

    min-height:120px;

    padding:15px 18px;

    resize:vertical;

}

/* Select */

select.form-control{

    appearance:none;

    -webkit-appearance:none;

    background:#fff;

}

/* Focus */

.form-control:focus{

    outline:none;

    border-color:#00bcd4;

    box-shadow:0 0 0 .2rem rgba(0,188,212,.15);

}

/* Placeholder */

.form-control::placeholder{

    color:#aaa;

}

/* Input Group */

.input-group{

    display:flex;

    width:100%;

}

.input-group .form-control{

    border-radius:14px 0 0 14px;

    border-right:none;

}

.input-group-append{

    display:flex;

}

.input-group .btn{

    border-radius:0 14px 14px 0;

}

/* Checkbox */

.form-check{

    display:flex;

    align-items:center;

    margin-top:10px;

}

.form-check-input{

    margin-right:10px;

}

.form-check-label{

    font-size:14px;

    color:#555;

}

/* Radio */

.form-radio{

    display:flex;

    gap:20px;

    margin-top:10px;

}

.form-radio label{

    font-weight:500;

}

/* Validation */

.is-invalid{

    border-color:#dc3545!important;

}

.is-valid{

    border-color:#28a745!important;

}

.invalid-feedback{

    display:block;

    margin-top:5px;

    font-size:12px;

    color:#dc3545;

}

/* Responsive */

@media(max-width:576px){

.form-control{

    height:50px;

    font-size:13px;

}

textarea.form-control{

    min-height:100px;

}

}

/*==================================================
HEADER.CSS
Pendamping Ginjal Sehat
==================================================*/

/* HEADER */

.login-header{

    position:relative;

    width:100%;

    height:260px;

    background:
    linear-gradient(
    rgba(255,255,255,.15),
    rgba(255,255,255,.20)),
    url('../img/login-banner.webp');

    background-size:cover;

    background-repeat:no-repeat;

    background-position:center;

    border-bottom-left-radius:40px;

    border-bottom-right-radius:40px;

    overflow:hidden;

}

/* OVERLAY */

.login-header::before{

    content:'';

    position:absolute;

    inset:0;

    background:
    linear-gradient(
    rgba(0,188,212,.08),
    rgba(33,150,243,.08));

}

/* BOTTOM GRADIENT */

.login-header::after{

    content:'';

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:120px;

    background:
    linear-gradient(
    transparent,
    #edf7fb);

}


/* RESPONSIVE */

@media(max-width:768px){

.login-header{

    height:220px;

    background:url('../img/login-banner.webp');

    background-repeat:no-repeat;

    background-position:center top;

    background-size:contain;

    background-color:#edf7fb;

}

.login-wrapper{

    margin-top:-170px;

}

.login-card{

    max-width:100%;

}

.login-body{

    padding:25px;

}

}

@media(max-width:576px){

.login-header{

    height:300px;

}

.login-wrapper{

    margin-top:-170px;

    padding:15px;

}

.login-card{

    border-radius:22px;

}

.login-body{

    padding:20px;

}

}
/*==================================================
HEADER.CSS
Pendamping Ginjal Sehat
==================================================*/

/* HEADER */

.login-header{

    position:relative;

    width:100%;

    height:260px;

    background:
    linear-gradient(
    rgba(255,255,255,.15),
    rgba(255,255,255,.20)),
    url('../img/login-banner.webp');

    background-size:cover;

    background-repeat:no-repeat;

    background-position:center;

    border-bottom-left-radius:40px;

    border-bottom-right-radius:40px;

    overflow:hidden;

}

/* OVERLAY */

.login-header::before{

    content:'';

    position:absolute;

    inset:0;

    background:
    linear-gradient(
    rgba(0,188,212,.08),
    rgba(33,150,243,.08));

}

/* BOTTOM GRADIENT */

.login-header::after{

    content:'';

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    height:120px;

    background:
    linear-gradient(
    transparent,
    #edf7fb);

}

/* WRAPPER */

.login-wrapper{

    position:relative;

    z-index:10;

    margin-top:-150px;

    display:flex;

    justify-content:center;

    padding:20px;

}

/* CARD */

.login-card{

    width:100%;

    max-width:470px;

    border:none;

    border-radius:28px;

    overflow:hidden;

    background:rgba(255,255,255,.97);

    backdrop-filter:blur(12px);

    box-shadow:
    0 18px 55px rgba(0,0,0,.15);

}

/* BODY */

.login-body{

    padding:35px;

}

/* RESPONSIVE */

@media(max-width:768px){

.login-header{

    height:220px;

    background:url('../img/login-banner.webp');

    background-repeat:no-repeat;

    background-position:center top;

    background-size:contain;

    background-color:#edf7fb;

}

.login-wrapper{

    margin-top:-170px;

}

.login-card{

    max-width:100%;

}

.login-body{

    padding:25px;

}

}

@media(max-width:576px){

.login-header{

    height:300px;

}

.login-wrapper{

    margin-top:-170px;

    padding:15px;

}

.login-card{

    border-radius:22px;

}

.login-body{

    padding:20px;

}

}
/*==================================================
LOGO.CSS
Pendamping Ginjal Sehat
====================================================*/

/* Logo */

.logo-box{

    text-align:center;

    margin-bottom:28px;

}

/* Logo Card */

.logo-card{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    width:110px;

    height:110px;

    background:#ffffff;

    border-radius:30px;

    box-shadow:
        0 12px 30px rgba(0,0,0,.08);

    transition:.3s;

}

.logo-card:hover{

    transform:scale(1.04);

}

/* Logo */

.logo-navbar{

    width:78px;

    height:auto;

}

/* Title */

.logo-title{

    margin-top:18px;

    font-size:26px;

    font-weight:700;

    color:#114b8c;

}

/* Subtitle */

.logo-subtitle{

    margin-top:6px;

    font-size:14px;

    color:#666;

}

/* Badge */

.logo-badge{

    display:inline-block;

    margin-top:12px;

    padding:8px 18px;

    background:#e8f7ff;

    color:#00a8c6;

    border-radius:50px;

    font-size:13px;

    font-weight:600;

}

/* Responsive */

@media(max-width:768px){

.logo-card{

    width:95px;

    height:95px;

    border-radius:25px;

}

.logo-navbar{

    width:65px;

}

.logo-title{

    font-size:22px;

}

.logo-subtitle{

    font-size:13px;

}

}

@media(max-width:576px){

.logo-card{

    width:85px;

    height:85px;

}

.logo-navbar{

    width:58px;

}

.logo-title{

    font-size:20px;

}

.logo-subtitle{

    font-size:12px;

}

.logo-badge{

    font-size:12px;

    padding:7px 16px;

}

}
/*==================================================
RESPONSIVE.CSS
Pendamping Ginjal Sehat
==================================================*/

/*=========================================
TABLET
=========================================*/

@media(max-width:991px){

.login-wrapper{

    margin-top:-200px;

}

.login-card{

    max-width:520px;

}

.logo-title{

    font-size:24px;

}

.role-box{

    gap:10px;

}

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:768px){

.login-header{

    height:320px;

    background:url("../img/login-banner.webp");

    background-repeat:no-repeat;

    background-position:center top;

    background-size:contain;

    background-color:#eef7fb;

}

.login-wrapper{

    margin-top:-200px;

    padding:18px;

}

.login-body{

    padding:25px;

}

.logo-card{

    width:90px;

    height:90px;

}

.logo-navbar{

    width:64px;

}

.logo-title{

    font-size:22px;

}

.logo-subtitle{

    font-size:13px;

}

.form-control{

    height:52px;

}

.btn-login,
.btn-register{

    height:52px;

}

}

/*=========================================
SMALL MOBILE
=========================================*/
@media (max-width:576px){

    .login-header{

        height:220px;

        background-size:cover;
        background-position:center;

    }

    .login-wrapper{

        width:100%;
        max-width:100%;

        margin:0 auto;
        margin-top:-120px;

        padding:12px;

    }

    .login-card{

        width:100%;
        max-width:100%;
        border-radius:20px;

    }

    .login-body{

        padding:18px;

    }

}

.role-item{

    width:100%;

}

.form-control{

    height:48px;

    font-size:14px;

}

textarea.form-control{

    min-height:100px;

}

.btn{

    font-size:15px;

}

.logo-card{

    width:80px;

    height:80px;

}

.logo-navbar{

    width:55px;

}

.logo-title{

    font-size:20px;

}

.logo-subtitle{

    font-size:12px;

}

}

/*=========================================
AIRA RESPONSIVE
=========================================*/

@media(max-width:768px){

.aira-widget{

    right:15px;

    bottom:15px;

}

.aira-avatar{

    width:60px;

    height:60px;

}

.aira-bubble{

    width:220px;

    right:70px;

    padding:15px;

}

.aira-title{

    font-size:15px;

}

.aira-message{

    font-size:12px;

}

}

@media(max-width:480px){

.aira-bubble{

    width:190px;

}

}
/*==================================================
ROLE.CSS
Pendamping Ginjal Sehat
==================================================*/

/*=========================================
ROLE WRAPPER
=========================================*/

.role-box{

    display:flex;

    gap:12px;

    margin-bottom:25px;

}

/*=========================================
ROLE ITEM
=========================================*/

.role-item{

    flex:1;

    background:#f8fbff;

    border:1px solid #dceaf5;

    border-radius:16px;

    text-align:center;

    padding:15px 10px;

    cursor:pointer;

    transition:.3s;

}

.role-item:hover{

    background:#eef8ff;

    transform:translateY(-3px);

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

/*=========================================
ACTIVE
=========================================*/

.role-item.active{

    background:linear-gradient(
        135deg,
        #00bcd4,
        #2196f3
    );

    color:#fff;

    border-color:transparent;

    box-shadow:0 10px 25px rgba(33,150,243,.25);

}

.role-item.active i{

    color:#fff !important;

}

/*=========================================
ICON
=========================================*/

.role-item i{

    display:block;

    font-size:22px;

    margin-bottom:8px;

    color:#00bcd4;

}

/*=========================================
TITLE
=========================================*/

.role-title{

    font-size:14px;

    font-weight:600;

}

/*=========================================
DESCRIPTION
=========================================*/

.role-desc{

    margin-top:4px;

    font-size:12px;

    color:#777;

}

.role-item.active .role-desc{

    color:rgba(255,255,255,.9);

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:576px){

.role-box{

    gap:8px;

}

.role-item{

    padding:12px 6px;

}

.role-item i{

    font-size:18px;

}

.role-title{

    font-size:13px;

}

.role-desc{

    display:none;

}

}
