:root{font-family:Inter,"Avenir Next",Avenir,system-ui,sans-serif;color:#343e45;background:#f7f1e8;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,.card:focus-visible{outline:3px solid #518e9a;outline-offset:3px}.app-shell{min-height:100vh;background:radial-gradient(circle at 12% 22%,#fffcf4 0,transparent 34%),#f7f1e8}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,4vw,72px);border-bottom:1px solid #e4ded3;background:#fffdf8d9}.brand{display:flex;gap:12px;align-items:center}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#315889;color:#fffdf8;font-size:23px;box-shadow:3px 3px 0 #d6dce1}.brand strong{display:block;font-size:16px;letter-spacing:-.025em}.brand small{display:block;font-size:9px;letter-spacing:.19em;color:#7e8c8a;margin-top:2px;font-weight:800}.top-actions{display:flex;gap:14px;align-items:center}.source-pill{border:1px solid #dce5de;border-radius:20px;padding:8px 11px;color:#579c70;background:#f4faf4;font-size:11px;font-weight:800;letter-spacing:.05em}.icon-button{width:34px;height:34px;border:1px solid #e4ded3;border-radius:9px;background:#fffdf8;color:#65747b;font-size:19px}.icon-button:hover{background:#f1eae0}main{padding:0 clamp(20px,4vw,72px) 28px}.board-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:54px 0 40px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.2em;color:#bc7d59;font-weight:800}.eyebrow-line{height:2px;width:23px;background:#bc7d59}.eyebrow #today{color:#9aa4a0;letter-spacing:.1em;margin-left:7px}h1{font-size:clamp(38px,4.5vw,64px);line-height:1.08;letter-spacing:-.065em;margin:12px 0 12px;font-weight:760}.heading-dot{color:#bc7d59}.board-heading p{margin:0;color:#7e8c8a;font-size:14px}.heading-actions{display:flex;gap:10px;align-items:center;padding-bottom:3px}.text-button{border:0;background:transparent;color:#7e8c8a;font-size:12px;font-weight:700;padding:12px}.text-button:hover{color:#343e45}.primary-button{border:1px solid #284a77;background:#315889;color:white;border-radius:9px;min-height:40px;padding:0 17px;box-shadow:3px 3px 0 #d4dce5;font-weight:750;font-size:12px}.primary-button:hover{transform:translateY(-2px);box-shadow:3px 5px 0 #d4dce5}.primary-button span{font-size:19px;font-weight:400;vertical-align:-1px;margin-right:5px}.board-toolbar{height:54px;display:flex;justify-content:space-between;align-items:center;border:1px solid #e4ded3;border-bottom:0;border-radius:12px 12px 0 0;background:#fffdf8;padding:0 20px;font-size:12px;color:#7e8c8a}.board-key{display:flex;align-items:center;gap:11px}.board-key strong{color:#343e45;font-size:12px}.key-swatch{width:10px;height:10px;border-radius:3px;background:#315889;transform:rotate(-14deg)}.toolbar-divider{height:17px;width:1px;background:#e4ded3;margin:0 4px}.toolbar-hint{font-size:11px}.toolbar-hint span{font-size:14px;margin-left:5px;color:#bc7d59}.board{display:grid;grid-template-columns:repeat(6,minmax(208px,1fr));gap:10px;overflow-x:auto;align-items:stretch;padding:17px 16px 24px;border:1px solid #e4ded3;border-radius:0 0 12px 12px;background-color:#f8f6ef;background-image:linear-gradient(#6c818014 1px,transparent 1px),linear-gradient(90deg,#6c818014 1px,transparent 1px);background-size:24px 24px;min-height:565px}.column{min-width:208px;border:1px solid #e6e3d9;border-radius:11px;background:#fffdf8dc;box-shadow:0 2px 6px #343e4508;display:flex;flex-direction:column;min-height:500px;transition:background .15s,box-shadow .15s}.column.drag-over{background:#f2f7f6;box-shadow:inset 0 0 0 2px #70a9af}.column-header{height:60px;padding:0 15px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #eae6dd}.column-mark{width:9px;height:9px;border-radius:3px;transform:rotate(-18deg);background:var(--column-color)}.column-header h2{font-size:12px;letter-spacing:.01em;margin:0;font-weight:780}.column-count{margin-left:auto;border:1px solid #eae6dd;border-radius:6px;min-width:22px;height:22px;display:grid;place-items:center;font-size:10px;color:#7e8c8a;background:#fbfaf6}.card-list{padding:12px;display:flex;flex-direction:column;gap:10px;flex:1;min-height:140px}.card{position:relative;background:#fffdf8;border:2px solid color-mix(in srgb,var(--column-color) 88%,black);border-radius:9px;padding:15px 13px 12px;box-shadow:0 3px 6px #39454b30;cursor:grab;transition:transform .15s,box-shadow .15s,border-color .15s;animation:card-in .26s cubic-bezier(.18,.89,.33,1.3) both}.card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #39454b30,inset 0 0 0 1px #315889;border-color:#315889}.card:active{cursor:grabbing}.card.dragging{opacity:.42}.card-title{margin:0 0 17px;font-size:13px;font-weight:720;line-height:1.38;color:#343e45}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-id{font-size:9px;font-weight:800;color:#a2aaa6;letter-spacing:.08em}.card-arrow{font-size:16px;color:#b8c1bb;line-height:1}.empty-column{color:#a2aaa6;text-align:center;font-size:11px;padding:22px 5px;border:1px dashed #dddcd4;border-radius:7px}.drop-indicator{height:3px;background:#518e9a;border-radius:4px;box-shadow:0 0 0 3px #518e9a22}.board-footer{display:flex;justify-content:space-between;gap:12px;margin-top:17px;color:#9aa4a0;font-size:9px;font-weight:800;letter-spacing:.14em}.dialog-backdrop{position:fixed;inset:0;background:#27343c88;display:grid;place-items:center;padding:20px;z-index:10}.dialog-backdrop[hidden]{display:none}.dialog{width:min(100%,480px);padding:27px;background:#fffdf8;border:1px solid #e4ded3;border-radius:14px;box-shadow:10px 12px 0 #27343c33}.dialog-top{display:flex;justify-content:space-between;align-items:center}.dialog-kicker{color:#bc7d59;letter-spacing:.2em;font-size:10px;font-weight:800}.dialog h2{font-size:29px;letter-spacing:-.04em;margin:13px 0 24px}.dialog form{display:flex;flex-direction:column}.dialog label{font-size:11px;font-weight:800;margin:0 0 7px}.dialog input,.dialog textarea,.dialog select{border:1px solid #d9dedb;border-radius:7px;background:#fff;color:#343e45;padding:11px;margin:0 0 18px;outline:none}.dialog input:focus,.dialog textarea:focus,.dialog select:focus{border-color:#518e9a;box-shadow:0 0 0 3px #518e9a21}.dialog textarea{resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;margin-top:5px}.danger-button{margin-right:auto;border:0;background:transparent;color:#a93635;font-size:12px;font-weight:800;padding:10px}.danger-button[hidden]{display:none}@keyframes card-in{from{opacity:.2;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:800px){.board-heading{align-items:start;flex-direction:column;padding:35px 0 26px}.heading-actions{width:100%;justify-content:space-between}.board{grid-template-columns:repeat(6,235px);min-height:calc(100vh - 310px)}.column{min-height:430px}.toolbar-hint{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

body{cursor:url("../assets/kenney/cursors/pointer.png") 10 6,auto}.card{cursor:url("../assets/kenney/cursors/hand_open.png") 12 10,grab}.card:active,.card.dragging{cursor:url("../assets/kenney/cursors/hand_closed.png") 12 10,grabbing}button{cursor:url("../assets/kenney/cursors/hand_point.png") 9 2,pointer}

.board{height:clamp(500px,calc(100vh - 350px),850px);min-height:500px}.column{min-height:0;overflow:hidden}.card-list{overflow-y:auto;min-height:0}.card-metadata{display:flex;flex-wrap:wrap;gap:4px;margin:-7px 0 12px}.card-chip,.card-due{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;padding:3px 5px;background:#edf1f0;color:#617475;font-size:9px;font-weight:700}.card-due{background:#f7eee1;color:#a67947}.trello-source{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:-12px 0 21px;padding:9px 10px;border-radius:7px;background:#f1f5f3;color:#71817f;font-size:11px}.trello-source[hidden]{display:none}.trello-source a{color:#315889;text-decoration:none;font-weight:800}.trello-source a:hover{text-decoration:underline}@media(max-width:800px){.board{height:calc(100vh - 380px);min-height:400px}}
.dialog{width:min(100%,760px);max-height:90vh;overflow-y:auto}.dialog h2{margin-bottom:18px}.form-section-title{border-top:1px solid #e4ded3;margin:10px 0 17px;padding-top:17px;color:#bc7d59;font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.form-grid,.ticket-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.form-grid>div,.ticket-field{display:flex;flex-direction:column;min-width:0}.optional{font-weight:500;color:#9aa4a0}.ticket-field textarea{min-height:95px;line-height:1.45}.original-description{border:1px solid #e4ded3;border-radius:8px;padding:11px 13px;margin:0 0 19px;font-size:11px;color:#65747b}.original-description summary{cursor:pointer;font-weight:750}.original-description pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.5}.visibility-note{font-size:11px;color:#7e8c8a;margin:-5px 0 15px}.visibility-choices{display:flex;gap:8px;margin-bottom:13px}.visibility-choices label{display:flex;align-items:center;gap:7px;border:1px solid #e4ded3;border-radius:7px;padding:10px 13px;margin:0;cursor:pointer;background:#fff}.visibility-choices input{margin:0;accent-color:#315889}.visibility-targets{border:1px solid #e4ded3;border-radius:8px;background:#faf9f5;padding:14px;margin-bottom:20px}.visibility-targets[hidden]{display:none}.visibility-targets strong{font-size:11px}.visibility-targets p{font-size:10px;color:#7e8c8a;margin:5px 0 12px}.visibility-targets select{margin:9px 0 0;min-width:220px}.user-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.user-options label{display:flex;align-items:center;gap:8px;margin:0;font-weight:600;cursor:pointer}.user-options input{margin:0;accent-color:#315889}.dialog-actions{position:sticky;bottom:-27px;background:#fffdf8;border-top:1px solid #e4ded3;padding:15px 0 5px;z-index:1}@media(max-width:620px){.dialog{padding:20px;max-height:94vh}.form-grid,.ticket-fields,.user-options{grid-template-columns:1fr}.visibility-choices{flex-wrap:wrap}.dialog-actions{bottom:-20px}}

/* Brief sections and card relationships */
.visibility-section{grid-column:1/-1}.ticket-fields{display:block}.brief-section,.relation-section{margin:0 0 26px}.brief-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.brief-heading h3,.relation-section h3{font-size:13px;margin:0;font-weight:800}.brief-heading .text-button{padding:7px 12px;border:1px solid #e4ded3;border-radius:6px;background:#f5f3ed}.brief-placeholder{display:block;width:100%;min-height:76px;padding:16px;text-align:left;border:1px solid #dedfd8;border-radius:8px;background:#f3f2ec;color:#7e8c8a;font-size:13px;transition:background .15s,border-color .15s}.brief-placeholder:hover{background:#e9eeea;border-color:#9bb6af}.brief-copy{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65;padding:2px 0 10px}.brief-section textarea{display:block;width:100%;min-height:130px;resize:none;overflow:hidden;line-height:1.65;margin-bottom:10px}.brief-actions{display:flex;gap:8px}.brief-section [hidden],.relation-section [hidden]{display:none!important}.relation-section h3{margin-bottom:12px}.relation-section select{width:100%;margin:10px 0}.relation-card{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border:1px solid #e4ded3;border-radius:7px;margin-top:7px;font-size:13px}.relation-card span{overflow-wrap:anywhere}.relation-create{padding:14px;border:1px solid #e4ded3;border-radius:8px}.relation-create input{width:100%;margin-bottom:10px}.relation-create .text-button{margin-left:8px}

[hidden]{display:none!important}.project-tabs{display:flex;gap:8px;padding-top:22px}.project-tabs button{padding:10px 18px;border:1px solid #e4ded3;border-radius:8px;background:#fffdf8;color:#65747b}.project-tabs button[aria-pressed="true"]{background:#315889;color:white;border-color:#315889}.multi-picker{position:relative;margin-bottom:18px;min-width:0}.multi-picker summary{list-style:none;cursor:pointer;border:1px solid #d9dedb;border-radius:7px;padding:11px 30px 11px 11px;background:white;font-size:13px;min-height:43px;overflow-wrap:anywhere}.multi-picker summary::after{content:'⌄';position:absolute;right:12px;top:10px}.multi-picker[open] summary{border-color:#518e9a}.multi-options{padding:8px;border:1px solid #d9dedb;border-radius:7px;margin-top:5px;max-height:220px;overflow:auto;background:#fff}.multi-options label{display:flex;align-items:center;gap:9px;padding:8px;margin:0!important;font-size:13px;font-weight:500;cursor:pointer}.multi-options label:hover{background:#edf1f0}.multi-options input{margin:0!important;accent-color:#315889}.multi-options p{font-size:12px;color:#65747b}.field-note{font-size:11px;color:#7e8c8a;margin:-8px 0 14px}.field-note:empty{display:none}.visibility-targets .multi-picker{margin:0}.visibility-targets p,#visibility-pending p{font-size:12px;color:#65747b}#visibility-pending{margin-bottom:18px}.confirm-dialog{border:1px solid #e4ded3;border-radius:12px;padding:24px;max-width:480px;width:calc(100% - 32px);color:#343e45;background:#fffdf8;box-shadow:0 20px 80px #0003}.confirm-dialog::backdrop{background:#27343c99}.confirm-dialog h2{font-size:20px}.confirm-dialog p{font-size:14px;line-height:1.6}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}.setup-grid>section{background:#fffdf8;padding:24px;border:1px solid #e4ded3;border-radius:12px;min-width:0}.setup-grid h2{font-size:20px}.setup-grid input{padding:10px;border:1px solid #d9dedb;border-radius:6px;min-width:0}.setup-grid form>label{display:block;margin:16px 0 8px;font-size:13px}.setup-grid form>input:not([type="hidden"]){width:100%;margin-bottom:12px}.setup-row{display:flex;gap:6px;align-items:center;margin-bottom:8px;font-size:13px}.setup-row input,.setup-row span{flex:1;min-width:0}.setup-row .text-button{padding:8px}.setup-grid .multi-picker{margin:12px 0}#setup-message{font-size:13px;color:#315889}@media(max-width:720px){.setup-grid{grid-template-columns:1fr}.confirm-dialog .brief-actions{flex-wrap:wrap}}

.checklist-progress{margin:0 0 20px;color:#65747b;font-size:12px}.checklist-progress span{display:block;margin-bottom:7px;font-weight:700}.checklist-progress progress{display:block;width:100%;height:7px;border:0;border-radius:5px;overflow:hidden;background:#e8ece6;accent-color:#579c70}.checklist-progress progress::-webkit-progress-bar{background:#e8ece6;border-radius:5px}.checklist-progress progress::-webkit-progress-value{background:#579c70;border-radius:5px}.checklist-progress progress::-moz-progress-bar{background:#579c70}.checklist-progress.compact{margin:0 0 14px;font-size:10px}.checklist-section{border-top:1px solid #e4ded3;padding-top:18px;margin:8px 0 20px}.checklist-section h3{font-size:14px;margin:0 0 14px}.checklist-row{display:flex;align-items:center;gap:10px;margin:5px 0;border-radius:7px;background:#f6f5f0;padding:6px 8px}.checklist-row input[type="checkbox"]{margin:0;accent-color:#579c70;width:17px;height:17px;flex-shrink:0}.checklist-row input[type="text"]{flex:1;min-width:0;margin:0;padding:8px;border-color:transparent;background:transparent;font-size:13px}.checklist-row input[type="text"]:focus{background:#fff}.checklist-row.is-done input[type="text"]{text-decoration:line-through;color:#83948c}.checklist-menu{position:relative}.checklist-menu summary{list-style:none;cursor:pointer;padding:3px 9px;font-size:22px;border-radius:6px}.checklist-menu summary:hover{background:#e5e9e3}.checklist-menu>div{position:absolute;right:0;top:100%;z-index:3;background:#fffdf8;border:1px solid #d9dedb;border-radius:8px;padding:6px;box-shadow:0 6px 20px #27343c22;min-width:180px}.checklist-menu button{display:block;width:100%;text-align:left;white-space:nowrap;padding:10px}.checklist-menu button:hover{background:#edf1f0}.checklist-add{display:flex;align-items:center;gap:10px;margin:14px 0}.checklist-add input{margin:0;flex:1;min-width:0}.checklist-section .field-note{display:block;line-height:1.5;margin:4px 0 12px}.conversion-note{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;background:#edf3ee;padding:8px 12px;border-radius:6px;margin-top:7px}.conversion-note span{overflow-wrap:anywhere}.conversion-note button{flex-shrink:0}@media(max-width:480px){.checklist-add{align-items:stretch;flex-direction:column}.conversion-note{align-items:flex-start}}

.convert-item-button{flex-shrink:0;padding:7px 9px;border:1px solid #d9dedb;border-radius:6px;background:#fffdf8;color:#315889;font-size:11px;font-weight:700}.convert-item-button:hover{background:#eaf0f5;border-color:#9cafbf}.conversion-dialog form{display:flex;flex-direction:column}.conversion-dialog label{font-size:12px;font-weight:700;margin:14px 0 7px}.conversion-dialog select{width:100%;padding:11px;border:1px solid #d9dedb;border-radius:7px;background:#fff;font:inherit;color:#343e45}.conversion-dialog .brief-actions{margin-top:24px}.conversion-dialog>p{overflow-wrap:anywhere;color:#65747b}@media(max-width:540px){.checklist-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto}.checklist-row input[type="text"]{width:100%}.checklist-row .convert-item-button{grid-column:2;justify-self:start}.checklist-row .checklist-menu{grid-column:3;grid-row:1}}

/* Readable board cards, identity, deadlines and positional drag preview. */
.card{animation:none;padding:16px 14px;transition:box-shadow .15s,border-color .15s}.card:hover{transform:none}
.card-title{font-size:16px;line-height:1.45;margin-bottom:15px}.card-metadata{gap:6px;margin:0 0 14px}
.card-chip,.card-due{font-size:12px;padding:5px 8px;line-height:1.3;border-radius:6px}.category-chip{color:#fff}
.card-bottom{min-height:32px}.card-due{background:#2859a7;color:white}.card-due.today{background:#f2c94c;color:#392d08}.card-due.overdue{background:#b52f3b;color:#fff}
.owner-avatar{position:relative;display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#405d75;color:white;font-size:12px;font-weight:750;margin-left:auto;overflow:hidden;border:2px solid #fff;box-shadow:0 0 0 1px #dce2e2}.owner-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.checklist-progress.compact{font-size:12px}.card-list{position:relative;overflow-anchor:none}.card{flex-shrink:0}
.card-drop-space{flex-shrink:0;border:2px dashed #518e9a;border-radius:9px;background:#518e9a16;color:#315889;display:grid;place-items:center;font-size:13px;font-weight:700;pointer-events:none}.card-list:has(.card-drop-space)>.empty-column{display:none}

/* Card reading order: title, owner and areas, due date, checklist. */
.card-metadata{align-items:center;margin-bottom:12px}.card-metadata .owner-avatar{margin-left:0}.card-bottom{justify-content:flex-start;min-height:0;margin-bottom:12px}.card>.checklist-progress.compact{margin-bottom:0}.card>:last-child{margin-bottom:0}

/* Dark palette trial. Column tint expresses status; card contour expresses area. */
:root{color-scheme:dark;color:#e3e8ef;background:#10151e}
.app-shell{background:radial-gradient(circle at 12% 10%,#1d2939 0,transparent 40%),#10151e}
.topbar{background:#151d29e8;border-color:#303b4b}.brand-mark{box-shadow:3px 3px 0 #0b111b}.brand small,.board-heading p,.text-button,.board-footer,.eyebrow #today{color:#9caec2}
h1,.board-key strong{color:#e3e8ef}.heading-dot,.eyebrow,.dialog-kicker,.form-section-title{color:#e0ad84}
.source-pill{background:#1b302b;border-color:#355348;color:#9bd2b1}.icon-button,.project-tabs button{background:#1d2837;border-color:#3a485b;color:#d1deed}.icon-button:hover,.text-button:hover{background:#293749;color:#fff}
.primary-button{background:#37659d;border-color:#6387b5;box-shadow:3px 3px 0 #0c1420}.primary-button:hover{box-shadow:3px 5px 0 #0c1420}
.board-toolbar{background:#192332;border-color:#354153;color:#9caec2}.toolbar-divider{background:#354153}
.board{background-color:#121b27;background-image:linear-gradient(#b5d1f009 1px,transparent 1px),linear-gradient(90deg,#b5d1f009 1px,transparent 1px);border-color:#354153}
.column{background:color-mix(in srgb,var(--column-color) 19%,#111a26);border-color:color-mix(in srgb,var(--column-color) 48%,#182332);box-shadow:0 2px 6px #0002}
.column-header{background:color-mix(in srgb,var(--column-color) 29%,#111a26);border-color:color-mix(in srgb,var(--column-color) 40%,#182332)}.column-header h2{color:#f0f3f8;font-size:14px}
.column-count{background:#14203099;border-color:#ffffff25;color:#e0e8f0}.column.drag-over{background:color-mix(in srgb,var(--column-color) 30%,#111a26);box-shadow:inset 0 0 0 2px #9dcbd4}
.card{background:#182230;border-color:var(--area-color);box-shadow:0 3px 8px #0005}.card:hover{border-color:var(--area-color);box-shadow:0 4px 12px #0007,inset 0 0 0 1px var(--area-color)}
.card-title{font-weight:400;color:#edf1f7}.card-chip:not(.category-chip){background:#2d3d50;color:#d2e0ef}.category-chip{color:white}.owner-avatar{border-color:#24354a;box-shadow:0 0 0 1px #52657b}
.empty-column{color:#adbdce;border-color:#ffffff30}.card-drop-space{background:#8dbccc18;border-color:#9bcad6;color:#c4e5ee}.checklist-progress{color:#acbdd0}.checklist-progress progress,.checklist-progress progress::-webkit-progress-bar{background:#334357}
.dialog,.confirm-dialog{background:#192332;color:#e3e8ef;border-color:#40506a;box-shadow:0 20px 80px #0007}.dialog-actions{background:#192332;border-color:#3a495c}.dialog-backdrop,.confirm-dialog::backdrop{background:#060b14bd}
.dialog input,.dialog textarea,.dialog select,.conversion-dialog select,.setup-grid input,.multi-picker summary{background:#111c2a;color:#e3e8ef;border-color:#42526a}
.brief-heading .text-button,.brief-placeholder,.relation-create,.relation-card,.visibility-choices label,.visibility-targets,.checklist-row,.convert-item-button{background:#202d3e;color:#cfdbeb;border-color:#42526a}.brief-placeholder:hover{background:#2b3d52;border-color:#8aaac9}.brief-copy{color:#dbe5f2}
.multi-options,.checklist-menu>div{background:#182537;border-color:#42526a}.multi-options label:hover,.checklist-menu button:hover,.convert-item-button:hover{background:#30445e}.checklist-row input[type="text"]:focus{background:#142235}.conversion-note{background:#233d36;color:#d1e5db}
.visibility-note,.field-note,.optional,.visibility-targets p,#visibility-pending p,.conversion-dialog>p,.multi-options p{color:#a9bacd}.form-section-title,.checklist-section{border-color:#3a495c}.danger-button{color:#ff9fa8}
.setup-grid>section{background:#192332;border-color:#354153}#setup-message{color:#a9cbed}.project-tabs button[aria-pressed="true"]{background:#37659d;border-color:#6387b5;color:white}

/* Compact shared heading: navigation and actions sit beside the page title. */
.page-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:25px 0 22px}
.page-heading h1{margin:8px 0 7px}
.page-heading p{margin:0;color:#9caec2;font-size:14px}
.page-controls{display:flex;flex-direction:column;align-items:flex-end;gap:15px;min-width:0}
.control-row{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.project-tabs{padding:0}
.project-tabs button{padding:9px 16px}
.heading-actions{padding:0}
.setup-grid{margin-top:0}
@media(max-width:1050px){.page-heading{align-items:start;flex-direction:column;gap:18px}.page-controls{width:100%;align-items:stretch;gap:10px}.control-row{justify-content:space-between}.heading-actions{justify-content:flex-end}}
@media(max-width:600px){.page-heading{padding:20px 0 18px;gap:16px}.page-heading h1{font-size:clamp(36px,9vw,52px)}.control-row{align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:10px}.top-actions{margin-left:0}.source-pill{display:none}.heading-actions{justify-content:space-between}}

/* Status lives in the header; the card lanes share the board's dark canvas. */
.board{height:calc(100dvh - 260px);min-height:620px;max-height:none;overflow:auto;align-items:stretch;grid-auto-rows:max-content;padding-bottom:16px}
.column{background:#121b27;border-color:#354153;box-shadow:none;min-height:0;overflow:visible}
.card-list{overflow:visible;min-height:0;flex:none}
.column-header{position:sticky;top:0;z-index:1;background:var(--column-color);border-color:transparent}
.column-header h2{color:#fff}
.column-mark{background:#fff9}
.column-count{background:#10151e55;border-color:#ffffff55;color:#fff}
.column[data-column-id="waiting"] .column-header h2,.column[data-column-id="waiting"] .column-count{color:#21251d}
.column[data-column-id="waiting"] .column-count{background:#ffffff80;border-color:#ffffff80}
.column.drag-over{background:#1b2a37;box-shadow:inset 0 0 0 2px var(--column-color)}
@media(max-width:800px){.board{height:calc(100dvh - 340px);min-height:480px}}

/* Search, combined filters, and editable area colors. */
.board-toolbar{height:auto;min-height:54px;gap:12px;position:relative;z-index:3;flex-wrap:wrap;padding:9px 16px}
.board-tools{display:flex;align-items:center;gap:8px;margin-left:auto;min-width:0}
.search-box{display:flex;align-items:center;gap:7px;min-width:0;width:260px;height:36px;padding:0 10px;border:1px solid #42526a;border-radius:7px;background:#111c2a;color:#9caec2}
.search-box span{font-size:22px;line-height:1}
.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#e3e8ef;font-size:12px}
.search-box:focus-within{border-color:#8aadd0;box-shadow:0 0 0 2px #8aadd035}
.filter-menu{position:relative}
.filter-menu summary{list-style:none;cursor:pointer;white-space:nowrap;border:1px solid #42526a;border-radius:7px;background:#202d3e;color:#e3e8ef;padding:8px 12px;font-size:12px;font-weight:700}
.filter-menu summary::-webkit-details-marker{display:none}
.filter-menu[open] summary{border-color:#8aadd0}
#filter-count{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:5px;background:#37659d;color:#fff;font-size:10px}
.filter-popover{position:absolute;right:0;top:calc(100% + 7px);width:min(330px,calc(100vw - 40px));max-height:min(70vh,560px);overflow:auto;padding:14px;background:#192332;border:1px solid #42526a;border-radius:9px;box-shadow:0 12px 35px #0008;z-index:5}
.filter-popover fieldset{border:0;border-top:1px solid #354153;padding:10px 0;margin:0}
.filter-popover fieldset:first-child{border-top:0;padding-top:0}
.filter-popover legend{padding:0;color:#a9bacd;font-size:11px;font-weight:800}
.filter-popover label{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px;cursor:pointer}
.filter-popover input{accent-color:#6387b5}
.filter-popover .text-button{padding:6px 0}
.setup-row input[type="color"],.setup-grid form>input[type="color"]{flex:none;width:46px;height:38px;padding:3px;border:1px solid #42526a;border-radius:6px;background:#111c2a;cursor:pointer}
.setup-grid form>input[type="color"]{display:block;margin-bottom:14px}
@media(max-width:700px){.board-toolbar{align-items:flex-start}.board-key{min-height:36px}.board-tools{width:100%;margin-left:0}.search-box{flex:1;width:auto}.filter-popover{max-height:55dvh}.board{height:calc(100dvh - 395px)}}

/* Google sign-in for the authenticated local board server. */
.auth-panel{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 12% 10%,#1d2939 0,transparent 40%),#10151e}
.auth-card{width:min(100%,440px);padding:32px;border:1px solid #354153;border-radius:14px;background:#192332;box-shadow:0 20px 60px #0005}
.auth-card h1{font-size:clamp(34px,5vw,48px);margin:12px 0}
.auth-card p{font-size:14px;color:#a9bacd;line-height:1.5}
#google-signin{margin-top:28px;min-height:42px}
#auth-message{margin:14px 0 0}
.account-controls{display:flex;align-items:center;gap:4px;color:#a9bacd;font-size:11px}
.account-controls .text-button{padding:8px}
@media(max-width:700px){.account-controls{width:100%;justify-content:flex-end}}

/* Three-part card editor: basics, details, checklist. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dialog{width:min(100%,820px)}
.dialog-top{min-height:32px}
.card-basics{padding-bottom:4px}
.title-view{display:flex;align-items:flex-start;gap:10px;margin:4px 0 11px}
#card-title-view{border:0;background:transparent;color:#f1f5fb;padding:0;text-align:left;font-size:clamp(25px,3vw,34px);line-height:1.2;font-weight:680;letter-spacing:-.035em;overflow-wrap:anywhere;min-width:0}
#card-title-view.title-placeholder{color:#93a5bb}
#edit-card-title{margin-left:auto;padding:5px 8px;border:1px solid #42526a;border-radius:6px;flex:none}
#title-editor{margin:5px 0 15px}
#title-editor label{display:block;margin-bottom:7px}
#title-editor input{width:100%;font-size:25px;font-weight:650;margin-bottom:10px}
.card-basics #card-checklist-progress{margin-bottom:18px}
.card-basics .checklist-progress{margin-bottom:0}
.identity-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:6px 0 18px}
.identity-field{min-width:0}
.identity-field>label,.card-basic-grid label{display:block;margin-bottom:8px}
.identity-field .field-note{display:block;margin:8px 0 0}
#owner-picker,#card-participants{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:44px}
.avatar-menu{position:relative;flex:none}
.avatar-menu summary{list-style:none;cursor:pointer;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}
.avatar-menu summary::-webkit-details-marker,.area-picker summary::-webkit-details-marker{display:none}
.avatar-menu .owner-avatar{width:38px;height:38px;margin:0}
.avatar-menu .avatar-add{border:1px dashed #6b829e;background:#172436;color:#d5e3f2;font-size:24px;line-height:1}
.avatar-menu[open] summary{outline:2px solid #8aaac9;outline-offset:2px}
.avatar-options{position:absolute;left:0;top:calc(100% + 8px);z-index:7;min-width:195px;max-height:235px;overflow:auto;padding:6px;border:1px solid #42526a;border-radius:8px;background:#182537;box-shadow:0 14px 30px #0009}
.avatar-options button{display:block;width:100%;padding:9px 10px;text-align:left;border:0;border-radius:5px;background:transparent;color:#e3e8ef;font-size:12px}
.avatar-options button:hover{background:#30445e}
.avatar-options p{padding:5px 8px;color:#a9bacd;font-size:12px}
.card-basic-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-bottom:13px}
.card-basic-grid>div{min-width:0}
.card-basic-grid .due-field{grid-column:1/-1}
.due-inputs{display:flex;gap:10px}
.due-inputs input{width:min(100%,190px);margin-bottom:0}
.due-inputs input[type=time]{width:145px}
.status-select{display:block;width:100%;min-height:43px;margin:0!important;background:var(--status-color)!important;border-color:transparent!important;color:#fff;font-weight:780;font-size:14px}
.status-select option{background:#192332;color:#e3e8ef}
.area-picker{position:relative}
.area-picker summary{list-style:none;cursor:pointer;display:flex;flex-direction:column;gap:3px;min-height:43px;padding:4px;border:1px solid #42526a;border-radius:7px;background:#111c2a;color:#a9bacd;font-size:13px}
.area-picker summary:not(:has(.area-bar)){padding:11px}
.area-picker[open] summary{border-color:#8aaac9}
.area-bar{display:block;width:100%;padding:7px 10px;border-radius:4px;font-size:12px;font-weight:800}
.area-picker .multi-options{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:6;box-shadow:0 12px 30px #0008}
.card-basics .visibility-section .form-section-title{margin-top:20px}
.ticket-details .form-section-title{margin-top:18px}
.ticket-details .brief-section{margin-bottom:22px}
.ticket-details .brief-copy{cursor:pointer}
.ticket-details .brief-copy:hover{color:#fff}
.relate-section{margin-top:22px}
.relate-section .form-section-title{margin:0 0 18px}
#card-relations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.relation-section{min-width:0;margin:0 0 12px}
.relation-section input[type=search]{width:100%;margin:0 0 9px}
.relation-results{max-height:210px;overflow:auto;margin:-4px 0 10px;padding:5px;border:1px solid #42526a;border-radius:7px;background:#182537}
.relation-result{display:block;width:100%;padding:8px 9px;border:0;border-radius:5px;background:transparent;color:#e3e8ef;text-align:left;font-size:12px}
.relation-result:hover{background:#30445e}
.relation-results p{margin:6px;color:#a9bacd;font-size:12px}
.relation-section>.text-button{display:block;margin:0 0 8px;padding:8px 0}
.checklist-section{margin-top:22px}
@media(max-width:620px){.identity-row,.card-basic-grid,#card-relations{grid-template-columns:1fr}.card-basic-grid .due-field{grid-column:auto}.due-inputs{flex-wrap:wrap}.avatar-options{min-width:175px}}

/* Card editor refinements. */
.dialog{border:2px solid var(--editor-area-color,#40506a)}
.dialog-top{gap:16px;margin-bottom:14px}
.status-top{display:flex;align-items:center;gap:10px;min-width:0}
.status-top label{margin:0!important;font-size:12px!important;font-weight:700;color:#cbd8e7}
.status-top .status-select{width:155px;min-height:34px;padding:5px 34px 5px 10px;font-size:12px;font-weight:700;appearance:none;-webkit-appearance:none}
.status-select-wrap{position:relative;color:var(--status-ink,#fff)}
.status-select-wrap::after{content:"";position:absolute;right:15px;top:12px;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);pointer-events:none}
#close-dialog{flex:none;background:#315f9d;border-color:#6387b5;color:#fff;font-weight:700}
#close-dialog:hover{background:#4678ba;color:#fff}
.title-view{margin:18px 0 12px}
#edit-card-title{margin-right:0}
.identity-row{display:flex;align-items:flex-start;gap:25px}
.identity-field{flex:0 0 auto}
.identity-field:last-child{flex:1 1 auto}
.card-basic-grid .due-field{grid-column:auto}
.due-inputs{gap:8px}
.due-inputs input[type=date]{width:min(100%,170px)}
.due-inputs input[type=time]{width:120px}
.area-bar{font-weight:400}
.area-picker summary:has(.area-bar){padding:0;overflow:hidden}
.area-picker summary .area-bar{display:flex;align-items:center;min-height:41px;border-radius:6px}
.dialog{overflow:hidden}
.dialog-scroll{max-height:calc(90vh - 58px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#65809e transparent}
.dialog-scroll::-webkit-scrollbar{width:8px}
.dialog-scroll::-webkit-scrollbar-track{background:transparent}
.dialog-scroll::-webkit-scrollbar-thumb{background:#65809e;border-radius:8px}
.checklist-progress progress{accent-color:#39ed83}
.checklist-progress progress::-webkit-progress-value{background:#39ed83}
.checklist-progress progress::-moz-progress-bar{background:#39ed83}
.checklist-row input[type="checkbox"]{accent-color:#39ed83}
.area-option{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:5px;background:transparent;color:#dbe5f2;text-align:left;font-size:12px}
.area-option:hover,.area-option[aria-pressed=true]{background:#30445e}
.area-option-swatch{width:12px;height:12px;border-radius:3px;flex:none}
.relation-card{display:block;padding:11px 12px;margin:8px 0 14px;background:#182230;border:2px solid var(--area-color,#64748b);box-shadow:0 3px 8px #0005}
.relation-card-head{display:flex;align-items:flex-start;gap:8px}
.relation-card-head strong{flex:1;min-width:0;font-size:14px;font-weight:400;line-height:1.4;color:#edf1f7;overflow-wrap:anywhere}
.relation-remove{flex:none;min-width:25px;height:25px;padding:0;border:1px solid #52657b;border-radius:5px;background:#24354a;color:#dce8f5;font-size:18px;line-height:1}
.relation-remove:hover{background:#34516f}
.relation-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px}
.relation-card-meta .owner-avatar{width:26px;height:26px;margin:0;font-size:9px}
.relation-card-meta .card-chip,.relation-status{padding:4px 7px;border-radius:5px;font-size:10px;line-height:1.2}
.relation-status{font-weight:700}
.relation-section input[type=search]{margin:4px 0 10px}
.relation-section>.convert-item-button{display:inline-block;margin:0 0 8px}
@media(max-width:620px){.identity-row{gap:18px;flex-wrap:wrap}.card-basic-grid .due-field{grid-column:auto}.due-inputs{flex-wrap:wrap}.status-top .status-select{width:138px}}

/* Keep checklist rows compact on phones; conversion remains in the actions menu. */
.checklist-menu .checklist-convert-menu{display:none}
@media(max-width:620px){
  .checklist-row .checklist-convert-inline{display:none}
  .checklist-menu .checklist-convert-menu{display:block}
}

/* The first title line sits beside the avatar; later lines use the card width. */
.card-heading{display:flow-root;margin-bottom:12px}
.card-heading .owner-avatar{float:left;margin:0 10px 0 0}
.card-heading .card-title{margin:0;overflow-wrap:anywhere}
.card-heading:has(.owner-avatar) .card-title{padding-top:14px}
.card-metadata{margin:0 0 12px;flex-wrap:wrap}
.card-metadata .category-chip{min-width:0;flex:0 1 auto}
.card-metadata .card-due{flex:none}
.card-metadata .category-chip+.card-due{margin-left:auto}
.setup-toggle{display:flex;align-items:center;gap:10px;margin-top:18px;color:#dbe5f2;font-size:13px;cursor:pointer}
.setup-toggle input{width:18px;height:18px;margin:0;accent-color:#6387b5;flex:none}

/* Compact editor identity, relationships, and checklist. */
.identity-row{align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:14px}
.identity-row .visibility-section{flex:1 1 225px;min-width:225px}
.identity-label{margin-bottom:8px;font-size:11px;font-weight:800}
.identity-row .visibility-choices{margin-bottom:0;gap:5px;flex-wrap:wrap}
.identity-row .visibility-choices label{padding:8px 10px}
.ticket-details{border-top:1px solid #3a495c;padding-top:18px;margin-top:16px}
.ticket-details .brief-section{margin-bottom:0}
.relate-section summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer}
.relate-section summary::-webkit-details-marker{display:none}
.relate-section summary::after{content:"⌄";font-size:18px;line-height:1;transition:transform .15s}
.relate-section[open] summary::after{transform:rotate(180deg)}
.checklist-row{margin:3px 0;padding:2px 7px;gap:8px}
.checklist-row input[type="text"]{padding:5px 4px}
.checklist-row .convert-item-button{padding:5px 7px}
.checklist-menu summary{padding:1px 8px;line-height:1.2}
.dialog-actions{bottom:0}
@media(max-width:620px){.identity-row .visibility-section{min-width:0;flex-basis:100%}.dialog-scroll{max-height:calc(94vh - 44px)}}

/* Fixed editor chrome and compact metadata controls. */
.dialog{display:flex;flex-direction:column;padding:0;max-height:90vh}
.dialog-top{flex:none;margin:0;padding:17px 26px;background:#202d3e;border-bottom:1px solid #3a495c}
.dialog-scroll{flex:1 1 auto;min-height:0;max-height:none;margin-right:6px;padding:0 20px 0 26px}
.dialog-actions{position:static;flex:none;margin:0;padding:12px 26px;background:#202d3e;border-top:1px solid #3a495c}
.dialog-actions .primary-button,.dialog-actions .danger-button{font-weight:600}
.identity-row{gap:12px}
.identity-row .visibility-section{flex:0 1 auto;min-width:0}
.identity-row .area-field{flex:1 1 135px;min-width:135px}
.identity-row .due-field{flex:0 0 auto}
.identity-row label,.identity-row .identity-label{font-weight:700}
.identity-row .visibility-choices label{font-weight:700}
.area-field .area-picker summary{min-width:135px}
.due-picker{position:relative;width:max-content}
.due-picker summary{display:flex;align-items:center;justify-content:center;gap:7px;list-style:none;min-width:38px;min-height:38px;padding:7px 9px;border:1px solid #42526a;border-radius:7px;background:#172436;color:#e3e8ef;cursor:pointer;white-space:nowrap;font-size:12px;font-weight:600}
.due-picker summary::-webkit-details-marker{display:none}
.due-picker.has-date summary{background:#2859a7;border-color:#6387b5;color:#fff}
.due-icon{width:18px;height:18px;flex:none}
.due-popover{position:absolute;z-index:8;right:0;top:calc(100% + 6px);width:200px;padding:12px;border:1px solid #42526a;border-radius:8px;background:#182537;box-shadow:0 14px 30px #0009}
.due-popover label{display:block;margin-bottom:6px}
.due-popover input{display:block;width:100%;margin:0 0 10px!important;padding:8px!important}
.due-popover .text-button{padding:5px 0}
.relate-section summary.form-section-title{font-size:11px;font-weight:700;letter-spacing:normal;text-transform:none;color:#dbe5f2}
:is(button,a,summary,select,label,input,textarea):not(.card){cursor:url("../assets/kenney/cursors/hand_point.png") 9 2,pointer}
@media(max-width:620px){.dialog{max-height:94vh}.dialog-top{padding:14px 16px}.dialog-scroll{margin-right:5px;padding:0 11px 0 16px}.dialog-actions{padding:12px 16px}.identity-row .visibility-section{flex-basis:auto}.identity-row .area-field{min-width:135px}}

/* Match section labels and metadata controls to the avatar fields. */
.ticket-details .brief-heading h3,.relation-section h3,.checklist-section h3{font-size:11px;font-weight:700;line-height:1.4;letter-spacing:normal;text-transform:none;color:#dbe5f2}
.identity-row .visibility-choices{min-height:44px;align-items:center}
.identity-row .visibility-choices label{display:flex;align-items:center;height:38px;min-height:38px;padding:0 10px}
.identity-row .area-picker,.identity-row .due-picker{top:3px}
.identity-row .area-picker summary,.identity-row .due-picker summary{height:38px;min-height:38px}
.identity-row .area-picker summary:not(:has(.area-bar)){padding:0 10px;justify-content:center}
.identity-row .area-picker summary .area-bar{min-height:36px}

/* Column creation and larger editor section headings. */
.column-add{flex:none;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #ffffffa6;border-radius:6px;background:#10151e38;color:#fff;font-size:24px;font-weight:400;line-height:1}
.column-add:hover{background:#10151e70}
.column-add:focus-visible{outline-color:#fff}
.column[data-column-id="waiting"] .column-add{color:#21251d;border-color:#21251d80;background:#ffffff80}
.column[data-column-id="waiting"] .column-add:hover{background:#fff}
.ticket-details .brief-heading h3,.checklist-section h3,.relate-section summary.form-section-title{font-size:16px}

.board-footer{flex-wrap:wrap}
.footer-status{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.app-version{color:#e0ad84;white-space:nowrap}
