html body dialog.visual-dialog{position:fixed!important;inset:0!important;margin:auto!important;width:min(720px,calc(100vw - 40px))!important;max-width:calc(100vw - 40px)!important;height:auto!important;max-height:88dvh!important;padding:0!important;border:1px solid #ffffffc4!important;border-radius:30px!important;background:#f7f6f2!important;color:#30342f!important;box-shadow:0 24px 90px #20251d33!important;font:16px/1.8 system-ui,sans-serif!important;overflow:hidden!important;box-sizing:border-box!important}
html body dialog.visual-dialog[open]{display:flex!important;flex-direction:column!important}html body dialog.visual-dialog::backdrop{background:#292d293b;backdrop-filter:blur(8px)}html body dialog.visual-report{width:min(940px,calc(100vw - 40px))!important}
html body .visual-dialog>header{display:flex!important;align-items:center;justify-content:space-between;padding:24px 32px!important;border-bottom:1px solid #d5d5ce!important;flex:none!important;background:transparent!important}html body .visual-dialog h2{font:30px/1.3 'Noto Serif SC','SimSun',serif!important;margin:0!important;color:#30342f!important}
html body .visual-dialog button{appearance:none;border:1px solid #d8d8d1!important;border-radius:100px!important;padding:12px 24px!important;background:#fff8!important;color:#30342f!important;font:15px/1.4 system-ui!important;cursor:pointer;box-shadow:none!important}html body .visual-dialog button[data-close]{width:42px;height:42px;padding:0!important;font-size:28px!important;border:0!important}html body .visual-dialog .visual-primary,html body .drawing-footer-analysis{background:#252923!important;color:#fff!important;border:0!important;border-radius:100px!important;padding:14px 28px!important;font:16px/1.4 system-ui!important}html body .visual-dialog button:disabled{opacity:.55;cursor:wait}
html body .visual-dialog .visual-body{padding:26px 32px!important;overflow:auto!important;min-height:0!important;overscroll-behavior:contain}html body .visual-dialog>footer{display:flex!important;gap:12px;justify-content:center!important;flex:none;padding:20px 32px!important;border-top:1px solid #d5d5ce!important;background:transparent!important}
html body .visual-dialog .visual-lead{font-size:17px!important;line-height:1.8!important;margin:0 0 18px!important}html body .visual-dialog .visual-note,.visual-report-meta{color:#74786f;font-size:13px!important;line-height:1.8!important;margin:0 0 24px!important}html body .visual-dialog .visual-question{display:block!important;margin:24px 0!important;color:#30342f!important}html body .visual-dialog .visual-question>span{display:flex!important;gap:12px;align-items:baseline;font-size:16px!important;margin-bottom:12px}.visual-question small{color:#8c927f;font:12px system-ui}
html body .visual-dialog textarea{display:block!important;pointer-events:auto!important;user-select:text!important;width:100%!important;box-sizing:border-box!important;background:#fff9!important;border:1px solid #d4d6cc!important;border-radius:16px!important;color:#30342f!important;padding:14px 16px!important;resize:vertical;font:15px/1.8 system-ui!important;outline:none!important}html body .visual-dialog textarea:focus{border-color:#7c8b73!important;box-shadow:0 0 0 3px #7c8b7318!important}html body .visual-dialog article p{font:16px/1.95 system-ui!important;margin:0 0 22px!important}html body .visual-dialog article h3{font:23px/1.5 'SimSun',serif!important;margin:32px 0 18px!important;padding-bottom:12px;border-bottom:1px solid #deded6}
.visual-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin:28px 0}.visual-images figure{margin:0}.visual-images img{width:100%;border-radius:14px}.visual-images figcaption{font-size:13px;color:#757b70;text-align:center}.visual-facts{white-space:pre-wrap;font:14px/1.8 system-ui!important}.visual-steps{padding-left:22px;line-height:2.2}.drawing-workspace>.drawing-footer-analysis{display:block;margin:18px auto}.spatial-experience>footer .drawing-footer-analysis{position:absolute;left:50%;transform:translateX(-50%)}
@media(max-width:600px){html body .visual-dialog>header,html body .visual-dialog .visual-body,html body .visual-dialog>footer{padding:18px 20px!important}html body .visual-dialog h2{font-size:25px!important}.spatial-experience>footer .drawing-footer-analysis{position:static;transform:none;font-size:12px!important;padding:12px!important}}

.drawing-hub-group{margin-bottom:32px}.drawing-hub-group>h3{font:24px/1.4 SimSun,serif;margin:0 0 10px}.drawing-hub-group>p{font:13px/1.7 system-ui;color:#73776f;margin:0 0 18px}.drawing-hub-group .drawing-entry-card{min-height:180px!important}

html body .visual-dialog>header,html body .visual-dialog>footer{position:static!important;inset:auto!important;transform:none!important;width:auto!important;height:auto!important;min-height:0!important;flex-direction:row!important;align-items:center!important;background:#f7f6f2!important}html body .visual-dialog .visual-body{flex:1 1 auto!important}html body .visual-dialog>footer{z-index:1!important;box-shadow:none!important}

html body .drawing-guidance-button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px!important}html body .drawing-guidance-button span{font:10px/1.2 system-ui!important}html body .drawing-guidance-button svg{width:23px!important;height:23px!important}
html body dialog.visual-questionnaire{height:min(820px,92dvh)!important;max-height:92dvh!important}
html body .visual-questionnaire .visual-body{display:flex;flex-direction:column;gap:10px;padding:16px 24px!important;overflow:hidden!important}
html body .visual-work-preview{margin:0!important;flex:none;height:clamp(140px,28dvh,280px);display:flex;flex-direction:column;align-items:center;min-height:0;background:#eeede6;border-radius:16px;padding:8px;box-sizing:border-box}
html body .visual-work-preview img{width:100%;height:calc(100% - 22px);object-fit:contain;border-radius:8px}
html body .visual-work-preview figcaption{font:12px/22px system-ui;color:#757b70}
html body .visual-preview-views{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
html body .visual-preview-views:empty{display:none}
html body .visual-preview-views button{font-size:12px!important;padding:4px 10px!important}
html body .visual-preview-views button[aria-pressed=true]{background:#30342f!important;color:white!important}
html body .visual-answer-step{flex:1;min-height:0;overflow:auto}
html body .visual-question-progress{font:12px/1.5 system-ui;color:#858b7b}
html body .visual-questionnaire .visual-question{margin:10px 0!important}
html body .visual-questionnaire .visual-question>span{margin-bottom:8px}
html body .visual-questionnaire .visual-note{margin:8px 0!important;font-size:12px!important}
html body .visual-questionnaire>header{padding:16px 24px!important}
html body .visual-questionnaire>footer{padding:12px 20px!important;gap:8px}
html body .visual-questionnaire [hidden]{display:none!important}
@media(max-width:600px){html body dialog.visual-questionnaire{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;border-radius:22px!important}html body .visual-questionnaire .visual-body{padding:12px 16px!important;gap:8px}html body .visual-questionnaire>header{padding:12px 16px!important}html body .visual-questionnaire h2{font-size:23px!important}html body .visual-work-preview{height:clamp(120px,25dvh,210px)}html body .visual-questionnaire>footer button{padding:10px 14px!important;font-size:13px!important}html body .visual-questionnaire textarea{padding:10px 12px!important}html body .visual-questionnaire .visual-question>span{font-size:15px!important}}
/* Strong image bounds also apply inside the surrounding platform theme. */
html body dialog.visual-questionnaire{height:auto!important;max-height:86dvh!important;width:min(680px,calc(100vw - 24px))!important}
html body dialog.visual-questionnaire .visual-body{flex:0 1 auto!important;min-width:0!important;overflow-x:hidden!important;padding:16px 24px!important}
html body dialog.visual-questionnaire .visual-work-preview{width:100%!important;max-width:100%!important;height:160px!important;min-height:160px!important;max-height:160px!important;flex:0 0 160px!important;margin:0!important;padding:8px!important;overflow:hidden!important}
html body dialog.visual-questionnaire .visual-work-preview img{display:block!important;min-width:0!important;max-width:100%!important;width:100%!important;height:122px!important;min-height:0!important;max-height:122px!important;object-fit:contain!important;aspect-ratio:auto!important;margin:0!important}
html body dialog.visual-questionnaire .visual-answer-step{flex:0 1 auto!important;min-width:0!important;max-height:calc(86dvh - 330px)!important;overflow:auto!important;overflow-x:hidden!important}
html body dialog.visual-questionnaire textarea{min-height:88px!important;max-height:140px!important;resize:vertical!important}
html body .drawing-guidance-button{min-width:52px!important;white-space:nowrap!important}html body .drawing-guidance-button span{white-space:nowrap!important;font-size:10px!important}
@media(max-width:600px){html body dialog.visual-questionnaire .visual-work-preview{height:120px!important;min-height:120px!important;max-height:120px!important;flex-basis:120px!important}html body dialog.visual-questionnaire .visual-work-preview img{height:82px!important;max-height:82px!important}html body dialog.visual-questionnaire .visual-answer-step{max-height:calc(86dvh - 275px)!important}}
html body .visual-report .visual-body{padding:24px 32px!important;overflow-x:hidden!important}
html body .visual-report-meta{font:12px/1.6 system-ui!important;letter-spacing:.08em;color:#858878;margin-bottom:18px}
html body .visual-report-highlight{padding:20px 24px;border-radius:18px;background:#e9eadf;border:1px solid #d5d9c9;margin-bottom:20px}
html body .visual-report-highlight>small{display:block;font:12px/1.5 system-ui;letter-spacing:.15em;color:#67735f;margin-bottom:10px}
html body .visual-report-highlight p{font:16px/1.85 system-ui!important;margin:8px 0!important}
html body .visual-report-index{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:6px!important;margin:0 0 22px!important;padding:0!important;position:static!important;background:none!important}
html body .visual-report-index button{font:12px/1.4 system-ui!important;padding:6px 12px!important}
html body .visual-report-sections>section{padding:20px 24px;margin:0 0 16px;border:1px solid #e1e0d6;border-radius:18px;background:#ffffff70;scroll-margin-top:16px}
html body .visual-section-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}
html body .visual-section-heading>small{font:12px/1 system-ui;color:#939b82}
html body .visual-report .visual-section-heading h3{font:22px/1.45 SimSun,serif!important;border:0!important;margin:0!important;padding:0!important}
html body .visual-report article p{font:15px/1.9 system-ui!important;margin:0 0 12px!important}
html body .visual-report article strong{color:#435740!important;font-weight:650!important}
html body .visual-report-record{padding:16px 4px;color:#747a6b;font:13px/1.7 system-ui}
html body .visual-report .visual-images img{max-height:160px!important;object-fit:contain!important;background:#fff8}
@media(max-width:600px){html body .visual-report .visual-body{padding:16px!important}html body .visual-report-highlight,html body .visual-report-sections>section{padding:16px}html body .visual-report .visual-section-heading h3{font-size:19px!important}}
html body dialog.visual-dialog{height:fit-content!important}

/* Creation and work inquiry share the spatial dialog scale. */
html body dialog.visual-dialog h2{font-size:21px!important;font-weight:400!important}html body .visual-dialog>header{padding:16px 24px!important}html body .visual-dialog button[data-close]{width:38px;height:38px;font-size:26px!important}
html body dialog.visual-questionnaire{width:min(1180px,calc(100vw - 64px))!important;max-width:calc(100vw - 32px)!important;height:min(900px,calc(100dvh - 64px))!important;max-height:calc(100dvh - 32px)!important}
html body dialog.visual-questionnaire .visual-body{flex:1 1 auto!important;min-height:0!important;gap:14px}html body dialog.visual-questionnaire .visual-answer-step{flex:1!important;max-height:none!important;overflow:auto!important;scrollbar-width:none}html body .visual-dialog .visual-body{scrollbar-width:none}html body .visual-dialog .visual-body::-webkit-scrollbar,html body .visual-answer-step::-webkit-scrollbar{display:none}
html body dialog.visual-questionnaire .visual-work-preview{height:clamp(140px,25dvh,220px)!important;min-height:0!important;max-height:220px!important;flex:0 0 clamp(140px,25dvh,220px)!important}
html body dialog.visual-questionnaire .visual-work-preview img{height:calc(100% - 22px)!important;max-height:none!important;cursor:zoom-in}html body dialog.visual-questionnaire textarea{min-height:110px!important;max-height:180px!important}html body .visual-dialog>footer button{font-size:14px!important;padding:9px 18px!important}
html body dialog.visual-image-zoom{width:min(1180px,calc(100vw - 24px))!important;height:min(900px,94dvh)!important;max-height:94dvh!important}html body dialog.visual-image-zoom .visual-body{padding:16px!important;min-height:0!important;display:flex;align-items:center;justify-content:center;overflow:hidden!important}html body .visual-image-zoom img{width:100%;height:100%;min-height:0;object-fit:contain;cursor:zoom-out}
html body dialog.visual-analysis-loading{width:min(460px,calc(100vw - 32px))!important;height:auto!important;overflow:hidden!important}html body .visual-analysis-loading .visual-body{padding:32px 24px!important;overflow:hidden!important;text-align:center}html body .visual-analysis-loading .visual-loading-title{font-size:16px;margin:24px 0 8px}html body .visual-analysis-loading .visual-note{margin:0!important}html body .visual-analysis-loading [data-close]{display:none!important}
.visual-loading-orbit{width:88px;height:88px;position:relative;margin:auto}.visual-loading-orbit i{position:absolute;inset:0;border:1px solid #788e7050;border-top-color:#536e4c;border-radius:50%;animation:visual-orbit 2.8s linear infinite}.visual-loading-orbit i:nth-child(2){inset:12px;animation-direction:reverse;animation-duration:2.1s}.visual-loading-orbit i:nth-child(3){inset:27px;background:#7f9b7b30;animation:visual-breathe 2s ease-in-out infinite}@keyframes visual-orbit{to{transform:rotate(360deg)}}@keyframes visual-breathe{50%{transform:scale(.7);opacity:.5}}
@media(max-width:600px){html body dialog.visual-questionnaire{width:calc(100vw - 20px)!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important}html body dialog.visual-questionnaire h2{font-size:18px!important}html body dialog.visual-questionnaire .visual-work-preview{height:clamp(170px,32dvh,300px)!important;max-height:300px!important;flex-basis:clamp(170px,32dvh,300px)!important}html body dialog.visual-questionnaire .visual-body{gap:10px!important}html body dialog.visual-questionnaire>footer button{padding:8px 12px!important;font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.visual-loading-orbit i{animation:none}}

html body dialog.visual-analysis-loading{height:320px!important;max-height:calc(100dvh - 32px)!important}html body dialog.visual-analysis-loading .visual-body{flex:none!important}html body dialog.visual-dialog:not(.visual-questionnaire):not(.visual-image-zoom):not(.visual-report):not(.visual-analysis-loading){height:fit-content!important}

.drawing-sequence{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;margin:0 0 12px;border:1px solid #d8ddd2;border-radius:12px;background:#f4f5ecaa;color:#394d35;font:12px/1.5 system-ui}.drawing-sequence>div:first-child{display:flex;gap:12px;align-items:center;min-width:0}.drawing-sequence strong{font-weight:600;white-space:nowrap}.drawing-sequence-actions{display:flex;gap:6px;flex:none}.drawing-sequence button{padding:6px 10px;border-radius:16px;border:1px solid #677b5730;background:#fff8;font:12px system-ui;color:#394d35;cursor:pointer}.drawing-sequence button:disabled{opacity:.4}.drawing-sequence button[data-landscape-next]{background:#43593d;color:#fff}
@media(max-width:650px){.drawing-sequence{align-items:flex-start;gap:8px;padding:8px 10px;font-size:11px}.drawing-sequence>div:first-child{flex-direction:column;gap:3px;align-items:flex-start}.drawing-sequence-actions{flex-direction:column}.drawing-sequence button{font-size:10px;padding:5px 8px}}

/* Keep every inquiry action on the same scale, including the primary action. */
html body dialog.visual-dialog.visual-questionnaire>footer button{box-sizing:border-box!important;height:40px!important;min-height:40px!important;min-width:96px!important;padding:0 18px!important;font:14px/1.4 system-ui!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
html body dialog.visual-dialog.visual-questionnaire>footer button[hidden]{display:none!important}
@media(max-width:600px){html body dialog.visual-dialog.visual-questionnaire>footer button{height:36px!important;min-height:36px!important;min-width:76px!important;padding:0 12px!important;font-size:12px!important}}

/* One scroll region keeps every question reachable on short phone screens. */
@media(max-width:600px){
 html body dialog.visual-questionnaire .visual-body{display:block!important;overflow-y:auto!important}
 html body dialog.visual-questionnaire .visual-work-preview{height:clamp(170px,30dvh,280px)!important;margin-bottom:12px!important}
 html body dialog.visual-questionnaire .visual-preview-views{margin-bottom:12px!important}
 html body dialog.visual-questionnaire .visual-answer-step{overflow:visible!important;flex:none!important}
}

/* A work on the left, a personal question list on the right. */
html body dialog.visual-questionnaire .visual-image-side{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0}
html body .visual-questionnaire .visual-inquiry-lead{font:14px/1.8 system-ui;color:#73796d;margin:0 0 14px}
html body .visual-questionnaire nav.visual-question-list{position:static!important;inset:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;max-height:180px;overflow:auto;padding:0 0 12px!important;margin:0 0 16px!important;background:transparent!important;box-shadow:none!important;scrollbar-width:none}
html body .visual-questionnaire .visual-question-list button{text-align:left!important;padding:8px 12px!important;border-radius:10px!important;background:transparent!important;border-color:transparent!important;font-size:12px!important;line-height:1.6!important}
html body .visual-questionnaire .visual-question-list button[aria-current=true]{background:#f9faf3b8!important;border-color:#8b987950!important;color:#34442d!important}
html body .visual-questionnaire .visual-question-list button[data-answered=true]::after{content:' ✓';color:#667e55}
html body .visual-questionnaire .visual-context{font:12px/1.6 system-ui;color:#757b70;margin:12px 0}
html body .visual-questionnaire .visual-context summary{cursor:pointer;margin-bottom:8px}
@media(min-width:800px) and (orientation:landscape){
 html body dialog.visual-questionnaire .visual-body{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(340px,1fr)!important;gap:32px!important;padding:24px 28px!important;overflow:hidden!important}
 html body dialog.visual-questionnaire .visual-image-side{grid-column:1;grid-row:1;height:100%}
 html body dialog.visual-questionnaire .visual-work-preview{flex:1 1 0!important;height:100%!important;max-height:none!important;min-height:0!important;padding:16px!important;background:#f6f6ef88!important}
 html body dialog.visual-questionnaire .visual-work-preview img{flex:1;min-height:0!important;height:0!important;max-height:none!important;width:100%!important;object-fit:contain!important}
 html body dialog.visual-questionnaire .visual-work-preview figcaption{flex:none}
 html body dialog.visual-questionnaire .visual-answer-step{grid-column:2;grid-row:1;height:100%;min-height:0;overflow:auto!important;padding-right:2px}
}
@media(max-width:799px),(orientation:portrait){
 html body dialog.visual-questionnaire .visual-body{display:block!important;overflow-y:auto!important}
 html body dialog.visual-questionnaire .visual-image-side{height:220px;max-height:30dvh;margin-bottom:16px}
 html body dialog.visual-questionnaire .visual-work-preview{flex:1!important;height:100%!important;max-height:none!important}
 html body dialog.visual-questionnaire .visual-answer-step{overflow:visible!important;height:auto}
 html body .visual-questionnaire nav.visual-question-list{max-height:140px}
}
html body .visual-dialog *{scrollbar-width:none!important}
html body .visual-dialog *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

.visual-history-card.history-card{display:flex!important;align-items:center;gap:24px;width:100%;padding:22px!important;border:1px solid rgba(255,255,255,.6)!important;border-radius:22px!important;background:rgba(255,255,255,.28)!important;text-align:left;color:#343a34;cursor:pointer;font:inherit;margin-bottom:16px}.visual-history-card:hover{background:rgba(255,255,255,.5)!important}.visual-history-card:focus-visible{outline:2px solid #697e6d;outline-offset:3px}.visual-history-card>img{width:130px;height:100px;object-fit:contain;background:#faf9f4;border-radius:12px;flex-shrink:0}.visual-history-info{display:grid;gap:9px;min-width:0}.visual-history-info small{color:#737970;font-size:12px}.visual-history-info strong{font-size:20px;font-weight:500}.visual-history-info>span{color:#646a62;font-size:14px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.visual-history-arrow{margin-left:auto;font-size:24px}@media(max-width:600px){.visual-history-card.history-card{gap:14px;padding:14px!important}.visual-history-card>img{width:78px;height:90px}.visual-history-info strong{font-size:16px}}

html body button.visual-history-card.history-card{border:1px solid rgba(255,255,255,.65)!important;box-shadow:none!important;background:rgba(255,255,255,.34)!important;outline:none}html body button.visual-history-card.history-card:focus-visible{outline:2px solid #697e6d!important;outline-offset:3px}html body .visual-questionnaire .visual-answer-step{display:block!important}@media(min-width:1000px) and (orientation:landscape){html body .visual-questionnaire nav.visual-question-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:none}html body .visual-questionnaire .visual-question-list button{font-size:13px!important}}

html body dialog.visual-questionnaire .visual-answer-step{display:flex!important;flex-direction:column!important;justify-content:center;gap:0!important}html body .visual-questionnaire .visual-question{display:flex!important;flex-direction:column;gap:22px;width:100%}html body .visual-questionnaire .visual-question>span{font-size:21px!important;line-height:1.65!important}html body .visual-questionnaire .visual-question textarea{min-height:210px!important;resize:none!important}html body .visual-questionnaire [role=status]:empty{display:none}@media(max-width:799px){html body .visual-questionnaire .visual-question>span{font-size:18px!important}html body .visual-questionnaire .visual-question textarea{min-height:180px!important}}
html body dialog.visual-dialog>footer:has([data-begin]) button{height:44px!important;min-height:44px!important;padding:0 22px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font:14px/1.4 system-ui!important}.visual-terrain pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
.visual-supplement label{display:grid;gap:8px;margin-bottom:18px}.visual-supplement input,.visual-supplement textarea{width:100%;box-sizing:border-box;padding:12px 16px;border:1px solid #aeb9aa;border-radius:16px;background:#ffffff90;font:16px/1.5 system-ui}.visual-supplement textarea{min-height:130px;resize:vertical}
html body .visual-questionnaire .visual-question[hidden],html body .visual-questionnaire .visual-supplement[hidden]{display:none!important}
/* Supplement fields use their own border as the focus indicator, without a second browser ring. */
html body dialog.visual-questionnaire .visual-supplement input[name=age]{appearance:none;-webkit-appearance:none;min-height:44px;color:#30352f;border:1px solid #aeb9aa!important;outline:none!important;outline-offset:0!important;box-shadow:none!important}
html body dialog.visual-questionnaire .visual-supplement input[name=age]:focus,html body dialog.visual-questionnaire .visual-supplement input[name=age]:focus-visible{border-color:#52664d!important;outline:none!important;box-shadow:none!important}
