@charset "UTF-8";*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;color:#172b4d;background:#f4f5f7;-webkit-font-smoothing:antialiased}#app{height:100%}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:#172b4d;background:#fff;border:1px solid #dfe1e6;border-radius:.25rem;padding:.4375rem .625rem;outline:none}input:focus,textarea:focus,select:focus{border-color:#0052cc;box-shadow:0 0 0 2px #0052cc40}input::placeholder,textarea::placeholder,select::placeholder{color:#8993a4}input[readonly]{background:#fafbfc;color:#6b778c}code{background:#ebecf0;border-radius:.1875rem;padding:1px .3125rem;font-size:1em}.spacer{flex:1}.muted{color:#6b778c;font-weight:400}.small{font-size:1rem}.mono{font-family:SF Mono,Cascadia Code,Consolas,monospace}.badge{background:#deebff;color:#0052cc;border-radius:.625rem;font-size:1rem;font-weight:700;padding:2px .5rem;text-transform:uppercase;letter-spacing:.025em}.jsx-if-empty{display:none}.btn{display:inline-flex;align-items:center;gap:.375rem;background:#fff;border:1px solid #dfe1e6;border-radius:.25rem;color:#172b4d;padding:.4375rem .875rem;font-weight:500;text-decoration:none;white-space:nowrap}.btn:hover{background:#f7f8f9}.btn[disabled]{opacity:.55;cursor:default}.btn-primary{background:#0052cc;border-color:#0052cc;color:#fff}.btn-primary:hover{background:#0747a6}.btn-subtle{background:transparent;border-color:transparent;color:#6b778c}.btn-subtle:hover{background:#091e4214;color:#172b4d}.btn-danger{background:#de350b;border-color:#de350b;color:#fff}.btn-danger-text{background:transparent;border-color:transparent;color:#de350b}.btn-danger-text:hover{background:#ffebe6}.btn-ghost{background:transparent;border-color:#ffffff59;color:#fff}.btn-ghost:hover{background:#ffffff1f}.btn-block{width:100%;justify-content:center;margin-top:.5rem}.icon-btn{background:transparent;border:none;border-radius:.25rem;color:inherit;font-size:1rem;line-height:1;padding:.3125rem .4375rem;text-decoration:none}.icon-btn:hover{background:#091e421f}.avatar{border-radius:50%;object-fit:cover;display:inline-block;vertical-align:middle;flex-shrink:0}.avatar-letter{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:600;user-select:none}.avatar-empty{background:#ebecf0;color:#6b778c;cursor:pointer}.avatar-picker{display:inline-flex;border-radius:50%;cursor:pointer}.avatar-picker:hover .avatar{box-shadow:0 0 0 .1875rem #deebff}.navbar{display:flex;align-items:center;gap:.875rem;height:3rem;padding:0 1rem;background:#172b4d;color:#fff;flex-shrink:0}.navbar-brand{display:inline-flex;align-items:center;gap:.4375rem;color:#fff;font-weight:700;font-size:1rem;text-decoration:none;letter-spacing:.0125em}.brand-mark{font-size:1.0625rem}.navbar-project{font-weight:600;font-size:1rem}.navbar-repo{color:#ffffffa6;font-size:1rem;max-width:17.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navbar-members{display:inline-flex}.navbar-members .avatar{margin-left:-.375rem;border:2px solid #172b4d}.navbar-members .avatar:first-child{margin-left:0}.navbar .icon-btn{color:#ffffffd9}.navbar .icon-btn:hover{background:#ffffff26}.navbar .btn-subtle{color:#ffffffd9}.navbar .btn-subtle:hover{background:#ffffff26;color:#fff}.sync{display:inline-flex;align-items:center;gap:.375rem;font-size:1rem;color:#ffffffd9}.sync-dot{width:.5625rem;height:.5625rem;border-radius:50%}.sync-dot.offline{opacity:.45}.board-page{height:100%;display:flex;flex-direction:column}.board-wrap{flex:1;display:flex;flex-direction:column;min-height:0}.board-loading{display:flex;align-items:center;justify-content:center;gap:.625rem;padding:3.75rem;color:#6b778c}.board-toolbar{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;flex-wrap:wrap}.filter-chips{display:inline-flex;align-items:center;gap:.375rem;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:.375rem;background:#fff;border:1px solid #dfe1e6;border-radius:.875rem;color:#6b778c;font-size:1rem;padding:.25rem .6875rem}.chip:hover{background:#f7f8f9}.chip.active{background:#deebff;border-color:#0052cc;color:#0052cc;font-weight:600}.label-chip{display:inline-flex;align-items:center;border:none;border-radius:.1875rem;font-size:1rem;font-weight:600;padding:2px .4375rem;letter-spacing:.0125em}.label-chip.active{outline:2px solid #0052cc}.add-column{display:inline-flex;gap:.375rem}.board-scroll{flex:1;overflow-x:auto;padding:.25rem 1rem 1.125rem}.board-grid{display:flex;align-items:flex-start;gap:.75rem;height:100%}.column{display:flex;flex-direction:column;width:17.5rem;min-width:17.5rem;max-height:100%;background:#ebecf0;border-radius:.5rem;padding:.5rem}.column-header{display:flex;align-items:center;gap:.5rem;padding:2px .25rem .5rem;position:relative}.column-title{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.column-name{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.0375em;color:#6b778c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-count{background:#dfe1e6;color:#6b778c;border-radius:.5625rem;font-size:1rem;font-weight:700;padding:1px .4375rem}.column-rename{flex:1;padding:.25rem .5rem;font-size:1rem}.column-menu{position:absolute;right:0;top:1.75rem;z-index:30;display:flex;flex-direction:column;background:#fff;border:1px solid #dfe1e6;border-radius:.375rem;box-shadow:0 .5rem 1.25rem #091e422e;min-width:9.375rem;overflow:hidden}.column-menu button{background:none;border:none;text-align:left;padding:.5rem .75rem;font-size:1rem}.column-menu button:hover{background:#f4f5f7}.column-cards{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;min-height:2.5rem;padding:2px}.card{background:#fff;border:1px solid #dfe1e6;border-radius:.375rem;box-shadow:0 1px 1px #091e421f;padding:.625rem .75rem;cursor:grab;user-select:none}.card:hover{background:#fafbfc}.card:hover .card-title{color:#0052cc}.card.dragging{opacity:.45;cursor:grabbing}.card-title{font-size:1rem;font-weight:500;line-height:1.4;word-break:break-word}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5625rem}.card-labels{display:inline-flex;gap:.25rem;flex-wrap:wrap;min-width:0}.card-right{display:inline-flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.priority{font-size:1rem;line-height:1}.priority-label{font-size:1rem;color:#6b778c;margin-left:.25rem}.drop-placeholder{height:2.75rem;border:2px dashed #0052cc;border-radius:.375rem;background:#0052cc0f}.add-card{margin-top:.5rem;background:transparent;border:none;border-radius:.375rem;color:#6b778c;text-align:left;padding:.5rem .625rem;font-size:1rem}.add-card:hover{background:#091e4214;color:#172b4d}.composer{margin-top:.5rem}.composer textarea{width:100%;resize:vertical}.composer-actions{display:flex;gap:.375rem;margin-top:.375rem}.modal-overlay{position:fixed;inset:0;background:#091e428a;display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem;z-index:100;overflow-y:auto}.modal{background:#fff;border-radius:.5rem;box-shadow:0 1.25rem 3rem #091e4259;width:27.5rem;max-width:100%}.modal.modal-wide{width:42.5rem}.form-modal{padding:1.375rem 1.5rem}.form-modal h2{margin:0 0 .375rem}.form-modal p{margin:0 0 .875rem;font-size:1rem}.form-error{background:#ffebe6;color:#bf2600;border-radius:.25rem;padding:.5rem .75rem;font-size:1rem;margin:.625rem 0}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.issue-modal{padding:1.125rem 1.375rem}.issue-modal-head{display:flex;align-items:center;gap:.625rem}.issue-key{color:#6b778c;font-weight:600;font-size:1rem;flex-shrink:0}.issue-title-input{flex:1;font-size:1.0625rem;font-weight:600;border-color:transparent}.issue-title-input:hover:not(:focus){background:#f4f5f7}.issue-meta{display:flex;gap:.875rem;margin:1rem 0 .25rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.3125rem;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em;color:#6b778c}.field input,.field select,.field textarea{font-size:1rem;font-weight:400;text-transform:none;letter-spacing:0;min-width:10rem}.field-grow{flex:1;min-width:11.25rem}.field-grow input{width:100%;min-width:0}.issue-body{margin-top:.875rem;border-top:1px solid #ebecf0;padding-top:.75rem}.issue-editor textarea{width:100%;resize:vertical;font-family:SF Mono,Cascadia Code,Consolas,monospace;font-size:1rem}.issue-body-actions{margin-top:.375rem;display:flex;gap:.375rem}.issue-preview{min-height:3.75rem}.issue-modal-foot{display:flex;align-items:center;gap:.5rem;border-top:1px solid #ebecf0;margin-top:.875rem;padding-top:.875rem}.confirm-delete{display:inline-flex;align-items:center;gap:.5rem;color:#de350b;font-weight:600;font-size:1rem}.md{font-size:1rem;line-height:1.55;color:#172b4d;word-break:break-word}.md h1,.md h2,.md h3,.md h4,.md h5,.md h6{margin:.875rem 0 .375rem;line-height:1.3}.md h1{font-size:1.1875rem}.md h2{font-size:1.0312rem}.md h3,.md h4,.md h5,.md h6{font-size:1rem}.md p{margin:.375rem 0}.md ul,.md ol{margin:.375rem 0;padding-left:1.375rem}.md blockquote{margin:.5rem 0;border-left:.1875rem solid #dfe1e6;padding:2px .75rem;color:#6b778c}.md pre{background:#091e420a;border-radius:.25rem;padding:.625rem .75rem;overflow-x:auto;font-size:1rem}.md code{background:#091e420a}.md pre code{background:none;padding:0}.md img{max-width:100%;border-radius:.25rem}.md table{border-collapse:collapse;margin:.5rem 0}.md table th,.md table td{border:1px solid #dfe1e6;padding:.3125rem .5625rem;font-size:1rem}.md a{color:#0052cc}.md hr{border:none;border-top:1px solid #dfe1e6}.task{font-size:1rem;margin-right:2px}.home-page{height:100%;display:flex;flex-direction:column}.home-content{max-width:53.75rem;width:100%;margin:0 auto;padding:1.75rem 1.25rem}.home-content h1{font-size:1.3125rem;margin:0 0 1.125rem}.home-loading{padding:3rem;display:flex;justify-content:center}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15.625rem,1fr));gap:.875rem}.project-card{text-align:left;background:#fff;border:1px solid #dfe1e6;border-radius:.5rem;padding:1rem;display:flex;flex-direction:column;gap:.5rem;transition:box-shadow .15s ease}.project-card:hover{box-shadow:0 .25rem .75rem #091e4226}.project-card-add{align-items:center;justify-content:center;color:#6b778c;border-style:dashed;min-height:6.875rem;font-weight:600;background:transparent}.project-card-add .plus{font-size:1.625rem;font-weight:400}.project-card-name{font-size:1rem;font-weight:700}.project-card-repo{color:#6b778c;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-icon{font-size:1rem}.project-card-meta{display:flex;align-items:center;gap:.75rem;color:#6b778c;font-size:1rem}.project-card-meta .sync{color:#6b778c}.home-invite{display:flex;gap:.5rem;margin-top:1.625rem;max-width:28.75rem}.home-invite input{flex:1}.center-page{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem}.auth-card{background:#fff;border:1px solid #dfe1e6;border-radius:.625rem;box-shadow:0 .5rem 1.5rem #091e421f;width:23.75rem;max-width:100%;padding:1.875rem 2rem}.auth-card h1{font-size:1.1875rem;margin:0 0 .375rem}.auth-card .field{margin-top:.875rem}.auth-brand{font-size:1.0625rem;font-weight:700;margin-bottom:.875rem}.auth-avatar{margin:.625rem 0 2px}.auth-loading{padding:1.25rem 0}.settings-page{height:100%;display:flex;flex-direction:column}.settings-content{max-width:47.5rem;width:100%;margin:0 auto;padding:1.625rem 1.25rem 3.75rem}.settings-section{background:#fff;border:1px solid #dfe1e6;border-radius:.5rem;padding:1.125rem 1.375rem;margin-bottom:1.125rem}.settings-section h2{font-size:1rem;margin:0 0 .25rem}.settings-section>p{margin:2px 0 .75rem;font-size:1rem}.invite-row{display:flex;gap:.5rem}.invite-row input{flex:1;font-size:1rem}.member-table{display:flex;flex-direction:column}.member-row{display:flex;align-items:center;gap:.75rem;padding:.5625rem 2px;border-bottom:1px solid #ebecf0}.member-row:last-child{border-bottom:none}.member-name{font-weight:600;min-width:8.75rem}.member-nickname{color:#6b778c;font-size:1rem;min-width:6.875rem}.member-role{font-size:1rem;text-transform:uppercase;letter-spacing:.03125em;color:#6b778c;background:#ebecf0;border-radius:.1875rem;padding:2px .4375rem}.member-email{color:#6b778c;font-size:1rem;margin-left:auto}.storage-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem;margin:.625rem 0}.storage-item{display:flex;flex-direction:column;gap:.1875rem;font-size:1rem}.storage-label{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.03125em;color:#6b778c}.storage-error{grid-column:1/-1;background:#ffebe6;color:#bf2600;border-radius:.25rem;padding:.5rem .75rem;font-size:1rem;font-family:SF Mono,Consolas,monospace;word-break:break-all}.storage-actions{display:flex;gap:.5rem;margin-top:.875rem}.error-panel{margin:2.5rem auto;max-width:26.25rem;background:#ffebe6;color:#bf2600;border-radius:.5rem;padding:1.125rem 1.375rem;text-align:center}.error-panel p{margin:0 0 .75rem}.spinner{display:inline-block;width:1.125rem;height:1.125rem;border:2px solid #dfe1e6;border-top-color:#0052cc;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
