/* TEMAC Campaign Studio V28 · Unified visual system. Single ownership of application layout. */
:root{--tm-violet:#5f45bf;--tm-violet-dark:#463292;--tm-accent:#674bec;--tm-ink:#1e2435;--tm-muted:#747e94;--tm-bg:#f5f6fa;--tm-line:#e8eaf3;--tm-white:#fff;--tm-radius:20px}
html,body{margin:0;min-height:100%;height:auto;overflow-x:clip;overflow-y:visible}
body{background:var(--tm-bg);color:var(--tm-ink)}
body>.temac-v28.app.studio-shell{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;grid-template-rows:minmax(100dvh,auto);align-items:stretch!important;gap:0!important;width:100%!important;max-width:none!important;height:auto!important;min-height:100dvh!important;overflow:visible!important;margin:0!important;padding:0!important;background:var(--tm-bg)!important}
body>.temac-v28.app.studio-shell>.sidebar.studio-sidebar{box-sizing:border-box!important;grid-column:1!important;grid-row:1!important;position:fixed!important;top:0!important;left:0!important;bottom:0!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:78px!important;min-width:78px!important;max-width:78px!important;height:100vh!important;height:100dvh!important;min-height:100vh!important;max-height:none!important;margin:0!important;padding:22px 10px!important;overflow-x:visible!important;overflow-y:visible!important;overscroll-behavior:none;scrollbar-width:none;transform:none!important;background:linear-gradient(180deg,#5943b2,#6b50cf 85%)!important;border:0!important;border-radius:0!important;box-shadow:none!important;isolation:auto!important;z-index:2!important}
body>.temac-v28.app.studio-shell>.sidebar.studio-sidebar:before,body>.temac-v28.app.studio-shell>.sidebar.studio-sidebar:after{content:none!important}
body>.temac-v28.app.studio-shell>.main.studio-main{box-sizing:border-box!important;grid-column:2!important;grid-row:1!important;display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;position:static!important;overflow:visible!important;background:var(--tm-bg)!important}
body>.temac-v28 .studio-topbar{position:sticky!important;top:0!important;right:auto!important;bottom:auto!important;left:auto!important;z-index:50!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;flex-wrap:wrap;min-height:92px!important;height:auto!important;width:100%!important;max-width:none!important;margin:0!important;padding:18px clamp(20px,3vw,48px)!important;background:#fff!important;border:0!important;border-bottom:1px solid var(--tm-line)!important;border-radius:0!important;box-shadow:none!important}
body>.temac-v28 .studio-content{flex:1 0 auto!important;width:100%!important;min-width:0!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:clamp(22px,3vw,44px)!important;overflow:visible!important;background:transparent!important}
body>.temac-v28 .studio-nav{display:flex!important;align-items:center!important;flex-direction:column!important;justify-content:center!important;gap:14px!important;margin:0!important;width:100%!important;min-width:0!important;overflow:visible!important}
body>.temac-v28 .studio-sidebar .navlink{width:52px!important;min-width:52px!important;height:52px!important;flex:0 0 52px!important;border-radius:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin:0!important;color:#eee9ff!important;background:transparent!important;box-shadow:none!important}
body>.temac-v28 .studio-sidebar .navlink i{color:inherit!important;font-size:22px!important}
body>.temac-v28 .studio-sidebar .navlink:hover,body>.temac-v28 .studio-sidebar .navlink:focus-visible{background:#ffffff2b!important;color:#fff!important;transform:none!important}
body>.temac-v28 .studio-sidebar .navlink.active{background:#ffdf77!important;color:#362b67!important;box-shadow:0 8px 22px #30207344!important}
body>.temac-v28 .studio-sidebar .navlink.active:hover{background:#ffdf77!important;color:#362b67!important}
body>.temac-v28 .studio-sidebar .navlink span{display:none!important}
body>.temac-v28 .studio-sidebar .navlink:after{z-index:20!important}
body>.temac-v28 .studio-side-bottom{margin-top:14px!important;padding-top:0!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important}
body>.temac-v28 .studio-identity{display:flex;align-items:center;gap:18px;min-width:0}
body>.temac-v28 .studio-header-logo{max-width:120px;max-height:48px;object-fit:contain}
body>.temac-v28 .studio-welcome{font-size:14px;color:var(--tm-muted)}
body>.temac-v28 .studio-welcome strong{color:var(--tm-ink);font-weight:800}
body>.temac-v28 .studio-header-actions{display:flex;align-items:center;gap:16px;min-width:0}
body>.temac-v28 .studio-search-wrap{border:1px solid var(--tm-line);background:#f9f9fc;border-radius:14px;box-shadow:none;max-width:400px}
body>.temac-v28 .studio-icon-btn{border:1px solid var(--tm-line);border-radius:14px;background:#fff;color:#433974}
body>.temac-v28 .studio-user{border-radius:14px;padding:5px 8px;background:transparent}
body>.temac-v28 .studio-dashboard,body>.temac-v28 .studio-surface,body>.temac-v28 .panel{min-width:0;max-width:100%}
body>.temac-v28 .studio-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}
body>.temac-v28 .studio-title-row h1,body>.temac-v28 .page-title,body>.temac-v28 .section-head h1{color:var(--tm-ink);font-weight:850;letter-spacing:-.04em}
body>.temac-v28 .studio-title-row p{color:var(--tm-muted);margin-bottom:0}
body>.temac-v28 .studio-surface,body>.temac-v28 .panel,body>.temac-v28 .stat,body>.temac-v28 .piece-card,body>.temac-v28 .card,body>.temac-v28 .studio-process-card{border:1px solid var(--tm-line);border-radius:var(--tm-radius);box-shadow:0 10px 34px #29294c0a;background:#fff}
body>.temac-v28 .studio-surface{padding:clamp(20px,2vw,30px)}
body>.temac-v28 .btn-primary{background:var(--tm-accent)!important;border-color:var(--tm-accent)!important;border-radius:12px!important}
body>.temac-v28 .btn-outline-primary{border-radius:12px!important}
body>.temac-v28 .form-control,body>.temac-v28 .form-select{border-radius:12px;min-height:40px}
body>.temac-v28 .studio-two-col{grid-template-columns:minmax(0,1.6fr) minmax(290px,.9fr);gap:22px;align-items:stretch}
body>.temac-v28 .studio-processes,body>.temac-v28 .studio-process-track{min-width:0;max-width:100%}
body>.temac-v28 .studio-task-list{height:auto!important;max-height:none!important;overflow-y:visible!important}
body>.temac-v28 .strategy-editor{width:100%;max-width:100%;min-width:0;overflow:visible}
body>.temac-v28 .strategy-editor .main{min-width:0;max-width:100%;margin:0;padding:16px 0}
body>.temac-v28 .strategy-editor .panel{border-color:var(--tm-line);border-radius:var(--tm-radius)}
body>.temac-v28 .table-responsive{max-width:100%;overflow-x:auto}
body>.temac-v28 .modal-content{border-radius:20px}
body>.temac-v28 .studio-process-track{overflow-x:auto;overflow-y:visible}
@media(max-width:1100px){body>.temac-v28 .studio-topbar{gap:12px}body>.temac-v28 .studio-header-actions{flex-wrap:wrap}body>.temac-v28 .studio-two-col{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){body>.temac-v28.app.studio-shell{grid-template-columns:62px minmax(0,1fr)!important}body>.temac-v28.app.studio-shell>.sidebar.studio-sidebar{width:62px!important;min-width:62px!important;max-width:62px!important;padding:16px 5px!important;justify-content:center!important}body>.temac-v28 .studio-sidebar .navlink{width:48px!important;min-width:48px!important;height:48px!important;flex-basis:48px!important}body>.temac-v28 .studio-topbar{padding:14px 16px!important}body>.temac-v28 .studio-content{padding:18px 14px!important}body>.temac-v28 .studio-welcome{display:none}body>.temac-v28 .studio-search-wrap{max-width:200px}body>.temac-v28 .studio-user-name{display:none}body>.temac-v28 .studio-surface{padding:18px}body>.temac-v28 .studio-title-row h1{font-size:28px}}

/* V29: sidebar fijo, desplazamiento vertical del documento independiente. */
body>.temac-v28.app.studio-shell>.sidebar.studio-sidebar::-webkit-scrollbar{display:none}
body>.temac-v28.app.studio-shell>.main.studio-main{position:relative!important;grid-column:2!important}
