
body {
    font-family: 'Helvetica Neue', 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f4f4f9;
}
h1, h2, h3 {
    font-family: 'Helvetica Neue', 'Lora', serif;
}        


/* Outer Container with Centered and Spacing */
.super-container {
    width: 100%;               /* 100% of the viewport width */
}

.form-container {
    width: 50%;               /* 90% of the viewport width */
    max-width: 800px;         /* Maximum width for larger screens */
    margin: 30px auto;        /* Centered with top and bottom spacing */
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    background-color: #ffffff;
}

/* Main Content Spacing */
/*
h2 {
    font-size: 24px;
    margin-bottom: 1.5rem;
    color: #333333;
}
*/

/* Wrap each label and input pair in a container */
.form-group {
    display: flex;
    align-items: center; /* Aligns items vertically */
    margin-bottom: 1rem; /* Adds space between each pair */
}

.form-group p, label {
    font-size: 14px;
    color: #555555;
    margin-right: 10px; /* Adds space between label and input */
    width: 30%; /* Optional: sets label width for consistent alignment */
}

input[type="text"],
input[type="password"] {
    padding: 10px;
    font-size: 16px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    width: 80%;
    margin-left: auto; /* aligns the input box to the right */
}

.add-url-container input[type="text"] {
    padding: 4px;
    font-size: 14px;
    border: 1px solid #cccccc;
    border-radius: 5px;
    width: 80%;
    margin-left: auto; /* aligns the input box to the right */
}


button[type="submit"] {
    background-color: #007bff;
    color: white;
    font-size: 16px;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    margin-top: 1.5rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

button[type="submit"]:hover {
    background-color: #0056b3;
}

button[type="button"] {
    font-size: 14px;
    padding: 4px 20px;
    cursor: pointer;

    background-color: rgba(100, 100, 100, 0.1);
    border-color: #aaa;
    color: #444;
    border-radius: 5px;
}

button[type="button"]:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: #444;
    transform: translateY(-2px);
}


/* Error Message */
.error-message {
    color: red;
    font-size: 14px;
    margin-top: 1rem;
}

#loadingIndicator {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
    z-index: 1000;
}

/* To disable buttons, text areas, etc. while loading */
.disabled {
    pointer-events: none;
    opacity: 0.5;
}


/*----------------------------------------------------------------*/
body {
    font-family: 'Helvetica Neue', 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f4f4f9;
}
h1, h2, h3 {
    font-family: 'Helvetica Neue', 'Lora', serif;
}        

.outer-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 20px;
    padding: 20px;

}

.content {
    width: 100%;
}        



.main-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.tabs {
    display: flex;
    cursor: pointer;
    margin-bottom: 20px;
    padding: 0;
    list-style: none;
}
.tabs li {
    padding: 10px 20px;
    background-color: #ddd;
    border: 1px solid #ccc;
    border-bottom: none;
    margin-right: 5px;
}
.tabs li.active {
    background-color: #fff;
    border-bottom: 1px solid #fff;
}
.tab-content {
    display: none;
    padding: 20px;
    border: 1px solid #ccc;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    background-color: #fff;
}
.tab-content.active {
    display: block;
}

.toc-post {
    font-family: 'Lora', serif;
    flex: 0 0 200px;
    margin: 10px;
    padding: 10px;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    height: auto; /* Adjust to content */
    align-self: flex-start; /* Align to the start of the container */
}

.toc-post h3 {
    margin-top: 0;
}
.toc-post a {
    display: inline-block;
    text-decoration: none;
    color: #3b5998;
    margin: 2px;
}
.toc-post a:hover {
    text-decoration: underline;
}


.main-content-post {
    margin: 10px;
    flex: 1;
    max-width: 800px;
    width: calc(100% - 220px); /* Subtract the TOC width */
}

.section {
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd;
    background-color: #fff;
}
.section h2 {
    color: #333;
    margin-top: 0;
}
.section p {
    color: #666;
}

.post {
    background-color: #fff;
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    position: relative;
}

.post-content {
    margin-bottom: 20px;
    width: 100%;
}
.post-content h2, .post-content h3 {
    color: #333;
    margin-top: 0;
}
.post-content p {
    color: #666;
}
.post-content img {
    max-width: 100%;
    height: auto;
}
.post-content a {
    text-decoration: none;
    color: #3b5998;
}
.post-content a:hover {
    text-decoration: underline;
}


.button {
    display: inline-block;
    padding: 6px 6px;
    background-color: #3b5998;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    margin-right: 5px;
    font-weight: bold;
    transition: background-color 0.3s, transform 0.3s;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.button:hover {
    background-color: #2d4373;
    color: white;
    text-decoration: none;
    transform: translateY(-2px);
}
.button:active {
    transform: translateY(0);
}

.button a, .button a:hover {
    color: white;
    text-decoration: none;
    font-weight: bold;
}        

.social-share-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap; /* Allow buttons to wrap on smaller screens */
    justify-content: center;
}        

.share-btn {
    display: flex;
    align-items: center;
    background-color: #fff;
    border: 2px solid transparent;
    border-radius: 5px;
    /*padding: 10px 15px;*/
    font-size: 14px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    transition: background-color 0.1s, border-color 0.1s, color 0.1s;
    margin-right: 4px; /* Increase space between icon and text */
    margin-top: 4px;
    /*flex: 1 1 auto;*/ /* Allow buttons to shrink if needed */

}

.share-btn img {
    width: 24px;
    height: 24px;
    margin-right: 4px; /* Increase space between icon and text */
    margin-left: -2px; /* Move icon further left */
}

.share-btn.view {
    background-color: rgba(100, 100, 100, 0.1);
    border-color: #888;
    color: #444;
}

.share-btn.view:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: #444;
    transform: translateY(-2px);
}

.share-btn.copy {
    background-color: rgba(155, 91, 212, 0.1);
    border-color: #9B5BD4;
    color: #9B5BD4;
}

.share-btn.copy:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: #9B5BD4;
    transform: translateY(-2px);
}

.share-btn.facebook {
    border-color: #316FF6;
    color: #316FF6;
}

.share-btn.facebook:hover {
    background-color: rgba(49, 111, 246, 0.2);
    color: #316FF6;
    transform: translateY(-2px);
}

.share-btn.twitter {
    border-color: #444;
    color: #444;
}

.share-btn.twitter:hover {
    background-color: rgba(0, 0, 0, 0.15);
    color: #444;
    transform: translateY(-2px);
}

.share-btn.linkedin {
    border-color: #0077b5;
    color: #0077b5;
}

.share-btn.linkedin:hover {
    background-color: rgba(0, 119, 181, 0.2);
    color: #0077b5;
    transform: translateY(-2px);
}        

.share-btn.facebook a, .share-btn.facebook a:hover {
    text-decoration: none;
    color: #316FF6;
}
.share-btn.twitter a, .share-btn.twitter a:hover {
    text-decoration: none;
    color: #444;
}
.share-btn.linkedin a, .share-btn.linkedin a:hover {
    text-decoration: none;
    color: #0077b5;
}
.share-btn.view a, .share-btn.view a:hover {
    text-decoration: none;
    color: #444;
}
.share-btn.copy a, .share-btn.copy a:hover {
    text-decoration: none;
    color: #9B5BD4;
}


.textArea {
    width: 100%;
    padding: 20px;
    border-radius: 2px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid #ddd;
    box-sizing: border-box;
}



.actions {
    margin-top: 10px;
}

@media screen and (max-width: 768px) {
    .toc-post {
        position: static;
        width: 100%;
        max-width: none;
        margin-bottom: 20px;
    }
    .main-content-post {
        width: 100%;
    }
    .section {
        padding: 10px;
    }
    .post-content {
        margin-bottom: 10px;
    }
    .button {
        width: 100%;
        text-align: center;
        margin-bottom: 10px;
    }

    .social-share-buttons {
        flex-direction: column; /* Stack buttons vertically on small screens */
        gap: 4px; /* Slightly smaller gap for mobile */
    }

    .share-btn {
        font-size: 12px; /* Smaller font size for mobile */
        /*padding: 8px 12px;*/ /* Adjust padding for mobile */
    }

    .share-btn img {
        width: 20px;
        height: 20px;
    }            
    
    .tutorial-box {
        width: 80%;
        height: auto; /* Allow height to adjust based on content */
        max-height: 80vh; /* Maximum height to avoid overflow */
        padding: 10px;
    }
    .tutorial-box img {
        height: auto; /* Ensure images scale properly on smaller screens */
    }

}
@media (max-width: 480px) {
    .tutorial-box {
        width: 80%;
        height: auto;
        max-height: 80vh;
        padding: 10px;
    }
    .tutorial-box .close-btn {
        font-size: 18px;
    }        
}



.div-link-preview {
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
    border: 2px solid #C0C0C0;
    overflow: hidden;
    width: 90%;
    margin-bottom: 10px;
}


.div-link-preview-col {
    float: left;
}


.div-link-preview-col-t {
width: 100%;
height: auto; /* Set to auto to allow flexible height */
}

.div-link-preview-col-b {
width: 100%;
margin-top: 30px;
padding-top: 5px;
}

.div-link-preview-iframe {
margin-left: auto;
margin-right: auto; 
width: 95%;
height: auto; /* Allow iframe container to adjust to its content */
float: none;
margin-top: 5px;

display: flex; 
justify-content: center;
align-items: center; 
max-height: 80vh; /* Optional: Set a max height if you want to limit expansion */
overflow: hidden; /* Hide overflow if the content exceeds the height */
}

.div-link-preview-img {
max-width: 100%; /* Scale the image's width to the container's width */
max-height: 100%; /* Scale the image's height to the container's height */
object-fit: contain; /* Maintain aspect ratio and ensure the image is contained within its container */
width: 100%; /* Ensures the image scales to fill the width of the container */
height: auto; /* Allow the height to adjust based on aspect ratio */
display: block; /* Ensures the image behaves like a block-level element */
margin-left: auto; /* Center horizontally */
margin-right: auto; /* Center horizontally */    
}



.div-link-preview-content::-webkit-scrollbar {
    width: 0px;
background: transparent; /* Chrome/Safari/Webkit */
}

.div-link-preview-title {
    display: block;
    margin-right: auto;
    width: 98%;
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #101010;
    text-decoration: none;
}

.div-link-preview-title a {
    color: #101010;
    text-decoration: none;
}

.div-link-preview-content {
    display: block;
    font-size: small;
    height: 100%;
    width: 100%;
    overflow: auto;
    color: #606060;
}

.div-link-preview-domain {
    padding-right: 2%;
    display: block;
    font-weight: bold;
    color: #808080;
    text-align: right;
    font-size: 80%;
}              
.div-link-preview-domain a {
color: #808080;
text-decoration: none;
}   



.dialog {
    position: fixed;
    width: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border: 1px solid #ccc;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 20px;
    z-index: 1000;

    max-width: 90%; /* Prevent it from growing beyond viewport width */
    height: 450px; /* Initial height */
    max-height: 90%; /* Prevent it from growing beyond viewport height */
    overflow: auto; /* Enable scrolling if content exceeds height */
    text-align: center;
    resize: both; /* Allow manual resizing */
    box-sizing: border-box; /* Include padding in size */    
}

.dialog-content h2 {
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
    margin-top: 0;
}

#dialog-close {
    margin-top: 15px;
    padding: 10px 20px;
    cursor: pointer;
    background: #007bff;
    color: white;
    border: none;
    border-radius: 4px;
}


.dialog-content {
    text-align: left;
}

