/* V21 shared presentation for Production and Creation. Source of shared values.
   Keep the module-neutral styles here; no section loads another section's CSS. */
#main.tc-shared-project{box-sizing:border-box;max-width:1200px;width:100%;margin:0 auto;padding:15px 0 55px;min-width:0;}
#main.tc-shared-project *{box-sizing:border-box;}
#main.tc-shared-project .tcp-project-top{display:grid;grid-template-columns:minmax(0,65fr) minmax(0,32fr);gap:3%;align-items:start;}
#main.tc-shared-project .tcp-project-media,#main.tc-shared-project .tcp-project-aside{min-width:0;}
#main.tc-shared-project .tcp-main-media{width:100%;aspect-ratio:16/9;overflow:hidden;background:#202029;display:grid;place-items:center;}
#main.tc-shared-project .tcp-main-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;border:0;}
#main.tc-shared-project .tcp-main-media>video,#main.tc-shared-project .tcp-main-media>iframe {display:block;width:100%;height:100%;object-fit:contain;border:0;}
#main.tc-shared-project .tcp-main-media .tcp-image-open{border:0;cursor:zoom-in;background:transparent;padding:0;display:block;width:100%;height:100%;}
#main.tc-shared-project .tcp-main-media .tcp-image-open img{width:100%;height:100%;object-fit:cover;object-position:center center;}
#main.tc-shared-project .tcp-project-aside{font:400 13px/1.46 'SuisseIntlRegular',sans-serif;color:#e8e8ec;}
/* Visible to administrators only: access to the unified editor without affecting public layout. */
#main.tc-shared-project .tcp-project-aside .tc-admin-project-edit{margin:0 0 8px;text-align:right;font:400 12px/1.4 'SuisseIntlRegular',sans-serif;}
#main.tc-shared-project .tcp-project-aside .tc-admin-project-edit a{color:var(--special-color,#ffd700);text-decoration:underline;text-underline-offset:3px;}
#main.tc-shared-project .tcp-project-aside .tc-admin-project-edit a:hover{color:#fff;}
#main.tc-shared-project .tcp-project-aside h1{font:400 clamp(20px,1.4vw,24px)/1.17 'SuisseIntlRegular',sans-serif;letter-spacing:0;margin:0 0 8px;color:#fff;}
#main.tc-shared-project .tcp-project-aside h2{font:400 14px/1.2 'SuisseIntlRegular',sans-serif;color:var(--special-color,#ffd700);margin:14px 0 6px;}
#main.tc-shared-project .tcp-project-aside p{margin:0 0 9px;}
#main.tc-shared-project .tcp-project-aside .tcp-facts-line{font-size:12px;color:#d2d2db;margin:0 0 7px;}
#main.tc-shared-project .tcp-project-aside .tcp-facts-role{color:var(--special-color,#ffd700);}
#main.tc-shared-project .tcp-project-aside .tcp-context{color:#b6b6c0;font-size:12px;margin:0 0 8px;}
#main.tc-shared-project .tcp-project-aside .tcp-summary{font-size:13px;line-height:1.46;margin:0 0 12px;}
#main.tc-shared-project .tcp-project-aside .tcp-media-source{margin:22px 0 0;}
#main.tc-shared-project .tcp-project-aside .tcp-media-source a{display:inline-flex;padding:9px 13px;border:1px solid var(--special-color,#ffd700);color:var(--special-color,#ffd700);text-decoration:none;align-items:center;gap:8px;font-size:13px;}
#main.tc-shared-project .tcp-project-aside .tcp-media-source a:hover{background:#ffd700;color:#111;}
#main.tc-shared-project .tcp-project-content{border-top:1px solid #606069;margin-top:19px;padding-top:14px;}
#main.tc-shared-project .tcp-editorial-section,#main.tc-shared-project .tcp-flex-block{margin:0 0 19px;padding:0 0 12px;}
#main.tc-shared-project .tcp-editorial-section h2,#main.tc-shared-project .tcp-flex-block h2{font:400 18px/1.25 'SuisseIntlRegular',sans-serif;color:var(--special-color,#ffd700);margin:0 0 10px;}
#main.tc-shared-project .tcp-prose{font:400 14.5px/1.5 'SuisseIntlRegular',sans-serif;color:#dedee3;}
#main.tc-shared-project .tcp-prose p{margin:0 0 13px;}
#main.tc-shared-project .tcp-prose img{max-width:100%;height:auto;}
#main.tc-shared-project .tcp-project-capsules{margin-top:30px;padding-top:15px;border-top:1px solid #62626b;}
#main.tc-shared-project .tcp-project-capsules h2{font:400 18px/1.3 'SuisseIntlRegular',sans-serif;margin:0 0 13px;color:#fff;}
#main.tc-shared-project .tcp-capsule-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;}
#main.tc-shared-project .tcp-capsule{display:block;position:relative;aspect-ratio:16/6.6;min-width:0;overflow:hidden;background:#272733;border:1px solid #63636d;text-decoration:none;color:#fff;}
#main.tc-shared-project .tcp-capsule img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;}
#main.tc-shared-project .tcp-capsule span{position:absolute;bottom:0;left:0;right:0;padding:7px 5px 5px;font-size:11px;line-height:1.2;background:linear-gradient(transparent,#0b0b15e8);}
#main.tc-shared-project .tcp-capsule.is-active{outline:2px solid var(--special-color,#ffd700);outline-offset:1px;}
#main.tc-shared-project .tcp-side-project-nav{position:fixed;inset:49% 0 auto;z-index:30;pointer-events:none;}
#main.tc-shared-project .tcp-side-project-nav a{position:fixed;top:49%;width:46px;height:60px;transform:translateY(-50%);display:grid;place-items:center;pointer-events:auto;}
#main.tc-shared-project .tcp-side-project-nav a img{width:20px;max-height:34px;object-fit:contain;}
#main.tc-shared-project .tcp-side-prev{left:max(8px,calc((100vw - 1200px)/2 - 90px));}
#main.tc-shared-project .tcp-side-next{right:max(8px,calc((100vw - 1200px)/2 - 90px));}
@media(max-width:1390px){#main.tc-shared-project .tcp-side-project-nav{display:none;}}
@media(max-width:1160px){#main.tc-shared-project .tcp-project-top{grid-template-columns:1fr;gap:18px;}#main.tc-shared-project .tcp-project-aside{max-width:820px;}}
@media(max-width:800px){#main.tc-shared-project .tcp-capsule-track{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:650px){#main.tc-shared-project{padding:12px 14px 48px;}#main.tc-shared-project .tcp-capsule-track{grid-template-columns:repeat(2,minmax(0,1fr));}#main.tc-shared-project .tcp-project-aside h1{font-size:21px;}}

/* V20 — Production project detail: editorial content first, compact optional assets.
 * Page-specific elements only: site-wide grid, typography, header and story remain intact.
 * No fabricated resources: sections are rendered only for existing JSON media/documents. */
#main.tc-shared-project .tcp-project-content {
  margin-top:19px;
  padding-top:14px;
  border-top:1px solid #606069;
}
#main.tc-shared-project .tcp-project-content > .tcp-editorial-section:first-child {margin-top:0;}
#main.tc-shared-project .tcp-project-resources {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;
  padding:18px 0 15px;margin:25px 0 0;
  border-top:1px solid #606069;
}
#main.tc-shared-project .tcp-resources-pane {min-width:0;}
#main.tc-shared-project .tcp-resources-pane + .tcp-resources-pane {
  border-left:1px solid #52525e;padding-left:24px;
}
#main.tc-shared-project .tcp-resources-pane h2 {
  color:var(--special-color,#ffd700);font:400 17px/1.25 'SuisseIntlRegular',sans-serif;
  margin:0 0 13px;
}
#main.tc-shared-project .tcp-resource-grid {
  display:flex;flex-wrap:wrap;gap:14px 13px;align-items:flex-start;
}
#main.tc-shared-project .tcp-resource-item {
  flex:0 0 102px;min-width:0;display:flex;flex-direction:column;gap:5px;
}
#main.tc-shared-project .tcp-resource-button {
  position:relative;display:grid;place-items:center;width:100%;height:77px;
  border:1px solid #53535f;border-radius:3px;background:#22222b;color:#f5f5f7;
  cursor:pointer;padding:3px;overflow:hidden;text-decoration:none;
}
#main.tc-shared-project .tcp-resource-button img {
  width:100%;height:100%;display:block;object-fit:contain;
}
#main.tc-shared-project .tcp-resource-button:hover,
#main.tc-shared-project .tcp-resource-button:focus-visible {
  border-color:var(--special-color,#ffd700);outline-offset:2px;
}
#main.tc-shared-project .tcp-resource-label {
  font:400 11px/1.25 'SuisseIntlRegular',sans-serif;color:#ededf0;
  overflow-wrap:anywhere;text-decoration:none;
}
#main.tc-shared-project .tcp-resource-label[href]:hover,
#main.tc-shared-project .tcp-resource-label[href]:focus-visible {color:var(--special-color,#ffd700);}
#main.tc-shared-project .tcp-resource-external {white-space:nowrap;}
#main.tc-shared-project .tcp-resource-item small {font:400 10px/1.25 'SuisseIntlRegular',sans-serif;color:#b5b5bd;}
#main.tc-shared-project .tcp-resource-glyph {font-size:33px;color:#babacb;line-height:1;}
#main.tc-shared-project .tcp-resource-doc-icon {font-size:36px;}
#main.tc-shared-project .tcp-resource-format {
  font-size:9px;line-height:1.2;color:var(--special-color,#ffd700);
  font-family:'SuisseIntlRegular',sans-serif;position:absolute;bottom:4px;right:5px;
}
#main.tc-shared-project .tcp-resource-play {
  position:absolute;inset:0;display:grid;place-items:center;font-size:15px;
  text-shadow:0 1px 5px #000;background:rgba(0,0,0,.20);color:#fff;
}
.tcp-media-dialog[hidden] {display:none!important;}
.tcp-media-dialog {
  position:fixed;inset:0;z-index:999999;background:rgba(6,6,10,.94);
  padding:35px;display:flex;align-items:center;justify-content:center;
}
.tcp-media-dialog-inner {max-width:min(960px,100%);width:100%;min-width:0;}
.tcp-media-dialog-top {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
.tcp-media-dialog-title {font:400 17px/1.3 'SuisseIntlRegular',sans-serif;color:#fff;}
.tcp-media-dialog-close {font-size:26px;min-width:44px;min-height:44px;cursor:pointer;border:1px solid #898994;color:#fff;background:#1e1e28;}
.tcp-media-dialog-content video,.tcp-media-dialog-content iframe {
  width:100%;max-height:78vh;aspect-ratio:16/9;display:block;border:0;background:#000;
}
.tcp-media-dialog-content audio {width:100%;display:block;}
@media(max-width:860px) {
  #main.tc-shared-project .tcp-project-resources {grid-template-columns:1fr;gap:22px;}
  #main.tc-shared-project .tcp-resources-pane + .tcp-resources-pane {
    border-left:0;padding-left:0;border-top:1px solid #42424c;padding-top:19px;
  }
}
@media(max-width:550px) {
  #main.tc-shared-project .tcp-resource-item {flex-basis:88px;}
  #main.tc-shared-project .tcp-resource-button {height:68px;}
  .tcp-media-dialog {padding:16px;}
}
/* Text supplied by legacy Creation JSON may include old inline font sizes.
   The shared editorial rhythm wins without stripping the user's content. */
#main.tc-creation-v21 .tc-creation-editorial :is(p,span,strong,em,ul,ol,li){font-family:'SuisseIntlRegular',sans-serif!important;font-size:14.5px!important;line-height:1.55!important;}
#main.tc-creation-v21 .tc-creation-editorial :is(h2,h3){font-family:'SuisseIntlRegular',sans-serif!important;color:var(--special-color,#ffd700);font-size:18px!important;line-height:1.3!important;margin:22px 0 10px;}
#main.tc-creation-v21 .tc-creation-data-row{font-size:12px;line-height:1.45;margin-bottom:6px;overflow-wrap:anywhere;}
#main.tc-creation-v21 .tc-creation-data-row p{margin:0 0 5px;}
#main.tc-creation-v21 .tc-creation-data-row a{color:var(--special-color,#ffd700);}
#main.tc-creation-v21 .tc-creation-baseline{font-size:15px;line-height:1.4;margin:0 0 13px;}
#main.tc-creation-v21 .tc-shared-placeholder{font-size:20px;line-height:1.3;color:#a9a9b6;text-align:center;padding:18px;}
#main.tc-shared-project .tc-hover-player{height:100%;width:100%;}
#main.tc-shared-project .tcp-main-media video{width:100%;height:100%;object-fit:contain;}
/* Creation's existing pixel-thumbnail affordance, compact in the shared layout. */
#main.tc-shared-project .tc-resource-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
#main.tc-shared-project .tc-resource-heading h2{margin:0;}
#main.tc-shared-project .tc-pixel-controls{display:flex;gap:8px;align-items:center;color:#bfbfca;font-size:11px;}
#main.tc-shared-project .tc-pixel-controls input{width:70px;accent-color:var(--special-color,#ffd700);}
#main.tc-shared-project .tc-pixel-controls button{border:1px solid #6a6a76;color:#e8e8ec;background:#24242b;padding:4px 7px;cursor:pointer;}
#main.tc-shared-project .tc-pixel-controls button[aria-pressed="true"]{border-color:var(--special-color,#ffd700);color:var(--special-color,#ffd700);}
#main.tc-shared-project .tc-pixel-thumb .tc-pixel-canvas{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:cover;pointer-events:none;opacity:0;}
#main.tc-shared-project .tc-pixel-thumb:hover .tc-pixel-canvas,#main.tc-shared-project .tc-pixel-thumb:focus-visible .tc-pixel-canvas{opacity:0!important;}
@media(prefers-reduced-motion:reduce){#main.tc-shared-project .tc-pixel-thumb .tc-pixel-canvas{opacity:0!important;}}


/* Common full-screen image preview for Creation and Production. */
.tcp-lightbox[hidden]{display:none!important;}
.tcp-lightbox{position:fixed;inset:0;background:#08080cec;z-index:999999;display:flex;align-items:center;justify-content:center;padding:45px;}
.tcp-lightbox img{max-width:95vw;max-height:90vh;object-fit:contain;}
.tcp-lightbox-close{position:absolute;right:18px;top:12px;background:#29292f;color:#fff;border:1px solid #fff;border-radius:0;font-size:29px;min-width:44px;min-height:44px;cursor:pointer;}
@media(max-width:650px){.tcp-lightbox{padding:15px;}}
