/* You can add global styles to this file, and also import other style files */

html, body { height: 100%; }
body { margin: 0; font-family: Roboto, "Helvetica Neue", sans-serif; background: #f8f8f8; }
.whitebg{
    background: #fff;
}
.h5title{
    border-left: 3px solid #d0021b;
    padding-left: 20px;
}
.btn-red{
    background: #d0021b;
    color: #fff;
}
.search-btn{
    border-radius: 0 5px 5px 0;
}
.searchbox input{
    border-radius: 5px 0 0 5px;
}
.redcolor{
    color:#ff2d55!important
}
.graytxt{
    color: #616161;
}
.storyImg{
    margin-bottom: 20px;
   
}
.storyImg img, .categoryImg  img{
    width: 100%;
}
.categoryImg{
    position: relative;
    height: 200px;
    overflow: hidden;
    border-radius: 20px;
}
.catDetails{
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000;
    color: #fff;
    padding: 5px 20px 0 20px;
    
}
.catDetails h5{
    font-size: 16px;
}
.bold{
    font-weight: 700;
    color: #000;
}
@media (max-width: 600px) {
    .menu{
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        background: #fff;
        border-top: 1px solid #ccc;
        z-index: 9999;
    }
    .menu span {
        width: 100%;
        display: block;
    }
    .menu ul li a{
        padding:0 22px !important;
        text-align: center;
        display: inline-block !important;
    }
    .menu ul{
        margin: 0;
        padding: 0;
    }
}
.creatbanner{
    /* background:#000 url('/write.jpg') no-repeat; */
    background-color: #000;
    color: #fff;
    background-size: cover;
    padding: 30px 0;
    text-align: center;
}
.small{
    font-size: 12px;
    color: #ccc;
}
.mr-3{
    margin-right: 10px;
}
.tableofcontent{
    border-top: 1px solid #ccc;
    padding-top: 30px;
    margin-top: 20px;
}
.border-bottom{
    border-bottom: 1px solid #ccc;
    padding: 20px 0px;
    margin-bottom: 20px;
}
a{
    text-decoration: none;
    cursor: pointer;
}
.hit{
    cursor: pointer;
}
ul li{
    list-style: none;
}
ul{
    margin: 0;
    padding: 0;
}
.btn-primary{
    background: #c02b22 !important;
    border-radius: 100px !important;
    border: 1px solid #c02b22 !important;
}
.login ul, .menu ul{
    margin-left: 22px;
}
.btn-black{
    background: #000;
    color: #fff;
    border-radius: 100px;
    margin-right: 15px;
}


/* New CSS */
body {
            -webkit-tap-highlight-color: transparent;
            padding-bottom: 72px; /* Space for bottom nav */
        }
        @media (min-width: 1024px) {
            body {
                padding-bottom: 0;
            }
        }
        .carousel {
            scroll-snap-type: x mandatory;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
        }
        .carousel-item {
            scroll-snap-align: start;
            flex-shrink: 0;
        }
        .hide-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .story-progress {
            height: 4px;
            background: rgba(255,255,255,0.3);
        }
        .story-progress-bar {
            height: 100%;
            background: white;
        }
        .bottom-nav {
            height: 72px;
            box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
        }
        .fab-button {
            box-shadow: 0 4px 12px rgba(255, 45, 85, 0.3);
        }
        .search-overlay {
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }
        .search-overlay.active {
            opacity: 1;
            pointer-events: all;
        }
        .story-card:hover .story-cover {
            transform: scale(1.03);
        }
        .writer-card:hover {
            transform: translateY(-5px);
        }
        .auth-container {
            min-height: calc(100vh - 72px);
        }
        @media (min-width: 1024px) {
            .auth-container {
                min-height: 100vh;
            }
        }
        .bottom-nav {
            height: 72px;
            box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
        }
        .alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}
.alert {
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}
.carousel {
            scroll-snap-type: x mandatory;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
        }
        .carousel-item {
            scroll-snap-align: start;
            flex-shrink: 0;
        }
        .hide-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .story-progress {
            height: 4px;
            background: rgba(255,255,255,0.3);
        }
        .story-progress-bar {
            height: 100%;
            background: white;
        }
        .bottom-nav {
            height: 72px;
            box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
        }
        .fab-button {
            box-shadow: 0 4px 12px rgba(255, 45, 85, 0.3);
        }
        .search-overlay {
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }
        .search-overlay.active {
            opacity: 1;
            pointer-events: all;
        }
        .story-card:hover .story-cover {
            transform: scale(1.03);
        }
        .writer-card:hover {
            transform: translateY(-5px);
        }
        .language-dropdown {
            display: none;
            position: absolute;
            right: 0;
            top: 100%;
            width: 200px;
            background: white;
            border-radius: 8px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
            z-index: 50;
        }
        .language-dropdown.active {
            display: block;
        }
        .language-dropdown.dark {
            background: #1f2937;
        }
        .chapter-card {
            position: relative;
        }
        .locked-chapter::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0,0,0,0.3);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
        }
        .locked-chapter::before {
            content: "\f023";
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            font-size: 24px;
            color: white;
            z-index: 10;
        }

        .scroll-indicator {
            height: 4px;
            background: rgba(0,0,0,0.1);
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 50;
        }
        .scroll-indicator-bar {
            height: 100%;
            background: #FF2D55;
            width: 0%;
        }
        .highlight {
            background-color: rgba(255, 214, 0, 0.3);
            cursor: pointer;
        }
        .highlight.active {
            background-color: rgba(255, 214, 0, 0.6);
        }
        .comment-box {
            display: none;
            position: absolute;
            z-index: 100;
            background: white;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
            padding: 12px;
            width: 300px;
        }
        .comment-box.active {
            display: block;
        }
        .bottom-nav {
            height: 72px;
            box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
        }
        .fab-button {
            box-shadow: 0 4px 12px rgba(255, 45, 85, 0.3);
        }
        .audio-player {
            background: rgba(0,0,0,0.7);
            border-radius: 30px;
            padding: 10px 15px;
        }
        .video-container {
            position: relative;
            padding-bottom: 56.25%; /* 16:9 aspect ratio */
            height: 0;
            overflow: hidden;
        }
        .video-container iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }
        /* Full screen reader styles */
       
        .reader-controls {
            position: fixed;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            background: white;
            padding: 10px 20px;
            border-radius: 30px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
            display: flex;
            gap: 10px;
            z-index: 1001;
        }
        .reader-controls.dark {
            background: #333;
        }
        .reader-controls.reading-mode {
            background: #F5F5DC;
        }
        .star-rating {
            display: inline-flex;
            flex-direction: row-reverse;
        }
        .star-rating input {
            display: none;
        }
        .star-rating label {
            color: #ccc;
            cursor: pointer;
            font-size: 1.5rem;
            padding: 0 0.1rem;
        }
        .star-rating input:checked ~ label {
            color: #FFD700;
        }
        .star-rating label:hover,
        .star-rating label:hover ~ label {
            color: #FFD700;
        }
        .carousel {
            scroll-snap-type: x mandatory;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
        }
        .carousel-item {
            scroll-snap-align: start;
            flex-shrink: 0;
        }
        .hide-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        .hide-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .story-progress {
            height: 4px;
            background: rgba(255,255,255,0.3);
        }
        .story-progress-bar {
            height: 100%;
            background: white;
        }
        .bottom-nav {
            height: 72px;
            box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
        }
        .fab-button {
            box-shadow: 0 4px 12px rgba(255, 45, 85, 0.3);
        }
        .search-overlay {
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }
        .search-overlay.active {
            opacity: 1;
            pointer-events: all;
        }
        .story-card:hover .story-cover {
            transform: scale(1.03);
        }
        .writer-card:hover {
            transform: translateY(-5px);
        }
       
        .tab-content.active {
            display: block;
        }
        .profile-avatar {
            border: 4px solid white;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        .story-status {
            display: inline-block;
            padding: 2px 8px;
            border-radius: 12px;
            font-size: 0.75rem;
            font-weight: 500;
            margin-left: 4px;
        }
        .status-published {
            background-color: #00B272;
            color: white;
        }
        .status-draft {
            background-color: #FF2D55;
            color: white;
        }
        .status-partial {
            background-color: #FF9500;
            color: white;
        }
        .overflow-h{
            overflow: hidden;
        }
        .pointer{
            cursor: pointer;
        }
        .mega-menu {
           
            position: absolute;
            left: 0;
            width: 520px;
            background: #fff;
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
            z-index: 50;
        }
         .dropdown-menu {
            
            position: absolute;
            background: white;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            z-index: 50;
        }
        
        .img100 img{
            width: 100%;
        }
        .img100{
            height: 100px;
            overflow: hidden;
        }
        .loader{
            position: absolute;
            top: 0;
            right: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            background:#000;
        }
        .loading{position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    height: 100VH;
}
.tox .tox-statusbar{
    display: none !important;
}
#gen-loading {
    display: flex
;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: var(--dark-color, #12121296);
    z-index: 9999;
    text-align: center;
    padding: 20px;
}
.loader-spinner {
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 3px solid #fff;
    border-top: 3px solid #ff0000;
    border-radius: 50%;
    animation: spin 1s 
linear infinite;
    margin-top: 10px;
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}
.logo{
    margin: 0 auto;
}
.color{
    background-color: #ff2e55;
}
input.videofield {
    width: 100%;
    opacity: 0;
    z-index: 9999;
    position: absolute;
    top: 0;
    left: 0;
    height: 60px;
}
.selectfile {
    background: rgb(255 45 85 / var(--tw-bg-opacity, 1));
    border-radius: 100px;
    display: inline-block;
    padding: 10px 20px;
    cursor: pointer;
}
.relative{
    position: relative;
}
input.file {
    position: absolute;
    height: 60px;
    left: 0;
    width: 100%;
    top: 0;
    opacity: 0;
    cursor: pointer;
}
.pointer{
    cursor: pointer;
}