/* 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-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;}
                .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-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);}
