/* additions on top of styles.css: auth screens, print, misc */
html,body{min-height:100%}
.splash{display:grid;place-items:center;min-height:60vh}
.spin{width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:linear-gradient(180deg,var(--ink) 0 38%,var(--bg) 38%)}
.auth .box{background:var(--surface);border-radius:14px;box-shadow:var(--shadow);width:100%;max-width:440px;padding:24px 22px;display:grid;gap:16px}
.auth .logo{display:flex;align-items:center;gap:12px}
.auth .logo .mark{height:52px;background:#fff;border-radius:8px;padding:4px 8px;display:grid;place-items:center}
.auth .logo img{height:44px;width:auto}
.auth h1{font-size:1.3rem}
.auth form{display:grid;gap:12px}
.auth .alt{text-align:center;font-size:.9rem;color:var(--muted)}
.auth .alt a{cursor:pointer;color:var(--accent);font-weight:500}
.auth .err{background:var(--bad-soft);color:var(--bad);padding:8px 12px;border-radius:8px;font-size:.9rem}
.btn.ghost{background:transparent;color:var(--band-fg);border-color:var(--band-line)}
.who{display:flex;align-items:center;gap:8px}
.brand .mark img{height:46px}
.role-pill{font-size:.75rem;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted)}
.members table.plain td{vertical-align:middle}
.invite-link{display:grid;gap:8px;background:var(--surface-2);padding:10px 12px;border-radius:8px}
.invite-link code{font-size:.8rem;direction:ltr;unicode-bidi:isolate;word-break:break-all}
.print-only{display:none}
@media print{
  body{background:#fff;color:#111}
  header.top,footer.brandfoot,.bar,.notice,.acts,#modal,.projbar,.tabs{display:none!important}
  main{padding:0;max-width:none}
  .docwrap{overflow:visible}
  .doc{border:0;box-shadow:none;max-width:none;padding:0;color:#111;background:#fff}
  .doc th{background:#f0ede6!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .doc tr.total td{background:#f0e7d3!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .print-only{display:block}
  @page{size:A4;margin:14mm}
}
