/**
Theme Name: AISkillskey
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aiskillskey
Template: astra
*/


/**
 * ============================================================================
 * AISkillskey Blog — Core Styles
 * Site: https://blogAISkillskey.com
 * Kept: Callout boxes · Tables · Expand/Collapse (FAQ)
 * v2 — renamed dp-guidelines → .faq / guidelines-content → .faq-content
 * ============================================================================
 *
 * CONTENTS
 * ─────────────────────────────────────────────────
 * PART A: CALLOUT BOX SYSTEM
 *   A1–A13 (unchanged)
 * PART B: TABLE STYLES
 *   B1  Navy header table
 * PART C: EXPAND / COLLAPSE
 *   C1  JS-based (.collapsible-section)
 *   C2  FAQ expand/collapse (.faq) — HTML details/summary
 *   C3  Responsive + print
 * ─────────────────────────────────────────────────
 */


/* ============================================================================
   PART A: CALLOUT BOX SYSTEM
   ============================================================================ */

.notion-callout {
    padding: 16px 20px;
    margin: 20px 0;
    border-radius: 8px;
    background-color: #f8f9fa;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.notion-callout:hover {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}
.notion-callout-header  { display: inline; margin-bottom: 0; }
.notion-callout-icon    { display: inline; font-size: 16px; line-height: 1; margin-right: 4px; vertical-align: middle; }
.notion-callout-label   { display: inline; font-size: 16px; font-weight: 600; line-height: 1.6; color: inherit; }
.notion-callout-content { display: inline; font-size: 16px; line-height: 1.6; color: inherit; }
.notion-callout-content p { display: inline; margin: 0; }
.notion-callout-content p:first-child { margin-top: 0; }
.notion-callout-content p:last-child  { margin-bottom: 0; }

/* Required callouts */
.notion-callout-insight  { background-color: #DBEAFE; }
.notion-callout-insight  .notion-callout-label { color: #1E40AF; }
.notion-callout-takeaway { background-color: #FEF3C7; }
.notion-callout-takeaway .notion-callout-label { color: #92400E; }
.notion-callout-warning  { background-color: #FEE2E2; }
.notion-callout-warning  .notion-callout-label { color: #991B1B; }
.notion-callout-example  { background-color: #F3E8F9; }
.notion-callout-example  .notion-callout-label { color: #6B21A8; }
.notion-callout-quickwin { background-color: #D1FAE5; }
.notion-callout-quickwin .notion-callout-label { color: #065F46; }

/* Bonus callouts */
.notion-callout-tip       { background-color: #E3F1EC; }
.notion-callout-tip       .notion-callout-label { color: #0F766E; }
.notion-callout-mistake   { background-color: #FEE2E2; }
.notion-callout-mistake   .notion-callout-label { color: #7F1D1D; }
.notion-callout-strategy  { background-color: #F3E8F9; }
.notion-callout-strategy  .notion-callout-label { color: #581C87; }
.notion-callout-note      { background-color: #E9F1EC; }
.notion-callout-note      .notion-callout-label { color: #0E7490; }
.notion-callout-important { background-color: #FFF4E6; }
.notion-callout-important .notion-callout-label { color: #9A3412; }

/* Specialized callouts */
.notion-callout-tldr { background-color: #f5f5f5; border: 1px solid #e0e0e0; }
.notion-callout-tldr .notion-callout-label   { color: #374151; }
.notion-callout-tldr .notion-callout-content { color: #4b5563; }
.notion-callout-reflection { background-color: #EDE9FE; }
.notion-callout-reflection .notion-callout-label { color: #5B21B6; }
.notion-callout-caution { background-color: #FEF9E7; }
.notion-callout-caution .notion-callout-label { color: #8B6914; }

/* Disclaimer box */
.disclaimer-box {
    background-color: #F9FAFB;
    border: 1px solid #E0E0E0;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 24px 0;
    font-size: 15px;
    line-height: 1.6;
}
.disclaimer-header  { display: inline; }
.disclaimer-icon    { display: inline; font-size: 15px; margin-right: 4px; vertical-align: middle; }
.disclaimer-label   { display: inline; font-size: 15px; font-weight: 600; color: #6B7280; margin-right: 4px; }
.disclaimer-content { display: inline; font-size: 15px; line-height: 1.6; color: #6B7280; }

/* Text markers */
.notion-marker { padding: 2px 6px; border-radius: 3px; font-weight: inherit; display: inline; line-height: 1.5; transition: opacity 0.2s ease; }
.notion-marker:hover { opacity: 0.9; }
.notion-marker-yellow { background-color: #FEF3C7; color: #92400E; }
.notion-marker-green  { background-color: #D1FAE5; color: #065F46; }
.notion-marker-blue   { background-color: #DBEAFE; color: #1E3A8A; }
.notion-marker-red    { background-color: #FEE2E2; color: #991B1B; }

/* Responsive */
@media (max-width: 768px) {
    .notion-callout { padding: 12px 16px; margin: 15px 0; }
    .notion-callout-icon, .notion-callout-label, .notion-callout-content { font-size: 15px; }
    .notion-marker { padding: 1px 4px; font-size: 14px; }
    .disclaimer-box { padding: 14px 16px; font-size: 14px; }
    .disclaimer-icon, .disclaimer-label, .disclaimer-content { font-size: 14px; }
}
@media (min-width: 769px) and (max-width: 1024px) {
    .notion-callout { padding: 14px 18px; margin: 18px 0; }
}
@media print {
    .notion-callout { border: 2px solid #ccc; page-break-inside: avoid; box-shadow: none; }
    .notion-callout:hover { transform: none; }
    .disclaimer-box { border: 1px solid #ccc; page-break-inside: avoid; }
    .notion-marker { background-color: transparent !important; text-decoration: underline; color: inherit !important; }
}
@media (prefers-color-scheme: dark) {
    .notion-callout { filter: brightness(0.85) saturate(0.9); }
    .notion-callout:hover { filter: brightness(0.9) saturate(0.95); }
    .disclaimer-box { background-color: #1f2937; border-color: #4b5563; }
    .disclaimer-label, .disclaimer-content { color: #9ca3af; }
    .notion-marker { filter: brightness(0.8); }
}
@media (prefers-contrast: high) {
    .notion-callout, .disclaimer-box { border: 2px solid currentColor; }
    .notion-marker { border: 1px solid currentColor; }
}
@media (prefers-reduced-motion: reduce) {
    .notion-callout, .notion-marker { transition: none; }
    .notion-callout:hover { transform: none; }
}
.notion-callout:focus-within, .disclaimer-box:focus-within { outline: 2px solid #3B82F6; outline-offset: 2px; }
.notion-marker:focus { outline: 2px solid #3B82F6; outline-offset: 1px; }
[dir="rtl"] .notion-callout-icon { margin-right: 0; margin-left: 4px; }
[dir="rtl"] .disclaimer-icon     { margin-right: 0; margin-left: 4px; }
[dir="rtl"] .disclaimer-label    { margin-right: 0; margin-left: 4px; }


/* ============================================================================
   PART B: TABLE STYLES
   ============================================================================ */

.entry-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    font-size: 16px;
    background-color: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.entry-content table thead th,
.entry-content table th {
    background-color: #1E3A5F;
    color: #ffffff;
    font-weight: 600;
    text-align: left;
    padding: 14px 16px;
    border: none;
}
.entry-content table td {
    padding: 14px 16px;
    border-bottom: 1px solid #E5E7EB;
    color: #374151;
}
.entry-content table tbody tr:nth-child(even) { background-color: #F0F5FB; }
.entry-content table tbody tr:nth-child(odd)  { background-color: #ffffff; }
.entry-content table tbody tr:hover           { background-color: #E8EEF5; }
.entry-content table tbody td:first-child     { font-weight: 600; }
.entry-content table tbody tr:last-child td   { border-bottom: none; }
@media (max-width: 768px) {
    .entry-content table { font-size: 14px; }
    .entry-content table th, .entry-content table td { padding: 10px 12px; }
}


/* ============================================================================
   PART C: EXPAND / COLLAPSE
   ============================================================================ */

/* ─── C1: JS-based collapsible (.collapsible-section) ────────────────────── */

.collapsible-section {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin: 0 0 16px 0;
    overflow: hidden;
}
.collapse-header {
    padding: 16px 20px;
    background: #f9fafb;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: background 0.2s ease;
    border-bottom: 1px solid transparent;
    user-select: none;
}
.collapse-header:hover { background: #f3f4f6; }
.collapse-icon {
    font-size: 20px;
    font-weight: 700;
    color: #374151;
    width: 24px;
    text-align: center;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}
.collapse-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: #111827;
    flex: 1;
}
.collapse-content {
    max-height: 2000px;
    opacity: 1;
    overflow: visible;
    transition: max-height 0.4s ease, opacity 0.3s ease;
    padding: 0;
}
.collapsible-section.collapsed .collapse-content {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}
.collapsible-section.collapsed .collapse-header       { border-bottom: none; }
.collapsible-section:not(.collapsed) .collapse-header { border-bottom: 1px solid #e5e7eb; }


/* ─── C2: FAQ expand/collapse (.faq) ─────────────────────────────────────── */
/*
   Dedicated style for FAQ sections.
   HTML native <details>/<summary> — no JavaScript required.
   Works in all modern browsers and WordPress.

   Usage:
   <details class="faq">
     <summary>Your question here</summary>
     <div class="faq-content">
       <p>Your answer here.</p>
     </div>
   </details>
*/

.faq {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
    background: #ffffff;
}

.faq summary {
    padding: 16px 20px;
    background: #f9fafb;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: background 0.2s ease;
    user-select: none;
}

/* Remove default browser triangle on all browsers */
.faq summary::-webkit-details-marker { display: none; }
.faq summary::marker                 { display: none; }

.faq summary:hover { background: #f3f4f6; }
.faq summary:focus { outline: 2px solid #1E3A5F; outline-offset: -2px; }

/* + indicator */
.faq summary::before {
    content: "+";
    font-size: 18px;
    font-weight: 700;
    color: #1E3A5F;
    width: 22px;
    min-width: 22px;
    text-align: center;
    flex-shrink: 0;
    line-height: 1;
}

/* − indicator when open */
.faq[open] summary::before { content: "−"; }
.faq[open] summary         { background: #f3f4f6; border-bottom: 1px solid #e0e0e0; }

/* Answer content */
.faq-content {
    padding: 18px 20px 20px 20px;
    background: #ffffff;
}

.faq-content p {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
    color: #374151;
}

.faq-content p + p { margin-top: 12px; }

.faq-content ul,
.faq-content ol {
    margin: 8px 0 0 0;
    padding-left: 20px;
}

.faq-content li {
    font-size: 16px;
    line-height: 1.6;
    color: #374151;
    margin-bottom: 6px;
}


/* ─── C3: Responsive + print ──────────────────────────────────────────────── */

@media (max-width: 768px) {
    .collapse-header { padding: 14px 16px; gap: 12px; }
    .collapse-title  { font-size: 1rem; }
    .collapse-icon   { font-size: 18px; }

    .faq summary    { padding: 14px 16px; font-size: 15px; }
    .faq-content    { padding: 14px 16px 16px 16px; }
    .faq-content p,
    .faq-content li { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
    .collapse-content { transition: none; }
    .collapse-icon    { transition: none; }
    .faq summary      { transition: none; }
}

@media print {
    .faq { border: 1px solid #ccc; page-break-inside: avoid; }
    .faq-content { display: block !important; }
}

