/* Visual controls are separate from the existing portal design. */
[hidden]{display:none!important}
.visual-editor-entry{white-space:nowrap}
.site-header nav .visual-editor-entry{font-weight:700;color:#8b662c}
.visual-editor-context{position:fixed;right:20px;bottom:20px;z-index:90;background:#21313a;color:#fff!important;border:1px solid #21313a;padding:11px 16px;border-radius:6px;font:600 14px/1.3 'DM Sans',Arial,sans-serif;box-shadow:0 6px 22px #21313a26}
.visual-editor-invitation{border:1px solid #d9ccae;background:#faf5e9;padding:20px;margin:22px 0}
.visual-editor-invitation .primary{display:inline-block;margin-bottom:12px}
.visual-editor-invitation p{font-size:14px;line-height:1.6;color:#606970}
body:not(.ve-demo-panitia) [data-demo-panitia-only]{display:none!important}
.ve-action-label{margin:0!important;font:inherit;letter-spacing:inherit;color:inherit}
.ve-text-leaf{font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit}
.ve-offset{position:relative;left:var(--ve-offset-x,0px);top:var(--ve-offset-y,0px)}
.ve-font-size{font-size:var(--ve-font-size)!important;overflow-wrap:break-word}
.ve-width{max-width:100%;box-sizing:border-box}
span.ve-width,em.ve-width,b.ve-width,strong.ve-width,small.ve-width,a.ve-width{display:inline-block}
.ve-image-replaced{background-repeat:no-repeat}
.visual-article-read{display:inline-block;color:var(--gold);font-size:14px;font-weight:700;margin-bottom:14px}
.visual-article-photo{width:100%;min-height:280px;background-size:cover;background-position:center;background-color:#e8e3d9;margin:22px 0}
.visual-article-detail .visual-article-body{white-space:pre-wrap;line-height:1.8;color:var(--ink);margin:24px 0 30px}
.visual-content-block{padding:64px 7vw;background:var(--paper);color:var(--ink)}
.visual-block-content{min-width:0}
.visual-block-content>h2{font-size:clamp(30px,4vw,54px);margin:0 0 22px;overflow-wrap:break-word}
.visual-block-content>p{white-space:pre-wrap;font-size:17px;line-height:1.75;max-width:850px;overflow-wrap:break-word}
.visual-block-content>.primary{display:inline-block;margin-top:24px}
.visual-block-button .visual-block-content>.primary{margin-top:0}
.visual-block-image{min-height:300px;background-color:#ece7df;background-size:cover;background-position:center;width:100%;margin-bottom:26px}
.visual-block-columns{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px}
.visual-block-columns>.visual-block-image{margin:0}
.event-modal .visual-content-block,.auth-modal .visual-content-block{padding:28px 0;background:transparent}
.event-modal .visual-block-content>h2,.auth-modal .visual-block-content>h2{font-size:32px}
.visual-custom-page>h1{padding:70px 7vw 44px;font-size:clamp(44px,6vw,76px)}
.visual-custom-page{min-height:75vh}
.ve-editor-mode{scroll-behavior:auto}
.ve-editor-mode *{scroll-behavior:auto!important}
.ve-editor-mode:not(.ve-editor-preview) [data-ve-key]{cursor:pointer}
.ve-editor-mode:not(.ve-editor-preview) [data-ve-key]:hover{outline:1px dashed #aa7133;outline-offset:3px}
.ve-editor-mode:not(.ve-editor-preview) [data-ve-kind="text"]:hover{cursor:text}
.ve-editor-mode .visual-editor-entry,.ve-editor-mode .visual-editor-invitation{display:none!important}
.ve-editor-mode .ve-empty-text{min-height:28px;min-width:80px;display:block;border:1px dashed #b8ad97}
.ve-editor-mode .ve-empty-text:before{content:'Tulis konten di sini';color:#8b8170;font:14px/1.5 'DM Sans',Arial,sans-serif}
.ve-editor-mode .ve-empty-text.ve-inline-edit:before{display:none}
.ve-editor-mode.ve-editor-detail body>.topline,.ve-editor-mode.ve-editor-detail body>.site-header,.ve-editor-mode.ve-editor-detail body>#top,.ve-editor-mode.ve-editor-detail body>footer{display:none!important}
.ve-editor-mode.ve-editor-detail .modal-backdrop:not([hidden]){position:relative;inset:auto;min-height:100vh;padding:32px 24px;background:#e9e6de;display:block;overflow:visible}
.ve-editor-mode.ve-editor-detail .event-modal,.ve-editor-mode.ve-editor-detail .auth-modal{max-height:none!important;overflow:visible!important;margin:auto;width:min(820px,100%);box-shadow:0 8px 32px #21313a14}
.ve-editor-mode.ve-editor-detail .modal-close{display:none}
.ve-editor-mode.ve-editor-detail body.modal-open{overflow:auto}
.ve-editor-mode #participant-ticket{pointer-events:none}
.ve-editor-mode #admin-dashboard{display:none!important}
.ve-editor-mode .share-grid,.ve-editor-mode iframe{pointer-events:none}
.ve-editor-preview [data-ve-key]{outline:none!important}
.ve-editor-preview .ve-empty-text:before{display:none}
#visual-selection{position:fixed;z-index:2147483000;pointer-events:none;border:2px solid #a76725;outline:1px solid #fff;box-sizing:border-box;min-width:3px;min-height:3px}
#visual-selection[hidden]{display:none!important}
#visual-selection-label{position:absolute;left:-2px;top:-26px;max-width:min(310px,70vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#a76725;color:#fff;padding:4px 8px;font:600 11px/18px 'DM Sans',Arial,sans-serif;border-radius:3px 3px 0 0}
#visual-drag-handle{position:absolute;right:-2px;top:-31px;height:29px;pointer-events:auto;touch-action:none;user-select:none;cursor:grab;border:1px solid #724914;border-radius:4px;background:#fff8ed;color:#69430f;padding:3px 9px;font:700 12px/20px 'DM Sans',Arial,sans-serif;box-shadow:0 2px 6px #21313a16}
#visual-drag-handle:disabled{cursor:default;opacity:.7}
#visual-drag-handle:focus-visible{outline:3px solid #21313a;outline-offset:2px}
.ve-dragging,.ve-dragging *{cursor:grabbing!important;user-select:none!important}
.ve-inline-edit{cursor:text!important;outline:2px solid #a76725!important;outline-offset:4px;white-space:pre-wrap;min-width:1em;min-height:1em;caret-color:#21313a}
.ve-inline-edit *{pointer-events:none}
@media(max-width:767px){
  .ve-offset{left:0!important;top:0!important}
  .ve-font-size{font-size:min(var(--ve-font-size),12vw)!important}
  .ve-width{max-width:100%!important}
  .visual-content-block{padding:44px 24px}
  .visual-block-columns{grid-template-columns:1fr;gap:20px}
  .visual-block-image,.visual-article-photo{min-height:220px}
  .visual-editor-context{right:12px;bottom:12px;padding:10px 13px;font-size:13px}
  .ve-editor-mode.ve-editor-detail .modal-backdrop:not([hidden]){padding:12px}
  .visual-custom-page>h1{padding:45px 24px 28px}
}

.hero-art{background-image:url("hero-reuni-ck7.webp")}
.article-photo{background-image:url("reference.webp")}
.article-upload-preview{display:block;max-width:100%;width:360px;max-height:260px;object-fit:contain;background:#ede9e1;border:1px solid #d9d0c1;border-radius:4px;margin-top:14px}
.visual-document-frame{min-height:120px;margin:0 0 22px}
.visual-pdf-title{font-size:15px;font-weight:600;margin:0 0 12px}
.visual-pdf-viewer{display:block;width:100%;height:660px;border:1px solid #d9d0c1;background:#fff}
.visual-pdf-actions{display:flex;gap:20px;margin-top:12px;font-size:14px;text-decoration:underline}
.visual-pdf-placeholder{padding:40px 22px;background:#eae5da;color:#756e60;text-align:center;font-size:15px}
.ve-editor-preview .visual-pdf-viewer{pointer-events:auto}
@media(max-width:767px){.visual-pdf-viewer{height:480px}}
.article-body>p[data-ve-key="excerpt"]:empty,.visual-article-body:empty{display:none}
.ve-editor-mode .article-body>p[data-ve-key="excerpt"]:empty,.ve-editor-mode .visual-article-body:empty{display:block}
#visual-selection.ve-handle-below #visual-selection-label,#visual-selection.ve-handle-below #visual-drag-handle{top:100%;margin-top:2px}
.ve-editor-preview body.ve-preview-peserta [data-demo-panitia-only]{display:none!important}
