:root {
    --mcunk-primary: #0e4b89;
    --mcunk-primary-soft: #edf4ff;
    --mcunk-bg: #f5f7fb;
    --mcunk-text: #1f2f46;
    --mcunk-muted: #5c6e85;
    --mcunk-border: #dbe3ef;
}

body {
    font-family: 'Sarabun', 'TH Sarabun New', 'Tahoma', sans-serif;
    background:
        radial-gradient(circle at top right, #eef4ff 0%, transparent 40%),
        radial-gradient(circle at left 20%, #f8fbff 0%, transparent 38%),
        var(--mcunk-bg);
    color: var(--mcunk-text);
    min-height: 100vh;
}

.mcunk-navbar {
    background: rgba(255, 255, 255, 0.9);
    border-bottom: 1px solid var(--mcunk-border);
    backdrop-filter: blur(6px);
}

.mcunk-navbar .navbar-brand {
    color: #18345f;
    letter-spacing: 0.2px;
}

.mcunk-navbar .nav-link {
    color: #3c5575;
    font-weight: 500;
}

.mcunk-navbar .nav-link:hover {
    color: var(--mcunk-primary);
}

.mcunk-navbar .mcunk-nav-strong {
    color: #17375f;
    font-weight: 700;
}

.mcunk-navbar .mcunk-nav-strong:hover {
    color: #0e4b89;
}

.mcunk-main {
    padding-bottom: 3rem;
}

.card {
    border: 1px solid var(--mcunk-border);
    border-radius: 14px;
}

.card-title {
    color: #143e72;
    font-weight: 700;
}

.btn-primary {
    background: linear-gradient(180deg, #1d5ca0 0%, #0e4b89 100%);
    border-color: #0e4b89;
}

.btn-primary:hover {
    background: #0d457f;
    border-color: #0d457f;
}

.mcunk-login-box {
    max-width: 480px;
    margin: 3rem auto 0;
}

.mcunk-preview-frame {
    width: min(100%, 240px);
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #fff;
}

.mcunk-preview-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #fff;
}

.quill-editor {
    background: #fff;
}

.quill-editor.ql-container {
    height: auto;
    min-height: 140px;
}

.quill-editor .ql-editor {
    min-height: 140px;
}

.ql-toolbar.ql-snow {
    border: 1px solid var(--mcunk-border);
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
    background: #fafdff;
}

.ql-container.ql-snow {
    border: 1px solid var(--mcunk-border);
    border-radius: 0 0 10px 10px;
    font-family: 'Sarabun', 'TH Sarabun New', 'Tahoma', sans-serif;
    font-size: 1rem;
}

.mcunk-embed-area {
    width: 100%;
    min-height: 200px;
    border: 1px solid var(--mcunk-border);
    border-radius: 10px;
    background: #fff;
    font-family: Consolas, Monaco, monospace;
    font-size: 0.9rem;
    padding: 0.75rem;
}

.mcunk-table-wrap {
    overflow-x: auto;
}

.table thead th {
    white-space: nowrap;
    color: #27456f;
}

.table tbody td {
    vertical-align: middle;
}

.mcunk-note {
    padding: 0.85rem 1rem;
    background: var(--mcunk-primary-soft);
    border: 1px solid #d2e2fb;
    border-radius: 12px;
    color: #29466e;
}

.mcunk-cropper-wrap {
    width: 100%;
    min-height: 420px;
    max-height: 70vh;
    overflow: hidden;
    background: #f3f6fb;
    border: 1px solid var(--mcunk-border);
    border-radius: 10px;
}

.mcunk-cropper-wrap img {
    display: block;
    max-width: 100%;
}

@media (max-width: 768px) {
    .mcunk-login-box {
        margin-top: 1rem;
    }
}
