/* Kennely 2027.9: touch-first improvements, no heavyweight UI dependencies. */
:root{--kn-motion:140ms cubic-bezier(.2,.7,.2,1)}
button,a,input,select,textarea{touch-action:manipulation}
button{transition:background-color var(--kn-motion),color var(--kn-motion),border-color var(--kn-motion),transform var(--kn-motion)}
button:active{transform:scale(.976)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #a46aff;outline-offset:3px}
.mobile-team-entry{padding:.42rem .7rem;border:1px solid rgba(162,111,245,.52);border-radius:100px;background:#25193e;color:#dac3ff;font-size:.75rem;font-weight:800;white-space:nowrap}
.mobile-team-entry[hidden]{display:none!important}
.profile-label{display:inline-flex;align-items:center;font-weight:750;font-size:.72em;margin:.2em .3em 0 .1em;line-height:1.4;padding:.25em .65em;border-radius:99px;background:rgba(145,106,244,.12);color:#a879fa;border:1px solid rgba(148,110,230,.3);vertical-align:middle}
.profile-label.label-blue{background:rgba(60,120,245,.13);color:#7db6ff;border-color:rgba(60,120,245,.3)}
.profile-label.label-gold{background:rgba(213,168,52,.13);color:#edcb65;border-color:rgba(213,168,52,.35)}
.profile-label.label-green{background:rgba(40,168,118,.13);color:#7fe4af;border-color:rgba(40,168,118,.35)}
.profile-label.label-gray{background:rgba(128,128,128,.13);color:#b0adbb;border-color:rgba(148,148,148,.2)}
.request-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 0;border-bottom:1px solid rgba(148,145,168,.16)}
.request-row>div{display:flex;flex-wrap:wrap;gap:.4rem}
.privacy-switch{font-weight:700;padding:12px;border-radius:12px;background:rgba(139,88,240,.09);border:1px solid rgba(147,106,227,.22)}
.upload-plus{display:inline-flex!important;align-items:center;justify-content:center;width:64px;height:64px;font-size:35px!important;line-height:1;border-radius:16px;border:1px dashed rgba(170,112,235,.8);background:rgba(143,88,234,.1);color:#ba85ff;cursor:pointer}
.hidden-file-input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.story-social-actions,.story-answer{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:14px}
.story-answer{align-items:flex-end}.story-answer .field{flex:1;min-width:180px}
.thread-unread,.number-badge{min-width:1.2rem;border-radius:99px;display:inline-flex;align-items:center;justify-content:center;padding:.06rem .3rem;font-variant-numeric:tabular-nums}
.thread-unread{position:static;background:#8c49f1;color:white;margin-left:auto}
.number-badge[hidden]{display:none!important}
.term-cloud{display:flex;flex-wrap:wrap;gap:.3rem;max-height:240px;overflow-y:auto;padding:12px;border:1px solid rgba(145,136,168,.25);border-radius:14px}
.term-cloud>span{padding:.2rem .45rem;border-radius:7px;background:rgba(134,126,159,.12);font-size:.8em}
.suspension-panel{margin:1rem auto;max-width:760px}.suspension-panel form{margin-top:20px}
.post-actions .icon-button.active{transform:scale(1.04)}
.bubble.sending{opacity:.78}
@media(min-width:800px){.mobile-team-entry{display:none}}
@media(max-width:800px){.mobile-top{gap:9px!important;padding-inline:clamp(12px,4vw,22px)!important}.mobile-top .logo{min-width:0;flex:1}.mobile-top .logo strong{font-size:clamp(17px,5.5vw,24px)}.mobile-team-entry{margin-inline:auto}.profile-top{overflow-wrap:anywhere}.profile-top .split-actions{display:flex;flex-wrap:wrap;gap:6px}.admin-tabs{scrollbar-width:none;overscroll-behavior-inline:contain}.admin-tabs::-webkit-scrollbar{display:none}.setting-group{overflow-wrap:anywhere}.admin-line,.admin-review-row{overflow-wrap:anywhere}.story-answer button{flex:0 0 auto}}
@media(max-width:370px){.mobile-team-entry{font-size:.65rem;padding:.32rem .43rem}.mobile-top .logo img{max-width:30px}.mobile-top .logo strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){button{transition:none!important}button:active{transform:none!important}}
