/* Lower-page typography from sopranochat-archive@af48a537.
   The existing canvas header, monitor, outer frame and chat are preserved. */
.archive-page .text { font: 14px Tahoma, Arial, Helvetica, sans-serif; color: #2f2f2f; }
.archive-page .minimedtext { font: bold 12px Tahoma, Arial, Helvetica, sans-serif; color: #505f72; }
.archive-page .minitext { font: 12px Tahoma, Arial, Helvetica, sans-serif; color: #2f2f2f; }
.archive-page .bigtext { font: bold 16px Tahoma, Arial, Helvetica, sans-serif; color: #505f72; }
.archive-page .medtext { font: bold 14px Tahoma, Arial, Helvetica, sans-serif; color: #505f72; }
.archive-page .foot { font: 10px Arial, Tahoma, sans-serif; color: #555595; padding: 10px; }
.archive-page a,
.archive-page a:visited { color: #48546b; font-weight: 600; text-decoration: none; }
.archive-page a:hover { color: #2d374b; text-decoration: underline; text-underline-offset: 3px; }
.archive-page details { border-bottom: 1px solid #b9bdcc; padding: 10px 0; }
.archive-page summary { cursor: pointer; color: #505f72; font-weight: bold; }
.archive-page details p { max-width: 550px; line-height: 1.5; }
.archive-page input, .archive-page textarea, .archive-page select, .archive-page button { font: 13px Tahoma, Arial, sans-serif; }
.archive-page textarea { resize: vertical; }
.archive-page button { padding: 5px 20px; border: 1px solid #636381; background: #7d7da0; color: white; cursor: pointer; }
.archive-page :focus-visible { outline: 2px solid #354b88; outline-offset: 2px; }
.archive-page #contactStatus { max-width: 410px; min-height: 18px; }
.archive-page #contactStatus[data-state="error"] { color: #9d1717; }
.archive-page #contactStatus[data-state="success"] { color: #216135; }
.archive-page .reference-content { width: 625px; max-width: 100%; line-height: 1.55; font-size: 14px; }
.archive-page .reference-content h1 { margin: 0 0 12px; font: bold 20px Tahoma, Arial, sans-serif; color: #505f72; }
.archive-page .reference-content h2 { margin: 22px 0 10px; font-size: 16px; color: #505f72; }
.archive-page .reference-nav { display: flex; flex-wrap: wrap; gap: 5px; padding: 7px; margin: 12px 0 18px; border: 1px solid #a4abba; border-radius: 4px; background: linear-gradient(#f5f6f9, #d4d8e2); box-shadow: inset 0 1px #fff, 0 1px 2px #45465c20; font: 12px Tahoma, Arial, sans-serif; }
.archive-page .reference-nav a,
.archive-page .reference-nav a:visited { display: inline-flex; align-items: center; justify-content: center; min-height: 30px; padding: 0 9px; border: 1px solid #a6adbb; border-radius: 3px; background: linear-gradient(#fff, #e5e8ef 50%, #d3d8e3); box-shadow: inset 0 1px #fff; color: #39465a; font-weight: bold; text-decoration: none; text-shadow: 0 1px #fff; transition: background-color .15s, border-color .15s; }
.archive-page .reference-nav a:hover { background: #f7f8fc; border-color: #6c7891; color: #253552; }
.archive-page .reference-nav a:active { box-shadow: inset 0 1px 3px #34384c40; }
.archive-page .reference-nav a[aria-current="page"] { background: linear-gradient(#646782, #7d819c); border-color: #555a75; box-shadow: inset 0 1px 3px #35384955; color: #fff; text-shadow: 0 1px #42465d; }
.archive-page .reference-nav a:focus-visible { outline: 2px solid #354b88; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .archive-page .reference-nav a { transition: none; } }
.archive-page .reference-note { border-left: 3px solid #737394; padding: 10px 12px; background: #dfe2ec; }
.archive-page .reference-content pre { white-space: pre-wrap; overflow-wrap: anywhere; padding: 12px; background: #fff; border: 1px solid #b9bdcc; font-size: 13px; }
.archive-page .reference-table { border-collapse: collapse; width: 100%; }
.archive-page .reference-table th, .archive-page .reference-table td { border: 1px solid #b9bdcc; padding: 7px; text-align: left; }
.archive-page .reference-table-scroll { overflow-x: auto; }
.archive-page .reference-icons { display: grid; grid-template-columns: repeat(8, 1fr); gap: 8px; }
.archive-page .reference-icons figure { margin: 0; padding: 8px 0; background: #e0e3ed; text-align: center; }
.archive-page .reference-icons img { min-width: 20px; height: 24px; object-fit: contain; }
.archive-page .reference-screenshots figure { margin: 20px 0; }
.archive-page .reference-screenshots img { max-width: 100%; height: auto; border: 1px solid #9a9bb0; }
.archive-page .reference-source { margin-top: 22px; font-size: 12px; }
.archive-page .portal-columns { display: flex; align-items: start; gap: 26px; }
.archive-page .portal-form { max-width: 280px; flex: 1; }
.archive-page .portal-form label, .archive-page .reference-quote label { display: block; margin: 12px 0; }
.archive-page .portal-form input, .archive-page .portal-form select { display: block; width: 100%; box-sizing: border-box; padding: 7px; margin-top: 5px; border: 1px solid #77778d; background: white; }
.archive-page [data-login-status] { min-height: 24px; color: #8b2020; }
.archive-page button:disabled { opacity: .6; cursor: wait; }
.archive-page[data-page="guide"] #Table_01 { margin-bottom: 0; }
.archive-page[data-page="guide"] .guide-title { margin: 0 0 18px; font-size: 18px; }
.archive-page[data-page="guide"] .guide-layout { display: grid; grid-template-columns: minmax(0, 1fr) 200px; align-items: start; gap: 20px; }
.archive-page[data-page="guide"] .guide-frame { width: 100%; min-width: 0; }
.archive-page[data-page="guide"] .guide-sidebar { margin-top: 4px; }
.archive-page[data-page="guide"] .guide-side-frame { width: 100%; }
.archive-page[data-page="guide"] .guide-side-frame img { display: block; }
.archive-page[data-page="guide"] .guide-side-content { padding: 6px; background: #e0e4eb url(images/mbg.gif) repeat-x; }
.archive-page[data-page="guide"] .guide-questions h2 { margin: 0 0 4px; font-size: 14px; color: #505f72; }
.archive-page[data-page="guide"] .guide-questions section + section { margin-top: 24px; }
.archive-page[data-page="guide"] .guide-questions details { padding: 12px 0; border-color: #c9ccd7; }
.archive-page[data-page="guide"] .guide-questions details:last-child { border-bottom: 0; }
.archive-page[data-page="guide"] .guide-questions summary { line-height: 1.4; }
.archive-page[data-page="guide"] .guide-questions details p { margin: 10px 0 2px; line-height: 1.5; }
.archive-page[data-page="guide"] .guide-links { display: block; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.archive-page[data-page="guide"] .guide-links h2 { margin: 0 0 7px; font-size: 12px; color: #505f72; }
.archive-page[data-page="guide"] .guide-links section + section { margin-top: 17px; }
.archive-page[data-page="guide"] .guide-links a { display: flex; justify-content: flex-start; margin-top: 5px; padding: 0 8px; }
.archive-page[data-page="guide"] .guide-links a,
.archive-page[data-page="guide"] .guide-links a:visited { background: linear-gradient(#f5f3fb, #e0ddef 50%, #cbc9df); border-color: #a09bb8; color: #393c57; }
.archive-page[data-page="guide"] .guide-links a:hover,
.archive-page[data-page="guide"] .guide-links a:focus-visible { background: linear-gradient(#eeebfa, #d5cfee 50%, #bbb4d9); border-color: #7c709f; color: #302d4a; }
.archive-page[data-page="guide"] .guide-links a:active { background: linear-gradient(#bbb4d9, #ddd7ef); }
@media (max-width: 640px) {
    .archive-page[data-page="guide"] .guide-layout { grid-template-columns: 1fr; gap: 18px; }
    .archive-page[data-page="guide"] .guide-sidebar { margin-top: 0; }
    .archive-page[data-page="guide"] .guide-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
    .archive-page[data-page="guide"] .guide-links section + section { margin-top: 0; }
}
.archive-page[data-page="home"] .home-content { line-height: 1.25; padding-top: 10px; }
.archive-page[data-page="home"] #Table_01 { margin-bottom: 0; }
.archive-page[data-page="home"] h1.bigtext { margin: 0 0 12px; font-size: 18px; }
.archive-page[data-page="home"] .home-intro { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.archive-page[data-page="home"] .home-intro img { flex: 0 0 89px; }
.archive-page[data-page="home"] .home-intro p { margin: 0; }
.archive-page[data-page="home"] .home-features { margin-top: 18px; }
.archive-page[data-page="home"] .home-feature-list { padding: 42px 0 0 40px; margin: 0; }
.archive-page[data-page="home"] .home-feature-list li, .archive-page[data-page="home"] .home-admin-list li { margin: 0; }
.archive-page[data-page="home"] .home-management { margin-top: 8px; }
.archive-page[data-page="home"] .home-management::after { content: ""; display: block; clear: both; }
.archive-page[data-page="home"] .home-admin-list { clear: left; margin: 0; padding: 12px 0 16px 40px; }
.archive-page[data-page="home"] .home-side-copy { margin: 7px 0 3px; line-height: 1.5; }
.archive-page[data-page="home"] .home-features::after { content: ""; display: block; clear: both; }
.archive-page[data-page="home"] .home-tour { float: right; width: 175px; margin: 0 4px 8px 16px; }
.archive-page[data-page="home"] .home-detail-shots { display: contents; }
.archive-page[data-page="home"] .home-detail-shots figure { float: left; width: 112px; margin: 10px 12px 0 40px; }
.archive-page[data-page="home"] .home-detail-shots .home-settings-shot { width: 128px; margin: 0; }
.archive-page[data-page="home"] .home-detail-shots .home-menu-shot { float: right; width: 48px; margin: 0 10px 8px 14px; }
.archive-page[data-page="home"] .home-detail-shots .home-menu-shot img { max-height: 200px; object-fit: contain; }
.archive-page[data-page="home"] .home-detail-shots .home-shot { box-shadow: 2px 3px 3px #0004; }
.archive-page[data-page="home"] .home-settings-shot .home-shot { border: 0; box-shadow: none; background: transparent; }
.archive-page[data-page="home"] .home-shot { display: block; width: 100%; padding: 0; border: 1px solid #9397ac; background: #ebeef3; cursor: zoom-in; }
.archive-page[data-page="home"] .home-shot img { display: block; width: 100%; height: auto; }
.archive-page[data-page="home"] .home-offer-link { border-bottom: 1px solid #9093a8; }
.archive-page[data-page="home"] .home-browser-card { position: relative; width: 160px; margin: 18px auto 22px; padding: 7px 8px 10px; box-sizing: border-box; border: 1px solid #9291a3; border-radius: 16px; background: #fff; box-shadow: 3px 4px 4px #30304465; text-align: left; font: 11px Arial,sans-serif; color: #343434; }
.archive-page[data-page="home"] .home-browser-card h2 { margin: 0 0 8px; padding: 6px 3px 7px; border-radius: 12px; background: #d91b57; color: #fff; font: bold 19px/1.05 "Arial Narrow",Arial,sans-serif; text-align: center; }
.archive-page[data-page="home"] .home-mobile-icon { display: block; width: 40px; flex: 0 0 40px; font: 36px/1 "Segoe UI Emoji","Apple Color Emoji",sans-serif; text-align: center; }
.archive-page[data-page="home"] .home-browser-card ul { padding: 0; margin: 0; list-style: none; }
.archive-page[data-page="home"] .home-browser-card li { display: flex; align-items: center; gap: 6px; min-height: 46px; padding: 2px 0; }
.archive-page[data-page="home"] .home-browser-card li img { width: 40px; height: 40px; flex: 0 0 40px; }
.archive-page[data-page="home"] .home-browser-card li span { line-height: 1; }
.archive-page[data-page="home"] .home-browser-card li strong { display: block; font-size: 21px; line-height: 1.05; font-weight: normal; letter-spacing: -.6px; }
.archive-page[data-page="home"] .home-browser-card li:nth-child(2) strong { font-weight: bold; color: #b33c0b; }
.archive-page[data-page="home"] .home-browser-card li:nth-child(3) strong { color: #087891; }
.archive-page[data-page="home"] .home-browser-card li:nth-child(4) strong { color: #bd1023; }
.archive-page[data-page="home"] .home-browser-note { margin: 7px -3px 0; padding: 0; color: #545469; text-align: center; font-size: 11px; line-height: 1.3; }
.archive-page[data-page="home"] #homePreview { padding: 8px; border: 1px solid #5e607c; background: #ebeef3; max-width: calc(100vw - 32px); max-height: calc(100vh - 32px); box-shadow: 0 4px 24px #0007; }
.archive-page[data-page="home"] #homePreview::backdrop { background: #222333b0; }
.archive-page[data-page="home"] #homeHoverPreview { position: fixed; z-index: 1000; padding: 5px; border: 1px solid #5e607c; background: #ebeef3; box-shadow: 3px 4px 12px #0006; pointer-events: none; }
.archive-page[data-page="home"] #homeHoverPreview[hidden] { display: none; }
.archive-page[data-page="home"] #homeHoverImage { display: block; width: auto; height: auto; max-width: min(560px, calc(100vw - 36px)); max-height: calc(100vh - 36px); }
.archive-page[data-page="home"] #homePreviewClose { display: block; margin: 0 0 8px auto; background: linear-gradient(#fafafa,#ccd0dd); color: #30374e; }
.archive-page[data-page="home"] #homePreviewImage { display: block; width: min(900px, calc(100vw - 52px)); height: auto; max-height: calc(100vh - 95px); object-fit: contain; }
