
/* Layout: barra superior fixa + quadro com colunas roláveis na horizontal (só o quadro rola, nunca a página) */
:root{
  --bg:#e9edf1; --surface:#ffffff; --col:#dde3e9; --col-head:#cfd7df;
  --fg:#18222e; --muted:#5a6775; --line:#c5ced8; --accent:#163fb5; --accent-fg:#ffffff;
  --st-blue:#2f78d6; --st-yellow:#d9a800; --st-orange:#ea7417; --st-red:#d23838; --st-green:#2b9a57; --st-brown:#8a5733; --st-none:#b6c0cb;
  --p0:#c62f2f; --p1:#e0711b; --p2:#c99a00; --p3:#5e7389; --chip-fg:#ffffff;
  --col-glass:rgba(9,28,100,.62); --card-glass:rgba(255,255,255,.80); --card-edge:rgba(255,255,255,.55);
  --brand:#163fb5; --brand-deep:#0f2f8f; --on-brand:#ffffff; --on-brand-soft:rgba(255,255,255,.78); --on-brand-line:rgba(255,255,255,.32);
  --overlay:rgba(16,24,34,.55); --shadow:0 1px 2px rgba(16,24,34,.12);
  --font:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#12181f; --surface:#1d2630; --col:#18202a; --col-head:#222c37;
  --fg:#e3e9ef; --muted:#93a1b0; --line:#33404d; --accent:#7d9ff0; --accent-fg:#0b1530; --brand:#12348f; --brand-deep:#0b236a; --col-glass:rgba(4,14,52,.66); --card-glass:rgba(32,44,66,.74); --card-edge:rgba(255,255,255,.10); --col-glass:rgba(4,14,52,.66); --card-glass:rgba(32,44,66,.74); --card-edge:rgba(255,255,255,.10);
  --st-blue:#4c93ee; --st-yellow:#e8bd2a; --st-orange:#f28a35; --st-red:#ec5656; --st-green:#3fb46c; --st-brown:#a87149; --st-none:#4a5866;
  --p0:#d94545; --p1:#e8822f; --p2:#c9a01a; --p3:#6d849b;
  --overlay:rgba(0,0,0,.65); --shadow:0 1px 2px rgba(0,0,0,.4); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#12181f; --surface:#1d2630; --col:#18202a; --col-head:#222c37;
  --fg:#e3e9ef; --muted:#93a1b0; --line:#33404d; --accent:#7d9ff0; --accent-fg:#0b1530; --brand:#12348f; --brand-deep:#0b236a;
  --st-blue:#4c93ee; --st-yellow:#e8bd2a; --st-orange:#f28a35; --st-red:#ec5656; --st-green:#3fb46c; --st-brown:#a87149; --st-none:#4a5866;
  --p0:#d94545; --p1:#e8822f; --p2:#c9a01a; --p3:#6d849b;
  --overlay:rgba(0,0,0,.65); --shadow:0 1px 2px rgba(0,0,0,.4); color-scheme:dark}

html,body{height:100%}
body{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22320%22%20height%3D%22320%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20opacity%3D%22.10%22%3E%3Cg%20transform%3D%22translate%2860%2062%29%20scale%281.3%29%22%3E%3Cpath%20d%3D%22M-7%20-8A11%2011%200%201%200%207%20-8%22/%3E%3Cpath%20d%3D%22M0%20-13V-1%22/%3E%3C/g%3E%3Cg%20transform%3D%22translate%28250%20230%29%20scale%280.9%29%22%3E%3Cpath%20d%3D%22M-7%20-8A11%2011%200%201%200%207%20-8%22/%3E%3Cpath%20d%3D%22M0%20-13V-1%22/%3E%3C/g%3E%3Cpath%20d%3D%22M82%2062H120L150%2032H196%22/%3E%3Ccircle%20cx%3D%22200%22%20cy%3D%2232%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M82%2072H128L144%2088H230%22/%3E%3Ccircle%20cx%3D%22234%22%20cy%3D%2288%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M76%2084L96%20104H150L176%20130%22/%3E%3Ccircle%20cx%3D%22179%22%20cy%3D%22133%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M20%20180H70L100%20150H140%22/%3E%3Ccircle%20cx%3D%22144%22%20cy%3D%22150%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M20%20196H96L124%20224H170L196%20250%22/%3E%3Ccircle%20cx%3D%22199%22%20cy%3D%22253%22%20r%3D%224%22/%3E%3Cpath%20d%3D%22M268%20230H300%22/%3E%3Cpath%20d%3D%22M262%20214L290%20186H316%22/%3E%3Cpath%20d%3D%22M30%20284L56%20258H110%22/%3E%3Ccircle%20cx%3D%22114%22%20cy%3D%22258%22%20r%3D%224%22/%3E%3Cg%20fill%3D%22%23fff%22%20stroke%3D%22none%22%3E%3Ccircle%20cx%3D%22230%22%20cy%3D%22150%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%22240%22%20cy%3D%22150%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%22250%22%20cy%3D%22150%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%22260%22%20cy%3D%22150%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%22120%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%22120%22%20r%3D%222.4%22/%3E%3Ccircle%20cx%3D%2244%22%20cy%3D%22120%22%20r%3D%222.4%22/%3E%3C/g%3E%3Cpath%20d%3D%22M150%20300V292M156%20300V286M162%20300V294M168%20300V282M174%20300V290M180%20300V288%22%20stroke-width%3D%221.6%22/%3E%3C/svg%3E") 0 0/320px 320px repeat fixed,linear-gradient(180deg,var(--brand) 0%,var(--brand-deep) 100%) fixed,var(--brand);color:var(--fg);font-family:var(--font);font-size:14px;display:flex;flex-direction:column}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Barra superior */
.top{background:rgba(6,20,80,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--on-brand);border-bottom:1px solid var(--on-brand-line);padding-block:14px;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand img{height:38px;width:auto;display:block}
.proj{display:flex;flex-direction:column;min-width:0;padding-left:14px;border-left:1px solid var(--on-brand-line)}
.proj small{color:var(--on-brand-soft);font-family:var(--mono);font-size:11.5px;overflow-wrap:anywhere}
.proj b{font-size:19px;font-weight:600;letter-spacing:.01em}
.spacer{flex:1}
.mode{display:flex;border:1px solid var(--on-brand-line);border-radius:6px;overflow:hidden}
.mode button{border:0;background:transparent;padding:6px 12px;font-weight:500;color:var(--on-brand-soft)}
.mode button[aria-pressed="true"]{background:#ffffff;color:#163fb5}
.legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--on-brand-soft);max-width:520px}
.legend span{display:inline-flex;align-items:center;gap:5px}
.legend i{width:12px;height:12px;border-radius:3px;border:2.5px solid;box-sizing:border-box;background:var(--surface)}
.ghost{border:1px solid var(--on-brand-line);background:transparent;border-radius:6px;padding:6px 10px;color:var(--on-brand-soft)}
.ghost:hover{color:var(--on-brand);border-color:var(--on-brand)}

.banner{font-size:12.5px;padding-block:6px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));
  background:rgba(0,0,0,.14);color:var(--on-brand-soft)}

/* Quadro */
.board{flex:1;min-height:0;display:flex;gap:12px;align-items:flex-start;overflow-x:auto;scroll-snap-type:x proximity;
  padding-block:14px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.col{box-shadow:0 8px 28px rgba(3,10,40,.35),inset 0 1px 0 rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);color:var(--on-brand);flex:0 0 288px;max-width:calc(100vw - 48px);background:var(--col-glass);border-radius:16px;display:flex;flex-direction:column;max-height:100%;scroll-snap-align:start}
.col.done-col{box-shadow:inset 0 3px 0 var(--st-green),0 8px 28px rgba(3,10,40,.35)}
.col-head{display:flex;align-items:center;gap:8px;padding:10px 10px 6px 12px}
.col-head h2{margin:0;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;flex:1;min-width:0;overflow-wrap:anywhere}
.count{font-family:var(--mono);font-size:11.5px;color:var(--on-brand-soft)}
.col .flag{color:#7be0a2;border-color:#7be0a2}
.col-head .icon-btn{color:var(--on-brand-soft)}
.col-head .icon-btn:hover{background:rgba(255,255,255,.14);color:var(--on-brand)}
.flag{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--st-green);border:1px solid var(--st-green);border-radius:4px;padding:1px 5px}
.icon-btn{border:0;background:transparent;border-radius:5px;width:28px;height:28px;color:var(--muted);font-size:16px;line-height:1}
.icon-btn:hover{background:var(--col-head);color:var(--fg)}
.sortbar{display:flex;align-items:center;gap:6px;padding:0 12px 8px;font-size:12px;color:var(--on-brand-soft)}
.sortbar select{appearance:none;-webkit-appearance:none;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.10);color:var(--on-brand);border-radius:8px;padding:3px 24px 3px 9px;font-size:12px;font-weight:500;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 13px) 55%,calc(100% - 8px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.sortbar select option{color:#18222e;background:#fff}
.cards{display:flex;flex-direction:column;gap:8px;padding:4px 8px 8px;overflow-y:auto;min-height:24px}
.cards.drop{background:rgba(255,255,255,.10);border-radius:8px}
.add-card{margin:0 8px 8px;border:0;background:transparent;text-align:left;padding:8px;border-radius:10px;color:var(--on-brand-soft);font-weight:500}
.add-card:hover{background:rgba(255,255,255,.12);color:var(--on-brand)}
.add-col{flex:0 0 240px;border:1.5px dashed var(--on-brand-line);background:rgba(255,255,255,.06);border-radius:10px;padding:12px;color:var(--on-brand);font-weight:500;text-align:left}
.add-col:hover{background:rgba(255,255,255,.14);border-color:var(--on-brand)}

/* Card */
.card{background:var(--card-glass);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);color:var(--fg);box-shadow:0 4px 14px rgba(3,10,40,.22),inset 0 1px 0 var(--card-edge);border:2.5px solid var(--st-none);border-radius:12px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;text-align:left}
.card:hover{transform:translateY(-1px)}
.card{transition:transform .15s ease}
@media (prefers-reduced-motion:reduce){.card{transition:none}}
.card.dragging{opacity:.45}
.card[data-st="blue"]{border-color:var(--st-blue)}
.card[data-st="yellow"]{border-color:var(--st-yellow)}
.card[data-st="orange"]{border-color:var(--st-orange)}
.card[data-st="red"]{border-color:var(--st-red)}
.card[data-st="green"]{border-color:var(--st-green)}
.card[data-st="brown"]{border-color:var(--st-brown)}
.card-title{font-weight:700;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.card-desc{color:var(--muted);font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.prio{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--chip-fg);border-radius:4px;padding:1px 6px;letter-spacing:.03em}
.prio.P0{background:var(--p0)}.prio.P1{background:var(--p1)}.prio.P2{background:var(--p2)}.prio.P3{background:var(--p3)}
.due{font-family:var(--mono);font-size:11.5px;border-radius:4px;padding:1px 6px;border:1px solid currentColor}
.due[data-st="blue"]{color:var(--st-blue)}.due[data-st="yellow"]{color:var(--st-yellow)}.due[data-st="orange"]{color:var(--st-orange)}
.due[data-st="red"]{color:var(--st-red)}.due[data-st="green"]{color:var(--st-green)}.due[data-st="brown"]{color:var(--st-brown)}
.progress{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.bar{flex:1;height:6px;border-radius:3px;background:rgba(120,135,160,.28);overflow:hidden}
.bar span{display:block;height:100%;background:var(--accent);border-radius:3px}
.bar span.full{background:var(--st-green)}

/* Modal */
.overlay{position:fixed;inset:0;background:var(--overlay);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;z-index:20;
  padding-block:max(24px,env(safe-area-inset-top,0px));padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
.modal{background:var(--surface);border-radius:12px;width:100%;max-width:620px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.modal-head{display:flex;align-items:flex-start;gap:10px}
.modal-head h3{margin:0;flex:1;font-size:16px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field>label,.field>.lbl{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.field input[type=text],.field input[type=date],.field textarea,.field select{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:8px 10px;width:100%;box-sizing:border-box}
.field textarea{min-height:90px;resize:vertical;line-height:1.45}
.field input:disabled,.field textarea:disabled,.field select:disabled{opacity:.85;background:transparent;border-style:dashed}
.title-input{font-weight:700;font-size:15px}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.prio-pick{display:flex;gap:6px;flex-wrap:wrap}
.prio-pick button{border:1.5px solid var(--line);background:transparent;border-radius:6px;padding:5px 10px;font-family:var(--mono);font-size:12.5px}
.prio-pick button[aria-pressed="true"]{color:var(--chip-fg);border-color:transparent}
.prio-pick button[aria-pressed="true"].P0{background:var(--p0)}.prio-pick button[aria-pressed="true"].P1{background:var(--p1)}
.prio-pick button[aria-pressed="true"].P2{background:var(--p2)}.prio-pick button[aria-pressed="true"].P3{background:var(--p3)}
.prio-pick button:disabled{cursor:default}
.hint{font-size:12px;color:var(--muted)}
.cl-list{display:flex;flex-direction:column;gap:4px}
.cl-item{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;padding:5px 6px;border-radius:6px}
.cl-item:hover{background:var(--bg)}
.cl-item input[type=checkbox]{width:17px;height:17px;accent-color:var(--st-green)}
.cl-item .txt{overflow-wrap:anywhere}
.cl-item.ok .txt{text-decoration:line-through;color:var(--muted)}
.cl-item input[type=date]{border:1px solid var(--line);background:var(--bg);border-radius:5px;padding:3px 6px;font-family:var(--mono);font-size:12px}
.cl-date{font-family:var(--mono);font-size:12px;color:var(--muted)}
.inline-add{display:flex;gap:8px}
.inline-add input{flex:1;min-width:0;border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:7px 10px}
.att-list{display:flex;flex-direction:column;gap:6px}
.att{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:6px;padding:7px 10px}
.att button.name{border:0;background:transparent;padding:0;text-align:left;flex:1;min-width:0;color:var(--accent);font-weight:500;overflow-wrap:anywhere}
.att small{font-family:var(--mono);color:var(--muted)}
.btn{border:0;border-radius:6px;padding:8px 14px;font-weight:600;background:var(--accent);color:var(--accent-fg)}
.btn.sec{background:var(--col-head);color:var(--fg)}
.btn.danger{background:transparent;color:var(--st-red);border:1px solid var(--st-red)}
.btn:disabled{opacity:.5;cursor:default}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px solid var(--line);padding-top:12px}
.actions .spacer{flex:1}
.statusline{font-size:12.5px;display:flex;align-items:center;gap:8px;color:var(--muted)}
.modal.wide{max-width:980px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:0;padding:0}
.modal.wide .main{padding:18px;display:flex;flex-direction:column;gap:14px;min-width:0}
.side{background:var(--bg);border-left:1px solid var(--line);border-radius:0 12px 12px 0;padding:18px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.side h4{margin:0;font-size:13px;font-weight:700}
.act{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.act time{font-family:var(--mono);font-size:11px;color:var(--muted)}
.list-pick{border:1px solid var(--line);background:var(--col-head);border-radius:6px;padding:5px 8px;font-weight:600;font-size:12.5px;max-width:100%}
.list-chip{background:var(--col-head);border-radius:6px;padding:5px 9px;font-weight:600;font-size:12.5px}
@media (max-width:760px){.modal.wide{grid-template-columns:1fr}.side{border-left:0;border-top:1px solid var(--line);border-radius:0 0 12px 12px}}
.viewer img{display:block;max-width:100%;max-height:60vh;margin:0 auto;border-radius:6px;background:var(--bg)}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(18px + env(safe-area-inset-bottom,0px));background:var(--fg);color:var(--bg);padding:8px 14px;border-radius:6px;font-size:13px;z-index:30}
@media (max-width:560px){.legend{display:none}.brand img{height:30px}.proj b{font-size:15px}.col{flex-basis:84vw}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* ================= Site: estrutura, login e projetos ================= */
#app{flex:1;min-height:0;display:flex;flex-direction:column}
a{color:inherit}
.top .back{color:var(--on-brand-soft);text-decoration:none;font-size:13px;border:1px solid var(--on-brand-line);border-radius:6px;padding:6px 10px}
.top .back:hover{color:var(--on-brand);border-color:var(--on-brand)}
.btn.light{background:#ffffff;color:#163fb5}
.btn.glass{background:rgba(255,255,255,.12);color:var(--on-brand);border:1px solid var(--on-brand-line)}
.btn.glass:hover{background:rgba(255,255,255,.2)}

.center{flex:1;display:flex;align-items:center;justify-content:center;padding-block:32px;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.glass-panel{width:100%;max-width:380px;background:var(--col-glass);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
  border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:28px 24px;color:var(--on-brand);display:flex;flex-direction:column;gap:16px;box-shadow:0 12px 40px rgba(3,10,40,.4)}
.glass-panel img.logo{height:46px;width:auto;align-self:center}
.glass-panel h1{margin:0;font-size:17px;font-weight:600;text-align:center}
.glass-panel p{margin:0;color:var(--on-brand-soft);text-align:center;line-height:1.5}
.glass-panel .field>label{color:var(--on-brand-soft)}
.glass-panel input{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:var(--on-brand);border-radius:8px;padding:10px 12px;width:100%;box-sizing:border-box}
.glass-panel input::placeholder{color:rgba(255,255,255,.5)}
.err{color:#ffd0d0;background:rgba(210,56,56,.25);border:1px solid rgba(255,120,120,.4);border-radius:8px;padding:8px 10px;font-size:13px}
.modal .err{color:var(--st-red);background:transparent;border-color:var(--st-red)}

.dash{flex:1;overflow-y:auto;padding-block:20px 32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.dash-inner{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:16px}
.dash-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--on-brand)}
.dash-head h1{margin:0;font-size:20px;font-weight:600;flex:1}
.proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}
.pcard{background:var(--card-glass);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;
  box-shadow:0 6px 20px rgba(3,10,40,.25),inset 0 1px 0 var(--card-edge);min-width:0}
.pcard.off{opacity:.7}
.pcard-head{display:flex;align-items:flex-start;gap:8px}
.pcard-head h2{margin:0;font-size:16px;flex:1;min-width:0;overflow-wrap:anywhere}
.pcard-head .icon-btn:hover{background:rgba(120,135,160,.2)}
.pill{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:2px 6px;background:var(--col-head);color:var(--muted)}
.stats{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--muted)}
.stats b{font-family:var(--mono);color:var(--fg);font-weight:500}
.stats .late b{color:var(--st-red)}
.link-box{display:flex;gap:6px;align-items:center;background:rgba(120,135,160,.14);border-radius:8px;padding:6px 6px 6px 10px}
.link-box code{flex:1;min-width:0;font-family:var(--mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.link-box button{border:0;border-radius:6px;padding:5px 10px;background:var(--accent);color:var(--accent-fg);font-weight:600;font-size:12px}
.pcard-actions{display:flex;gap:8px;flex-wrap:wrap}
.pcard-actions a{text-decoration:none}
.empty{color:var(--on-brand);text-align:center;padding:48px 16px;border:1.5px dashed var(--on-brand-line);border-radius:14px;display:flex;flex-direction:column;gap:12px;align-items:center}
.empty p{margin:0;color:var(--on-brand-soft)}
.loading{color:var(--on-brand-soft);padding:32px;text-align:center}
.ts-box{min-height:66px}
.att .dl{border:0;background:transparent;color:var(--accent);font-weight:500;padding:0}
.cl-item .cl-date{white-space:nowrap}
.field>label.btn{font-size:14px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--fg)}
.board{scroll-padding-inline:max(16px,env(safe-area-inset-left,0px))}
