/* ThinkTank suite shell — scoped */

/* Typography + link resets (predictable vs theme) */
.ttk-shell-wrap, .thinktank-admin-wrapper{font-size:13px; line-height:1.45; color:rgba(233,238,246,.92);} 
.ttk-shell-wrap a, .thinktank-admin-wrapper a{ text-decoration:none !important; }
.ttk-shell-wrap a:hover, .thinktank-admin-wrapper a:hover{ text-decoration:none !important; }
.ttk-shell-wrap h1,.ttk-shell-wrap h2,.ttk-shell-wrap h3,.ttk-shell-wrap h4,.ttk-shell-wrap h5,.ttk-shell-wrap h6,
.thinktank-admin-wrapper h1,.thinktank-admin-wrapper h2,.thinktank-admin-wrapper h3,.thinktank-admin-wrapper h4,.thinktank-admin-wrapper h5,.thinktank-admin-wrapper h6{ color:#fff; }
                .ttk-shell-wrap{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;}
                .ttk-shell{min-height:calc(100vh - 70px); padding:18px; color:#e9eef6;
                    background: radial-gradient(1200px 600px at 20% 0%, rgba(0,216,185,.16), rgba(0,0,0,0) 60%),
                                radial-gradient(1000px 520px at 90% 30%, rgba(90,132,255,.14), rgba(0,0,0,0) 60%),
                                linear-gradient(180deg,#0a1020,#070a12 60%,#06070c);
                }
                .ttk-shell *{box-sizing:border-box;}
                .ttk-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;}
                .ttk-brand{display:flex;align-items:center;gap:10px;}
                .ttk-logo{width:32px;height:32px;border-radius:10px;background:radial-gradient(circle at 35% 35%, rgba(0,216,185,.9), rgba(0,216,185,.2)); box-shadow:0 10px 30px rgba(0,0,0,.35);}
                .ttk-brand h1{margin:0;font-size:18px;font-weight:650;letter-spacing:.2px;}
                .ttk-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
                .ttk-btn{appearance:none;border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6;
                    border-radius:12px; padding:9px 12px; font-size:12px; font-weight:600; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:8px;
                    box-shadow:0 10px 28px rgba(0,0,0,.28);
                }
                .ttk-btn:hover{background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.18);}
                .ttk-btn-primary{border-color:rgba(0,216,185,.45); background:rgba(0,216,185,.12);}
                .ttk-btn-primary:hover{background:rgba(0,216,185,.18); border-color:rgba(0,216,185,.65);}
                .ttk-btn-ghost{background:transparent;}
                .ttk-layout{display:grid;grid-template-columns:320px 1fr;gap:16px;}
                .ttk-panel{border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.05); border-radius:18px; box-shadow:0 20px 55px rgba(0,0,0,.35);}
                .ttk-panel-hd{padding:14px 14px 10px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:10px;}
                .ttk-panel-hd h2{margin:0;font-size:13px;letter-spacing:.35px;text-transform:uppercase;color:rgba(233,238,246,.75);}
                .ttk-panel-bd{padding:12px;}
                .ttk-space-list{display:flex;flex-direction:column;gap:10px; max-height:calc(100vh - 220px); overflow:auto; padding-right:6px;}
                .ttk-space-item{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px; border-radius:14px;
                    border:1px solid rgba(255,255,255,.10); background:rgba(0,0,0,.18); text-decoration:none; color:#e9eef6;
                }
                .ttk-space-item:hover{background:rgba(255,255,255,.06);}
                .ttk-space-item.is-active{outline:2px solid rgba(0,216,185,.35); border-color:rgba(0,216,185,.35); background:rgba(0,216,185,.08);}
                .ttk-space-title{font-weight:650; font-size:14px; margin-bottom:3px;}
                .ttk-space-desc{font-size:12px; color:rgba(233,238,246,.70); line-height:1.25;}
                .ttk-drag-handle{margin-left:10px; font-size:16px; line-height:1; opacity:.65; cursor:grab; user-select:none;}
                .ttk-space-item.is-dragging{opacity:.65; transform:scale(.99);}
                .ttk-space-item[draggable="true"]{cursor:grab;}
                .ttk-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;
                    border:1px solid rgba(0,216,185,.35); background:rgba(0,216,185,.12); color:#cffff7;
                }
                .ttk-iconbtn{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
                    border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; cursor:pointer;
                }
                .ttk-iconbtn:hover{background:rgba(255,255,255,.10);}
                .ttk-main{min-height:520px;}
                .ttk-space-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px; padding:14px;}
                .ttk-space-header h3{margin:0;font-size:18px;font-weight:700; color:#fff !important;}
                .ttk-space-header p{margin:6px 0 0; color:rgba(233,238,246,.72); font-size:13px; max-width:760px;}
                .ttk-board{display:grid; grid-template-columns:380px 1fr; gap:14px; padding:0 14px 14px;}
                .ttk-subpanel{border:1px solid rgba(255,255,255,.10); background:rgba(0,0,0,.18); border-radius:16px; overflow:hidden;}
                .ttk-subpanel-hd{padding:12px 12px 10px; border-bottom:1px solid rgba(255,255,255,.08); display:flex; align-items:center; justify-content:space-between;}
                .ttk-subpanel-hd strong{font-size:13px; letter-spacing:.25px; color:rgba(233,238,246,.86);}
                .ttk-seg{display:flex; gap:8px; flex-wrap:wrap;}
                /* Icon chips for the “Add content” switcher */
                .ttk-chip{display:inline-flex; align-items:center; justify-content:center; gap:6px;
                    width:38px; height:38px; padding:0; border-radius:999px;
                    border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06);
                    color:#e9eef6; font-weight:650; font-size:12px; cursor:pointer;
                }
                .ttk-chip.is-on{border-color:rgba(90,132,255,.45); background:rgba(90,132,255,.14);}
                .ttk-chip-ico{width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:2;
                    stroke-linecap:round; stroke-linejoin:round;
                }
                .ttk-sr{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
                    clip:rect(0,0,0,0); white-space:nowrap; border:0;
                }
                .ttk-form{padding:12px;}
                .ttk-form label{display:block;font-size:12px;color:rgba(233,238,246,.75); margin:10px 0 6px;}
                .ttk-form input[type="text"], .ttk-form input[type="date"], .ttk-form textarea, .ttk-form select{
                    width:100%; padding:10px 11px; border-radius:12px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06);
                    color:#e9eef6; outline:none;
                }
                .ttk-form textarea{min-height:120px; resize:vertical;}
                .ttk-form input:focus, .ttk-form textarea:focus, .ttk-form select:focus{border-color:rgba(0,216,185,.55); box-shadow:0 0 0 3px rgba(0,216,185,.18);}
                .ttk-list{padding:12px; display:flex; flex-direction:column; gap:10px;}
                .ttk-card{border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.04); border-radius:14px; padding:12px;}
                .ttk-card h4{margin:0 0 6px; font-size:13px;}

                /* Bulk select (checkboxes) – prevent theme/wp-admin styles from stretching inputs */
                .ttk-shell input[type="checkbox"],
                .ttk-shell .ttk-card input[type="checkbox"],
                .ttk-shell #ttk-bulk-bar input[type="checkbox"]{
                    width:16px !important;
                    height:16px !important;
                    min-width:16px !important;
                    min-height:16px !important;
                    max-width:16px !important;
                    max-height:16px !important;
                    flex:0 0 16px;
                    display:inline-block;
                    vertical-align:middle;
                    margin:2px 0 0;
                }
                .ttk-shell .ttk-card h4{display:flex; align-items:flex-start; gap:10px;}
                .ttk-shell .ttk-card h4 .ttk-bulk-item{margin-top:2px;}
                .ttk-shell .ttk-card h4 span{flex:1 1 auto; min-width:0; overflow-wrap:anywhere; word-break:break-word;}
                .ttk-meta{font-size:12px; color:rgba(233,238,246,.65); display:flex; gap:10px; flex-wrap:wrap;}
                .ttk-row-actions{margin-top:10px; display:flex; gap:8px; flex-wrap:wrap;}
                .ttk-small{font-size:12px;color:rgba(233,238,246,.65);}
                .ttk-modal-backdrop{position:fixed; inset:0; background:rgba(0,0,0,.62); display:none; align-items:center; justify-content:center; z-index:99999; padding:18px;}
                .ttk-modal{width:min(720px, 100%); border-radius:18px; border:1px solid rgba(255,255,255,.12); background:rgba(10,16,32,.98);
                    box-shadow:0 25px 80px rgba(0,0,0,.6); overflow:hidden;
                }
                .ttk-modal-hd{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 14px 12px; border-bottom:1px solid rgba(255,255,255,.10);}
                .ttk-modal-hd strong{font-size:14px;}
                .ttk-modal-close{background:transparent;border:0;color:rgba(233,238,246,.75);font-size:20px;cursor:pointer;line-height:1;}
                .ttk-modal-close:hover{color:#fff;}
                .ttk-modal-bd{padding:14px;}
                .ttk-danger{border-color:rgba(255,92,122,.35)!important; background:rgba(255,92,122,.10)!important;}
                .ttk-danger:hover{background:rgba(255,92,122,.14)!important;}
                .ttk-inline{display:flex; gap:10px; flex-wrap:wrap;}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-role{font-size:11px; letter-spacing:.2px; color:rgba(233,238,246,.60);}
                .ttk-chat-bubble{border:1px solid rgba(255,255,255,.10); border-radius:14px; padding:10px 11px; font-size:13px; line-height:1.35;}
                .ttk-chat-msg.is-user .ttk-chat-bubble{background:rgba(0,216,185,.08); border-color:rgba(0,216,185,.18);}
                .ttk-chat-msg.is-assistant .ttk-chat-bubble{background:rgba(90,132,255,.08); border-color:rgba(90,132,255,.18);}

                /* Project Space summary links */
                .ttk-summary-links{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px;}
                .ttk-summary-link{display:inline-block; padding:8px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.05); color:#e9eef6; text-decoration:none; font-size:12px;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.08);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-role{font-size:11px; color:rgba(233,238,246,.55);}
                .ttk-chat-bubble{border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.05); border-radius:14px; padding:10px 12px; font-size:13px; line-height:1.35;}
                .ttk-chat-msg.is-user .ttk-chat-bubble{background:rgba(0,216,185,.08); border-color:rgba(0,216,185,.22);}
                .ttk-chat-msg.is-assistant .ttk-chat-bubble{background:rgba(90,132,255,.07); border-color:rgba(90,132,255,.22);}

                /* Summary links */
                .ttk-summary-links{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px;}
                .ttk-summary-link{display:inline-block; padding:7px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; text-decoration:none; font-weight:650; font-size:12px;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.10);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-msg.is-user{align-items:flex-end;}
                .ttk-chat-msg.is-assistant{align-items:flex-start;}
                .ttk-chat-role{font-size:11px; letter-spacing:.2px; color:rgba(233,238,246,.55);}
                .ttk-chat-bubble{max-width:92%; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.06); border-radius:14px; padding:10px 12px; font-size:13px; line-height:1.35;}
                .ttk-chat-msg.is-user .ttk-chat-bubble{background:rgba(0,216,185,.10); border-color:rgba(0,216,185,.18);}

                /* Summary links */
                .ttk-summary-links{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px;}
                .ttk-summary-link{display:inline-flex; align-items:center; gap:8px; padding:8px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; font-weight:650; font-size:12px; text-decoration:none;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.10);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-role{font-size:11px; color:rgba(233,238,246,.55);}
                .ttk-chat-bubble{border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.05); border-radius:14px; padding:10px 11px;}
                .ttk-chat-msg.is-user .ttk-chat-bubble{background:rgba(0,216,185,.08); border-color:rgba(0,216,185,.18);}
                .ttk-chat-msg.is-assistant .ttk-chat-bubble{background:rgba(90,132,255,.08); border-color:rgba(90,132,255,.18);}

                /* Project Space summary links */
                .ttk-summary-links{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px;}
                .ttk-summary-link{display:inline-flex; align-items:center; gap:6px; padding:8px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.05); color:#e9eef6; text-decoration:none; font-size:12px;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.08);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-msg.is-user{align-items:flex-end;}
                .ttk-chat-msg.is-assistant{align-items:flex-start;}
                .ttk-chat-role{font-size:11px; color:rgba(233,238,246,.55);}
                .ttk-chat-bubble{max-width:92%; padding:10px 12px; border-radius:14px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.05);}
                .ttk-chat-msg.is-user .ttk-chat-bubble{border-color:rgba(0,216,185,.25); background:rgba(0,216,185,.08);}

                /* Project Space summary links */
                .ttk-summary-links{margin-top:10px; display:flex; flex-wrap:wrap; gap:8px;}
                .ttk-summary-link{display:inline-block; padding:7px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; font-weight:650; font-size:12px; text-decoration:none;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.09);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-msg.is-user{align-items:flex-end;}
                .ttk-chat-msg.is-assistant{align-items:flex-start;}
                .ttk-chat-role{font-size:11px; letter-spacing:.15px; color:rgba(233,238,246,.55);}
                .ttk-chat-bubble{max-width:92%; padding:10px 11px; border-radius:14px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.05);}
                .ttk-chat-msg.is-user .ttk-chat-bubble{background:rgba(90,132,255,.12); border-color:rgba(90,132,255,.30);}
                .ttk-chat-msg.is-assistant .ttk-chat-bubble{background:rgba(0,216,185,.08); border-color:rgba(0,216,185,.22);}

                /* Project Space summary quick links */
                .ttk-summary-links{margin-top:10px; display:flex; flex-wrap:wrap; gap:8px;}
                .ttk-summary-link{display:inline-flex; align-items:center; padding:7px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; text-decoration:none; font-size:12px; font-weight:650;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.09);}

                /* Space chat */
                .ttk-chat-thread{margin-top:10px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); border-radius:14px; padding:10px; max-height:320px; overflow:auto;}
                .ttk-chat-empty{font-size:12px; color:rgba(233,238,246,.60); padding:8px;}
                .ttk-chat-msg{display:flex; flex-direction:column; gap:6px; margin:10px 0;}
                .ttk-chat-msg.is-user{align-items:flex-end;}
                .ttk-chat-msg.is-assistant{align-items:flex-start;}
                .ttk-chat-role{font-size:11px; color:rgba(233,238,246,.55); letter-spacing:.2px;}
                .ttk-chat-bubble{max-width:92%; padding:10px 11px; border-radius:14px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.04);}
                .ttk-chat-msg.is-user .ttk-chat-bubble{border-color:rgba(0,216,185,.28); background:rgba(0,216,185,.08);}
                .ttk-chat-msg.is-assistant .ttk-chat-bubble{border-color:rgba(90,132,255,.25); background:rgba(90,132,255,.08);}

                /* Project Space summary quick links */
                .ttk-summary-links{display:flex; flex-wrap:wrap; gap:8px; margin-top:10px;}
                .ttk-summary-link{display:inline-flex; align-items:center; padding:7px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); color:#e9eef6; text-decoration:none; font-size:12px; font-weight:650;}
                .ttk-summary-link:hover{background:rgba(255,255,255,.10);}


/* --- ThinkTank UI tweaks (0.6.19) --- */
.ttk-topbar{justify-content:flex-end;}
.ttk-brand{display:none !important;}
.ttk-shell-wrap, .thinktank-admin-wrapper{width:100% !important; max-width:none !important;}
.ttk-shell{width:100% !important; max-width:none !important;}
.ttk-space-title .ttk-lock{margin-right:8px; opacity:.9;}
.ttk-space-title .ttk-space-dot{display:inline-block; width:10px; height:10px; border-radius:999px; background:var(--ttk-space-color, #3B82F6); margin-right:10px; box-shadow:0 0 0 2px rgba(0,0,0,.15);}
.ttk-space-item .ttk-space-title{color:rgba(233,238,246,.92);}
.ttk-space-item.is-active .ttk-space-title{color:#fff;}
.ttk-modal-wide{width:min(980px, 94vw);}
.ttk-chat-log{height:320px; overflow:auto; border:1px solid rgba(255,255,255,.12); border-radius:12px; padding:12px; background:rgba(0,0,0,.18);}
.ttk-chat-msg{padding:10px 12px; border-radius:12px; margin:8px 0; white-space:pre-wrap;}
.ttk-chat-msg.is-user{background:rgba(255,255,255,.10);}
.ttk-chat-msg.is-assistant{background:rgba(0,0,0,.22);}
.ttk-chat-row{display:flex; gap:8px; margin-top:12px;}
.ttk-chat-row input{flex:1; border-radius:12px; padding:10px 12px; border:1px solid rgba(255,255,255,.12); background:rgba(0,0,0,.18); color:#fff;}
.ttk-prompt-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; margin-bottom:12px;}
.ttk-prompt-tile{border:1px solid rgba(255,255,255,.12); background:rgba(0,0,0,.18); color:#fff; border-radius:14px; padding:12px; text-align:left; cursor:pointer;}
.ttk-prompt-tile.is-active{outline:2px solid rgba(255,255,255,.22);}
.ttk-prompt-editor textarea{width:100%; min-height:220px; border-radius:14px; padding:12px; border:1px solid rgba(255,255,255,.12); background:rgba(0,0,0,.18); color:#fff;}
.ttk-btn-danger{background:rgba(180,35,24,.95); border:1px solid rgba(255,255,255,.12); color:#fff;}


/* Ensure front-end admin text colors match ThinkTank backend palette */
.ttk-shell-wrap, .ttk-shell-wrap p, .ttk-shell-wrap label, .ttk-shell-wrap li, .ttk-shell-wrap td, .ttk-shell-wrap th{
    color:#e9eef6;
}
.ttk-shell-wrap .ttk-small, .ttk-shell-wrap small{
    color:#9fb2c7;
}
.ttk-shell-wrap a{ color:#00d8b9; text-decoration:none; }
.ttk-shell-wrap a:hover{ text-decoration:underline; }



/* Website sources */
.ttk-site-row{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid rgba(255,255,255,.08);}
.ttk-site-row:first-child{border-top:0;}
.ttk-site-url{font-weight:600; font-size:13px; word-break:break-all;}
.ttk-site-main{min-width:0;}
.ttk-field{display:block;}
.ttk-field > span{display:block; font-size:12px; color:rgba(233,238,246,.76); margin-bottom:6px;}
.ttk-field input, .ttk-field select{width:100%; padding:10px 10px; border-radius:12px; border:1px solid rgba(255,255,255,.14); background:rgba(0,0,0,.22); color:#e9eef6;}
.ttk-field input:focus, .ttk-field select:focus{outline:none; border-color:rgba(0,216,185,.55);}


/* Front-end admin button font sizing */
.thinktank-admin-wrapper .ttk-btn,
.thinktank-admin-wrapper .ttk-iconbtn,
.thinktank-admin-wrapper button{
    font-size:12px !important;
    line-height:1.25 !important;
}

/* --- Theme/Builder protection (Elementor, BuddyBoss, etc.) ---
   Many themes apply global h1/h2/button styles with high specificity and/or late load order.
   We hard-scope the critical UI typography + button visuals inside our wrapper.
*/

/* Font + base text colour hardening (themes often override body/label colours) */
.ttk-shell-wrap,
.ttk-shell-wrap *{
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif !important;
    box-sizing:border-box;
}

/* Labels + small helper text should always be our muted light tone */
.ttk-shell-wrap label,
.ttk-shell-wrap .ttk-form label,
.ttk-shell-wrap .ttk-small,
.ttk-shell-wrap .ttk-meta,
.ttk-shell-wrap .ttk-field > span{
    color:rgba(233,238,246,.75) !important;
}

/* Ensure SVG icons used in chips are visible even when themes apply aggressive svg/path rules */
.ttk-shell-wrap .ttk-chip-ico{display:block;}
.ttk-shell-wrap .ttk-chip-ico,
.ttk-shell-wrap .ttk-chip-ico *{
    stroke:currentColor !important;
    fill:none !important;
    stroke-width:2 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
    display:block !important;
}

/* Chips: harden core visuals (some themes globally restyle buttons) */
.ttk-shell-wrap .ttk-chip{
    color:#e9eef6 !important;
    border:1px solid rgba(255,255,255,.12) !important;
    background:rgba(255,255,255,.06) !important;
    border-radius:999px !important;
    width:38px !important;
    height:38px !important;
    padding:0 !important;
    box-shadow:none !important;
}
.ttk-shell-wrap .ttk-chip.is-on{
    border-color:rgba(90,132,255,.45) !important;
    background:rgba(90,132,255,.14) !important;
}
.ttk-shell-wrap .ttk-chip{color:#e9eef6 !important;}

/* Force our UI typography sizes inside the shell */
.ttk-shell-wrap .ttk-panel-hd h2,
.thinktank-admin-wrapper .ttk-panel-hd h2{font-size:13px !important; letter-spacing:.35px !important; text-transform:uppercase !important;}

.ttk-shell-wrap .ttk-space-header h3,
.thinktank-admin-wrapper .ttk-space-header h3{font-size:18px !important; font-weight:700 !important; margin:0 !important;}

.ttk-shell-wrap .ttk-space-header p,
.thinktank-admin-wrapper .ttk-space-header p{font-size:13px !important; line-height:1.45 !important; margin:6px 0 0 !important;}

/* Ensure buttons/chips/links don't inherit theme button styles */
.ttk-shell-wrap .ttk-btn,
.thinktank-admin-wrapper .ttk-btn,
.ttk-shell-wrap .ttk-iconbtn,
.thinktank-admin-wrapper .ttk-iconbtn,
.ttk-shell-wrap .ttk-chip,
.thinktank-admin-wrapper .ttk-chip,
.ttk-shell-wrap .ttk-summary-link,
.thinktank-admin-wrapper .ttk-summary-link{
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif !important;
    font-size:12px !important;
    font-weight:600 !important;
    text-transform:none !important;
    letter-spacing:normal !important;
}

.ttk-shell-wrap .ttk-btn,
.thinktank-admin-wrapper .ttk-btn{
    appearance:none !important;
    -webkit-appearance:none !important;
    border:1px solid rgba(255,255,255,.12) !important;
    background:rgba(255,255,255,.06) !important;
    color:#e9eef6 !important;
    border-radius:12px !important;
    padding:9px 12px !important;
    box-shadow:0 10px 28px rgba(0,0,0,.28) !important;
    text-decoration:none !important;
}

.ttk-shell-wrap .ttk-btn:hover,
.thinktank-admin-wrapper .ttk-btn:hover{background:rgba(255,255,255,.09) !important; border-color:rgba(255,255,255,.18) !important;}

.ttk-shell-wrap .ttk-btn-primary,
.thinktank-admin-wrapper .ttk-btn-primary{border-color:rgba(0,216,185,.45) !important; background:rgba(0,216,185,.12) !important;}

.ttk-shell-wrap .ttk-btn-primary:hover,
.thinktank-admin-wrapper .ttk-btn-primary:hover{background:rgba(0,216,185,.18) !important; border-color:rgba(0,216,185,.65) !important;}

.ttk-shell-wrap .ttk-iconbtn,
.thinktank-admin-wrapper .ttk-iconbtn,
.ttk-shell-wrap .ttk-chip,
.thinktank-admin-wrapper .ttk-chip{
    appearance:none !important;
    -webkit-appearance:none !important;
    border:1px solid rgba(255,255,255,.12) !important;
    background:rgba(255,255,255,.06) !important;
    color:#e9eef6 !important;
}

/* Prevent global themes from inflating our big left title */
.ttk-shell-wrap .ttk-panel-hd,
.thinktank-admin-wrapper .ttk-panel-hd{padding:14px 14px 10px !important;}


/* ttk-input-scope: keep inputs constrained inside left panel (avoid theme min-width) */
.ttk-shell-wrap .ttk-subpanel input,
.ttk-shell-wrap .ttk-subpanel textarea,
.thinktank-admin-wrapper .ttk-subpanel input,
.thinktank-admin-wrapper .ttk-subpanel textarea{width:100% !important; max-width:100% !important; min-width:0 !important;}

.ttk-notice{padding:10px 12px;border-radius:10px;margin:10px 0;background:rgba(0,216,185,0.12);border:1px solid rgba(0,216,185,0.35);font-size:14px;}
.ttk-notice-error{background:rgba(255,75,75,0.10);border-color:rgba(255,75,75,0.35);}


/* Website crawl status flag */
.ttk-site-flag{margin-top:10px;font-size:12px;line-height:1.35;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.10);}

/* Insights Hub visibility eye buttons */
.ttk-shell-wrap .ttk-hubvis-btn,
.ttk-shell-wrap .ttk-hubvis-toggle,
.thinktank-admin-wrapper .ttk-hubvis-btn,
.thinktank-admin-wrapper .ttk-hubvis-toggle{
  width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
}
.ttk-shell-wrap .ttk-hubvis-btn.is-off,
.ttk-shell-wrap .ttk-hubvis-toggle.is-off,
.thinktank-admin-wrapper .ttk-hubvis-btn.is-off,
.thinktank-admin-wrapper .ttk-hubvis-toggle.is-off{opacity:0.35;}
.ttk-shell-wrap .ttk-hubvis-btn.is-on,
.ttk-shell-wrap .ttk-hubvis-toggle.is-on,
.thinktank-admin-wrapper .ttk-hubvis-btn.is-on,
.thinktank-admin-wrapper .ttk-hubvis-toggle.is-on{opacity:1;}

/* Space color palette */
.ttk-shell-wrap .ttk-color-swatch{
  width: 100%;
  height: 28px;
  border-radius: 8px;
  border: 2px solid rgba(255,255,255,0.25);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.15);
  cursor: pointer;
}
.ttk-shell-wrap .ttk-color-swatch.is-selected{
  border-color: #111827;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.35), 0 0 0 2px rgba(59,130,246,0.25);
}

/* Edit Space modal: make it wider and 2-column (pure CSS) to keep it on-screen */
.ttk-modal-backdrop[data-ttk-modal="edit-space"] .ttk-modal{width:min(980px, 94vw); max-height:calc(100vh - 80px); overflow:hidden;}
.ttk-modal-backdrop[data-ttk-modal="edit-space"] .ttk-modal-body,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] .ttk-modal-bd{max-height:calc(100vh - 160px); overflow:auto;}
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form{column-count:2; column-gap:18px;}
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form label,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form input,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form textarea,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form select,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form .ttk-color-palette,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form .ttk-muted,
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form div{break-inside:avoid;}
/* Keep action buttons full-width at the bottom */
.ttk-modal-backdrop[data-ttk-modal="edit-space"] #ttk-edit-space-form > div[style*="display:flex"]{column-span:all;}

/* System modal (shortcodes + pages) */
.ttk-shell-wrap .ttk-sys-list{display:flex;flex-direction:column;gap:10px;}
.ttk-shell-wrap .ttk-sys-item{padding:12px 14px;border:1px solid rgba(255,255,255,0.14);border-radius:14px;background:rgba(0,0,0,0.18);}
.ttk-shell-wrap .ttk-sys-code code{font-size:12px;}
.ttk-shell-wrap .ttk-sys-desc{margin-top:6px;color:rgba(255,255,255,0.78);font-size:13px;}
.ttk-shell-wrap .ttk-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:11px;border:1px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.85);}
.ttk-shell-wrap .ttk-badge-warn{background:rgba(245,158,11,0.14);border-color:rgba(245,158,11,0.25);}
.ttk-shell-wrap .ttk-muted{opacity:0.6;}


/* System modal layout: two columns on desktop, stacked on mobile */
.ttk-shell-wrap .ttk-sys-grid{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
.ttk-shell-wrap .ttk-sys-col{
  flex:1 1 0;
  min-width:0;
}
@media (max-width: 860px){
  .ttk-shell-wrap .ttk-sys-grid{ flex-direction:column; }
}

/* Queue log: keep it readable */
.ttk-shell-wrap .ttk-sys-log{
  max-height: 260px;
  overflow:auto;
}

/* ---------------------------------------------------------
 * Transcript file import dropzone (extracts text into textarea)
 * ------------------------------------------------------ */
.ttk-dropzone{
    border: 1px dashed rgba(255,255,255,0.25);
    border-radius: 12px;
    padding: 12px;
    margin: 6px 0 10px 0;
    background: rgba(255,255,255,0.04);
}
.ttk-dropzone.is-drag{
    border-color: rgba(255,255,255,0.55);
    background: rgba(255,255,255,0.07);
}
.ttk-dropzone-inner{
    font-size: 13px;
    line-height: 1.35;
}
.ttk-dropzone .ttk-link{
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    text-decoration: underline;
    font: inherit;
}
.ttk-dropzone-status{
    margin-top: 8px;
    opacity: 0.9;
}

/* ------------------------------------------------------------------
 * ThinkTank scoped form-control guard
 * Goal: keep text readable when themes/plugins apply broad input styles.
 * Scoped to #thinktank-app so we never affect the rest of the site.
 * ------------------------------------------------------------------ */
#thinktank-app input[type="text"],
#thinktank-app input[type="date"],
#thinktank-app input[type="email"],
#thinktank-app input[type="url"],
#thinktank-app input[type="search"],
#thinktank-app input[type="number"],
#thinktank-app textarea,
#thinktank-app select{
  color:#e9eef6 !important;
  -webkit-text-fill-color:#e9eef6 !important;
  caret-color:#e9eef6 !important;
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  text-shadow:none !important;
}

#thinktank-app input::placeholder,
#thinktank-app textarea::placeholder{
  color:rgba(233,238,246,.55) !important;
  opacity:1 !important;
}

/* Autofill (Chrome/Safari) */
#thinktank-app input:-webkit-autofill,
#thinktank-app textarea:-webkit-autofill,
#thinktank-app select:-webkit-autofill{
  -webkit-text-fill-color:#e9eef6 !important;
  caret-color:#e9eef6 !important;
  transition:background-color 9999s ease-out 0s;
}

/* ------------------------------------------------------------------
 * ThinkTank scoped form-control guard
 * Goal: keep text readable when themes/plugins apply broad input styles.
 * Scoped to #thinktank-app so we never affect the rest of the site.
 * ------------------------------------------------------------------ */
#thinktank-app input[type="text"],
#thinktank-app input[type="date"],
#thinktank-app input[type="url"],
#thinktank-app input[type="search"],
#thinktank-app input[type="email"],
#thinktank-app input[type="number"],
#thinktank-app textarea,
#thinktank-app select{
  color:#e9eef6 !important;
  caret-color:#e9eef6 !important;
  -webkit-text-fill-color:#e9eef6 !important;
}

#thinktank-app input::placeholder,
#thinktank-app textarea::placeholder{
  color:rgba(233,238,246,.55) !important;
  opacity:1 !important;
}

/* Chrome/Safari autofill can force dark text; keep it readable. */
#thinktank-app input:-webkit-autofill,
#thinktank-app textarea:-webkit-autofill,
#thinktank-app select:-webkit-autofill{
  -webkit-text-fill-color:#e9eef6 !important;
  transition:background-color 9999s ease-out 0s;
}
