/* Team Dashboard: views, schedule, development checklists, my projects. */

/* ------------------------------------------------------------ view bar */
.v4-viewbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin-top:14px}
.v4-view .seg-btn{min-width:112px}
.btn.v4-locked{color:var(--grey-2);border-style:dashed;cursor:not-allowed;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1.25}
.v4-lock{display:block;font-size:var(--t-meta);color:var(--grey-2);line-height:1.2}
.btn.v4-locked .btn-count{display:none}
@media (hover:hover){.btn.v4-locked:hover{background:var(--elev);border-color:var(--line)}}

/* ------------------------------------------- grid: panels can be removed */
.grid{grid-template-areas:none;grid-auto-flow:row dense}
.grid>.card{grid-area:auto}
.grid>.area-budget{order:1;grid-column:span 6}
.grid>.area-emails{order:2;grid-column:span 6}
.grid>.area-review{order:3;grid-column:span 6}
.grid>.area-meetings{order:4;grid-column:span 6}
.grid>.area-check{order:5;grid-column:span 7}
.grid>.area-todo{order:6;grid-column:span 5}
.grid>.area-biz{order:7;grid-column:span 8}
.grid>.area-fx{order:8;grid-column:span 4}
@media (min-width:1181px){.grid.v4-nobiz>.area-fx{grid-column:span 12}}
@media (max-width:1180px){
  .grid>.card{grid-column:span 1}
  .grid>.area-check,.grid>.area-biz,.grid>.area-fx{grid-column:1 / -1}
}
@media (max-width:760px){
  .grid>.card{grid-column:1 / -1}
}

/* ------------------------------------------------------------- shared */
.v4-dec-sub{display:block;color:var(--grey-2);font-size:var(--t-meta);font-weight:300;line-height:1.4}
.v4-none{color:var(--grey-2);font-size:var(--t-small);margin:6px 0 0}
.v4-h{font-size:var(--t-body);font-weight:400;margin:22px 0 8px}
.v4-dh{font-size:var(--t-h2);font-weight:400;margin:0}
.v4-red{color:var(--st-red) !important}
.v4-flag{border:1px solid var(--line);border-left-width:4px;padding:10px 14px;margin:10px 0;font-size:var(--t-small);background:var(--elev);line-height:1.5}
.v4-flag.amber{border-left-color:var(--st-amber);background:var(--st-amber-bg)}
.v4-flag.red{border-left-color:var(--st-red);background:var(--st-red-bg)}
.v4-flag.green{border-left-color:var(--st-green);background:var(--st-green-bg)}
.v4-flag strong{font-weight:400}
.v4-flag .link-btn{min-height:0;padding:0 2px;font-size:inherit}
.chip.v4-big{font-size:var(--t-body);padding:4px 10px}

/* ------------------------------------------------------------- schedule */
.v4-sched-list{display:grid;gap:0;border:1px solid var(--line);background:var(--elev);margin-bottom:16px}
.v4-sched-row{
  display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,.9fr);gap:6px 18px;align-items:center;
  width:100%;padding:12px 16px;border:0;border-top:1px solid var(--line);background:none;text-align:left;font:inherit;color:inherit;cursor:pointer;min-height:56px
}
.v4-sched-row:first-child{border-top:0}
.v4-sched-row.on{background:var(--accent-bg);box-shadow:inset 3px 0 0 var(--accent)}
@media (hover:hover){.v4-sched-row:not(.on):hover{background:var(--zebra)}}
.v4-sr-name strong{font-weight:400}
.v4-sr-st{display:flex;flex-wrap:wrap;gap:6px}
.v4-sr-next{font-size:var(--t-small)}
.v4-src{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 18px;font-size:var(--t-small);color:var(--grey-1);padding-bottom:12px;border-bottom:1px solid var(--line)}
.v4-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);margin-top:14px}
.v4-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;border-left:1px solid var(--line)}
.v4-tile:first-child{border-left:0}
.v4-k{color:var(--grey-1);font-size:var(--t-small)}
.v4-v{font-weight:400;font-size:var(--t-body)}
.v4-decide{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.v4-decide li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line);font-size:var(--t-small)}
.v4-decide strong{font-weight:400;font-size:var(--t-body-sm)}
.v4-decide .chip.court{margin-top:4px}

/* bars: contract (grey, thin) under current (dark, bold) */
.v4-bars{border:1px solid var(--line);background:var(--elev);padding:10px 14px 8px}
.v4-bars-axis,.v4-bars-row{display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr) 56px;gap:12px;align-items:center}
.v4-bars-axis{height:20px;font-size:var(--t-meta);color:var(--grey-2)}
.v4-bars-row{min-height:34px;border-top:1px solid var(--line)}
.v4-bars-lab{font-size:var(--t-small);color:var(--grey-1)}
.v4-bars-track{position:relative;height:100%;min-height:20px}
.v4-bars-axis .v4-bars-track{height:20px}
.v4-tick{position:absolute;top:2px;transform:translateX(-50%);white-space:nowrap}
.v4-tick::after{content:"";position:absolute;left:50%;top:16px;height:4px;border-left:1px solid var(--line)}
.v4-now-lab{position:absolute;top:2px;transform:translateX(-50%);color:var(--accent);white-space:nowrap}
.v4-now{position:absolute;top:0;bottom:0;border-left:1px dashed var(--accent);opacity:.7}
.v4-bar{position:absolute;top:50%;border-radius:1px}
.v4-bar.base{height:12px;margin-top:-6px;background:#E5E7EB}
.v4-bar.cur{height:5px;margin-top:-2.5px;background:var(--ink)}
.v4-bar.cur.late{background:var(--st-red)}
.v4-bars-slip{font-size:var(--t-small);text-align:right;font-variant-numeric:tabular-nums;color:var(--grey-1)}
.v4-bars-slip.late{color:var(--st-red)}
.v4-legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin:8px 0 0;font-size:var(--t-meta);color:var(--grey-2)}
.v4-legend i{display:inline-block;width:18px;margin-right:6px;vertical-align:middle}
.v4-legend i.base{height:10px;background:#E5E7EB}
.v4-legend i.cur{height:4px;background:var(--ink)}

.v4-tw{overflow-x:auto}
.v4-table{width:100%;min-width:640px;border-collapse:collapse;font-size:var(--t-small)}
.v4-table th,.v4-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.v4-table th{font-weight:400;color:var(--grey-1);background:var(--zebra)}
.v4-table td.num,.v4-table th.num{text-align:right}
.v4-table .nowrap{white-space:nowrap}
.v4-table .chip{margin-bottom:2px}
.v4-ref{color:var(--accent);white-space:nowrap}
.v4-recon{font-size:var(--t-small);margin:10px 0 0;padding:10px 14px;background:var(--zebra);border:1px solid var(--line)}
.v4-sched-detail{margin-top:0}
.v4-sched-detail .card-head{padding-bottom:8px}

/* upload (simulated) */
.v4-drop{display:flex;align-items:center;gap:14px;padding:22px 18px;border:1.5px dashed var(--grey-2);background:var(--zebra);cursor:pointer;margin:14px 0 4px}
.v4-drop input{max-width:100%;font:inherit;font-size:var(--t-small)}
.v4-drop strong{font-weight:400}
.v4-reading{color:var(--accent);font-size:var(--t-small);margin:12px 0 0}
.v4-reading::after{content:"...";}

/* ------------------------------------------------------------ checklist */
.v4-check-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:8px 18px}
.v4-check-head>div{flex:1 1 220px}
.v4-devline{margin:0;font-size:var(--t-small);color:var(--grey-1)}
.v4-devline strong{font-weight:400;color:var(--ink)}
.v4-miss-n{color:var(--st-red);font-size:var(--t-meta)}
.v4-disc{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.v4-dchip{font:inherit;font-size:var(--t-meta);min-height:32px;padding:4px 10px;border:1px solid var(--line);border-radius:16px;background:var(--elev);color:var(--grey-1);cursor:pointer}
.v4-dchip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--white)}
.v4-tags{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:3px}
.v4-tag{font-size:var(--t-meta);color:var(--grey-2)}
.v4-tag+.v4-tag::before{content:"\00B7";margin-right:8px}
.checklist li.v4-missed{background:var(--st-red-bg);box-shadow:inset 3px 0 0 var(--st-red);padding-left:10px}
.checklist li.v4-new{box-shadow:inset 3px 0 0 var(--accent);padding-left:10px}
.v4-push{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.v4-push summary{cursor:pointer;color:var(--accent);font-size:var(--t-small);min-height:36px;display:flex;align-items:center}
.v4-push form{margin-top:10px}
.v4-push-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.v4-push .input{width:100%}
.v4-arr li .check{min-height:44px}

/* ----------------------------------------------------------- my projects */
.v4-mine{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.v4-mcard .card-head{align-items:flex-start}
.v4-mcard .kv dd{max-width:60%}
.v4-mcard .kv dd small{white-space:normal}
.v4-mflag{font-size:var(--t-small);margin:0 0 10px;padding:6px 10px;border-left:3px solid var(--line)}
.v4-mflag.amber{border-left-color:var(--st-amber);background:var(--st-amber-bg)}
.v4-mflag.red{border-left-color:var(--st-red);background:var(--st-red-bg)}
.v4-mact{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:14px}

/* --------------------------------------------- thumbnails, drawing sets */
.v4-thumb{display:block;width:100%;height:120px;object-fit:cover;object-position:50% 30%;border-bottom:1px solid var(--line)}
.v4-mcard{overflow:hidden}
.v4-tthumb{display:inline-block;width:64px;height:40px;object-fit:cover;vertical-align:top;margin:2px 12px 0 0;border:1px solid var(--line)}
.td-proj .v4-tthumb+span{display:inline-block;vertical-align:top}
.v4-mh{font-size:var(--t-small);font-weight:400;color:var(--grey-1);margin:16px 0 6px}
.v4-sets{width:100%;border-collapse:collapse;font-size:var(--t-meta)}
.v4-sets th{font-weight:400;color:var(--grey-2);text-align:left;padding:4px 6px 4px 0;border-bottom:1px solid var(--line)}
.v4-sets td{padding:7px 6px 7px 0;border-bottom:1px solid var(--line);vertical-align:top}
.v4-sets .chip{white-space:nowrap}
.v4-set-act{text-align:right;white-space:nowrap}
.v4-set-act a{color:var(--accent);font-weight:400}

/* ---------------------------------------------------------- conflicts */
.v4-conf-run{font-size:var(--t-small);color:var(--grey-1);margin:0 0 8px}
.v4-conf-run strong{font-weight:400;color:var(--st-amber)}
.v4-conf{list-style:none;margin:0;padding:0;border:1px solid var(--line);background:var(--elev)}
.v4-conf>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:start;padding:14px 16px;border-top:1px solid var(--line)}
.v4-conf>li:first-child{border-top:0}
.v4-conf>li.is-done{background:var(--zebra)}
.v4-conf-p{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 6px}
.v4-conf-p strong{font-weight:400}
.v4-conf-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;margin:0 0 6px;font-size:var(--t-small)}
.v4-conf-dl dt{color:var(--grey-2);font-size:var(--t-meta)}
.v4-conf-dl dd{margin:0}
.v4-conf-name{display:block;overflow-wrap:anywhere}
.v4-conf-act{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:flex-end;max-width:360px}
.v4-conf-act .input{min-height:40px;font-size:var(--t-small)}
.du-project{max-width:360px;margin-bottom:12px}

/* ------------------------------------------------------------ breakpoints */
@media (max-width:1180px){
  .v4-mine{grid-template-columns:minmax(0,1fr)}
  .v4-sched-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:760px){
  .v4-tiles{grid-template-columns:minmax(0,1fr)}
  .v4-conf>li{grid-template-columns:minmax(0,1fr)}
  .v4-conf-dl{grid-template-columns:minmax(0,1fr)}
  .v4-conf-act{justify-content:flex-start;max-width:none}
  .v4-tile{border-left:0;border-top:1px solid var(--line)}
  .v4-tile:first-child{border-top:0}
  .v4-sched-row{grid-template-columns:minmax(0,1fr);gap:6px}
  .v4-bars-axis,.v4-bars-row{grid-template-columns:minmax(0,1fr) 46px;gap:4px 10px}
  .v4-bars-row .v4-bars-lab{grid-column:1 / -1;padding-top:6px}
  .v4-bars-axis .v4-bars-lab{display:none}
  .v4-now-lab{display:none}
  .v4-bars-row .v4-bars-track{min-height:22px}
  .v4-push-grid{grid-template-columns:minmax(0,1fr)}
  .v4-view .seg-btn{min-width:0;flex:1}
  .v4-viewbar .v4-view{display:flex;width:100%}
}
