:root{color-scheme:dark;--bg:#181818;--deep:#181818;--surface:#181818;--surface-2:#181818;--border:#414141;--text:#eeeeee;--muted:#cccccc;--dim:#999999;--accent:#cccccc;--accent-soft:#cccccc1f;--button-accent:#8bcae6;--danger:#dddddd}
html body{background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65;text-rendering:optimizeLegibility}
::selection{background:#555555;color:#ffffff}
body header{background:var(--deep);border-bottom:1px solid var(--border)}
body .bar{min-height:80px;gap:24px}
body .brand img{width:42px;height:42px}
body nav{gap:28px}
body nav a{font-size:14.3px;color:var(--muted);padding:27px 0;letter-spacing:.02em}
body nav a:hover,body nav a[aria-current="page"]{color:var(--accent);border-bottom-color:var(--accent)}
body h1,body h2,body h3{color:var(--text);font-family:Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-.025em}
body h1{font-size:clamp(30px,4vw,44px);margin-bottom:30px}
body .page h2{font-size:24px;font-weight:600}
body .page p,body .intro,body small,body .pc-row small,body .pc-selection span{color:var(--muted)}
body footer,body.home footer{border-top:1px solid var(--border);color:var(--dim);font-size:11px;letter-spacing:.04em}
body .home-hero .gade-wordmark{color:var(--accent);width:min(640px,80vw)}
body .page a:not(.pc-button):not(.back){text-underline-offset:5px}
body .page-list li,body .link-row,body .pc-row,body .pc-selection,body .pc-upload-list li{border-color:var(--border)}
body .page-list a:hover,body .pc-name:hover{color:var(--accent)}
body .empty,body .upload-box,body .pc-drop{background:var(--surface);border-color:var(--border);border-radius:0}
body .pc-drop{border-width:1px;padding:40px 24px}
body .pc-drop.dragging{background:var(--accent-soft);border-color:var(--accent)}
body .pc-row.selected,body .pc-folder:hover{background:var(--accent-soft)}
body .pc-checkbox,body input[type="checkbox"],body input[type="range"],body progress{accent-color:var(--accent)}
body button,body .pc-button,body .upload-button{font-family:inherit;background:var(--accent);color:var(--deep);border:1px solid var(--accent);border-radius:0;box-shadow:none;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
body button:hover,body .pc-button:hover,body .upload-button:hover{background:#eeeeee;border-color:#eeeeee;color:var(--deep)}
body button:disabled,body .pc-button:disabled{background:var(--surface-2);color:var(--dim);border-color:var(--border);opacity:.65;cursor:not-allowed}
body input:not([type="checkbox"]):not([type="range"]),body select,body textarea{background:var(--deep);color:var(--text);border:1px solid var(--border);border-radius:0;font:inherit;padding:10px 12px;max-width:100%}
body input::placeholder,body textarea::placeholder{color:var(--dim)}
body input::file-selector-button{font:inherit;background:var(--surface-2);color:var(--text);border:1px solid var(--border);padding:7px 12px;margin-right:12px;cursor:pointer}
body :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
body .pc-status{color:var(--muted)}
body .pc-status[data-state="success"]{color:var(--accent)}
body .pc-status[data-state="error"]{color:var(--danger)}
body #pc-upload-stop,body #logout,body .link-row button,body .pc-upload-list button{background:transparent;color:var(--muted);border-color:var(--border)}
body #pc-upload-stop:hover,body #logout:hover,body .link-row button:hover,body .pc-upload-list button:hover{background:var(--surface-2);color:var(--text);border-color:var(--dim)}
body .admin-tabs button{background:transparent;color:var(--dim);border-radius:0;border-color:transparent;border-bottom:2px solid transparent}
body .admin-tabs button[aria-selected="true"]{background:var(--surface);color:var(--accent);border-bottom-color:var(--accent)}
body #publication-toggle.publish{background:var(--accent);color:var(--deep);border-color:var(--accent)}
body #publication-toggle.unpublish{background:transparent;color:var(--danger);border-color:var(--danger)}
body #publication-toggle.unpublish:hover{background:#dddddd1f}
body .link-row.drop-target{border-top-color:var(--accent)}
body .link-drag-handle{color:var(--dim)}
body #link-crop-canvas{border:1px solid var(--border)}
body .downloads{gap:28px}
body .downloads a{padding:28px 16px;border:1px solid var(--border);background:var(--surface);font:600 15px 'JetBrains Mono',monospace;transition:border-color .15s,background .15s}
body .downloads a:hover{background:var(--surface-2);border-color:var(--accent);color:var(--accent);text-decoration:none}
body .downloads img{border:1px solid var(--border);border-radius:50%}
body details nav{background:var(--deep);border-color:var(--border);box-shadow:none}
body summary{color:var(--muted)}
@media(max-width:800px){body .bar{min-height:0}body nav a{padding:9px 0}body .downloads{gap:16px}}
@media(max-width:460px){body .bar{padding:18px 24px}body details nav a{padding:10px 0}body .downloads a{padding:20px 10px}body .pc-drop{padding:24px 12px}body .home-hero .gade-wordmark{width:80vw}}
@media(prefers-reduced-motion:reduce){body button,body .pc-button,body .downloads a{transition:none}}


body #pc-file::file-selector-button{background:var(--accent);color:var(--deep);border-color:var(--accent);font-size:13px;font-weight:600;border-radius:0}body #pc-file::file-selector-button:hover{background:#eeeeee;border-color:#eeeeee}

html body{background-color:#181818}body.home{background-color:#181818}

body [hidden]{display:none!important}body #pc-drop{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}body #pc-drop #pc-choose-files{margin:0;padding:10px 16px}body #pc-selected{width:100%;margin:0}body #pc-selected:empty{display:none}body #pc-drop #pc-upload-button,body #pc-drop #pc-stop-upload{margin-top:0}

body:not(.home) main,body .page,body .pc-panel,body .empty,body .pc-drop,body .downloads a{background-color:var(--bg)}

body .bar{justify-content:flex-start;align-items:center}body .bar>nav{justify-content:flex-start}body .bar details{margin-right:auto}body details nav{left:0;right:auto}@media(max-width:800px){body .bar{align-items:flex-start}body .bar>nav{justify-content:flex-start}}

body main.page{width:100%;max-width:1120px;margin:0 auto;padding:72px 32px 68px;text-align:left}body main.page>h1{margin:0 0 30px;line-height:1.25}@media(max-width:800px){body main.page{padding:46px 24px 46px}}

body #pc-refresh,body #pc-back{background:#303030;border-color:#666;color:#eee}body #pc-refresh:hover:not(:disabled),body #pc-back:hover:not(:disabled){background:#444;border-color:#888;color:#fff}body #pc-refresh:disabled,body #pc-back:disabled{background:#202020;border-color:#444;color:#888;opacity:.65;cursor:not-allowed}

body .bar{flex-direction:row;align-items:center}body .brand{display:flex;flex-shrink:0;align-items:center}body .brand img{width:64px;height:64px;object-fit:contain}body .bar details{margin-right:0}@media(max-width:800px){body .bar{align-items:center}}@media(max-width:460px){body .bar{padding:8px 24px;gap:18px}}

body .home-wordmark{width:min(640px,80vw);display:flex;flex-direction:column;gap:24px}body .home-hero .home-wordmark .gade-wordmark{width:100%;height:auto;max-height:none}body .home-wordmark{max-width:calc(60svh * 1.127)}@media(max-width:460px){body .home-wordmark{gap:16px}}

body .home-artwork{display:block;width:min(760px,85vw,70svh);height:auto;max-height:70svh;object-fit:contain}


body .downloads a{background:var(--accent);color:var(--deep);border:1px solid var(--accent);border-radius:0;padding:24px 16px;gap:16px;font-size:13px;font-weight:600}body .downloads a:hover{background:#eeeeee;color:var(--deep);border-color:#eeeeee;text-decoration:none}body .downloads img{width:90px;height:90px;border-color:transparent}body .downloads a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}@media(max-width:460px){body .downloads img{width:72px;height:72px}}

body #files-access-form{display:flex;flex-wrap:wrap;align-items:center;gap:14px;max-width:560px}body #files-access-form label{flex-basis:100%}body #files-access-code{width:240px}body #files-access-status{color:var(--danger)}


body .downloads a{isolation:isolate}body .downloads img{mix-blend-mode:multiply;background:transparent;border:0}

body.home{height:100svh;height:100dvh;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}body.home .home-hero{width:100%;height:100%;min-height:0;margin:0;max-width:none;padding:16px 24px;overflow:hidden}body.home .home-artwork{height:100%;width:auto;max-height:100%;max-width:min(760px,85vw);object-fit:contain}body.home .home-pixels{position:absolute;inset:0}body.home footer{background:var(--bg);padding:18px 0 22px}

body .downloads{grid-template-columns:repeat(4,minmax(0,148px));justify-content:start}body .downloads a{padding:12px 10px}@media(max-width:800px){body .downloads{grid-template-columns:repeat(2,minmax(0,148px))}}@media(max-width:460px){body .downloads{grid-template-columns:repeat(2,minmax(0,1fr));max-width:312px}}


body.home{background-image:none}body .home-hero::after{content:none}
body .brand{color:var(--muted);width:40px;height:44px;justify-content:center}body .brand:hover{color:#fff}body .home-icon{display:block;width:28px;height:28px}
body button,body .pc-button,body .upload-button,body .downloads a,body #publication-toggle.publish{background:var(--accent);border-color:var(--accent);color:var(--deep)}body button:hover,body .pc-button:hover,body .upload-button:hover,body .downloads a:hover,body #publication-toggle.publish:hover{background:#aedcf0;border-color:#aedcf0;color:var(--deep)}
body.home .home-artwork{height:auto;width:min(448px,65.6vw,calc(80dvh - 144px));max-height:100%;aspect-ratio:1;object-fit:contain;border-radius:50%;flex-shrink:1}

body .brand img{display:block;width:40px;height:40px;object-fit:contain;border-radius:0}

body button,body .pc-button,body .upload-button,body .downloads a,body #publication-toggle.publish{background:var(--button-accent);border-color:var(--button-accent);color:var(--deep)}body button:hover,body .pc-button:hover,body .upload-button:hover,body .downloads a:hover,body #publication-toggle.publish:hover{background:#aedcf0;border-color:#aedcf0;color:var(--deep)}
body input:not([type="checkbox"]):not([type="range"]):not([type="file"]),body textarea,body select{border-color:var(--button-accent)}body :is(input,textarea,select):focus-visible{outline-color:var(--button-accent)}

body .pc-drop-hint{margin:0;font-size:13px;color:var(--muted);text-align:center}

body footer #credit{display:inline-flex;align-items:center;gap:.6em;line-height:1}body footer .copyright-symbol{display:block;font-size:1.35em;line-height:1;transform:translateY(1px)}

body.home .home-artwork{width:min(616px,55vw);height:auto;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:contain;border-radius:0}

@media(max-width:800px){body.home .home-artwork{width:min(616px,85vw)}}

body input:not([type="checkbox"]):not([type="range"]):not([type="file"]):focus,body textarea:focus,body select:focus{outline:none;outline-offset:0;box-shadow:none;border-color:#aedcf0}

body #login-form{display:flex;flex-wrap:wrap;align-items:center;gap:14px;max-width:560px}body #login-form label{flex-basis:100%;margin:0}body #login-form input[type="password"],body #files-access-code{box-sizing:border-box;width:240px;max-width:100%;height:47px;margin:0}body #login-form button,body #files-access-form button{box-sizing:border-box;height:47px;margin:0;padding:0 16px;display:inline-flex;align-items:center;justify-content:center}

body main.access-page{min-height:calc(100dvh - 160px);display:flex;flex-direction:column}body #files-access-form,body #login-form{width:max-content;max-width:100%;margin-left:auto;margin-right:auto}body .access-page #files-access-form{margin-top:auto;margin-bottom:auto}body #files-access-status{text-align:center}body #login:not([hidden]){min-height:calc(100dvh - 350px);display:grid;place-items:center}body #login-form{margin-top:0;margin-bottom:0}@media(max-width:460px){body #files-access-form,body #login-form{justify-content:center}body #files-access-form label,body #login-form label{text-align:center}}

body .access-page #files-access-form,body #login-form{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:334px;max-width:calc(100vw - 48px);margin:0;justify-content:flex-start}body #files-access-form button,body #login-form button{width:80px;padding:0}body .access-page #files-access-status{position:fixed;top:calc(50% + 65px);left:24px;right:24px;margin:0;text-align:center}@media(max-height:500px){body .access-page #files-access-form,body #login-form{position:static;transform:none;margin:32px auto}body .access-page #files-access-status{position:static}}

body .unavailable-page h1{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% - 48px);max-width:1100px;margin:0;text-align:center;line-height:1.25}

body .video-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}body .video-toolbar p{margin:0}body #videos-refresh{background:#303030;border-color:#666;color:#eee}body .video-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,3fr);gap:28px}body #video-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}body button.video-choice{width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere;padding:14px;background:#252525;border-color:var(--border);color:var(--text)}body button.video-choice[aria-pressed="true"]{border-color:var(--button-accent);background:#333}body .video-choice small{display:block;font-size:11px;margin-top:5px}body #video-title{font-size:20px;margin:0 0 16px;overflow-wrap:anywhere}body #video-player{display:block;width:100%;max-height:65dvh;background:#000;margin-bottom:18px}body #cast-note{font-size:12px}body #cast-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px}body #cast-seek{flex:1;min-width:100px}body #video-folder-form{display:flex;flex-wrap:wrap;gap:14px;align-items:center}body #video-folder-form label{flex-basis:100%}body #video-folder-url{width:min(560px,100%)}@media(max-width:800px){body .video-layout{grid-template-columns:1fr}body #video-list{max-height:260px;overflow:auto}}

body .video-layout{display:flex;flex-direction:column;gap:28px}body #video-list{display:block;max-height:none;overflow:visible}body #video-stage{width:100%}body .video-toolbar{justify-content:flex-start;flex-wrap:wrap;gap:12px}body #videos-path{flex:1;overflow-wrap:anywhere;font-size:13px}body #videos-back,body #videos-refresh{background:#303030;border-color:#666;color:#eee}body #videos-back:disabled{background:#202020;border-color:#444;color:#888;opacity:.65;cursor:not-allowed}body #videos-back:hover:not(:disabled),body #videos-refresh:hover{background:#444;border-color:#888;color:#fff}body #video-list .pc-name{cursor:pointer}

body .video-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);align-items:start;gap:28px}body .video-explorer{min-width:0}body #video-list .pc-row{display:flex;padding:14px 10px}body #video-list .pc-name{overflow-wrap:anywhere;white-space:normal;flex:1}body #video-stage{min-width:0}body #video-placeholder{margin:0;padding:28px;border:1px solid var(--border);text-align:center}body .video-explorer .video-toolbar{gap:10px}body #videos-path{flex-basis:100%;order:3}@media(max-width:800px){body .video-layout{grid-template-columns:1fr}}

body #video-list a.pc-name{color:var(--text);text-decoration:none}body #video-list a.pc-name:hover{text-decoration:underline}

body #video-pcloud-frame{display:block;width:100%;height:65dvh;min-height:420px;border:1px solid var(--border);background:#181818}@media(max-width:800px){body #video-pcloud-frame{height:70dvh;min-height:420px}}

body .image-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);align-items:start;gap:28px}body .image-explorer,body #image-stage{min-width:0}body .image-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:24px}body #images-path{flex-basis:100%;order:3;font-size:13px;overflow-wrap:anywhere}body #images-back,body #images-refresh{background:#303030;border-color:#666;color:#eee}body #images-back:disabled{opacity:.5;cursor:not-allowed}body #image-placeholder{margin:0;padding:28px;border:1px solid var(--border);text-align:center}body #image-title{font-size:20px;margin:0 0 16px;overflow-wrap:anywhere}body .image-canvas{display:flex;align-items:center;justify-content:center;min-height:260px;background:#202020;border:1px solid var(--border)}body #image-preview{display:block;max-width:100%;max-height:65dvh;object-fit:contain}body .image-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}body #image-list .pc-row{display:flex;padding:14px 10px;cursor:pointer}body #image-list .pc-name{overflow-wrap:anywhere;white-space:normal;flex:1}body #image-viewer:fullscreen{background:#181818;padding:24px;display:flex;flex-direction:column;justify-content:center}body #image-viewer:fullscreen #image-preview{max-height:80dvh}body :is(#files-folder-form,#images-folder-form){display:flex;flex-wrap:wrap;gap:14px;align-items:center}body :is(#files-folder-form,#images-folder-form) label{flex-basis:100%}body :is(#files-folder-url,#images-folder-url){width:min(560px,100%)}@media(max-width:800px){body .image-layout{grid-template-columns:1fr}}

body #upload-settings-form{display:flex;flex-wrap:wrap;gap:14px;align-items:center}body #upload-settings-form label{flex-basis:100%}body #upload-settings-url{width:min(560px,100%)}

@media(min-width:461px){body .bar{display:grid;grid-template-columns:50px minmax(0,1fr) 50px;align-items:center}body .bar>.brand{grid-column:1;justify-self:start}body .bar>nav{grid-column:2;justify-content:center;flex-wrap:wrap}body .bar>details{display:none}}

@media(max-width:460px){body .bar{justify-content:center}body .bar details{margin:0}}

body footer{position:relative;align-items:center;min-height:74px;padding-left:78px;padding-right:78px}body footer .footer-home,body footer #language-toggle{position:absolute;top:50%;transform:translateY(-50%);color:inherit;background:none;border:0;border-radius:0;padding:8px;text-decoration:none;line-height:1;font:inherit;cursor:pointer}body footer .footer-home{left:0;display:flex;align-items:center}body footer #language-toggle{right:0}body footer .footer-home:hover,body footer #language-toggle:hover{color:#eee;background:none}body footer .footer-home:focus-visible,body footer #language-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px}

.admin-tabs{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:26px 0}.admin-tabs button{background:transparent;color:var(--dim);border:0;border-bottom:2px solid transparent}.admin-tabs button[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--fg)}.admin-panel,.github-connection{padding:24px;border:1px solid var(--border);background:#232323;margin:20px auto;text-align:left}.admin-panel form,.github-connection form{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.admin-panel label,.github-connection label{display:flex;flex-direction:column;gap:8px;flex:1;min-width:200px}.admin-panel input,.github-connection input{width:100%;height:48px;padding:10px 14px;border:1px solid var(--accent);background:var(--bg);color:var(--fg);font:inherit}.admin-panel button,.github-connection button{min-height:48px;padding:10px 18px}.settings-divider{border:0;border-top:1px solid var(--border);margin:28px 0}.link-row{display:flex;align-items:center;gap:10px;margin:12px 0;padding:14px 0;border-bottom:1px solid var(--border)}.link-row span{flex:1}.admin-panel p{max-width:100%;}.admin-panel a,.github-connection a{color:var(--accent)}[hidden]{display:none!important}
/* Align the video player area with the page subtitle on desktop. */
@media(min-width:801px){body[data-section="videos"] #video-stage{margin-top:-60px}}

/* Shared file explorer styling and consistent desktop media columns. */
body[data-section="files"] .pc-tools,
body[data-section="videos"] .video-toolbar,
body[data-section="images"] .image-toolbar{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:24px}
body[data-section="files"] #pc-path,
body[data-section="videos"] #videos-path,
body[data-section="images"] #images-path{flex:1 1 100%;order:3;font-size:13px;overflow-wrap:anywhere}
body[data-section="files"] #pc-refresh{margin-left:0}
body[data-section="files"] #pc-files .pc-row,
body[data-section="videos"] #video-list .pc-row,
body[data-section="images"] #image-list .pc-row{display:flex;align-items:center;min-height:54px;padding:14px 10px;border-bottom:1px solid var(--border);gap:18px}
body[data-section="files"] #pc-files .pc-name,
body[data-section="videos"] #video-list .pc-name,
body[data-section="images"] #image-list .pc-name{flex:1;min-width:0;overflow-wrap:anywhere;white-space:normal}
@media(min-width:801px){
 body[data-section="videos"] .video-layout,
 body[data-section="images"] .image-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);align-items:start;gap:28px}
 body[data-section="videos"] .video-explorer,
 body[data-section="images"] .image-explorer,
 body[data-section="videos"] #video-stage,
 body[data-section="images"] #image-stage{min-width:0}
 body[data-section="videos"] #video-stage{margin-top:0}
}
@media(max-width:800px){
 body[data-section="videos"] .video-layout,
 body[data-section="images"] .image-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
 body[data-section="videos"] #video-stage,
 body[data-section="images"] #image-stage{margin-top:0;width:100%;min-width:0}
}

/* Media download links share the site's button styling. */
body .media-download{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;background:var(--button-accent);border:1px solid var(--button-accent);color:var(--deep);font-size:13px;font-weight:600;text-decoration:none;margin-right:12px}
body .media-download:hover{background:#aedcf0;border-color:#aedcf0;color:var(--deep);text-decoration:none}

/* Consistent explorer selection controls across Files, Images and Videos. */
body .media-selection{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
body .media-selection label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:13px}
body .media-selection input{width:18px;height:18px;accent-color:var(--button-accent)}
body .media-selection button{padding:9px 12px}
body .media-selection span{font-size:12px;color:var(--muted)}

/* pCloud share pages: the provider owns the explorer, player and downloads. */
body .pcloud-embed-page{width:calc(100% - 48px);max-width:1600px;margin-left:auto;margin-right:auto}
body .pcloud-embed-page h1{margin-bottom:20px}
body .pcloud-embed-shell{width:100%;height:clamp(540px,76dvh,1100px);background:#fff;border:1px solid var(--border);overflow:hidden}
body #pcloud-embed{display:block;width:100%;height:100%;border:0;background:#fff}
body .pcloud-embed-help{margin:12px 0;color:var(--muted);font-size:13px}
body .pcloud-embed-help a{text-decoration:underline}
body #pcloud-embed-status{font-size:14px}
@media(max-width:800px){body .pcloud-embed-page{width:calc(100% - 32px)}body .pcloud-embed-shell{height:78dvh;min-height:460px}}

/* Let the shared pCloud page occupy the full available content region. */
body .pcloud-embed-page{width:100%;max-width:none;padding-left:0;padding-right:0}
body .pcloud-embed-page>h1,body .pcloud-embed-help,body #pcloud-embed-status{margin-left:clamp(16px,2.5vw,40px);margin-right:clamp(16px,2.5vw,40px)}
body .pcloud-embed-shell{width:100%;height:calc(100dvh - 190px);min-height:600px;border-left:0;border-right:0}
@media(max-width:800px){body .pcloud-embed-page{width:100%}body .pcloud-embed-shell{height:calc(100dvh - 155px);min-height:440px}}

/* Theme switcher and copyright alignment. */
body footer .copyright-symbol{transform:translateY(3px)}
body footer #theme-toggle{position:absolute;right:85px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:6px;color:var(--dim);background:transparent;border:0}
body footer #theme-toggle:hover{color:var(--text);background:transparent}
body footer #theme-toggle .sun-icon{display:none}
html[data-theme="light"] body footer #theme-toggle .sun-icon{display:block}
html[data-theme="light"] body footer #theme-toggle .moon-icon{display:none}
@media(max-width:460px){body footer #theme-toggle{right:77px}}
/* Light theme only affects this site's interface; third-party pCloud iframes retain their own theme. */
html[data-theme="light"]{color-scheme:light;--bg:#f7f8fa;--deep:#ffffff;--surface:#ffffff;--surface-2:#edf0f3;--border:#d7dce2;--text:#1c2630;--muted:#46515d;--dim:#626d77;--accent:#223849;--accent-soft:#d9eaf3;--button-accent:#c4e6f4;--danger:#b43232}
html[data-theme="light"] body header{background:#ffffff}
html[data-theme="light"] body nav a:hover,html[data-theme="light"] body nav a[aria-current="page"]{color:#172b3a}
html[data-theme="light"] body .page p,html[data-theme="light"] body .intro,html[data-theme="light"] body small{color:var(--muted)}
html[data-theme="light"] body .empty,html[data-theme="light"] body .pc-drop{background:var(--surface)}
html[data-theme="light"] body .pc-button,html[data-theme="light"] body button:not(#language-toggle):not(#theme-toggle):not(#logout){color:#fff}
html[data-theme="light"] body footer #theme-toggle,html[data-theme="light"] body footer #language-toggle{color:var(--muted)}
html[data-theme="light"] body footer #theme-toggle:hover,html[data-theme="light"] body footer #language-toggle:hover{color:var(--text)}
html[data-theme="light"] body .home-hero .gade-wordmark{color:var(--accent)}
html[data-theme="light"] body .pcloud-embed-shell{background:#fff}

/* Keep the theme icon directly beside the language switch in the footer. */
body footer #theme-toggle{right:calc(0px + 82px);width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:var(--dim);z-index:1}
body footer #theme-toggle svg{display:block;width:18px;height:18px;stroke:currentColor;flex:none}
body footer #theme-toggle .sun-icon{display:none}
html[data-theme="light"] body footer #theme-toggle .moon-icon{display:none}
html[data-theme="light"] body footer #theme-toggle .sun-icon{display:block}
body footer #language-toggle{min-width:72px;text-align:right}
@media(max-width:460px){body footer #theme-toggle{right:78px}}

/* Light mode uses a light-grey page background; the toggle icon shows the destination mode. */
html[data-theme="light"]{--bg:#e8eaed;--surface:#f1f2f4;--surface-2:#e2e5e9}
html[data-theme="light"] body,html[data-theme="light"] body.home{background:#e8eaed!important;color:var(--text)}
html[data-theme="light"] body main,html[data-theme="light"] body .home-hero{background:transparent}
body footer #theme-toggle .moon-icon{display:none}
body footer #theme-toggle .sun-icon{display:block}
html[data-theme="light"] body footer #theme-toggle .sun-icon{display:none}
html[data-theme="light"] body footer #theme-toggle .moon-icon{display:block}

/* pCloud upload requests cannot be embedded; show a direct action instead. */
body .pcloud-upload-page{max-width:820px}
body .pcloud-upload-card{border:1px solid var(--border);background:var(--surface);padding:clamp(24px,5vw,56px);text-align:center}
body .pcloud-upload-card>p{margin:0 0 26px;color:var(--muted)}
body .pcloud-upload-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 24px;background:var(--button-accent);color:#15212b!important;border:1px solid var(--button-accent);font-weight:700;text-decoration:none!important}
body .pcloud-upload-link:hover{background:#aedcf0;border-color:#aedcf0}
body .pcloud-upload-card .pcloud-upload-note{font-size:13px;margin:24px 0 0}

/* Light theme: invert the monochrome homepage banner and use darker help tiles. */
html[data-theme="light"] body.home .home-artwork{filter:invert(1);background:#fff;border:2px solid #111}
html[data-theme="light"] body .downloads a,
html[data-theme="light"] body .downloads a:visited{background:#9eb2c1!important;border-color:#718899!important;color:#101820!important}
html[data-theme="light"] body .downloads a span{color:#101820!important}
html[data-theme="light"] body .downloads a:hover{background:#829cac!important;border-color:#526b7b!important;color:#080e14!important}

/* Fine-tune copyright symbol baseline beside Lars Gade. */
body footer .copyright-symbol{transform:translateY(1px)}

/* Move the sun/moon footer toggle slightly closer to the language control. */
body footer #theme-toggle{right:72px}
@media(max-width:460px){body footer #theme-toggle{right:68px}}

/* Access code gate for Files, Images and Videos. */
body[data-section="files"] main:not(.access-granted) .pcloud-embed-shell,
body[data-section="images"] main:not(.access-granted) .pcloud-embed-shell,
body[data-section="videos"] main:not(.access-granted) .pcloud-embed-shell{display:none}
body .access-code-gate{width:min(100%,420px);margin:24px auto 50px;padding:36px 30px;border:1px solid var(--border);background:var(--surface);text-align:center}
body .access-code-gate h2{font-size:24px;margin:0 0 12px;color:var(--text)}
body .access-code-gate p{color:var(--muted);margin:0 0 22px}
body .access-code-gate input{display:block;width:100%;margin:0 0 16px;text-align:center;font-size:17px;letter-spacing:.15em}
body .access-code-gate button{min-height:44px;width:100%;background:var(--button-accent);border-color:var(--button-accent);color:#15212b}
body .access-code-gate .access-code-error{color:#e08080;margin:14px 0 0;font-size:13px}

body .access-code-gate input[type="password"]{font-size:34px;line-height:1.3;letter-spacing:.15em}

/* Prevent scroll anchoring when the access form is replaced by pCloud. */
body[data-section="files"] main,body[data-section="images"] main,body[data-section="videos"] main{overflow-anchor:none}

/* Home in main navigation; theme switch in former footer home position. */
body header .bar>nav .header-home{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;border-bottom:2px solid transparent;color:inherit}
body header .bar>nav .header-home svg{display:block;width:18px;height:18px}
body header .bar>nav .header-home:hover{color:var(--text)}
body footer #theme-toggle{left:0;right:auto;top:50%;transform:translateY(-50%)}
@media(max-width:460px){body footer #theme-toggle{left:0;right:auto}}

/* Home is a regular navigation tab, matching Files and Videos. */
body header .bar>nav a.header-home{display:inline-block;align-items:unset;justify-content:unset;padding:30px 0;border-bottom:2px solid transparent;color:inherit;font-size:15px;font-weight:inherit;text-decoration:none}
body header .bar>nav a.header-home:hover{color:#fff;border-bottom-color:#aaa}
html[data-theme="light"] body header .bar>nav a.header-home:hover{color:var(--text)}

/* Consistent action buttons throughout public pages and Admin. */
:root{--site-button:#8bcae6;--site-button-hover:#70b6d5;--site-button-text:#15212b}
html[data-theme="light"]{--site-button:#9eb2c1;--site-button-hover:#829cac;--site-button-text:#101820;--button-accent:#9eb2c1}
body :is(button:not(#theme-toggle):not(#language-toggle),.pc-button,.upload-button,.pcloud-upload-link,.downloads a){background:var(--site-button)!important;border:1px solid var(--site-button)!important;color:var(--site-button-text)!important;transition:background-color .15s,border-color .15s,color .15s}
body :is(button:not(#theme-toggle):not(#language-toggle),.pc-button,.upload-button,.pcloud-upload-link,.downloads a):hover:not(:disabled){background:var(--site-button-hover)!important;border-color:var(--site-button-hover)!important;color:var(--site-button-text)!important}
body button:disabled{opacity:.55;cursor:not-allowed}
body .admin-tabs button[aria-selected="true"]{box-shadow:inset 0 -3px 0 var(--text)}
/* Same access prompt appearance on Admin as Files, Images, Videos and Upload. */
body #admin-login #admin-unlock-form.access-code-gate{display:block;width:min(100%,420px);max-width:420px;margin:24px auto 50px;padding:36px 30px;border:1px solid var(--border);background:var(--surface);text-align:center}
body #admin-login #admin-unlock-form.access-code-gate h2{font-size:24px;margin:0 0 12px;color:var(--text)}
body #admin-login #admin-unlock-form.access-code-gate p{margin:0 0 22px;color:var(--muted)}
body #admin-login #admin-unlock-form.access-code-gate input[type="password"]{display:block;width:100%;font-size:34px;line-height:1.3;letter-spacing:.15em;text-align:center;margin:0 0 16px}
body #admin-login #admin-unlock-form.access-code-gate button{display:block;width:100%;min-height:44px}
html[data-theme="light"] body #admin-login,html[data-theme="light"] body #editor{color:var(--text)}

/* Admin panels follow the selected theme rather than retaining dark hardcoded colors. */
html[data-theme="light"] body .admin-panel,
html[data-theme="light"] body .github-connection{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important}
html[data-theme="light"] body .admin-panel :is(h1,h2,h3,p,label,span),
html[data-theme="light"] body .github-connection :is(h1,h2,h3,p,label,span){color:var(--text)!important}
html[data-theme="light"] body .admin-panel input,
html[data-theme="light"] body .github-connection input{background:var(--bg)!important;color:var(--text)!important;border-color:var(--border)!important}
html[data-theme="light"] body .admin-panel .settings-divider{border-top-color:var(--border)}
html[data-theme="light"] body .admin-panel a{color:var(--accent)}

/* Rectangular tab selection replaces underline indicators. */
body header .bar>nav a,
body header .bar>nav a.header-home{
  border-bottom-color:transparent!important;
  box-shadow:none;
  padding:10px 12px;
  border:1px solid transparent;
  border-radius:0;
  transition:background-color .15s,border-color .15s,color .15s;
}
body header .bar>nav a:hover,
body header .bar>nav a[aria-current="page"],
body header .bar>nav a.header-home:hover{
  background:var(--surface-2);
  border:1px solid var(--dim);
  border-bottom-color:var(--dim)!important;
  color:var(--text);
}
body .admin-tabs button,
body .admin-tabs button[aria-selected="true"]{
  box-shadow:none!important;
  border-bottom:1px solid transparent!important;
  border-radius:0;
}
body .admin-tabs button:hover,
body .admin-tabs button[aria-selected="true"]{
  outline:2px solid var(--accent);
  outline-offset:-2px;
}

/* High-contrast filled navigation tabs: white on dark, black on light. */
body header .bar>nav a:hover,
body header .bar>nav a[aria-current="page"],
body header .bar>nav a.header-home:hover,
body .admin-tabs button:hover,
body .admin-tabs button[aria-selected="true"]{
  background:#fff!important;
  color:#000!important;
  border-color:#fff!important;
  border-bottom-color:#fff!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html[data-theme="light"] body header .bar>nav a:hover,
html[data-theme="light"] body header .bar>nav a[aria-current="page"],
html[data-theme="light"] body header .bar>nav a.header-home:hover,
html[data-theme="light"] body .admin-tabs button:hover,
html[data-theme="light"] body .admin-tabs button[aria-selected="true"]{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  border-bottom-color:#000!important;
}

/* Monochrome buttons across the public site and Admin. */
:root{--site-button:#fff;--site-button-hover:#d9d9d9;--site-button-text:#000;--button-accent:#fff}
html[data-theme="light"]{--site-button:#000;--site-button-hover:#333;--site-button-text:#fff;--button-accent:#000}
body :is(button:not(#theme-toggle):not(#language-toggle),.pc-button,.upload-button,.pcloud-upload-link,.downloads a){
  background:var(--site-button)!important;
  border:1px solid var(--site-button)!important;
  color:var(--site-button-text)!important;
  border-radius:0!important;
}
body :is(button:not(#theme-toggle):not(#language-toggle),.pc-button,.upload-button,.pcloud-upload-link,.downloads a):hover:not(:disabled){
  background:var(--site-button-hover)!important;
  border-color:var(--site-button-hover)!important;
  color:var(--site-button-text)!important;
}
body .admin-tabs button:hover,body .admin-tabs button[aria-selected="true"]{background:#fff!important;color:#000!important;border-color:#fff!important}
html[data-theme="light"] body .admin-tabs button:hover,html[data-theme="light"] body .admin-tabs button[aria-selected="true"]{background:#000!important;color:#fff!important;border-color:#000!important}

/* Monochrome square borders for access-code and form fields. */
body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]),textarea,select){
  border:1px solid #fff!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html[data-theme="light"] body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]),textarea,select){
  border-color:#000!important;
}
body :is(input,textarea,select):focus-visible{
  outline:2px solid #fff!important;
  outline-offset:2px;
}
html[data-theme="light"] body :is(input,textarea,select):focus-visible{
  outline-color:#000!important;
}

/* One identical access-code prompt for Files, Videos, Images, Upload and Admin. */
body .access-code-gate,
body #admin-login #admin-unlock-form.access-code-gate{
  box-sizing:border-box!important;
  display:block!important;
  width:min(420px,100%)!important;
  max-width:420px!important;
  margin:24px auto 50px!important;
  padding:36px 30px!important;
  border:1px solid var(--text)!important;
  border-radius:0!important;
  background:var(--surface)!important;
  text-align:center!important;
}
body .access-code-gate h2,
body #admin-login #admin-unlock-form.access-code-gate h2{font-size:24px!important;line-height:1.25!important;margin:0 0 12px!important}
body .access-code-gate p,
body #admin-login #admin-unlock-form.access-code-gate p{margin:0 0 22px!important;line-height:1.5!important}
body .access-code-gate input[type="password"],
body #admin-login #admin-unlock-form.access-code-gate input[type="password"]{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:48px!important;
  margin:0 0 16px!important;
  padding:6px 12px!important;
  font-size:34px!important;
  line-height:1.3!important;
  letter-spacing:.15em!important;
  text-align:center!important;
}
body .access-code-gate button,
body #admin-login #admin-unlock-form.access-code-gate button{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 16px!important;
}
body .access-code-gate .access-code-error{margin:14px 0 0!important}

/* Align Admin's access prompt with the other protected pages, below the page heading. */
body #admin-main.access-page #admin-login{display:contents}
body #admin-main.access-page #admin-unlock-form.access-code-gate{margin-top:24px!important;margin-bottom:50px!important}
body #admin-main.access-page{justify-content:flex-start}

/* Match the Files heading-to-code-card spacing exactly in Admin. */
body #admin-main.access-page>h1{margin-bottom:20px!important}

/* Files collapses heading/card margins; Admin flex layout does not. Equalize the resulting gap. */
body #admin-main.access-page #admin-unlock-form.access-code-gate{margin-top:4px!important}

/* Admin locked screen uses the exact same block flow as Files, not a flex column. */
body main#admin-main.access-page{display:block!important}
body main#admin-main.access-page>h1{margin-bottom:20px!important}
body main#admin-main.access-page #admin-login{display:block!important}
body main#admin-main.access-page #admin-unlock-form.access-code-gate{margin:24px auto 50px!important}

/* Video comparison: Admin gate starts 6px above Files. Match its exact top edge. */
body main#admin-main.access-page #admin-unlock-form.access-code-gate{margin-top:30px!important}


/* Navigation appearance is independent of translated labels and language. */
body header nav a,
body header nav a.header-home{
  box-sizing:border-box;
  border:1px solid transparent!important;
  border-radius:0!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body header nav a:hover,
body header nav a[aria-current="page"],
body header nav a.header-home:hover{
  background:#fff!important;
  color:#000!important;
  border:1px solid #fff!important;
  border-bottom:1px solid #fff!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
html[data-theme="light"] body header nav a:hover,
html[data-theme="light"] body header nav a[aria-current="page"],
html[data-theme="light"] body header nav a.header-home:hover{
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  border-bottom-color:#000!important;
}

/* Consistent navigation geometry regardless of translated label length or viewport breakpoint. */
@media(min-width:461px){
 body header .bar>.bar>nav{
   display:flex!important;
   flex-wrap:nowrap!important;
   align-items:center!important;
   justify-content:center!important;
   gap:clamp(6px,1.5vw,20px)!important;
   min-width:0;
 }
 body header .bar>nav a,
 body header .bar>nav a.header-home{
   box-sizing:border-box!important;
   display:inline-flex!important;
   align-items:center!important;
   justify-content:center!important;
   flex:0 0 auto!important;
   height:64px!important;
   padding:0 clamp(5px,1vw,12px)!important;
   margin:0!important;
   line-height:1.2!important;
   white-space:nowrap!important;
   font-size:clamp(12px,1.15vw,15px)!important;
 }
 body header .bar{min-height:80px!important}
}

/* Reference navigation: compact filled active tab, same in Danish and English. */
@media(min-width:461px){
 body header .bar{min-height:80px!important}
 body header .bar>.bar>nav{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  flex-wrap:nowrap!important;gap:clamp(10px,2vw,30px)!important;
 }
 body header .bar>nav a,
 body header .bar>nav a.header-home{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;height:46px!important;
  padding:0 clamp(10px,1.4vw,20px)!important;
  margin:0!important;line-height:1!important;
  font-size:15px!important;font-weight:400!important;
  white-space:nowrap!important;
  border:1px solid transparent!important;
  border-radius:0!important;
 }
 body header .bar>nav a:hover,
 body header .bar>nav a[aria-current="page"]{
  background:#fff!important;color:#000!important;border-color:#fff!important;
 }
 html[data-theme="light"] body header .bar>nav a:hover,
 html[data-theme="light"] body header .bar>nav a[aria-current="page"]{
  background:#000!important;color:#fff!important;border-color:#000!important;
 }
}

/* Identical compact navigation layout for Danish and English.
   Fixed seven equal slots prevent translated labels from shifting tabs. */
@media(min-width:761px){
 body header .bar>.bar>nav{
   display:grid!important;
   grid-template-columns:repeat(8,minmax(0,1fr))!important;
   align-items:center!important;
   justify-items:center!important;
   gap:0!important;
   width:100%!important;
   min-width:0!important;
 }
 body header .bar>nav a,
 body header .bar>nav a.header-home{
   width:min(100%,96px)!important;
   min-width:0!important;
   height:46px!important;
   padding:0 5px!important;
   margin:0!important;
   display:flex!important;
   align-items:center!important;
   justify-content:center!important;
   font-size:15px!important;
   line-height:1!important;
   white-space:nowrap!important;
 }
}
@media(min-width:461px) and (max-width:760px){
 body header .bar>.bar>nav{display:none!important}
 body header .bar>details{display:block!important;grid-column:2;justify-self:center}
 body header .bar{grid-template-columns:50px minmax(0,1fr) 50px!important}
}

/* Help download tiles: white labels and visible artwork on black light-theme buttons. */
html[data-theme="light"] body .downloads a,
html[data-theme="light"] body .downloads a:visited,
html[data-theme="light"] body .downloads a span,
html[data-theme="light"] body .downloads a:hover span{
 color:#fff!important;
}
html[data-theme="light"] body .downloads a img{
 mix-blend-mode:normal!important;
 opacity:1!important;
 filter:brightness(0) invert(1)!important;
 background:transparent!important;
}
html[data-theme="light"] body .downloads a:hover,
html[data-theme="light"] body .downloads a:hover span{color:#fff!important}

/* In light mode invert the original black-on-white icon image:
   black artwork becomes white and its white background becomes black. */
html[data-theme="light"] body .downloads a img{
  filter:invert(1)!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
  border:0!important;
}

/* Keep the navigation and footer stationary during page transitions. */
html{overflow-y:scroll;scrollbar-gutter:stable}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body>header,body>footer{flex-shrink:0}
body>main{flex:1 0 auto;width:100%}
body header .bar{height:88px;min-height:88px!important}
@media(max-width:800px){
 body header .bar{height:auto;min-height:88px!important}
}

/* Full-width, identical three-position footer on every page. */
body>footer,body.home>footer{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:20px 32px!important;
  min-height:94px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:0!important;
  position:relative!important;
}
body>footer #theme-toggle{
  position:static!important;
  transform:none!important;
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  margin:0!important;
}
body>footer #credit{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:center!important;
  white-space:nowrap!important;
}
body>footer #language-toggle{
  position:static!important;
  transform:none!important;
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  margin:0!important;
  min-width:0!important;
}
@media(max-width:460px){
 body>footer,body.home>footer{padding:18px 24px!important;min-height:82px!important}
}

/* Match the home page footer on every page: same width, line and spacing. */
body>footer,body.home>footer{
  width:calc(100% - 64px)!important;
  max-width:1320px!important;
  margin:0 auto!important;
  padding:20px 8px 24px!important;
  min-height:94px!important;
  border-top:1px solid var(--border)!important;
  background:var(--bg)!important;
}
@media(max-width:460px){
 body>footer,body.home>footer{
  width:calc(100% - 48px)!important;
  padding:18px 4px!important;
  min-height:82px!important;
 }
}

/* Keep the square LG artwork at the requested smaller size. */
body.home .home-artwork{width:min(400px,64vw);max-width:100%;height:auto}
@media(max-width:800px){body.home .home-artwork{width:min(400px,64vw)}}

/* Stable navigation: no hover boxes, border flashes or color transitions. */
body header nav a,body header nav a.header-home{transition:none!important;animation:none!important;outline-offset:0}
@media(hover:hover){body header nav a:not([aria-current="page"]):hover{background:transparent!important;border-color:transparent!important;color:inherit!important}}
body header nav a:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
body header nav a:active{transform:none!important}

/* Compact eight-tab navigation: single row on desktop and tablets. */
@media(min-width:601px){
 body header .bar>nav{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:0!important;width:100%!important;min-width:0!important;align-items:center!important;justify-items:center!important}
 body header .bar>nav a,body header .bar>nav a.header-home{box-sizing:border-box!important;width:100%!important;max-width:94px!important;min-width:0!important;padding:0 3px!important;margin:0!important;font-size:clamp(11px,1.15vw,15px)!important;white-space:nowrap!important}
 body header .bar>details{display:none!important}
}
@media(min-width:601px) and (max-width:760px){body header .bar{display:flex!important;align-items:center!important}}

/* LG logo replaces the home tab label without changing navigation geometry. */
body header .bar>nav a.header-home img{display:block;width:34px;height:34px;object-fit:contain;flex:none}
body header .bar>nav a.header-home{font-size:0!important}

/* The LG home logo never receives the filled active/hover tab treatment. */
body header .bar>nav a.header-home,
body header .bar>nav a.header-home:hover,
body header .bar>nav a.header-home:active,
body header .bar>nav a.header-home[aria-current="page"],
html[data-theme="light"] body header .bar>nav a.header-home,
html[data-theme="light"] body header .bar>nav a.header-home:hover,
html[data-theme="light"] body header .bar>nav a.header-home[aria-current="page"]{
 background:transparent!important;border-color:transparent!important;box-shadow:none!important;
}

/* Footer credit is the home link. */
body>footer #credit{cursor:pointer!important;text-decoration:none!important;color:inherit!important;display:inline-flex;align-items:center;gap:.35em}
body>footer #credit:hover,body>footer #credit:visited{color:inherit!important;text-decoration:none!important}
/* Seven navigation items after removing the header logo. */
@media(min-width:601px){body header .bar>nav{grid-template-columns:repeat(7,minmax(0,1fr))!important}}

/* Hide inactive upload content completely while the access-code form is shown. */
body .pcloud-upload-card[hidden],body [hidden]{display:none!important}
/* Contact styling must survive content-only navigation (page head is not reloaded). */
body .contact-page{max-width:820px}
body .contact-list{display:grid;gap:28px;margin-top:36px}
body .contact-list a{display:flex;align-items:center;gap:20px;text-decoration:none;font-size:clamp(15px,2.5vw,20px);overflow-wrap:anywhere}
body .contact-list a:hover{text-decoration:underline}
body .contact-list svg{width:30px;height:30px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Contact links should only be clickable on the icon/text, not across the row. */
body .contact-list a{width:max-content;max-width:100%;justify-self:start}

/* Links page: only the actual link label is interactive, never the full row. */
body #links-list .public-link-row a{display:inline!important;width:max-content!important;max-width:100%!important;align-self:flex-start!important;flex:none!important}
body #links-list .public-link-row{cursor:default!important}

/* Stable footer during content-only page changes. */
html body{min-height:100vh;min-height:100dvh}
html body>main{min-height:calc(100vh - 182px);min-height:calc(100dvh - 182px);flex:1 0 auto}
html body>footer{flex-shrink:0;transition:none!important;animation:none!important;contain:layout style}
html body>footer *,html body>footer *::before,html body>footer *::after{transition:none!important;animation:none!important}

/* Six navigation tabs after removing Contact. */
@media(min-width:601px){body header .bar>nav{grid-template-columns:repeat(6,minmax(0,1fr))!important}}

/* Homepage logo: remove the square image backdrop in both themes. */
body.home .home-artwork{clip-path:circle(47% at 50% 50%);background:transparent!important;border:0!important;box-shadow:none!important}
html[data-theme="light"] body.home .home-artwork{filter:invert(1)!important;background:transparent!important;border:0!important}

/* Restore a clean circular outline while keeping the area outside transparent. */
body.home .home-artwork{clip-path:none!important;border:2px solid #ddd!important;border-radius:50%!important;box-sizing:border-box;background:transparent!important}
html[data-theme="light"] body.home .home-artwork{border:2px solid #ddd!important;background:transparent!important;filter:invert(1)!important}
