.modal-backdrop{display:none;position:fixed;inset:0;background:#0000008c;z-index:300;backdrop-filter:blur(4px)}.modal-backdrop.open{display:flex;align-items:flex-start;justify-content:center;padding:4rem 1.25rem 2rem;overflow-y:auto}.modal-card{background:#fff;border-radius:18px;max-width:720px;width:100%;max-height:calc(100vh - 6rem);overflow-y:auto;box-shadow:0 30px 80px #00000059;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-head{padding:1.5rem 1.75rem 1rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;position:sticky;top:0;background:#fff;border-radius:18px 18px 0 0;z-index:1}.modal-head h3{font-size:1.4rem;font-weight:900;letter-spacing:-.02em;line-height:1.2}.modal-head p{font-size:.85rem;color:var(--text-muted);margin-top:.25rem}.modal-close{background:var(--surface-2);border:none;cursor:pointer;padding:.55rem;border-radius:50%;display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;color:#111}.modal-close:hover{background:var(--tkc, var(--surface))}.modal-close svg{width:18px;height:18px}.modal-body{padding:1.5rem 1.75rem 1.75rem}@media(max-width:600px){.modal-backdrop.open{padding:2rem .85rem 1.5rem}.modal-card{border-radius:14px;max-height:calc(100vh - 3rem)}.modal-head{padding:1.1rem 1.25rem .85rem;border-radius:14px 14px 0 0}.modal-head h3{font-size:1.15rem}.modal-body{padding:1.1rem 1.25rem 1.25rem}}body.no-scroll{overflow:hidden}.t-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.1rem;max-width:980px;margin:1.75rem auto;text-align:left}.t-carousel{display:none}.t-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.85rem;transition:border-color .2s,transform .2s}.t-card:hover{border-color:#111;transform:translateY(-2px)}.t-card .quote{font-size:.95rem;color:var(--text-dim);line-height:1.6;letter-spacing:-.005em}.t-card .quote-more,.t-card .quote-less{background:none;border:none;padding:0;margin-left:.15rem;font-family:inherit;font-size:inherit;font-weight:inherit;color:var(--accent);cursor:pointer;text-decoration:none}.t-card .quote-more:hover,.t-card .quote-less:hover{color:var(--accent-hover)}.t-card .stars{font-size:.85rem;color:var(--tkc, #f5c32c);letter-spacing:.05em}.t-card .person{display:flex;align-items:center;gap:.75rem;margin-top:auto;padding-top:.25rem}.t-card .person .avatar{flex-shrink:0}.t-card .person .info{display:flex;flex-direction:column;min-width:0}.t-card .person .info .name{font-size:.92rem;font-weight:800;color:#111;line-height:1.2;display:inline-flex;align-items:center;gap:.3rem}.t-card .person .info .name .student-tag{font-size:.85rem;color:var(--tkc-dark, #b88914)}.t-card .person .info .role{font-size:.78rem;color:var(--text-muted);margin-top:.1rem;line-height:1.3}@media(max-width:720px){.t-grid{display:none}.t-carousel{display:block;margin:1.5rem -1.25rem;overflow:hidden}.t-carousel-track{display:flex;gap:.85rem;padding:.25rem 1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.t-carousel-track::-webkit-scrollbar{display:none}.t-carousel-track>.t-card{flex:0 0 86%;max-width:320px;scroll-snap-align:start}.t-carousel-track>.t-card:hover{transform:none;border-color:var(--border)}}.avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;color:#111;letter-spacing:.02em;flex-shrink:0}.avatar.lg{width:52px;height:52px;font-size:1rem}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.t-empty{max-width:540px;margin:1.5rem auto 1.75rem;text-align:center;font-size:.95rem;color:var(--text-muted);line-height:1.6;font-style:italic}.t-form{display:flex;flex-direction:column;gap:.85rem}.t-form label{display:block;font-size:.78rem;font-weight:700;color:var(--text);margin-bottom:.3rem;letter-spacing:.02em}.t-form .row{display:flex;flex-direction:column}.t-form .row.split{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}@media(max-width:600px){.t-form .row.split{grid-template-columns:1fr}}.t-form input,.t-form select,.t-form textarea{font-family:inherit;font-size:.92rem;padding:.75rem .95rem;border:1.5px solid var(--border);border-radius:8px;background:#fff;color:var(--text);width:100%;outline:none;transition:border-color .15s,box-shadow .15s}.t-form select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right .85rem center;padding-right:2.5rem}.t-form textarea{resize:vertical;min-height:110px;line-height:1.5}.t-form input[type=file]{padding:.5rem .6rem;font-size:.85rem;cursor:pointer}.t-form input[type=file]::file-selector-button{font-family:inherit;font-size:.78rem;font-weight:700;background:#111;color:#fff;border:none;border-radius:5px;padding:.45rem .85rem;margin-right:.7rem;cursor:pointer;transition:background .15s}.t-form input[type=file]::file-selector-button:hover{background:var(--accent)}.t-form input:focus,.t-form select:focus,.t-form textarea:focus{border-color:#111;box-shadow:0 0 0 3px #f5c32c40}.t-form .hint{font-size:.72rem;color:var(--text-muted);margin-top:.3rem}.t-form .t-build-section{background:var(--surface, #fafafa);border:1px dashed var(--border, #e7e7e7);border-radius:10px;padding:.9rem 1rem 1rem;display:flex;flex-direction:column;gap:.85rem}.t-form .t-build-head{display:flex;flex-direction:column;gap:.2rem;padding-bottom:.3rem;border-bottom:1px dashed var(--border, #e7e7e7);margin-bottom:.2rem}.t-form .t-build-label{font-size:.78rem;font-weight:800;color:var(--text, #111);letter-spacing:.02em}.t-form .t-build-hint{font-size:.7rem;color:var(--text-muted, #878787);font-weight:500;line-height:1.4}.t-rating{display:flex;gap:.25rem;align-items:center;padding:.4rem 0}.t-rating .star{cursor:pointer;font-size:1.5rem;color:var(--surface-2);transition:color .1s,transform .1s;user-select:none}.t-rating .star:hover,.t-rating .star.on{color:var(--tkc, #f5c32c)}.t-rating .star:hover{transform:scale(1.1)}.t-rating .clear{font-size:.72rem;color:var(--text-muted);margin-left:.6rem;cursor:pointer;text-decoration:underline}.t-form button[type=submit]{margin-top:.5rem;background:var(--accent);color:#fff;border:none;padding:.95rem 1.5rem;font-family:inherit;font-weight:800;font-size:.95rem;cursor:pointer;transition:background .15s,transform .15s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.t-form button[type=submit]:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.t-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.t-status{font-size:.85rem;font-weight:600;margin-top:.6rem;min-height:1.4em}.t-status.ok{color:#16a34a}.t-status.err{color:var(--accent)}.t-honey{position:absolute;left:-9999px;opacity:0;pointer-events:none}.t-gate{display:flex;flex-direction:column;align-items:stretch;gap:1rem}.t-gate-icon{width:56px;height:56px;border-radius:50%;background:var(--tkc-soft, rgba(245, 195, 44, .15));color:#b88914;display:flex;align-items:center;justify-content:center;margin:0 auto .5rem;font-size:1.5rem}.t-gate-icon svg{width:26px;height:26px}.t-gate h4{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;text-align:center;color:#111}.t-gate-msg{font-size:.92rem;color:var(--text-dim);line-height:1.6;text-align:center;max-width:400px;margin:0 auto}.t-gate-msg b{color:#111}.t-gate input{font-family:inherit;font-size:1.1rem;padding:.95rem 1.2rem;border:1.5px solid var(--border);border-radius:8px;background:#fff;color:var(--text);width:100%;outline:none;letter-spacing:.05em;text-align:center;text-transform:lowercase;transition:border-color .15s,box-shadow .15s}.t-gate input:focus{border-color:#111;box-shadow:0 0 0 3px #f5c32c40}.t-gate button{background:var(--accent);color:#fff;border:none;padding:.95rem 1.5rem;font-family:inherit;font-weight:800;font-size:.95rem;cursor:pointer;transition:background .15s,transform .15s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.t-gate button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.t-gate button:disabled{opacity:.6;cursor:not-allowed}.t-gate button svg{width:16px;height:16px}.t-gate-foot{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:.5rem}.t-verified{display:flex;align-items:center;gap:.5rem;padding:.65rem .9rem;background:#16a34a14;color:#15803d;border:1px solid rgba(22,163,74,.2);border-radius:8px;font-size:.85rem;font-weight:600;margin-bottom:.25rem}.t-verified b{color:#111;font-weight:700}
