/* 2026-11-12 team-roles (그록 봇): 조별과제 역할 나누기. 롤백: 이 파일 삭제 + tools_team-roles.html 의 css 링크 제거. */
.tr-page{--tr-ink:#142033;--tr-paper:#fbf6ee;--tr-card:#fffdf8;--tr-gold:#e2b13a;--tr-coral:#d4533f;--tr-teal:#1b7a6e;--tr-line:#ead9b8;--tr-mute:#6b6258;--tr-soft:#f3ead8}
.tr-h1sub{display:inline;color:#1b7a6e;font-weight:700}
.tr-app{margin:0 0 8px}
.tr-hero-art{margin:0 0 18px;background:linear-gradient(180deg,#143047 0%,#1b4a55 55%,#2a6a62 100%);border-radius:20px;overflow:hidden;min-height:200px;box-shadow:0 16px 40px rgba(20,32,51,.18)}
.tr-hero-art svg{display:block;width:100%;height:auto}
@media(min-width:720px){.tr-hero-art{min-height:260px}}
.tr-card{background:var(--tr-card);border:1px solid var(--tr-line);border-radius:16px;padding:16px 16px 18px;margin:0 0 14px;box-shadow:0 1px 0 rgba(20,32,51,.04)}
.tr-card h2{margin:0 0 10px;font-size:1.05rem;color:var(--tr-ink);letter-spacing:-.02em}
.tr-label{display:block;font-size:.82rem;font-weight:700;color:var(--tr-ink);margin:0 0 6px}
.tr-help{display:block;font-size:.78rem;color:var(--tr-mute);margin:4px 0 0;line-height:1.45}
.tr-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.tr-field{flex:1 1 140px;min-width:0}
.tr-field input,.tr-field textarea,.tr-step input[type=number]{width:100%;box-sizing:border-box;border:1.5px solid #e2d4bb;border-radius:12px;padding:11px 12px;font:inherit;font-size:16px;background:#fff;color:var(--tr-ink);line-height:1.3}
.tr-field input:focus,.tr-field textarea:focus,.tr-step input:focus{outline:2px solid #1b7a6e;outline-offset:1px;border-color:#1b7a6e}
.tr-field textarea{min-height:72px;resize:vertical}
.tr-step{display:flex;align-items:center;gap:8px}
.tr-step button{flex:0 0 44px;height:44px;border:0;border-radius:12px;background:#143047;color:#fff;font-size:1.2rem;font-weight:700;cursor:pointer}
.tr-step button:active{transform:translateY(1px)}
.tr-step input[type=number]{flex:0 0 76px;text-align:center;font-weight:800;font-size:1.15rem;-moz-appearance:textfield}
.tr-step input::-webkit-outer-spin-button,.tr-step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tr-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.tr-chip{border:1.5px solid #e2d4bb;background:#fff;color:var(--tr-ink);border-radius:999px;padding:7px 12px;font-size:.85rem;font-weight:700;cursor:pointer}
.tr-chip.is-on{background:#143047;border-color:#143047;color:#fff}
.tr-timeline{margin:12px 0 2px;padding:10px 4px 2px}
.tr-tl-track{position:relative;height:6px;border-radius:99px;background:#ead9b8;margin:0 8px 10px}
.tr-tl-fill{position:absolute;left:0;top:0;height:100%;border-radius:99px;background:linear-gradient(90deg,#1b7a6e,#e2b13a);width:0}
.tr-tl-mark{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);background:#fff;border:3px solid #143047;box-sizing:border-box}
.tr-tl-mark--today{border-color:#d4533f;background:#d4533f}
.tr-tl-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-size:.75rem;font-weight:700;color:var(--tr-ink);line-height:1.35}
.tr-tl-row span{flex:1}
.tr-tl-row span:nth-child(2){text-align:center;color:var(--tr-mute);font-weight:700}
.tr-tl-row span:last-child{text-align:right}
@media(max-width:389px){
  .tr-tl-row{flex-wrap:wrap}
  .tr-tl-row span:nth-child(2){flex:1 0 100%;order:3;text-align:center;margin-top:2px}
}
.tr-people,.tr-roles{display:grid;gap:10px}
.tr-person,.tr-role{background:var(--tr-soft);border-radius:14px;padding:10px 12px}
.tr-person--lead{background:#eef6f4;border:1px solid #c8e4de}
.tr-tag{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.04em;color:#1b7a6e;margin:0 0 6px}
.tr-person--lead .tr-tag{color:#143047}
.tr-privacy{margin:8px 2px 16px;font-size:.82rem;color:var(--tr-mute);line-height:1.5}
.tr-go{display:block;width:100%;border:0;border-radius:16px;padding:16px 18px;font:inherit;font-size:1.08rem;font-weight:800;letter-spacing:-.02em;color:#142033;background:linear-gradient(180deg,#f3cf5a,#e2b13a);box-shadow:0 8px 0 #b88616,0 12px 24px rgba(184,134,22,.28);cursor:pointer}
.tr-go:active{transform:translateY(2px);box-shadow:0 6px 0 #b88616,0 8px 16px rgba(184,134,22,.25)}
.tr-err{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#fdecea;color:#8a2418;font-size:.88rem;font-weight:700}
.tr-load{position:relative;min-height:360px;border-radius:20px;overflow:hidden;background:#0e1a2a;color:#f7f1e6;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 18px 36px;text-align:center}
.tr-load__glow{position:absolute;inset:-20%;background:radial-gradient(circle at 50% 40%,rgba(226,177,58,.35),transparent 42%),radial-gradient(circle at 50% 80%,rgba(27,122,110,.3),transparent 40%);animation:trPulse 1.6s ease-in-out infinite}
.tr-load__stage{position:relative;z-index:1;width:100%;max-width:420px}
.tr-load__line{font-size:1.12rem;font-weight:800;letter-spacing:-.02em;line-height:1.45;margin:0 0 22px;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.tr-cards{display:flex;justify-content:center;gap:10px;height:120px;perspective:600px}
.tr-flip{width:72px;height:104px;border-radius:10px;background:linear-gradient(160deg,#1b7a6e,#143047);box-shadow:0 10px 20px rgba(0,0,0,.35);animation:trFlip 1.15s ease-in-out infinite;transform-style:preserve-3d}
.tr-flip:nth-child(2){animation-delay:.12s;background:linear-gradient(160deg,#e2b13a,#a56b12)}
.tr-flip:nth-child(3){animation-delay:.24s;background:linear-gradient(160deg,#d4533f,#8a2418)}
.tr-flip:nth-child(4){animation-delay:.36s;background:linear-gradient(160deg,#3d6ea8,#143047)}
.tr-load__sub{position:relative;z-index:1;margin:18px 0 0;font-size:.85rem;color:#d9c9a4}
@keyframes trPulse{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
@keyframes trFlip{0%{transform:rotateY(0) translateY(0)}40%{transform:rotateY(180deg) translateY(-10px)}100%{transform:rotateY(360deg) translateY(0)}}
.tr-result{background:var(--tr-card);border:1px solid var(--tr-line);border-radius:20px;padding:22px 18px 20px;box-shadow:0 16px 40px rgba(20,32,51,.08)}
.tr-ticket{background:linear-gradient(180deg,#fffdf8,#f7f0e2);border:2px solid #143047;border-radius:16px;padding:20px 18px 18px;position:relative;overflow:hidden}
.tr-ticket:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(180deg,#e2b13a,#1b7a6e)}
.tr-ticket h3{margin:0 0 6px;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#1b7a6e}
.tr-topic{margin:0 0 14px;font-size:1.35rem;line-height:1.35;color:var(--tr-ink);letter-spacing:-.03em;word-break:keep-all}
.tr-lead{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:#eef6f4;font-size:.95rem;color:var(--tr-ink)}
.tr-lead b{display:block;font-size:.72rem;letter-spacing:.08em;color:#1b7a6e;margin:0 0 2px}
.tr-assign{list-style:none;margin:0;padding:0}
.tr-assign li{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px dashed #ead9b8;font-size:.98rem}
.tr-assign .n{font-weight:800;color:var(--tr-ink);min-width:0;word-break:break-word}
.tr-assign .r{font-weight:700;color:#1b7a6e;text-align:right}
.tr-cheer{margin:16px 0 10px;text-align:center;font-size:1.05rem;font-weight:800;color:#143047}
.tr-due{margin:0;text-align:center;font-size:.92rem;color:var(--tr-ink)}
.tr-due strong{color:#d4533f}
.tr-note{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#fff;border:1px dashed #ead9b8;font-size:.88rem;color:#4a433a;white-space:pre-wrap}
.tr-fun{margin:10px 0 0;text-align:center;font-size:.78rem;color:var(--tr-mute)}
.tr-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 8px}
.tr-actions button,.tr-again{border:0;border-radius:14px;padding:13px 12px;font:inherit;font-weight:800;cursor:pointer}
.tr-btn-story{background:#143047;color:#fff}
.tr-btn-pdf{background:#1b7a6e;color:#fff}
.tr-again{display:block;width:100%;background:#fff;color:var(--tr-ink);border:1.5px solid #e2d4bb!important;margin:0 0 4px}
.tr-fs{position:fixed;inset:0;z-index:80;background:rgba(10,16,24,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;color:#fff}
.tr-fs img{max-width:min(100%,420px);max-height:72vh;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.4);background:#fff}
.tr-fs p{margin:14px 0 8px;text-align:center;font-weight:700;line-height:1.45}
.tr-fs button{margin-top:8px;border:0;border-radius:12px;padding:10px 16px;font:inherit;font-weight:700;background:#fff;color:#142033;cursor:pointer}
@media(max-width:389px){
  .tr-card,.tr-result{padding:14px 12px}
  .tr-topic{font-size:1.18rem}
  .tr-actions{grid-template-columns:1fr}
  .tr-cards{height:100px}
  .tr-flip{width:58px;height:88px}
}
@media(min-width:900px){
  .tr-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .tr-grid2 .tr-span{grid-column:1/-1}
}
.tr-page .gg-ad{min-height:90px}
.tr-page .gg-ad--after,.tr-page .gg-ad--below{min-height:120px}
