/* TT CMS 2.0 — unified colorful design + compact navigation */
:root{--primary:#4b6ff0;--nav:#101d38;--back:#f2f5fc;--border:#e2e7f3;--text:#20304a;--red:#bf4054}
.admin-layout{grid-template-columns:247px minmax(0,1fr)}
.admin-layout .sidebar{background:radial-gradient(circle at 0 0,#263e83,#101d38 60%);overflow-y:auto;scrollbar-width:thin;box-shadow:10px 0 50px rgba(20,40,85,.13)}
.sidebar .brand{font-size:29px;letter-spacing:-.055em}.sidebar .brand span{color:#ffb86f}
.side-subtitle{letter-spacing:.1em;line-height:1.6}
.admin-layout .sidebar .tt20-nav{gap:9px;margin-top:10px}
.tt20-nav details{border:1px solid rgba(211,225,255,.09);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.035)}
.tt20-nav summary{cursor:pointer;color:#b9cffa;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;font-weight:850;font-size:12px;letter-spacing:.055em;list-style:none}
.tt20-nav summary::-webkit-details-marker{display:none}.tt20-nav summary::after{content:'⌄';font-size:17px;transition:transform .2s}.tt20-nav details[open] summary::after{transform:rotate(180deg)}
.tt20-nav-items{padding:0 5px 7px}.admin-layout .sidebar nav .tt20-nav-items a{display:block;padding:8px 12px 8px 18px;margin:3px 3px;font-size:12.5px;border-radius:9px}
.admin-layout .sidebar nav .tt20-nav-items a:hover{background:rgba(117,162,255,.15)}
.admin-layout .sidebar nav .tt20-nav-items a.active{background:linear-gradient(108deg,#5578fb,#8666f1);box-shadow:0 5px 18px rgba(52,72,185,.27);color:#fff}
.main{background:radial-gradient(ellipse 440px 300px at 95% 0,rgba(193,210,253,.42),transparent),#f3f6fc}
.panel{background:rgba(255,255,255,.91);border-radius:19px;border:1px solid rgba(224,233,248,.9);box-shadow:0 14px 45px rgba(41,69,120,.047)}
.topline{border-bottom:1px solid #dde5f3;padding-bottom:20px}.topline h1{font-weight:900;letter-spacing:-.05em}
.primary{border-radius:11px;background:linear-gradient(110deg,#437af1,#765be7);box-shadow:0 9px 20px rgba(67,122,241,.17)}
.primary:hover{background:linear-gradient(110deg,#3669d8,#634dce)}.secondary{border-radius:11px}
.tt20-stats{gap:15px}.tt20-stats>div{position:relative;border:0;border-radius:21px;color:#fff;min-height:144px;overflow:hidden;padding:23px;background:#5277f6}
.tt20-stats .tt20-stat:after{content:'';position:absolute;width:155px;height:155px;right:-64px;top:-61px;border-radius:50%;border:20px solid rgba(255,255,255,.16)}
.tt20-stats .tt20-stat strong{color:#fff;font-size:38px;line-height:1.1;margin:14px 0 3px;font-weight:900}
.tt20-stats .tt20-stat span{color:rgba(255,255,255,.95);font-weight:700}
.tt20-stat i{font-size:24px;line-height:1;font-style:normal;opacity:.9}
.tt20-stats .tt20-stat-blue{background:linear-gradient(130deg,#2b8ee9,#4660ea)}
.tt20-stats .tt20-stat-violet{background:linear-gradient(130deg,#7965ec,#b274ec)}
.tt20-stats .tt20-stat-pink{background:linear-gradient(130deg,#f06791,#ec7f67)}
.tt20-stats .tt20-stat-green{background:linear-gradient(130deg,#16a9ab,#48c6a0)}
.tt20-wysiwyg{min-height:460px;border-radius:0 0 12px 12px;padding:0!important;background:white}
.tt20-wysiwyg .ql-editor{min-height:460px;font-size:16px;line-height:1.8;color:#21354e;padding:22px}
.ql-toolbar.ql-snow{border:1px solid #d6e0ef!important;border-radius:13px 13px 0 0;background:#eff4ff;display:flex;flex-wrap:wrap;gap:6px}
.tt20-editor .ql-container.ql-snow{border:1px solid #d6e0ef!important;border-radius:0 0 13px 13px}
.tt20-editor .ql-container .ql-editor{font-family:inherit;overflow-wrap:anywhere}
.tt20-editor img{max-width:100%}.tt20-editor img.tt-img--small{width:min(100%,320px)}.tt20-editor img.tt-img--large{width:min(100%,800px)}
.tt20-fallback{padding:20px!important;min-height:420px;outline:0}
.tt20-modal{width:min(950px,calc(100vw - 25px));max-height:92dvh;background:#fff;border:1px solid #e1e8f5;border-radius:24px;box-shadow:0 28px 100px #0a17358c;padding:20px;color:#172b46;overflow-y:auto}
.tt20-modal::backdrop{background:#0a1535b0;backdrop-filter:blur(8px)}
.tt20-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e5eaf5}.tt20-dialog-head h2{font-size:21px;margin:0 0 12px}.tt20-dialog-head button{border:0;background:#eaf0fc;padding:8px 13px;border-radius:10px}
.tt20-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}.tt20-tabs button{background:#f1f4fb;border:1px solid #e1e9fa;border-radius:100px;color:#314365;padding:9px 14px;font-weight:750}.tt20-tabs button.selected{background:#3c6bf0;color:#fff}
.tt20-pick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-height:56vh;overflow-y:auto;margin-top:15px}
.tt20-pick{display:flex;flex-direction:column;background:#f6f8fd;border:1px solid #dce5f4;border-radius:12px;padding:6px;text-align:left;color:#243a52;overflow:hidden}.tt20-pick:hover,.tt20-pick:focus{outline:2px solid #4778ea}.tt20-pick img{aspect-ratio:16/9;width:100%;object-fit:cover;border-radius:7px}.tt20-pick span{font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:7px 3px}
.tt20-secret,.tt20-recovery{background:#ecf3ff;padding:19px;border:1px solid #d5e3fc;border-radius:13px;word-break:break-all}.tt20-secret{font-size:19px;font-weight:900;letter-spacing:.08em}.tt20-recovery pre{font-size:17px;letter-spacing:.12em}
.tt20-field{background:linear-gradient(115deg,#f5f8ff,#faf7ff);border:1px solid #e2e6f7;padding:18px;border-radius:14px;margin:12px 0}
.tt20-entry{border-bottom:1px solid #dbe4f3;padding:20px 0}.tt20-entry dl{display:grid;grid-template-columns:180px 1fr;gap:8px}.tt20-entry dt{font-weight:800}.tt20-entry dd{margin:0;overflow-wrap:anywhere}
.tt20-models{display:grid;gap:12px}.tt20-model{display:flex;align-items:center;gap:16px;background:#f1f5fe;border:1px solid #e0e8f9;border-radius:12px;padding:13px}.tt20-model div{flex:1;min-width:0}.tt20-model strong,.tt20-model small{display:block;overflow-wrap:anywhere}.tt20-cube{display:grid;place-items:center;width:49px;height:49px;border-radius:14px;background:linear-gradient(125deg,#587bf3,#9d69ed);color:white;font-size:31px}
@media(max-width:1000px){.tt20-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tt20-pick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.tt20-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tt20-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tt20-entry dl{grid-template-columns:1fr}.main{padding:18px}.tt20-stats .tt20-stat{padding:17px;min-height:127px}.tt20-stats .tt20-stat strong{font-size:30px}}

.tt20-image-size-field{display:flex;align-items:center;gap:16px;max-width:330px;margin:20px 0 0}.tt20-image-size-field select{width:auto;margin-top:0}
