*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.min-h-screen{min-height:100vh}.sticky{position:sticky}.top-0{top:0}.z-10{z-index:10}.border-b{border-bottom:1px solid}.bg-\[\#f6f8f5\]{background:#fdf8f8}.bg-white\/90{background:#ffffffe6}.bg-white{background:#fff}.bg-\[\#0b3937\]{background:#0b3937}.text-\[\#102a2a\]{color:#102a2a}.text-\[\#59716d\]{color:#59716d}.border-\[\#d9e5e0\]{border-color:#d9e5e0}.border-\[\#cddfda\]{border-color:#cddfda}.backdrop-blur{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mx-auto{margin-left:auto;margin-right:auto}.max-w-7xl{max-width:80rem}.flex{display:flex}.grid{display:grid}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.p-4{padding:1rem}.h-3\.5{height:.875rem}.w-3\.5{width:.875rem}.h-4{height:1rem}.w-4{width:1rem}.h-5{height:1.25rem}.w-5{width:1.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.w-28{width:7rem}.w-40{width:10rem}.rounded-md{border-radius:6px}.rounded-lg{border-radius:8px}.border{border:1px solid}.object-contain{object-fit:contain}.text-xs{font-size:.75rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-semibold{font-weight:700}.mb-5{margin-bottom:1.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.min-h-\[520px\]{min-height:520px}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}button,input,textarea{font:inherit}button{cursor:pointer}label{display:block;margin:12px 0 6px;font-size:.85rem;font-weight:700;color:#36534f}input,textarea{width:100%;border:1px solid #cddfda;border-radius:6px;padding:10px 12px;outline:none;background:#fff;color:#102a2a}.chat-overlay .team-chat-form input:focus{border-color:#9f1d1d;box-shadow:0 0 0 3px #9f1d1d29}textarea{min-height:92px;resize:vertical}.button,.icon-button,.status-button{border:0;border-radius:6px;min-height:40px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#9f1d1d;color:#fff;padding:0 14px;font-weight:700}.button.secondary{background:#fff;color:#7f1d1d;border:1px solid #cddfda}.button.wide{width:100%;margin-top:18px}.pill{min-width:20px;border-radius:999px;background:#f1c65b;color:#332704;padding:1px 6px;font-size:.75rem}.board-shell{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.left-pane{position:sticky;top:92px;display:grid;gap:12px}.view-switch,.metric-list,.team-chat-launcher,.team-chat{border:1px solid #d9e5e0;border-radius:8px;background:#fff;padding:8px;box-shadow:0 1px 2px #102a2a0a}.view-switch{display:grid;gap:6px}.view-switch button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;border:0;border-radius:6px;background:transparent;color:#36534f;padding:0 10px;text-align:left;font-weight:700}.view-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:999px;background:#fee2e2;color:#7f1d1d;padding:0 7px;font-size:.78rem;font-weight:800}.view-switch button.active{background:#9f1d1d;color:#fff}.view-switch button.active .view-count{background:#fff;color:#7f1d1d}.metric-list{display:grid;gap:4px}.metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;border-radius:6px;padding:0 10px;color:#59716d;font-size:.86rem}.metric-row strong{color:#102a2a;font-size:1.05rem}.team-chat-launcher{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;color:#102a2a;text-align:left;font-weight:800}.team-chat-launcher span{display:inline-flex;align-items:center;gap:8px}.team-chat-launcher strong{min-width:28px;border-radius:999px;background:#fee2e2;color:#7f1d1d;padding:3px 8px;text-align:center;font-size:.8rem}.chat-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:end center;background:#102a2a52;padding:16px}.chat-overlay{position:relative;width:min(100%,560px);max-height:min(720px,calc(100vh - 32px));overflow:hidden;border-radius:12px;box-shadow:0 22px 60px #102a2a40}.chat-overlay-topbar{display:flex;justify-content:flex-end;border:1px solid #d9e5e0;border-bottom:0;border-radius:12px 12px 0 0;background:#fff;padding:8px 8px 0}.chat-overlay .team-chat{border-top:0;border-radius:0 0 12px 12px}.chat-overlay .team-chat{max-height:min(720px,calc(100vh - 32px))}.chat-close{position:static;z-index:2}.team-chat{display:grid;gap:10px}.team-chat-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.team-chat-header h2{margin:0;color:#102a2a;font-size:.98rem}.team-chat-header span{min-width:24px;border-radius:999px;background:#fee2e2;color:#7f1d1d;padding:2px 7px;text-align:center;font-size:.76rem;font-weight:800}.team-chat-messages{display:grid;gap:8px;max-height:460px;overflow:auto;padding-right:2px}.team-chat-message{border-radius:8px;background:#fdf8f8;padding:9px}.team-chat-message div{display:flex;justify-content:space-between;gap:8px;color:#59716d;font-size:.72rem}.team-chat-message strong{color:#7f1d1d}.team-chat-message p,.team-chat-empty{margin:6px 0 0;color:#102a2a;font-size:.84rem;line-height:1.35}.team-chat-empty{color:#59716d}.team-chat-form{display:grid;gap:8px}.team-chat-form .button{min-height:36px}.button:disabled{cursor:not-allowed;opacity:.55}.task-board-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.task-column{background:#fbefef;padding:18px;min-height:280px}.column-header{padding:0 2px 8px}.column-count{min-width:34px;padding:5px 10px;text-align:center;font-size:.95rem}.task-card{width:100%;border:1px solid #d9e5e0;border-radius:8px;padding:14px;text-align:left;box-shadow:0 1px 2px #102a2a0a}.task-normal{background:#fff}.task-urgent{border:2px solid #d92d20}.task-urgent.task-normal{background:#fee2e2;box-shadow:0 0 0 2px #f1c65b,0 1px 2px #102a2a0a}.task-in-progress{border-color:#e0a92f;background:#fff3cf}.task-urgent.task-in-progress{border-color:#d92d20}.task-done{border-color:#74bd86;background:#e3f5e8}.task-card h3{margin:0;color:#123333;font-size:.98rem;line-height:1.35}.urgent-pill{display:inline-flex;margin-top:8px;border-radius:999px;background:#f1c65b;color:#332704;padding:2px 8px;font-size:.72rem;font-weight:800}.meta{display:grid;gap:3px;margin:10px 0;color:#59716d;font-size:.78rem}.progress-bar{height:8px;overflow:hidden;border-radius:999px;background:#e7efeb}.progress-bar span{display:block;height:100%;border-radius:inherit;background:#9f1d1d}.card-footer{display:flex;justify-content:space-between;gap:8px;margin-top:12px;color:#59716d;font-size:.75rem}.card-footer span{display:inline-flex;align-items:center;gap:4px}.cleanup-button,.toast{position:fixed;right:18px;z-index:20;border:0;border-radius:8px;box-shadow:0 10px 30px #102a2a29}.cleanup-button{bottom:18px;display:inline-flex;align-items:center;gap:8px;background:#102a2a;color:#fff;padding:12px 14px;font-weight:700}.toast{bottom:76px;background:#fff;color:#102a2a;padding:12px 14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:#102a2a6b;padding:16px}.modal{width:min(760px,100%);max-height:min(88vh,900px);overflow:auto;border-radius:10px;background:#f8fbf9;padding:20px;box-shadow:0 24px 70px #102a2a47}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.modal-header h2{margin:0;font-size:1.5rem}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;background:#fff;border:1px solid #cddfda;color:#102a2a}.sign-out-button{flex:0 0 auto}.status-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.status-button{background:#fff;border:1px solid #cddfda;color:#7f1d1d;padding:0 12px}.status-button.active{background:#9f1d1d;border-color:#9f1d1d;color:#fff}.detail-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr)}.facts{display:grid;align-content:start;gap:8px;border-radius:8px;border:1px solid #d9e5e0;background:#fff;padding:14px}.facts p{display:flex;justify-content:space-between;gap:12px;margin:0;color:#59716d;font-size:.9rem}.facts strong{color:#102a2a}.row-data{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:16px 0}.row-data div{border-radius:8px;border:1px solid #d9e5e0;background:#fff;padding:10px}.row-data span,.row-data strong{display:block}.row-data span{color:#59716d;font-size:.75rem}.section-title{margin:18px 0 8px;font-size:1rem}.batch-table{display:grid;gap:6px}.batch-table button{display:grid;grid-template-columns:minmax(0,1fr) 120px 120px;gap:8px;border:1px solid #d9e5e0;border-radius:6px;background:#fff;padding:10px;text-align:left}.comments{display:grid;gap:8px}.comment{border-radius:8px;border:1px solid #d9e5e0;background:#fff;padding:10px}.comment div{display:flex;justify-content:space-between;gap:10px;color:#59716d;font-size:.78rem}.comment p{margin:8px 0 0}.comment-form{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:8px;margin-top:10px}.paste-box{min-height:160px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.column-renamer{display:grid;gap:12px;margin-top:12px;border:1px solid #d9e5e0;border-radius:8px;background:#fbefef;padding:12px}.column-renamer strong{color:#102a2a}.column-renamer p{margin:3px 0 0;color:#59716d;font-size:.84rem}.column-renamer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.column-renamer-grid label{margin:0}.column-renamer-grid input{margin-top:5px}.batch-preview{display:grid;gap:8px}.batch-preview div{display:flex;flex-wrap:wrap;gap:6px;border-radius:6px;background:#fff;padding:8px}.batch-preview span{border-radius:999px;background:#f6f8f5;padding:4px 8px;color:#36534f;font-size:.78rem}.batch-preview strong{margin-right:4px}.checkbox-row{display:inline-flex;align-items:center;gap:10px;width:auto;margin:14px 0 2px;color:#102a2a}.checkbox-row input{width:18px;height:18px;accent-color:#9f1d1d}.empty{color:#59716d;font-size:.9rem}.auth-shell{position:relative;display:grid;place-items:center;overflow:hidden;padding:20px;background:radial-gradient(circle at 22% 22%,rgba(159,29,29,.16),transparent 28%),radial-gradient(circle at 78% 72%,rgba(218,96,96,.2),transparent 30%),linear-gradient(135deg,#f7ecec,#fdf8f8 48%,#f6e7e7)}.auth-card{position:relative;width:min(420px,100%);border:1px solid #d9e5e0;border-radius:14px;background:#ffffffeb;padding:32px;box-shadow:0 24px 70px #102a2a2e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.auth-card h1{margin:16px 0 6px;font-size:1.55rem}.auth-card p{color:#59716d}.auth-brand{margin-bottom:24px;text-align:center}.auth-logo{display:block;width:96px;height:96px;margin:0 auto;border-radius:18px;object-fit:cover;box-shadow:0 12px 30px #102a2a2e}.app-header-logo{width:52px;height:52px;flex:0 0 auto;border-radius:12px;object-fit:cover;box-shadow:0 8px 20px #7f1d1d2e}.auth-error{border-radius:6px;background:#fee2e2;color:#8f1d1d!important;padding:10px 12px}.password-field{position:relative}.password-field input{padding-right:46px}.password-field button{position:absolute;top:1px;right:1px;display:inline-flex;align-items:center;justify-content:center;width:42px;height:calc(100% - 2px);border:0;border-radius:0 6px 6px 0;background:transparent;color:#59716d}.auth-footer{margin:22px 0 0;text-align:center;font-size:.75rem}.link-button{width:100%;border:0;background:transparent;color:#59716d;padding:10px 0 0;text-decoration:underline;text-underline-offset:4px}.user-chip{display:inline-flex;align-items:center;min-height:40px;border:1px solid #cddfda;border-radius:6px;background:#fff;padding:0 12px;color:#7f1d1d;font-size:.9rem;font-weight:700}.text-sm{font-size:.875rem}@media(max-width:720px){.metrics-strip{display:none}.detail-grid,.batch-table button,.comment-form,.board-shell{grid-template-columns:1fr}.left-pane{position:static}.view-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.view-switch button{justify-content:center;text-align:center}.md\:grid-cols-4,.md\:grid-cols-3,.xl\:grid-cols-4,.xl\:grid-cols-3{grid-template-columns:1fr}.task-board-grid,.task-board-grid:has(.task-column:hover),.task-board-grid:has(.task-column:focus-within),.task-board-grid:has(.task-column:nth-child(1):hover),.task-board-grid:has(.task-column:nth-child(1):focus-within),.task-board-grid:has(.task-column:nth-child(2):hover),.task-board-grid:has(.task-column:nth-child(2):focus-within),.task-board-grid:has(.task-column:nth-child(3):hover),.task-board-grid:has(.task-column:nth-child(3):focus-within){grid-template-columns:1fr}.task-column:not(:hover):not(:focus-within) .task-card .meta{display:grid}.task-column:not(:hover):not(:focus-within) .task-card .progress-bar{display:block}.task-column:not(:hover):not(:focus-within) .task-card .urgent-pill{display:inline-flex}.task-column:not(:hover):not(:focus-within) .task-card p{display:block}.task-column:not(:hover):not(:focus-within) .task-card .card-footer{display:flex}.task-column:not(:hover):not(:focus-within) .task-card h3{white-space:normal}}@media(min-width:721px)and (max-width:1199px){.board-shell{grid-template-columns:240px minmax(0,1fr)}.md\:grid-cols-4,.md\:grid-cols-3,.xl\:grid-cols-4,.xl\:grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.task-board-grid,.task-board-grid:has(.task-column:hover),.task-board-grid:has(.task-column:focus-within),.task-board-grid:has(.task-column:nth-child(1):hover),.task-board-grid:has(.task-column:nth-child(1):focus-within),.task-board-grid:has(.task-column:nth-child(2):hover),.task-board-grid:has(.task-column:nth-child(2):focus-within),.task-board-grid:has(.task-column:nth-child(3):hover),.task-board-grid:has(.task-column:nth-child(3):focus-within){grid-template-columns:1fr}.task-column:not(:hover):not(:focus-within) .task-card .meta{display:grid}.task-column:not(:hover):not(:focus-within) .task-card .progress-bar{display:block}.task-column:not(:hover):not(:focus-within) .task-card .urgent-pill{display:inline-flex}.task-column:not(:hover):not(:focus-within) .task-card p{display:block}.task-column:not(:hover):not(:focus-within) .task-card .card-footer{display:flex}.task-column:not(:hover):not(:focus-within) .task-card h3{white-space:normal}}@media(min-width:1200px){.board-shell{grid-template-columns:420px minmax(0,1fr)}.team-chat-messages{max-height:560px}.task-board-grid{grid-template-columns:minmax(360px,1fr) 112px 112px;justify-content:start}.task-board-grid:has(.task-column:nth-child(1):hover),.task-board-grid:has(.task-column:nth-child(1):focus-within){grid-template-columns:minmax(360px,1fr) 112px 112px}.task-board-grid:has(.task-column:nth-child(2):hover),.task-board-grid:has(.task-column:nth-child(2):focus-within){grid-template-columns:112px minmax(360px,1fr) 112px}.task-board-grid:has(.task-column:nth-child(3):hover),.task-board-grid:has(.task-column:nth-child(3):focus-within){grid-template-columns:112px 112px minmax(360px,1fr)}.task-column:nth-child(n+2):not(:hover):not(:focus-within),.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within),.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within){padding:14px 10px}.task-column:nth-child(n+2):not(:hover):not(:focus-within) .column-header,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header{display:grid;justify-items:center;gap:8px;padding:0}.task-column:nth-child(n+2):not(:hover):not(:focus-within) .column-header h2,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header h2,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header h2{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-column:nth-child(n+2):not(:hover):not(:focus-within) .grid,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .grid,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .grid{display:none}.xl\:grid-cols-4,.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-3,.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:721px){.board-shell{grid-template-columns:220px minmax(0,1fr);gap:18px}.task-board-grid,.task-board-grid:has(.task-column:hover),.task-board-grid:has(.task-column:focus-within),.task-board-grid:has(.task-column:nth-child(1):hover),.task-board-grid:has(.task-column:nth-child(1):focus-within),.task-board-grid:has(.task-column:nth-child(2):hover),.task-board-grid:has(.task-column:nth-child(2):focus-within),.task-board-grid:has(.task-column:nth-child(3):hover),.task-board-grid:has(.task-column:nth-child(3):focus-within){grid-template-columns:1fr!important}.task-column,.task-column:nth-child(n+2):not(:hover):not(:focus-within),.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within),.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within){padding:18px!important;min-height:320px}.task-column .column-header,.task-column:nth-child(n+2):not(:hover):not(:focus-within) .column-header,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header{display:flex!important;align-items:center;justify-content:space-between;justify-items:initial!important;gap:12px;padding:0 2px 8px!important}.task-column .column-header h2,.task-column:nth-child(n+2):not(:hover):not(:focus-within) .column-header h2,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header h2,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .column-header h2{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}.task-column .grid,.task-column:nth-child(n+2):not(:hover):not(:focus-within) .grid,.task-board-grid:has(.task-column:nth-child(n+2):hover) .task-column:nth-child(1):not(:hover):not(:focus-within) .grid,.task-board-grid:has(.task-column:nth-child(n+2):focus-within) .task-column:nth-child(1):not(:hover):not(:focus-within) .grid{display:grid!important}}
