/* Page additions only. Typography, palette, layout, forms and buttons come from the live Morphos stylesheet. */
[hidden] { display: none !important; }
.install-skip { position:absolute; left:16px; top:-100px; z-index:2000; padding:12px; background:#fff; }
.install-skip:focus { top:16px; }
.install-help { font-size:14px; line-height:1.6; color:var(--dark-gray); margin-top:12px; }
.install-status { font-size:15px; margin:16px 0 0; }
.install-status[data-error="true"] { color:#991b1b; }
.install-release { margin-top:24px; padding-top:24px; border-top:1px solid #dbe4ef; }
.install-release h3 { font-size:24px; margin:0 0 12px; }
.install-release h4 { font-size:20px; margin:0 0 12px; }
.install-login-page { min-height:100vh; background:var(--off-white); }
.install-login-brand { padding:32px 24px; text-align:center; }
.install-login-brand img { display:inline-block; }
.install-login { width:min(100% - 40px,520px); margin:48px auto 100px; }
.install-login h1 { font-size:32px; line-height:1.2; margin-bottom:20px; }
.install-login .support-form-card { padding:36px; }
.install-login .btn { width:100%; }
.install-login .form-group { margin-bottom:20px; }
.install-guide-tools { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:36px; }
.install-guide-tools p { margin:0; }
.install-figure { margin:24px 0 0; }
.install-image-button { display:block; background:#fff; padding:0; border:1px solid #dbe4ef; border-radius:var(--radius-md); overflow:hidden; cursor:zoom-in; max-width:100%; }
.install-image-button img { display:block; max-width:100%; height:auto; }
.install-figure figcaption { font-size:13px; color:var(--dark-gray); margin-top:10px; }
.install-enlarge { font:inherit; border:0; background:none; color:var(--brand-blue); text-decoration:underline; cursor:pointer; padding:4px 6px; }
.install-viewer { width:min(1100px,94vw); max-height:92vh; margin:auto; border:0; border-radius:var(--radius-lg); padding:24px; box-shadow:var(--shadow-lg); }
.install-viewer::backdrop { background:rgba(0,20,55,.75); }
.install-viewer-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-bottom:20px; }
.install-viewer-toolbar h2 { font-size:24px; flex:1 1 300px; margin:0; }
.install-viewer-toolbar select { padding:8px; border:1px solid #dbe4ef; border-radius:var(--radius-sm); font:inherit; }
.install-viewer-scroll { max-height:65vh; overflow:auto; background:var(--off-white); border:1px solid #dbe4ef; }
.install-viewer-scroll img { display:block; max-width:none; height:auto; }
.install-confirm { display:flex; align-items:flex-start; gap:10px; margin:20px 0; font-size:14px; line-height:1.6; color:var(--dark-gray); }
.install-confirm input { margin-top:5px; width:18px; height:18px; flex-shrink:0; accent-color:var(--brand-blue); }
.install-filename { overflow-wrap:anywhere; font-size:12px; }
.install-change { background:none; border:0; color:var(--brand-blue); cursor:pointer; font:inherit; padding:12px 0; text-decoration:underline; text-underline-offset:3px; }
.install-guide-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:48px; }
.install-contents { align-self:start; position:sticky; top:110px; padding:24px; border-radius:var(--radius-lg); background:var(--off-white); }
.install-contents h3 { font-size:18px; margin-bottom:16px; }
.install-contents h2 { font-size:18px; margin-bottom:16px; }
.install-contents ol { padding-left:20px; font-size:14px; line-height:1.5; }
.install-contents li { margin-bottom:12px; }
.install-step { display:grid; grid-template-columns:48px minmax(0,1fr); gap:20px; padding:28px 0; border-bottom:1px solid #dbe4ef; scroll-margin-top:110px; }
.install-step:first-child { padding-top:0; }
.install-step h3 { font-size:24px; margin-bottom:14px; }
.install-step p:last-child { margin-bottom:0; }
.install-step-number { color:var(--brand-blue); font:700 20px var(--font-heading); padding-top:4px; }
.install-server-example { padding:16px 20px; background:var(--off-white); border-radius:var(--radius-md); display:flex; flex-direction:column; gap:6px; }
.install-server-example span { color:var(--dark-gray); font-size:13px; }
.install-server-example code { font-size:15px; overflow-wrap:anywhere; }
.install-sources { margin-top:24px; }
.install-preview { border-left:3px solid var(--brand-blue); background:#fff; padding:12px 16px; margin-bottom:24px; font-size:14px; }
.install-requirements { margin-top:20px; }
.support-aside h2 { font-size:28px; margin-bottom:20px; }
.btn:disabled { opacity:.55; cursor:not-allowed; }
:focus-visible { outline:3px solid var(--brand-blue); outline-offset:4px; }
@media(max-width:768px) { .install-guide-layout { grid-template-columns:1fr; gap:24px; } .install-contents { position:static; } .install-contents ol { display:grid; grid-template-columns:1fr 1fr; column-gap:24px; } .install-step { grid-template-columns:32px minmax(0,1fr); gap:12px; } .install-step h3 { font-size:21px; } .install-release .btn { width:100%; } }
@media print { .header,.nav__drawer,.nav__overlay,.footer,.cta-banner,#download,.install-contents,.cookie-banner { display:none!important; } .hero { min-height:0!important; padding:20px!important; } .section { padding:20px 0!important; } .install-guide-layout { display:block; } .install-step { break-inside:avoid; } .hero__bg,.hero__overlay { display:none!important; } .hero h1,.hero p { color:#000!important; } }
