:root{--background: 0 0% 100%;--foreground: 240 10% 3.9%;--primary: 201 100% 36%;--primary-foreground: 0 0% 98%;--secondary: 240 4.8% 95.9%;--secondary-foreground: 240 5.9% 10%;--muted: 240 4.8% 95.9%;--muted-foreground: 240 3.8% 46.1%;--accent: 240 4.8% 95.9%;--accent-foreground: 240 5.9% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 240 5.9% 90%;--ring: 201 100% 36%;--radius: .5rem;--header: #026aa7;--header-text: #ffffff;--canvas: #f4f5f7;--list: #ebecf0;--shadow: 0 1px 0 rgba(9, 30, 66, .25);color:hsl(var(--foreground));font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--canvas)}button,input,textarea{font:inherit}a{color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;font-weight:500;border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.btn:disabled{pointer-events:none;opacity:.5}.btn-default{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-default:hover{background:#055a8c}.btn-destructive{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.btn-outline{border-color:hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground))}.btn-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.btn-ghost{background:transparent;color:hsl(var(--foreground))}.btn-link{background:transparent;color:hsl(var(--primary));text-decoration:underline;text-underline-offset:4px}.btn-size-default{height:2.25rem;padding:0 1rem}.btn-size-sm{height:2rem;padding:0 .75rem}.btn-size-lg{height:2.5rem;padding:0 2rem}.btn-size-icon{height:2.25rem;width:2.25rem;padding:0}.splash{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:linear-gradient(180deg,#0079bf,#026aa7);color:#fff}.splash-mark,.brand-mark{width:2rem;height:2rem;border-radius:.4rem;background:linear-gradient(#61bd4f 0 35%,transparent 35% 45%,#f2d600 45% 80%,transparent 80%) 4px 4px / 7px 100% no-repeat,linear-gradient(#0079bf 0 55%,transparent 55% 65%,#eb5a46 65% 100%) 13px 4px / 7px 100% no-repeat,#fff;box-shadow:0 1px #0000001f}.auth-screen{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(165deg,#0079bf,#026aa7 42%,#1d4259)}.auth-card{width:100%;max-width:24rem;background:#fff;border-radius:.75rem;padding:2rem 1.75rem 1.5rem;box-shadow:0 12px 32px #0000002e}.auth-brand{display:flex;align-items:center;justify-content:center;gap:.65rem;margin-bottom:1.5rem}.auth-brand h1,.topbar-brand{margin:0;font-size:1.5rem;letter-spacing:-.03em;font-weight:800;color:#172b4d}.auth-card h2{margin:0 0 .35rem;font-size:1.25rem;color:#172b4d}.auth-card p.lead{margin:0 0 1.25rem;color:#5e6c84;font-size:.9rem}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.field span{font-size:.8rem;font-weight:600;color:#172b4d}.field input,.field textarea,.composer input,.title-edit,.list-title-input{width:100%;border:2px solid #dfe1e6;border-radius:.4rem;padding:.55rem .7rem;background:#fafbfc;color:#172b4d}.field input:focus,.field textarea:focus,.composer input:focus,.title-edit:focus,.list-title-input:focus{outline:none;border-color:#0079bf;background:#fff}.field textarea{min-height:8rem;resize:vertical}.auth-actions{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.auth-actions .btn{width:100%;height:2.5rem}.error-banner{background:#fbeae9;color:#c9372c;border-radius:.4rem;padding:.6rem .75rem;font-size:.85rem;margin-bottom:.85rem}.auth-foot{margin-top:1.1rem;text-align:center;color:#5e6c84;font-size:.9rem}.auth-foot a{color:#0052cc;font-weight:600;text-decoration:none}.app-shell{min-height:100%;display:flex;flex-direction:column;background:var(--canvas)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3rem;padding:.4rem .85rem;background:var(--header);color:var(--header-text)}.topbar-left,.topbar-right{display:flex;align-items:center;gap:.65rem}.topbar a.topbar-brand{display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-size:1.15rem}.topbar .brand-mark{width:1.55rem;height:1.55rem;background:linear-gradient(#61bd4f 0 35%,transparent 35% 45%,#f2d600 45% 80%,transparent 80%) 3px 3px / 5px 100% no-repeat,linear-gradient(#005c91 0 55%,transparent 55% 65%,#eb5a46 65% 100%) 10px 3px / 5px 100% no-repeat,#fff}.user-chip{font-size:.8rem;opacity:.9}.topbar .btn-ghost,.board-topbar .btn-ghost{color:#fff}.topbar .btn-ghost:hover,.board-topbar .btn-ghost:hover,.board-link:hover{background:#ffffff29}.home-main{flex:1;padding:2rem 1.5rem 3rem;max-width:72rem;width:100%;margin:0 auto}.home-main h2{margin:0 0 1rem;color:#172b4d;font-size:1.05rem}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14.5rem,1fr));gap:1rem}.board-tile,.create-tile{min-height:6.5rem;border-radius:.5rem;padding:.85rem;text-align:left;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow);border:none;cursor:pointer}.board-tile h3,.create-tile h3{margin:0;font-size:1rem;font-weight:700}.board-tile span{font-size:.75rem;opacity:.85}.create-tile{background:#091e420a;color:#172b4d;align-items:flex-start}.create-tile:hover{background:#091e4214}.empty-home{color:#5e6c84;margin:0 0 1rem}.modal-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:4rem 1rem 2rem;z-index:40;overflow:auto}.modal{width:100%;max-width:28rem;background:#fff;border-radius:.6rem;padding:1.1rem;box-shadow:0 12px 40px #00000040}.modal.wide{max-width:48rem;display:grid;grid-template-columns:1fr 11rem;gap:1rem}.modal h3{margin:0 0 .85rem;color:#172b4d}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;margin:.35rem 0 1rem}.swatch{height:2rem;border:2px solid transparent;border-radius:.35rem;cursor:pointer}.swatch.selected{border-color:#172b4d;box-shadow:inset 0 0 0 2px #fff}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.board-page{min-height:100%;display:flex;flex-direction:column}.board-topbar{background:#00000029}.board-title-btn,.title-edit{background:transparent;border:none;color:#fff;font-size:1.1rem;font-weight:700;padding:.25rem .45rem;border-radius:.3rem;cursor:text}.board-title-btn:hover{background:#ffffff29}.title-edit{background:#fff;color:#172b4d;width:min(18rem,60vw)}.board-canvas{flex:1;display:flex;align-items:flex-start;gap:.75rem;padding:.85rem;overflow:auto}.list-column{width:17rem;min-width:17rem;background:var(--list);border-radius:.75rem;padding:.5rem;display:flex;flex-direction:column;max-height:calc(100vh - 5rem)}.list-column.drag-over{outline:2px dashed rgba(255,255,255,.85)}.list-head{display:flex;align-items:center;gap:.25rem;margin-bottom:.35rem}.list-title,.list-title-input{flex:1;font-weight:700;font-size:.9rem;color:#172b4d;background:transparent;border:none;text-align:left;padding:.35rem .4rem;border-radius:.3rem}.list-title:hover{background:#091e4214;cursor:text}.list-title-input{background:#fff;border:2px solid #0079bf}.icon-btn{width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.3rem;color:#6b778c;cursor:pointer}.icon-btn:hover{background:#091e4214;color:#172b4d}.card-stack{display:flex;flex-direction:column;gap:.45rem;overflow:auto;padding-bottom:.25rem}.kanban-card{background:#fff;border-radius:.5rem;padding:.55rem .6rem .5rem;box-shadow:var(--shadow);cursor:pointer;border:none;text-align:left;color:#172b4d}.kanban-card:hover{background:#f4f5f7}.kanban-card.dragging{opacity:.45}.card-labels{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.3rem}.card-label{height:.5rem;width:2.4rem;border-radius:999px}.kanban-card p{margin:0;font-size:.875rem;line-height:1.35}.card-note{margin-top:.3rem;font-size:.75rem;color:#6b778c}.composer{margin-top:.4rem}.composer input{margin-bottom:.4rem;background:#fff}.add-btn,.add-list{width:100%;border:none;background:transparent;color:#5e6c84;text-align:left;padding:.45rem .5rem;border-radius:.4rem;cursor:pointer}.add-btn:hover,.add-list:hover{background:#091e4214;color:#172b4d}.add-list-column{min-width:17rem;width:17rem}.add-list-column .add-list{background:#ffffff3d;color:#fff;font-weight:600}.add-list-column .add-list:hover{background:#ffffff52}.add-list-column .composer{background:var(--list);border-radius:.75rem;padding:.5rem}.composer-actions{display:flex;gap:.35rem;align-items:center}.card-modal-main h3,.card-modal-main textarea,.card-modal-main .title-field{width:100%}.card-modal-main .title-field{font-size:1.2rem;font-weight:700;border:2px solid transparent;background:transparent;padding:.2rem .3rem;margin-bottom:.75rem}.card-modal-main .title-field:focus{border-color:#0079bf;background:#fff}.sidebar-label{font-size:.75rem;font-weight:700;color:#5e6c84;margin:0 0 .4rem;text-transform:uppercase}.label-picks{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.label-pick{border:none;border-radius:.3rem;color:#fff;font-weight:700;font-size:.8rem;padding:.4rem .5rem;text-align:left;cursor:pointer;opacity:.55}.label-pick.on{opacity:1;box-shadow:inset 0 0 0 2px #0003}.muted{color:#5e6c84;font-size:.85rem}@media(max-width:720px){.modal.wide{grid-template-columns:1fr}.home-main{padding:1.25rem 1rem 2rem}}
