/* Group fieldlog: light identity + dark progress. Organization: paper and structural linework. */
.t-teams { --team-paper:#f6f6f1; --team-ink:#1a1d1a; --team-muted:#60685c; --team-line:#c9ccc2; color:var(--team-ink); }
.t-teams *, .t-team-empty { box-sizing:border-box; }
.t-teams h2,.t-teams h3,.t-teams p { margin:0; }
.t-teams button,.t-teams input,.t-teams select { font:inherit; }
.t-teams .t-button { min-height:48px; font-size:14px !important; justify-content:center; }
.t-teams .t-button-dark { background:#1a1d1a; border-color:#1a1d1a; color:#f6f6f1; }
.t-teams .t-button-dark:hover { background:#353d2d; color:#f6f6f1; }
.t-teams .t-button:disabled { opacity:.55; cursor:wait; }
.t-team-hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); border-top:3px solid var(--team-ink); background:var(--team-paper); }
.t-team-hero > div:first-child { padding:36px; }
.t-team-hero h2 { font-size:clamp(40px,4.2vw,64px); line-height:1.16; letter-spacing:-.055em; margin:24px 0 20px; overflow-wrap:anywhere; }
.t-team-hero h2 > span { display:block; font-size:clamp(21px,2.3vw,32px); margin-top:13px; letter-spacing:-.04em; }
.t-team-hero p,.t-org-hero p { font-size:15px; line-height:1.9; color:var(--team-muted); }
.t-group-progress { padding:38px 30px; display:flex; flex-direction:column; justify-content:center; background:var(--team-ink); color:#f6f6f1; }
.t-group-progress > span { font-size:15px; color:#d9dfd1; }
.t-group-progress strong { display:block; color:#ebf454; font:76px/1.4 var(--t-mono); letter-spacing:-.08em; white-space:nowrap; }
.t-group-progress strong small { color:#afb6a8; font-size:28px; letter-spacing:-.05em; }
.t-group-progress p { color:#bbc1b4; font-size:14px; margin-top:16px; }
.t-team-track { height:3px; background:#4e5747; margin-top:12px; }
.t-team-track i { display:block; height:100%; background:#ebf454; }
.t-team-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--team-line); margin:20px 0 30px; background:var(--team-paper); }
.t-team-stats > div { padding:22px 26px; border-right:1px solid var(--team-line); }
.t-team-stats > div:last-child { border:0; }
.t-team-stats span,.t-org-summary span { display:block; font-size:14px; color:var(--team-muted); }
.t-team-stats strong { display:block; margin-top:8px; font:42px/1.1 var(--t-mono); }
.t-team-section { display:flex; align-items:end; justify-content:space-between; gap:16px; padding:22px 0; }
.t-team-section h3 { font-size:26px; letter-spacing:-.04em; margin-top:10px; }
.t-team-section > span { color:var(--team-muted); font-size:14px; flex-shrink:0; }
.t-team-filters { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:16px; padding:20px; background:var(--team-paper); border:1px solid var(--team-line); }
.t-team-filters label { min-width:0; display:grid; gap:9px; font-size:14px; }
.t-team-filters select,.t-org-name input { width:100%; min-width:0; min-height:50px; padding:12px; border:1px solid #b8beaf; border-radius:0; color:var(--team-ink); background:#fcfcf8; font-size:15px; }
.t-team-reading-note { color:var(--team-muted); font-size:14px; line-height:1.8; padding:16px 0; }
.t-team-person { display:grid; grid-template-columns:minmax(150px,1.2fr) minmax(120px,1fr) minmax(135px,1fr) 80px 120px; align-items:center; gap:18px; padding:25px 20px; background:var(--team-paper); border-top:1px solid var(--team-line); }
.t-team-person:last-child { border-bottom:1px solid var(--team-line); }
.t-team-person-name { display:flex; gap:14px; align-items:center; min-width:0; }
.t-team-person-name > span { font:12px var(--t-mono); color:var(--team-muted); }
.t-team-person-name strong { font-size:22px; display:block; overflow-wrap:anywhere; }
.t-team-person-name small { display:block; font-size:14px; color:var(--team-muted); margin-top:6px; }
.t-team-person-status { display:flex; flex-wrap:wrap; gap:7px; }
.t-team-badge { display:inline-flex; padding:6px 8px; border:1px solid #c2c8b9; font-size:13px; color:#425036; }
.t-team-badge.is-pending { color:#735718; background:#f4efd9; border-color:#d4c388; }
.t-teams .is-danger { color:#a5372c; }
.t-team-person-score > span,.t-team-person-total > span { display:block; font-size:13px; color:var(--team-muted); }
.t-team-person-score strong,.t-team-person-total strong { display:block; margin-top:7px; font:32px/1.1 var(--t-mono); }
.t-team-person-score small { display:block; color:var(--team-muted); font-size:13px; margin-top:8px; }
.t-team-person-actions { display:grid; gap:8px; }
.t-team-empty { padding:32px 24px; background:#f6f6f1; color:#60685c; font-size:15px; line-height:1.9; border:1px solid #c9ccc2; }
.t-team-empty h2 { font-size:24px; color:#1a1d1a; }
.t-team-empty .t-button { margin-top:18px; }
.t-org-hero { position:relative; isolation:isolate; background:var(--team-paper); color:var(--team-ink); border-top:5px solid var(--team-ink); overflow:hidden; }
.t-org-hero > div:first-child { position:relative; z-index:1; width:72%; min-height:286px; padding:32px 36px 26px; }
.t-org-hero .t-index { color:var(--team-muted); }
.t-org-hero h2 { font-size:clamp(38px,4.3vw,64px); line-height:1.17; letter-spacing:-.045em; margin:23px 0 18px; }
.t-org-hero .t-square { color:#667c37; }
.t-org-hero p { max-width:560px; color:var(--team-muted); }
.t-org-structure-art { position:absolute; z-index:0; right:20px; top:25px; width:32%; height:260px; pointer-events:none; }
.t-org-art-guide { stroke:#d9dcd1; stroke-width:1; }
.t-org-art-frame { stroke:#a0aa92; stroke-width:1.2; }
.t-org-art-link { stroke:#4e5b43; stroke-width:1.6; }
.t-org-art-solid { fill:#1a1d1a; }
.t-org-art-node { fill:#ebf454; stroke:#758543; stroke-width:1.2; }
.t-org-art-joint { fill:#f6f6f1; stroke:#4e5b43; stroke-width:1.6; }
.t-org-art-cross { stroke:#8b957f; stroke-width:1; }
.t-org-structure-art[data-org-drawing] [data-org-stroke] { stroke-dasharray:1; stroke-dashoffset:1; opacity:0; animation:t-org-draw var(--org-duration) linear both; animation-delay:calc(var(--org-start) - var(--org-elapsed,0ms)); }
.t-org-structure-art[data-org-drawing] [data-org-reveal] { opacity:0; animation:t-org-reveal var(--org-duration) ease-out both; animation-delay:calc(var(--org-start) - var(--org-elapsed,0ms)); }
@keyframes t-org-draw { 0% { opacity:0; stroke-dashoffset:1; } 0.1% { opacity:1; } 100% { opacity:1; stroke-dashoffset:0; } }
@keyframes t-org-reveal { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) { .t-org-structure-art[data-org-drawing] [data-org-stroke],.t-org-structure-art[data-org-drawing] [data-org-reveal] { animation:none; opacity:1; stroke-dashoffset:0; } }
.t-org-hero-count { position:relative; z-index:1; min-height:63px; margin:0 36px; border-top:1px solid var(--team-line); color:var(--team-ink); display:flex; align-items:center; gap:18px; }
.t-org-hero-count strong { font:32px/1 var(--t-mono); letter-spacing:-.06em; }
.t-org-hero-count span { font-size:13px; color:var(--team-muted); }
.t-org-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) minmax(180px,1.3fr); border-bottom:1px solid var(--team-ink); margin-bottom:26px; }
.t-org-summary > div { padding:24px; border-right:1px solid var(--team-line); }
.t-org-summary strong { font:38px/1.3 var(--t-mono); display:block; margin-top:6px; }
.t-org-summary p { align-self:center; padding:24px; font-size:14px; line-height:1.9; color:var(--team-muted); }
.t-org-create { border:1px solid var(--team-line); background:var(--team-paper); }
.t-org-create > summary { min-height:74px; display:flex; justify-content:space-between; align-items:center; padding:20px 24px; gap:12px; cursor:pointer; list-style:none; }
.t-org-create > summary::-webkit-details-marker { display:none; }
.t-org-create > summary span { font-size:21px; font-weight:700; }
.t-org-create > summary b { font-weight:400; margin-right:12px; }
.t-org-create > summary small { font-size:14px; color:var(--team-muted); }
.t-org-create > form { display:grid; gap:22px; padding:24px; border-top:1px solid var(--team-line); }
.t-org-create > form > button { justify-self:start; }
.t-org-name { display:grid; gap:8px; min-width:0; font-size:14px; }
.t-org-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:20px; }
.t-org-card { background:var(--team-paper); border:1px solid var(--team-line); min-width:0; border-top:3px solid var(--team-ink); }
.t-org-card.is-editing { border-top-color:#89965c; }
.t-org-card-head { padding:26px; display:flex; justify-content:space-between; gap:18px; }
.t-org-card-head > div:first-child { min-width:0; flex:1; }
.t-org-card-head h3 { font-size:30px; margin:12px 0 10px; overflow-wrap:anywhere; }
.t-org-card-head .t-org-name { margin-top:16px; }
.t-org-card-head p { font-size:15px; line-height:1.8; color:var(--team-muted); margin-top:10px; overflow-wrap:anywhere; }
.t-org-card-number { flex-shrink:0; text-align:right; }
.t-org-card-number strong { font:52px/1.2 var(--t-mono); letter-spacing:-.08em; }
.t-org-card-number span { display:block; font-size:14px; color:var(--team-muted); }
.t-org-members { display:flex; gap:10px; flex-wrap:wrap; padding:0 26px 26px; }
.t-org-members span { border:1px solid var(--team-line); padding:9px 12px; font-size:15px; }
.t-org-members p { font-size:15px; color:var(--team-muted); }
.t-org-card-foot { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:20px 26px; border-top:1px solid var(--team-line); }
.t-org-card-foot > span { font-size:14px; color:var(--team-muted); line-height:1.7; }
.t-org-card-foot .t-button { flex-shrink:0; }
.t-org-card-body { padding:0 26px 24px; display:grid; gap:24px; }
.t-organization fieldset { min-width:0; border:0; padding:0; margin:0; }
.t-organization legend { font-size:16px; font-weight:700; margin-bottom:14px; }
.t-organization fieldset p,.t-org-edit-note { font-size:14px; line-height:1.8; color:var(--team-muted); margin-top:12px; }
.t-org-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.t-org-choice { min-width:0; display:flex; align-items:center; gap:11px; padding:13px; border:1px solid var(--team-line); cursor:pointer; min-height:74px; }
.t-org-choice:has(input:checked) { background:#e8edd9; border-color:#7a885a; }
.t-org-choice input { width:19px; height:19px; accent-color:#526236; flex-shrink:0; }
.t-org-choice span { min-width:0; }
.t-org-choice strong { display:block; font-size:16px; overflow-wrap:anywhere; }
.t-org-choice small { display:block; color:var(--team-muted); font-size:14px; margin-top:5px; overflow-wrap:anywhere; }
.t-teams :is(button,input,select,summary):focus-visible { outline:2px solid #637a36; outline-offset:3px; }
@media(max-width:1200px) { .t-team-person { grid-template-columns:minmax(125px,1fr) minmax(85px,.8fr) minmax(125px,1fr) 70px; gap:14px; }.t-team-person-actions { grid-column:1/-1; display:flex; justify-content:flex-end; }.t-org-groups { grid-template-columns:1fr; }.t-org-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }.t-org-summary p { grid-column:1/-1; padding:0 24px 20px; } }
@media(max-width:900px) { .t-team-hero { grid-template-columns:1fr; }.t-group-progress { padding:26px 30px; }.t-group-progress strong { font-size:64px; } }
@media(max-width:680px) { .t-team-hero > div:first-child { padding:27px 22px; }.t-team-hero h2 { font-size:42px; margin:22px 0 18px; }.t-team-hero h2 > span { font-size:24px; line-height:1.5; }.t-group-progress { padding:24px 22px; }.t-team-stats { grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:15px; }.t-team-stats > div { padding:20px; border-bottom:1px solid var(--team-line); }.t-team-stats > div:nth-child(2) { border-right:0; }.t-team-stats > div:nth-child(3) { border-bottom:0; }.t-team-stats strong { font-size:36px; }.t-team-section { align-items:start; flex-direction:column; gap:12px; }.t-team-section h3 { font-size:23px; }.t-team-filters { grid-template-columns:1fr; padding:18px; }.t-team-filters select,.t-org-name input { font-size:16px; }.t-team-person { grid-template-columns:minmax(0,1fr) minmax(90px,.8fr); gap:20px 12px; padding:22px 18px; }.t-team-person-name { gap:10px; }.t-team-person-name strong { font-size:21px; }.t-team-person-status { justify-content:flex-end; }.t-team-person-score { padding-left:28px; }.t-team-person-total { text-align:right; }.t-team-person-actions { justify-content:stretch; }.t-team-person-actions > button { flex:1; }.t-org-summary > div { padding:19px 10px; }.t-org-summary strong { font-size:32px; }.t-org-summary span { font-size:13px; line-height:1.7; }.t-org-summary p { padding:2px 10px 20px; }.t-org-create > summary { padding:18px; }.t-org-create > summary span { font-size:19px; }.t-org-create > summary small { font-size:13px; }.t-org-create > form { padding:20px 18px; }.t-org-create > form > button { width:100%; }.t-org-card-head { padding:22px 18px; gap:12px; }.t-org-card-head h3 { font-size:28px; }.t-org-card-number strong { font-size:42px; }.t-org-members { padding:0 18px 22px; gap:8px; }.t-org-members span { padding:9px 11px; }.t-org-card-body { padding:0 18px 22px; }.t-org-card-foot { padding:18px; flex-direction:column; align-items:stretch; }.t-org-choices { grid-template-columns:1fr; }.t-org-choice { min-height:74px; } }

@media(max-width:900px) and (min-width:681px) { .t-org-hero > div:first-child { padding:28px; width:75%; }.t-org-hero h2 { font-size:40px; }.t-org-structure-art { right:12px; width:27%; top:40px; }.t-org-hero-count { margin:0 28px; } }
@media(max-width:680px) { .t-org-hero > div:first-child { width:100%; min-height:0; padding:27px 22px 22px; }.t-org-hero h2 { font-size:clamp(30px,8.2vw,44px); line-height:1.25; margin:23px 0 18px; }.t-org-hero p { font-size:14px; line-height:1.9; }.t-org-structure-art { top:auto; bottom:10px; right:12px; width:96px; height:76px; }.t-org-hero-count { margin:0 22px; min-height:96px; gap:12px; }.t-org-hero-count strong { font-size:32px; }.t-org-hero-count span { max-width:98px; font-size:12px; line-height:1.7; } }
