:root{--app-primary:#155b8e;--app-accent:#61afe7;--app-bg:#eef4f6;--app-surface:#ffffff}
html,body{min-height:100%}body{background-color:var(--app-bg);background-image:linear-gradient(rgba(244,248,249,.84),rgba(238,244,246,.9)),url('?route=asset&file=background&v=034');background-size:cover;background-position:center;background-attachment:fixed;color:#202a33;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.app-shell{min-height:100vh;display:flex;flex-direction:column}.navbar{background:rgba(255,255,255,.78);backdrop-filter:blur(20px);border-bottom:1px solid rgba(21,91,142,.08)}.navbar-brand{color:#183044}.brand-mark{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,var(--app-primary),var(--app-accent));color:#fff;font-weight:800;box-shadow:0 10px 28px rgba(21,91,142,.2)}.premium-card{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.78);border-radius:24px;box-shadow:0 18px 55px rgba(34,62,79,.09)}.hero{margin-top:1.25rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:800;color:var(--app-primary)}.btn-app,.btn-primary{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.btn-app:hover,.btn-primary:hover{background:#104b77;border-color:#104b77;color:#fff}.stat-card{padding:1.4rem;display:flex;flex-direction:column;min-height:150px}.stat-card span,.stat-card small{color:#74818b}.stat-card strong{font-size:1.8rem;margin:auto 0 .2rem}.empty-chart{min-height:280px;border-radius:18px;background:linear-gradient(180deg,rgba(97,175,231,.09),rgba(21,91,142,.025));display:grid;place-items:center;text-align:center;color:#7f8d97;margin-top:1.5rem}.empty-list{padding:3rem 1rem;text-align:center;color:#7f8d97;background:rgba(97,175,231,.06);border-radius:18px;margin-top:1.5rem}.auth-wrap{min-height:75vh;display:grid;place-items:center}.auth-card{width:min(100%,560px)}.form-control,.form-select{border-radius:14px;border-color:#d9e2e8;padding:.8rem 1rem;background:#fff}.form-control:focus{border-color:var(--app-accent);box-shadow:0 0 0 .25rem rgba(97,175,231,.2)}.about-row{display:grid;grid-template-columns:140px 1fr;gap:1rem;padding:.85rem 0;border-bottom:1px solid #e7edf1}.about-row span{color:#74818b}.about-row strong{font-weight:600}.modal-content{border:0}.accordion-item{border-color:#e2eaf0}.license-lock,.privacy-ok{padding:1rem 1.2rem;border-radius:16px;background:#f2f7fa;display:flex;flex-direction:column;gap:.2rem}.license-lock span,.privacy-ok span{font-size:.88rem;color:#687781}.table>:not(caption)>*>*{background:transparent;border-color:#e5edf2}footer a{color:inherit;text-decoration:none}footer a:hover{color:var(--app-primary)}.legal-text{white-space:normal}.upload-box{padding:1rem;border-radius:18px;background:rgba(97,175,231,.08);border:1px dashed rgba(21,91,142,.25)}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:1.2rem}.media-card{position:relative;overflow:hidden;background:rgba(255,255,255,.93);border:1px solid rgba(21,91,142,.08);border-radius:22px;box-shadow:0 14px 40px rgba(33,61,79,.08);transition:.2s ease}.media-card:hover{transform:translateY(-2px);box-shadow:0 18px 46px rgba(33,61,79,.13)}.media-select{position:absolute;z-index:4;top:12px;left:12px;padding:7px 7px 7px 29px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px)}.media-preview{height:190px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#eef5f8,#e3edf2);text-decoration:none}.media-preview img{width:100%;height:100%;object-fit:cover}.video-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:12px;background:radial-gradient(circle at 50% 70%,rgba(97,175,231,.35),transparent 38%),linear-gradient(145deg,#18344f,#155b8e);color:#fff}.play-disc{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;padding-left:4px;background:#fff;color:var(--app-primary);font-size:1.4rem;box-shadow:0 12px 35px rgba(0,0,0,.22)}.file-placeholder{color:var(--app-primary);font-size:1.2rem}.media-info{padding:1rem 1.05rem 1.1rem}.media-name{display:block;color:#1e2d38;font-weight:700;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-meta{font-size:.78rem;color:#75838e;margin-top:.3rem}.viewer-wrap,.public-viewer{max-width:1180px;margin:1.5rem auto 0}.viewer-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.media-stage{min-height:420px;display:grid;place-items:center;padding:clamp(12px,2vw,26px);border-radius:28px;background:linear-gradient(145deg,#132b43,#155b8e 55%,#2d8fc8);box-shadow:0 30px 75px rgba(25,55,75,.22);overflow:hidden}.hero-video,.hero-image{display:block;max-width:100%;max-height:72vh;border-radius:18px;box-shadow:0 22px 60px rgba(0,0,0,.28);background:#0d1720}.hero-video{width:min(100%,1100px)}.hero-image{object-fit:contain}.hero-pdf{width:100%;height:72vh;border:0;border-radius:18px;background:#fff}.file-hero{min-height:360px;color:#fff;display:grid;place-items:center;align-content:center;gap:1rem;text-align:center}.viewer-actions{text-align:center;padding:1.5rem}.public-share{max-width:1400px;margin:0 auto}.share-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0}.share-header>div{display:flex;align-items:center;gap:.8rem}.share-main{padding:1rem 0 4rem}.share-intro{max-width:760px;margin:1rem auto 2.5rem;text-align:center}.share-intro h1{font-size:clamp(2rem,5vw,4rem);font-weight:650;margin:.5rem 0}.share-intro p{color:#6f7e89}.share-downloadbar{position:sticky;bottom:18px;display:flex;justify-content:center;margin-top:2rem}.share-downloadbar .btn{box-shadow:0 14px 35px rgba(21,91,142,.25)}
@media(max-width:576px){.premium-card{border-radius:19px}.about-row{grid-template-columns:1fr;gap:.2rem}.display-5{font-size:2.2rem}.navbar .btn{font-size:.8rem;padding:.45rem .7rem}.navbar-brand{font-size:1rem}.media-grid{grid-template-columns:1fr}.viewer-top{align-items:flex-start}.media-stage{min-height:300px;border-radius:20px}.hero-video,.hero-image{border-radius:12px}}

/* 0.3.1 dashboard polish */
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}.dashboard-welcome{display:flex;align-items:end;justify-content:space-between;gap:2rem;padding:2.2rem .35rem 1rem}.dashboard-title{font-size:clamp(2.15rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.045em;font-weight:720;margin:.45rem 0 .75rem;color:#173247}.dashboard-welcome p{font-size:1.08rem;color:#6d7d88;margin:0;max-width:680px}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;top:-35px;background:rgba(97,175,231,.12)}.stat-card strong{color:var(--app-primary);letter-spacing:-.04em}.dashboard-empty{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#74838e;padding:2rem}.dashboard-empty strong{font-size:1.1rem;color:#2a3c49;margin:.7rem 0 .3rem}.dashboard-empty span{max-width:430px}.empty-symbol{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:1.8rem;background:rgba(97,175,231,.12);color:var(--app-primary)}.share-count{min-height:220px;border-radius:20px;background:linear-gradient(160deg,rgba(97,175,231,.12),rgba(21,91,142,.035));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.share-count strong{font-size:3.4rem;line-height:1;color:var(--app-primary);letter-spacing:-.05em}.share-count span{margin-top:.65rem;color:#74838e}.premium-card{box-shadow:0 20px 55px rgba(26,67,93,.08)}@media(max-width:767px){.dashboard-welcome{align-items:flex-start;flex-direction:column;padding-top:1.5rem}.dashboard-welcome .btn{width:100%}}


/* 0.3.2 media polish */
.media-select{top:14px;left:14px;width:38px;height:38px;padding:0!important;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);box-shadow:0 6px 20px rgba(19,43,63,.18);border:1px solid rgba(21,91,142,.10)}
.media-select .form-check-input{float:none;margin:0!important;width:20px;height:20px;border-radius:50%;border:2px solid #9badb8;box-shadow:none;cursor:pointer}
.media-select .form-check-input:checked{background-color:var(--app-primary);border-color:var(--app-primary)}
.video-placeholder{background:linear-gradient(145deg,#222b31,#11181d);color:#fff}
.video-placeholder:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.07),transparent 38%);pointer-events:none}
.media-preview{position:relative}
.media-stage{background:linear-gradient(145deg,#20272c,#0f1418);box-shadow:0 30px 75px rgba(15,25,32,.22)}
.hero-video{background:#000}
.play-disc{position:relative;z-index:1;color:var(--app-primary)}
.video-placeholder small{position:relative;z-index:1;color:rgba(255,255,255,.72)}

/* 0.3.3 foundation hotfix */
.btn-app,.btn-primary{background-color:var(--app-primary,#155b8e)!important;border-color:var(--app-primary,#155b8e)!important;color:#fff!important;box-shadow:none}
.btn-app:hover,.btn-app:focus,.btn-primary:hover,.btn-primary:focus{background-color:#104b77!important;border-color:#104b77!important;color:#fff!important}
.btn-outline-primary{color:var(--app-primary,#155b8e)!important;border-color:var(--app-primary,#155b8e)!important;background:#fff!important}
.btn-outline-primary:hover,.btn-outline-primary:focus{color:#fff!important;background:var(--app-primary,#155b8e)!important;border-color:var(--app-primary,#155b8e)!important}
.install-actions .btn-app{min-height:48px}

/* 0.5.0 upload & sharing workflow */
.upload-dropzone{min-height:250px;border:2px dashed rgba(21,91,142,.22);border-radius:24px;background:rgba(97,175,231,.055);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;transition:.2s ease}.upload-dropzone.is-dragover{border-color:var(--app-accent);background:rgba(97,175,231,.13);transform:translateY(-2px)}.upload-dropzone>span{color:#788691;font-size:.9rem;margin:.25rem 0 1rem}.drop-icon{width:54px;height:54px;border-radius:18px;background:#fff;color:var(--app-primary);display:grid;place-items:center;font-size:1.8rem;box-shadow:0 10px 28px rgba(21,91,142,.12);margin-bottom:.7rem}.upload-selection{font-size:.82rem;color:#647580;margin-top:.8rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress{width:100%;height:12px;border-radius:999px;background:#dce8ee}.progress-bar{background:linear-gradient(90deg,var(--app-primary),var(--app-accent))}.single-share{width:min(100%,1280px);margin:0 auto}.single-stage{width:min(80vw,1280px);max-width:100%;margin:0 auto;display:grid;place-items:center;background:#11171b;border-radius:24px;box-shadow:0 28px 70px rgba(15,25,32,.2);overflow:hidden}.single-stage.image-stage{background:transparent;box-shadow:none}.single-stage img{max-width:100%;max-height:72vh;object-fit:contain;border-radius:20px;box-shadow:0 24px 65px rgba(25,55,75,.18)}.share-video{display:block;width:100%;max-height:72vh;background:#000}.single-meta{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem auto 0;width:min(80vw,1280px);max-width:100%;color:#6f7e89}.single-meta strong{color:#263642;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.single-file-card{width:min(520px,100%);min-height:280px;margin:0 auto;background:#fff;border-radius:24px;box-shadow:0 20px 55px rgba(26,67,93,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#263642;gap:.5rem}.single-file-card>strong{font-size:2rem;color:var(--app-primary)}.single-file-card small{color:#7a8994}.recipient-note{position:fixed;z-index:1040;right:22px;top:90px;width:min(390px,calc(100vw - 44px));box-shadow:0 18px 55px rgba(89,69,18,.2);border:0;border-radius:18px}.recipient-note strong{display:block;margin-bottom:.3rem}.copy-link{min-width:100px}@media(max-width:767px){.single-stage,.single-meta{width:100%}.single-meta{align-items:flex-start;flex-direction:column}.recipient-note{right:12px;top:76px;width:calc(100vw - 24px)}}

/* 0.5.2 share management & configurable media presentation */
.share-eyebrow{font-size:.68rem;letter-spacing:.16em}.share-intro h1{font-size:clamp(1.65rem,3vw,2.55rem);line-height:1.08}
.public-selection-tools{display:flex;justify-content:center;margin:-.8rem 0 1.25rem}.public-media-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch}.public-media-grid .media-card{flex:0 1 285px;width:min(285px,100%)}
.media-surface,.media-stage{position:relative;background-color:var(--media-bg,#f1f5f7)!important;background-image:none!important}.media-surface.pattern-dots,.media-stage.pattern-dots{background-image:radial-gradient(circle,rgba(21,91,142,.18) 1.25px,transparent 1.5px)!important;background-size:20px 20px!important}.media-surface.pattern-diagonal,.media-stage.pattern-diagonal{background-image:repeating-linear-gradient(135deg,rgba(21,91,142,.09) 0,rgba(21,91,142,.09) 1px,transparent 1px,transparent 18px)!important}.media-surface.pattern-grid,.media-stage.pattern-grid{background-image:linear-gradient(rgba(21,91,142,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(21,91,142,.075) 1px,transparent 1px)!important;background-size:24px 24px!important}.media-surface-off{background:transparent!important;background-image:none!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}.media-surface-off.single-stage,.media-surface-off.media-stage{width:min(94vw,1600px);max-width:100%;min-height:0;padding:0}.media-surface-off .hero-image,.media-surface-off img{max-height:78vh}.media-surface-off .hero-video,.media-surface-off .share-video{max-height:78vh;border-radius:18px}.media-surface-off .hero-pdf{height:min(82vh,1000px);border-radius:18px}
.fullscreen-btn{position:absolute;right:18px;bottom:18px;z-index:5;width:46px;height:46px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#18344f;font-size:1.35rem;box-shadow:0 8px 26px rgba(20,42,58,.2);cursor:pointer}.fullscreen-btn:hover{background:#fff;transform:translateY(-1px)}
.hero-image:fullscreen,#singleShareImage:fullscreen,#publicHeroImage:fullscreen{width:100vw;height:100vh;max-width:none;max-height:none;object-fit:contain;background:#111;border-radius:0;box-shadow:none}
.edit-file-card{cursor:pointer}.edit-file-card:has(.edit-share-checkbox:checked){outline:2px solid var(--app-accent);outline-offset:2px}.sticky-savebar{position:sticky;bottom:18px;z-index:20;display:flex;justify-content:center;margin-top:2rem}.sticky-savebar .btn{box-shadow:0 14px 35px rgba(21,91,142,.25)}
@media(max-width:576px){.public-media-grid .media-card{flex-basis:100%;width:100%}.fullscreen-btn{right:12px;bottom:12px}}
/* Milestone 0.6.0: compact public share header + Markdown preview */
.share-main{padding-top:.2rem}.share-intro{margin:.35rem auto 1.25rem}.share-eyebrow{font-size:.62rem}.share-intro h1{font-size:clamp(1.45rem,2.25vw,2.05rem);line-height:1.05;margin:.35rem 0 .45rem}.share-intro p{margin:.35rem auto .55rem}.share-facts{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.35rem .65rem;color:#71808b;font-size:.8rem;margin-top:.55rem}.share-facts span{display:inline-flex;align-items:center;gap:.2rem}.share-facts span+span:before{content:"·";margin-right:.65rem;color:#a2adb5}.public-selection-tools{margin:0 0 1rem}.share-header{padding:1rem 0 .65rem}
.markdown-viewer{max-width:1040px;margin:0 auto;overflow:hidden}.md-tabs{display:flex;gap:.35rem;padding:.75rem .9rem;border-bottom:1px solid #e3ebf0;background:rgba(247,250,252,.9)}.md-tab{border:0;background:transparent;border-radius:999px;padding:.55rem 1rem;font-weight:650;color:#667681}.md-tab.active{background:#fff;color:var(--app-primary);box-shadow:0 3px 14px rgba(33,61,79,.09)}.md-panel{padding:clamp(1.15rem,3vw,2.4rem)}.markdown-body{max-width:860px;margin:0 auto;line-height:1.72;color:#25343e}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:1.5em 0 .55em;line-height:1.2}.markdown-body h1:first-child,.markdown-body h2:first-child{margin-top:0}.markdown-body p{margin:.75rem 0}.markdown-body blockquote{margin:1rem 0;padding:.7rem 1rem;border-left:4px solid var(--app-accent);background:#f3f8fb;border-radius:0 12px 12px 0;color:#566670}.markdown-body pre,.md-source{background:#17232d;color:#edf5f8;border-radius:16px;padding:1rem;overflow:auto}.markdown-body code{background:#edf3f6;border-radius:6px;padding:.12em .35em}.markdown-body pre code{background:transparent;padding:0;color:inherit}.markdown-body mark{padding:.08em .2em;border-radius:4px}.markdown-body a{color:var(--app-primary)}.md-table{margin:1rem 0}.task-list{list-style:none;padding-left:.25rem}.task-list input{margin-right:.5rem}.md-footnotes{font-size:.9rem;color:#5f6f79}.md-external-media{display:inline-block;padding:.35rem .55rem;background:#f4f7f9;border-radius:8px}.md-external-media small{color:#75838e}.md-source-tools{display:flex;justify-content:flex-end;margin-bottom:.75rem}.md-source{max-height:65vh;white-space:pre;tab-size:4}.md-security-warning{margin:0}.md-security-warning strong{display:block;margin-bottom:.35rem}
@media(max-width:576px){.share-header{padding:.75rem 0 .4rem}.share-intro{margin:.2rem auto .9rem}.share-intro h1{font-size:1.4rem}.share-facts{font-size:.74rem;gap:.25rem .45rem}.share-facts span+span:before{margin-right:.45rem}.md-panel{padding:1rem}.viewer-top{align-items:flex-start}}

/* 0.6.1 · öffentliche Fehlerseiten */
.public-error-page{min-height:calc(100vh - 92px);display:flex;flex-direction:column}
.public-error-main{flex:1;display:grid;place-items:center;padding:clamp(2rem,7vh,5rem) 1rem 7rem}
.public-error-content{width:min(100%,760px);text-align:center}
.public-error-eyebrow{display:block;font-size:.66rem;letter-spacing:.16em;margin-bottom:1rem}
.public-error-content h1{font-size:clamp(1.7rem,3vw,2.65rem);font-weight:650;line-height:1.1;margin:0 auto .9rem}
.public-error-content p{max-width:650px;margin:0 auto;color:#6f7e89;font-size:clamp(.95rem,1.5vw,1.08rem);line-height:1.65}
@media(max-width:576px){.public-error-main{padding-top:2rem;padding-bottom:4rem}.public-error-content h1{font-size:1.6rem}}

/* Milestone 0.6.2: Audio player */
.audio-stage{min-height:260px;padding:clamp(20px,4vw,44px)}.audio-player-shell{width:min(720px,100%);margin:0 auto;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem 1.25rem;padding:clamp(1.1rem,3vw,2rem);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 18px 48px rgba(25,55,75,.14);text-align:left}.audio-disc,.audio-card-disc{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--app-primary),var(--app-accent));color:#fff;box-shadow:0 10px 28px rgba(21,91,142,.2)}.audio-disc{width:68px;height:68px;font-size:1.65rem}.audio-player-copy{min-width:0;display:flex;flex-direction:column;gap:.15rem}.audio-player-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#263642}.audio-kicker{font-size:.62rem;letter-spacing:.14em;color:#7a8994;font-weight:700}.share-audio{grid-column:1/-1;width:100%;height:44px}.audio-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:12px;background:linear-gradient(145deg,#eef5f8,#e3edf2);color:var(--app-primary)}.audio-card-disc{width:64px;height:64px;font-size:1.45rem}.audio-placeholder small{color:#657783;font-weight:650}.media-surface-off.audio-stage{width:min(820px,100%)}
@media(max-width:576px){.audio-player-shell{grid-template-columns:52px 1fr;border-radius:18px;padding:1rem}.audio-disc{width:52px;height:52px;font-size:1.3rem}.share-audio{height:42px}}
/* 0.6.3 Branding & UI polish */
body{background-color:var(--app-bg)!important;background-image:linear-gradient(color-mix(in srgb,var(--app-bg) 86%,transparent),color-mix(in srgb,var(--app-bg) 92%,transparent)),url('?route=asset&file=background&v=063')!important}
.header-brand-logo{display:block;max-height:52px;max-width:min(280px,48vw);width:auto;height:auto;object-fit:contain}.about-favicon{width:58px;height:58px;object-fit:contain;border-radius:14px}.branding-preview{margin-top:.85rem;min-height:84px;border-radius:16px;background:#f4f8fa;border:1px solid #e2ebf0;display:flex;align-items:center;justify-content:center;padding:12px}.branding-logo-preview{max-height:58px;max-width:100%;object-fit:contain}.branding-favicon-preview{width:54px;height:54px;object-fit:contain}.branding-og-preview{max-height:110px;max-width:100%;object-fit:contain;border-radius:10px}
/* The intro stays at the top; compact public content gets the remaining viewport and centers itself. */
.public-share .share-main{display:flex;flex-direction:column;min-height:calc(100vh - 155px)}.public-share .share-intro{flex:0 0 auto}.public-share .single-share,.public-password .share-main>.auth-card,.public-error .share-main>*{flex:0 0 auto}.public-share .single-share{margin-top:auto;margin-bottom:auto}.public-password .share-main{min-height:calc(100vh - 190px);display:flex;align-items:center;justify-content:center;padding-top:1rem;padding-bottom:1rem}.public-password .auth-card{margin-top:auto!important;margin-bottom:auto!important}
@media(max-height:720px),(max-width:576px){.public-share .single-share{margin-top:0;margin-bottom:0}.public-password .share-main{min-height:0;display:block}.public-password .auth-card{margin-top:1rem!important;margin-bottom:1rem!important}}
.public-viewer{min-height:calc(100vh - 150px);display:flex;flex-direction:column}.public-viewer>.viewer-top{flex:0 0 auto}.public-viewer>.media-stage{margin-top:auto;margin-bottom:auto;width:100%}.public-viewer>.viewer-actions{flex:0 0 auto}.public-viewer>.markdown-viewer{width:100%;margin-top:0;margin-bottom:0}
@media(max-height:720px),(max-width:576px){.public-viewer{min-height:0;display:block}.public-viewer>.media-stage{margin-top:0;margin-bottom:0}}

/* 0.6.6.6: Compact typography for legal Markdown only. Keep normal Markdown document spacing unchanged. */
.legal-text.markdown-body{line-height:1.5}
.legal-text.markdown-body p{margin:.2rem 0}
.legal-text.markdown-body h1,.legal-text.markdown-body h2,.legal-text.markdown-body h3,.legal-text.markdown-body h4{margin:1.15rem 0 .4rem;line-height:1.22}
.legal-text.markdown-body h1:first-child,.legal-text.markdown-body h2:first-child,.legal-text.markdown-body h3:first-child{margin-top:0}
.legal-text.markdown-body ul,.legal-text.markdown-body ol{margin:.35rem 0 .55rem}
.legal-text.markdown-body blockquote{margin:.5rem 0}
.legal-text.markdown-body hr{margin:1rem 0}

/* 0.6.6.7: Legal Markdown preserves intentional blank lines.
   One Enter stays compact; an empty line creates a visible paragraph break. */
.legal-text.markdown-body{line-height:1.38}
.legal-text.markdown-body p{margin:0}
.legal-text.markdown-body .md-blank-line{height:.8rem}
.legal-text.markdown-body h1,.legal-text.markdown-body h2,.legal-text.markdown-body h3,.legal-text.markdown-body h4{margin:1rem 0 .32rem}
.legal-text.markdown-body h1:first-child,.legal-text.markdown-body h2:first-child,.legal-text.markdown-body h3:first-child{margin-top:0}

/* 0.6.7.0 search, trusted share rich text and autosave */
.media-search-wrap{min-width:220px;max-width:380px;margin-left:auto}.media-search-wrap .form-control{border-radius:999px;padding-left:1rem}.share-richtext{max-width:900px}.share-intro .share-richtext{margin:.25rem auto .5rem;text-align:center}.recipient-note .share-richtext{margin:0;max-width:none;text-align:left}.share-richtext p{margin:0}.share-richtext .md-blank-line{height:.8rem}
@media(max-width:768px){.media-search-wrap{order:3;max-width:none;width:100%}}

/* 0.6.7.1 local Bootstrap SVG icons + fixed autosave status */
.bi-sprite{position:absolute;width:0;height:0;overflow:hidden}.bi{display:inline-block;width:1em;height:1em;vertical-align:-.125em;fill:currentColor;flex:0 0 auto}.share-facts span{display:inline-flex;align-items:center;gap:.38rem}.share-facts .bi{opacity:.82}.autosave-toast{position:fixed;right:24px;bottom:24px;z-index:11050;display:inline-flex!important;align-items:center;gap:.5rem;padding:.7rem 1rem;font-size:.88rem;box-shadow:0 12px 34px rgba(24,48,68,.22);pointer-events:none}.autosave-toast.d-none{display:none!important}.about-label,.about-value{min-width:0}.about-value{font-weight:600}.about-value a,.about-label a{color:var(--app-primary)}
@media(max-width:576px){.autosave-toast{right:12px;bottom:12px;max-width:calc(100vw - 24px)}}

/* 0.6.7.2 viewport autosave overlay */
body>.autosave-toast{position:fixed!important;right:24px!important;bottom:24px!important;top:auto!important;left:auto!important;z-index:2147483000!important;transform:none!important;visibility:visible;opacity:1;}

/* 0.6.7.4: consistent local Bootstrap-style metadata icons */
.meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .75rem}.meta-item{display:inline-flex;align-items:center;gap:.34rem;white-space:nowrap}.meta-item .bi{width:1em;height:1em;opacity:.78}.media-meta.meta-row{line-height:1.35}.share-facts .meta-item+.meta-item:before,.media-meta .meta-item+.meta-item:before{content:"·";margin-right:.35rem;color:#a2adb5}.autosave-toast .autosave-icon{width:1.15rem;height:1.15rem;opacity:1}.autosave-toast svg{shape-rendering:geometricPrecision}

/* 0.6.7.6: compact ZIP/archive presentation */
.zip-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:14px;background:linear-gradient(145deg,#f8fbfc,#eaf2f6);color:#263642}
.zip-folder{position:relative;width:112px;height:76px;border-radius:12px 14px 14px 14px;background:linear-gradient(145deg,#ffc94a,#f2a900);box-shadow:0 16px 34px rgba(183,126,0,.22);display:grid;place-items:center;color:#6f4b00;font-weight:800;letter-spacing:.08em;font-size:1.05rem}
.zip-folder:before{content:"";position:absolute;left:10px;top:-15px;width:48px;height:22px;border-radius:10px 10px 0 0;background:#ffd66d}
.zip-folder:after{content:"ZIP";position:relative;z-index:1}
.zip-placeholder small{color:#74838e;font-weight:600}
.zip-single-card{width:min(285px,100%);margin:0 auto;overflow:hidden;background:rgba(255,255,255,.94);border:1px solid rgba(21,91,142,.08);border-radius:22px;box-shadow:0 18px 48px rgba(33,61,79,.11)}
.zip-single-card .media-preview{height:190px}
.zip-single-card .media-info{text-align:left}
.zip-single-card .media-name{white-space:normal;overflow-wrap:anywhere}
.zip-single-actions{text-align:center;margin-top:1rem}

/* 0.6.7.7 File-Type Cards */
.type-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:13px;background:linear-gradient(145deg,#f8fbfc,#eaf2f6);color:#263642}.type-placeholder small{font-weight:650;color:#74838e}.type-file-icon{position:relative;width:92px;height:112px;border-radius:12px 12px 16px 16px;display:grid;place-items:end center;padding:0 8px 18px;background:linear-gradient(145deg,#91a5b3,#6f8594);box-shadow:0 14px 30px rgba(42,70,88,.15);color:#fff}.type-file-icon .type-fold{position:absolute;right:0;top:0;width:30px;height:30px;background:rgba(255,255,255,.65);clip-path:polygon(0 0,100% 100%,0 100%)}.type-file-icon b{font-size:.88rem;letter-spacing:.04em;max-width:100%;overflow:hidden;text-overflow:ellipsis}.type-archive .type-file-icon{background:linear-gradient(145deg,#ffd25f,#f2a900);color:#3e3212}.type-app .type-file-icon{background:linear-gradient(145deg,#69b8ef,#17699f)}.type-pdf .type-file-icon{background:linear-gradient(145deg,#ef6b6b,#c92d3a)}.type-doc .type-file-icon{background:linear-gradient(145deg,#5ba7e8,#2365a7)}.type-sheet .type-file-icon{background:linear-gradient(145deg,#5cc08a,#258258)}.type-slides .type-file-icon{background:linear-gradient(145deg,#f49a62,#cf5c27)}.type-text .type-file-icon{background:linear-gradient(145deg,#a7b7c2,#718592)}.type-code .type-file-icon{background:linear-gradient(145deg,#8077d9,#5146a9)}.type-single-card{width:min(300px,100%);margin:0 auto}.type-single-card .media-preview{height:190px}.audio-meta{margin-top:.35rem;color:#74838e;font-size:.76rem;flex-wrap:wrap}.audio-player-copy strong{display:block;max-width:100%}.audio-player-shell .audio-meta .bi{width:.9rem;height:.9rem}.audio-stage .audio-player-shell{width:min(760px,100%)}

/* 0.6.7.8 media type cards */
.type-audio .type-file-icon{background:linear-gradient(145deg,#8ea3b2,#667d8c)}
.type-video .type-file-icon{background:linear-gradient(145deg,#607d9d,#314f70)}
.public-viewer>.type-single-card{margin-top:auto;margin-bottom:auto}
