:root{--adaptive-gap:8px;--adaptive-touch:44px;--adaptive-text:16px}
.od-adaptive-app .od-expand-arrows{overflow:visible}
.od-adaptive-app .od-expand-arrows .work-arrow-0{animation:work-arrow-upper var(--work-arrow-cycle,1600ms) ease-in-out infinite}
.od-adaptive-app .od-expand-arrows .work-arrow-1{animation:work-arrow-lower var(--work-arrow-cycle,1600ms) ease-in-out infinite}
.od-adaptive-app button:has(.od-expand-arrows){cursor:default}
html,body,main,.container{overflow:clip!important;overscroll-behavior:none}
.monitor__folder-list,.monitor__profile,.monitor__profile-text,.monitor__window--profile .parts-window__container,.work-viewer-thumbnails,.work-viewer-rail{overflow:clip!important;touch-action:manipulation!important}
.od-gallery-sidebar{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;min-width:0}
.work-viewer-thumbnails{display:grid;align-content:start;gap:8px}
.work-viewer .work-thumbnail{height:72px!important;min-height:0!important}
.work-thumbnail img{max-height:100%;width:100%;object-fit:contain}
.od-frame-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;font-size:14px}
.od-frame-controls button,.od-page-nav button{min-width:44px;min-height:44px}
.od-page-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;flex:none;font-size:16px;line-height:1.5}
.od-adaptive-document > .od-page-nav,.od-paged-document .od-page-nav{display:none!important}
.od-page-nav button{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.od-page-nav button:disabled{opacity:.4;cursor:default}
.od-page-nav button:focus-visible,.od-adaptive-app button:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
.od-document-page{display:flow-root;align-self:start;min-height:0;box-sizing:border-box;margin:0;padding:4px 0 0;white-space:normal;overflow-wrap:anywhere;font-size:16px;line-height:1.5!important}
.od-document-page>div{margin:0;padding:0;font:inherit!important;line-height:1.5!important;white-space:pre-line}
.od-document-page::after{content:'';display:block;clear:both}
.od-document-page img{display:block;float:left;width:80px;height:auto;max-height:none;position:static;transform:none;margin:0 var(--document-gap) var(--document-gap) 0;outline:0}
.od-document-page p{margin:0 0 var(--document-gap);font:inherit!important;line-height:1.5!important}
.od-document-page p:last-child{margin-bottom:0}
.container[page-name=index] section.monitor .od-document-page{height:auto!important;align-self:start;position:relative;top:auto;transform:none;padding:8px 0!important;overflow:visible!important;font-size:16px!important;line-height:1.5!important}
.container[page-name=index] section.monitor .od-document-page .od-document-copy{display:block;position:static;transform:none;margin:0!important;padding:0!important;height:auto!important;max-height:none!important;overflow:visible!important;font-size:16px!important;line-height:1.5!important;white-space:pre-line;overflow-wrap:break-word}
.container[page-name=index] section.monitor .od-document-page img{display:block;position:static;transform:none;width:80px!important;height:auto!important;max-height:none!important;outline:none!important;object-fit:contain;margin:0 var(--document-gap,12px) var(--document-gap,12px) 0!important}
.od-adaptive-app:has(.od-adaptive-document) .od-adaptive-main{padding:var(--document-gap)}
.od-adaptive-app:has(.od-adaptive-document) .od-adaptive-header{padding:var(--document-gap)}
/* Mobile/tablet document: ruled lines follow the text, not the viewport. */
.od-adaptive-app:has(.od-adaptive-document){--document-gap:24px;--document-paper:#D6D9DD;--document-line-height:48px;--document-rule-color:rgba(55,55,55,.45);--document-rule-width:1px;background:var(--document-paper)}
.od-adaptive-app:has(.od-adaptive-document) .od-adaptive-header{padding:12px; border-bottom:1px solid #373737}
.container[page-name=index] section.monitor .od-adaptive-document .od-document-page,
.container[page-name=index] section.monitor .od-adaptive-document .od-document-copy{line-height:var(--document-line-height)!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;font-synthesis:none!important;text-shadow:none!important;-webkit-text-stroke:0!important}
.container[page-name=index] section.monitor .od-adaptive-document .od-document-copy{padding:var(--document-cap-padding,0px) 0 0!important;font-weight:400!important;font-synthesis:none;text-shadow:none!important;-webkit-text-stroke:0!important;background-image:linear-gradient(to bottom,var(--document-rule-color) var(--document-rule-width),transparent var(--document-rule-width));background-size:100% var(--document-line-height);background-position:0 var(--document-rule-offset,0px);background-repeat:repeat-y;border-top:0}
.container[page-name=index] section.monitor .od-adaptive-document .od-document-page{padding:0!important}
.container[page-name=index] section.monitor .od-adaptive-document .od-document-page img{width:45%!important;max-width:150px;background:var(--document-paper);outline:12px solid var(--document-paper)!important;margin:0 24px 12px 0!important}
.container[page-name=index] section.monitor .monitor__window--profile.od-paged-document>.parts-window{height:auto!important;max-height:calc(100% - 16px)!important}
.od-paged-document .monitor__profile-text{font-size:16px!important;line-height:1.5!important;min-height:0!important}
.od-adaptive-app{display:none}
[hidden]{display:none!important}
@media(max-width:1023px){
  .container[page-name=index] section.monitor:not(.od-unlocked){visibility:hidden!important;opacity:0!important;pointer-events:none!important}
  .container[page-name=index] section.monitor.od-unlocked{visibility:visible!important}
  .container[page-name=index] section.monitor.od-unlocked> :not(.od-adaptive-app){display:none!important}
  .od-adaptive-app{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;min-height:0;box-sizing:border-box;color:#373737;background:#D6D9DD;font:16px/1.5 var(--font-dot-gothic-16),monospace}
  .od-adaptive-header{display:flex;align-items:center;gap:8px;border-bottom:1px solid currentColor;padding:8px;min-width:0}
  .od-adaptive-header h2{margin:0;font:inherit;flex:1;min-width:0;overflow-wrap:anywhere}
  .od-adaptive-app button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:0;color:inherit;background:transparent;font:inherit;cursor:pointer;padding:8px;box-sizing:border-box}
  .od-adaptive-app button svg{width:24px;height:24px;flex:none}
  .od-adaptive-main{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;min-width:0;padding:8px;overflow:clip}
  .od-adaptive-home{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
  .od-adaptive-home button{flex-direction:column;gap:8px;min-width:0}
  .od-adaptive-home svg{width:40px!important;height:40px!important;fill:none}
  .od-adaptive-home span{display:block;overflow-wrap:anywhere;text-align:center}
  .od-adaptive-work{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;min-width:0;border:1px solid currentColor}
  .od-adaptive-work header{display:flex;align-items:center;gap:8px;padding:8px;border-bottom:1px solid currentColor}
  .od-adaptive-work h3{font:inherit;margin:0;flex:1;min-width:0;overflow-wrap:anywhere}
  .od-adaptive-work header{flex-wrap:wrap}
  .od-adaptive-work h3{flex-basis:calc(100% - 104px)}
  .od-adaptive-media{display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;padding:8px;box-sizing:border-box}
  .od-adaptive-media img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
  .od-adaptive-footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;border-top:1px solid currentColor;padding:8px;align-items:center;font-size:12px}
  .od-adaptive-social{display:flex;justify-content:center;gap:8px}
  .od-adaptive-social button{padding:0;min-width:44px;font-size:12px}
  .od-adaptive-footer time{display:block;white-space:pre-line;text-align:right;line-height:1.5}
  .od-adaptive-document{min-height:0;overflow:clip;display:grid;grid-template-rows:minmax(0,1fr) auto}
  .od-adaptive-gallery{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0}
  .od-adaptive-thumbs{display:flex;gap:8px;justify-content:center;min-width:0}
  .od-adaptive-thumbs button{width:56px;height:56px;padding:4px;border:2px solid transparent}
  .od-adaptive-thumbs button[aria-pressed=true]{border-color:currentColor}
  .od-adaptive-thumbs img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
  .od-adaptive-app .work-expand-button{cursor:default!important}
  .od-adaptive-app .work-arrow-0{animation:work-arrow-upper 1600ms ease-in-out infinite}
  .od-adaptive-app .work-arrow-1{animation:work-arrow-lower 1600ms ease-in-out infinite}
}
@media(max-width:767px){.od-adaptive-footer{padding:4px;gap:4px}.od-adaptive-footer time{font-size:11px}.od-adaptive-social{gap:4px}}
@media(max-width:767px){
  .od-adaptive-app{font-size:11px;grid-template-rows:auto minmax(0,1fr) auto}
  .od-adaptive-app.od-mobile-no-heading{grid-template-rows:minmax(0,1fr) auto}
  .od-adaptive-header[hidden]{display:none!important}
  .od-adaptive-work header{justify-content:flex-end}
  .od-adaptive-header{padding:8px;font-size:12px}
  .od-adaptive-header h2{font-size:12px!important;line-height:1!important;font-weight:400;padding-top:2px}
  .od-mobile-desktop{display:grid;grid-template-rows:minmax(0,1fr);padding:8px}
  .od-mobile-desktop>.od-mobile-folders,.od-mobile-desktop>.od-mobile-workspace{grid-area:1 / 1}
  .od-mobile-desktop>.od-mobile-folders{align-self:start;pointer-events:none}
  .od-mobile-desktop>.od-mobile-folders button{pointer-events:auto}
  .od-mobile-folders{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:start}
  .od-mobile-folders button{padding:0;gap:4px;font-size:8px!important;min-height:44px;background:transparent!important}
  .od-mobile-folders svg{width:40px!important;height:40px!important}
  .od-mobile-folder-column{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0}
  .od-mobile-folder-column>button{width:100%;min-width:0;align-self:stretch;margin:0;transform:none}
  .od-mobile-folders button:not(.od-mobile-document) svg{width:40px!important;height:40px!important}
  .od-mobile-folders span{word-break:normal;overflow-wrap:normal;font-size:inherit!important;font-weight:400!important;line-height:1.3}
  .container[page-name=index] section.monitor .od-mobile-folders button:not(.od-mobile-document) svg [fill]:not([fill="none"]){fill:none!important}
  .od-mobile-folders .od-mobile-document{grid-column:1;justify-self:stretch;width:100%;min-width:0;align-items:center;text-align:center}
  .od-mobile-folders .od-mobile-document span{width:100%;text-align:center}
  .od-mobile-workspace{position:relative;min-height:0;overflow:clip;pointer-events:none}
  .od-mobile-workspace>.od-mobile-window{pointer-events:auto}
  .od-mobile-window{position:absolute;box-sizing:border-box;grid-template-columns:minmax(0,1fr);background:#D6D9DD;max-width:64%;animation:od-mobile-appear 300ms ease-out both;box-shadow:2px 2px 0 #37373733}
  .od-mobile-window header{flex-wrap:nowrap;gap:4px;padding:8px;touch-action:none;user-select:none;cursor:grab}
  .od-mobile-window h3{flex:1 1 0;max-width:100%;font-size:8px!important;line-height:1.65;overflow-wrap:break-word;word-break:normal;white-space:normal;font-weight:400}
  .od-mobile-window header button{min-width:20px;min-height:24px;padding:0;flex:none}
  .od-mobile-window header button svg{width:18px;height:18px}
  .od-mobile-window .od-adaptive-media{padding:0}
  .od-mobile-window.od-mobile-gallery-window{max-width:100%;animation:none;transform-origin:0 0;box-shadow:none}
  .od-mobile-gallery-window header{cursor:default}
  .od-mobile-gallery-window .od-adaptive-gallery{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:8px;padding:8px;overflow:clip}
  .od-mobile-gallery-window .od-adaptive-media{overflow:clip;touch-action:none;user-select:none}
  .od-mobile-gallery-window .od-adaptive-media img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
  .od-mobile-gallery-rail{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;min-height:0;min-width:0}
  .od-mobile-gallery-window .od-adaptive-thumbs{flex-direction:row;justify-content:center;align-items:center;min-height:0;touch-action:none;user-select:none}
  .od-mobile-gallery-window .od-adaptive-thumbs button{flex:0 1 56px;min-height:44px;min-width:0;width:56px;height:56px;overflow:clip}
  .od-mobile-gallery-window .od-mobile-gallery-step{min-width:44px;min-height:44px;padding:0;font-size:24px}
  .od-adaptive-footer{--contact-icon-size:28px;--contact-radius:8px;grid-template-columns:auto minmax(0,1fr);font-size:10px;padding:8px 8px 0;align-items:end}
  .od-adaptive-footer button{min-width:24px;min-height:44px;padding:0;font-size:10px}
  .od-adaptive-footer time{font-size:9px}
  .od-adaptive-footer button svg{width:16px;height:16px}
  .od-adaptive-footer > button{--power-width:64px;--power-height:48px;--power-icon-size:28px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--power-width);min-height:var(--power-height);margin-bottom:8px;padding:8px;border:1px solid currentColor;border-radius:var(--contact-radius);background:transparent;color:inherit}
  .od-adaptive-footer > button svg{display:block;width:var(--power-icon-size);height:var(--power-icon-size)}
  .od-adaptive-footer .od-adaptive-social{justify-content:center;align-items:stretch;gap:8px}
  .od-adaptive-footer .od-adaptive-social button{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:56px;min-height:56px;padding:8px;border:1px solid currentColor;border-bottom:0;border-radius:var(--contact-radius) var(--contact-radius) 0 0;background:transparent;color:inherit}
  .od-adaptive-footer .od-adaptive-social button svg{display:block;width:var(--contact-icon-size);height:var(--contact-icon-size)}
}
@keyframes od-mobile-appear{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@media(min-width:768px) and (max-width:1023px){.od-adaptive-home{grid-template-columns:repeat(5,minmax(0,1fr))}.od-adaptive-gallery{grid-template-columns:minmax(0,1fr) 80px;grid-template-rows:minmax(0,1fr)}.od-adaptive-thumbs{flex-direction:column;align-items:center}}
@media(max-height:480px){.od-adaptive-home{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.od-adaptive-home button{font-size:12px}.od-adaptive-home svg{width:24px!important;height:24px!important}.od-adaptive-header,.od-adaptive-footer{padding:4px}.od-adaptive-header h2{font-size:14px}}
@media(max-width:767px) and (max-height:480px){.od-adaptive-footer{padding:4px 8px 0}}

/* Keep the tablet taskbar on the same natural text metrics. */
.od-adaptive-footer {font-family:"Arimo",Arial,sans-serif;line-height:20px;}
.od-adaptive-footer time {font-size:12px;line-height:18px;font-variant-numeric:tabular-nums;}
@media(min-width:768px) and (max-width:1023px) {
  .od-adaptive-footer {padding:10px 12px;gap:12px;font-size:14px;}
  .od-adaptive-footer > button,.od-adaptive-footer .od-adaptive-social button {
    min-height:44px;padding:8px 12px;border:1px solid currentColor;border-radius:4px;
    font-size:14px;line-height:20px;white-space:nowrap;
  }
  .od-adaptive-social {gap:8px;}
  .od-adaptive-footer time {min-width:88px;}
}

/* Scroll only the expanded work; the surrounding desktop stays in place. */
.container[page-name=index] section.monitor .work-scroll-surface {
  display:block!important;min-height:0;min-width:0;width:100%;height:100%;
  overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;
  touch-action:pan-y!important;scrollbar-width:thin;scroll-behavior:auto;
}
.container[page-name=index] section.monitor .work-scroll-surface img {
  display:block;flex:none;width:100%!important;max-width:100%!important;
  height:auto!important;max-height:none!important;margin:0 auto;object-fit:contain;
}
.work-viewer--single-frame .work-viewer-body {grid-template-columns:minmax(0,1fr);}
.od-adaptive-app .od-scroll-gallery--single {grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);}

/* Keep the counter above both navigation arrows, including narrow sidebars. */
.od-frame-controls.od-row,.od-page-nav.od-row {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
  align-items:center;justify-self:center;box-sizing:border-box;
  width:min(100%,96px);margin-inline:auto;
}
.od-page-nav.od-row {padding:8px 0;}
.od-frame-controls>span,.od-page-nav>span {
  grid-column:1/-1;grid-row:1;justify-self:center;text-align:center;
  white-space:nowrap;font-variant-numeric:tabular-nums;
}
.container[page-name=index] .od-frame-controls>button,
.container[page-name=index] .od-page-nav>button {
  display:flex;align-items:center;justify-content:center;
  box-sizing:border-box;width:100%;min-width:0;min-height:44px;height:44px;
  padding:0;line-height:1;
}
.od-frame-controls>button:first-of-type,.od-page-nav>button:first-of-type {grid-column:1;grid-row:2;}
.od-frame-controls>button:last-of-type,.od-page-nav>button:last-of-type {grid-column:2;grid-row:2;}
