@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html{height:100%;font-family:Segoe UI,sans-serif;line-height:1.15;scroll-behavior:smooth}body{min-height:100%;margin:0;font-family:Segoe UI,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#111;background-color:#fff;text-rendering:geometricPrecision}a{color:inherit;text-decoration:none}a:hover{color:inherit;text-decoration:underline}img,svg{display:block;max-width:100%}:root{color-scheme:dark;--page-bg: #222;--page-fg: #eee;--page-primary: #f93;--page-secondary: #333;--page-secondary-soft: #454545;--page-border: rgba(255, 255, 255, .16);--page-surface: #2e2e2e;--page-muted: #eee;--page-danger: #c75a5a}body{background:linear-gradient(180deg,#262626 0%,var(--page-bg) 100%);color:var(--page-fg)}[hidden]{display:none!important}.page-shell{width:min(76rem,100% - 3rem);margin:0 auto;padding:1.5rem 0}.board{display:grid;gap:1rem}.board-guest-gate{min-height:min(60vh,34rem);display:grid;place-items:center;gap:1rem;text-align:center;padding:3rem 1.5rem;border:1px solid var(--page-border);border-radius:.45rem;background:var(--page-surface)}.board-guest-gate__title{margin:0;font-size:clamp(1.6rem,3vw,2.2rem)}.board-guest-gate__text{margin:0;max-width:32rem;color:var(--page-muted)}.board__header{width:100%;padding:0;border-bottom:1px solid var(--page-border);background:var(--page-surface);box-shadow:0 .85rem 2rem #0000003d}.board__header h1{margin:0;font-size:clamp(1.75rem,4vw,2.5rem)}.board__header-inner{width:min(76rem,100% - 3rem);margin:0 auto;padding:1.1rem 0}.board__header-content{display:flex;align-items:center;justify-content:space-between;gap:1rem}.board__header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.board__header-actions-group{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.board__user-name{font-size:.95rem;color:var(--page-muted);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board__title{display:inline-flex;align-items:center;gap:.7rem}.board__title-icon{width:auto;height:clamp(1.75rem,4vw,2.5rem);flex-shrink:0}.board__add-project-button{display:inline-flex;align-items:center;justify-content:center;min-width:7.5rem}.board__admin-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:6rem}.board__logout-icon,.board__add-project-icon,.board__admin-icon{display:block;flex-shrink:0;max-width:none;overflow:visible}.board__logout-icon{width:1.35rem;min-width:1.35rem;height:1.35rem}.board__add-project-icon{width:1.65rem;min-width:1.65rem;height:1.65rem}.board__admin-icon{width:1.2rem;min-width:1.2rem;height:1.2rem}.board__logout-icon path,.board__add-project-icon path,.board__admin-icon path{fill:currentColor}.board__login-button{white-space:nowrap}@media(min-width:769px){.board__logout-icon,.board__add-project-icon,.board__admin-icon{display:none!important}}.modal-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:1rem;background:#0009;z-index:10}.modal-overlay--confirm{z-index:20}.modal{width:min(32rem,100%);padding:1rem;border:1px solid var(--page-border);border-radius:.35rem;background:var(--page-surface);box-shadow:0 .85rem 2rem #00000052}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.modal__header h2{margin:0;font-size:1.2rem}.modal__close{padding:0;display:inline-grid;place-items:center;border:0;border-radius:.3rem;background:transparent;color:var(--page-fg);cursor:pointer;align-self:baseline}.modal__close:hover{color:var(--page-primary)}.modal__close:focus-visible{outline:none;box-shadow:none}.modal__close-icon{width:1.15rem;height:1.15rem;display:block}.modal__close-icon path{fill:currentColor}.confirm-modal__message{margin:0 0 1rem;line-height:1.45}.confirm-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.login-form{display:flex;flex-direction:column;gap:.65rem}.login-form label{font-size:.9rem}.login-form input[type=email],.login-form input[type=password]{width:100%;padding:.45rem .55rem;border:1px solid var(--page-border);border-radius:.3rem;background:var(--page-bg, transparent);color:var(--page-fg)}.login-form__error{margin:0;padding:.5rem .55rem;border-radius:.3rem;background:#dc35451f;color:#ffb4b4;font-size:.9rem}.login-form__actions{display:flex;justify-content:flex-end;margin-top:.35rem}.project-form{padding:1.25rem;border:1px solid var(--page-border);border-radius:.35rem;background:var(--page-surface)}.project-form label{display:block;margin-bottom:.4rem;font-size:.86rem;font-weight:600;color:#eee}.project-form__controls{display:grid;gap:.75rem;grid-template-columns:1fr auto;align-items:center}input,textarea,select{width:100%;border:1px solid var(--page-border);border-radius:.3rem;padding:.65rem .75rem;font:inherit;color:inherit;background:#1f1f1f}textarea{resize:vertical}.button{border:0;border-radius:.3rem;padding:.65rem .75rem;font:inherit;font-weight:600;color:#222;background:var(--page-primary);cursor:pointer;text-decoration:none!important}.button--danger{background:var(--page-danger)}.button--ghost{color:var(--page-fg);background:transparent;border:1px solid var(--page-border)}.button--compact{padding:.35rem .55rem;min-width:2rem;line-height:1}.dashboard-list{margin:0;padding:0;list-style:none;display:grid;gap:.85rem}.dashboard-list__item{border:1px solid var(--page-border);border-radius:.45rem;background:var(--page-surface);display:flex;align-items:center;gap:.55rem;padding:.7rem;min-height:3rem}.dashboard-list__content{width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:.3rem;display:flex;align-items:center;gap:.8rem;cursor:pointer;text-decoration:none;min-width:0}.dashboard-list__content:hover,.dashboard-list__content:focus,.dashboard-list__content:focus-visible{text-decoration:none}.dashboard-list__title{margin:0;font-size:1rem;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-list__stats{margin:0 0 calc(-.32rem + 1px);padding:0;list-style:none;display:flex;flex-wrap:nowrap;gap:.55rem;min-width:0;white-space:nowrap}.dashboard-list__stats li{display:inline-flex;align-items:center;gap:.3rem}.dashboard-list__stats .task-status-badge{font-size:.62rem;font-weight:600;padding:.1rem .32rem;gap:.22rem;letter-spacing:0;text-decoration:none}.dashboard-list__stats .task-status-badge:hover,.dashboard-list__stats .task-status-badge:focus,.dashboard-list__stats .task-status-badge:focus-visible{text-decoration:none}.dashboard-list__stats .task-status-badge__dot{width:.35rem;height:.35rem}.dashboard-list__count{font-size:.72rem;font-weight:600;text-decoration:none}.dashboard-list__count:hover,.dashboard-list__count:focus,.dashboard-list__count:focus-visible{text-decoration:none}.dashboard-list__count--open{color:#f9b24f}.dashboard-list__count--in-progress{color:#5ba6ff}.dashboard-list__count--done{color:#49ba67}.dashboard-list__delete{border:0;border-radius:.3rem;background:transparent;width:2.35rem;min-width:2.35rem;height:2.35rem;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dashboard-list__delete img{width:1.25rem;height:1.25rem}.dashboard-list__delete:focus,.dashboard-list__delete:focus-visible{outline:none;box-shadow:none}@media(max-width:768px){.dashboard-list__item{padding:.6rem;gap:.35rem;align-items:flex-start;min-width:0;overflow:hidden}.dashboard-list__content{display:flex;flex-wrap:wrap;align-items:flex-start;row-gap:.35rem;column-gap:.5rem;min-width:0}.dashboard-list__title{flex:1 1 100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-list__stats{flex:1 1 100%;flex-wrap:wrap;gap:.5rem;white-space:normal}.dashboard-list__delete{width:1.85rem;min-width:1.85rem;height:1.85rem}}.project-detail{display:grid;gap:.75rem}.project-detail__back{width:fit-content;display:inline-flex;align-items:center;gap:.45rem;color:var(--page-primary);text-decoration:none;font-weight:600}.project-detail__back-icon{width:1rem;height:1rem;flex-shrink:0}.admin-page{display:grid;gap:1rem}.admin-flash{margin:0;padding:.65rem .85rem;border-radius:.3rem;border:1px solid var(--page-border);font-size:.9rem;line-height:1.35}.admin-flash--success{background:#49ba671f;border-color:#49ba6759;color:#cfead7}.admin-flash--error{background:#c75a5a24;border-color:#c75a5a73;color:#f0d0d0}.admin-panel{border:1px solid var(--page-border);border-radius:.35rem;background:var(--page-surface);padding:1.1rem}.admin-panel__title{margin:0;font-size:1.1rem}.admin-panel__hint{margin:.45rem 0 1rem;color:var(--page-muted);font-size:.9rem}.admin-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem;margin-bottom:1rem}.admin-panel__heading-copy{min-width:0}.admin-panel__add-user-button{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0}.admin-panel__add-user-icon{display:none}.admin-list{margin:0;padding:0;list-style:none;display:grid;gap:.75rem}.admin-list__item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid var(--page-border);border-radius:.3rem;background:var(--page-secondary);padding:.7rem}.admin-list__identity{min-width:0}.admin-list__name{margin:0;font-weight:600;overflow-wrap:anywhere}.admin-list__meta{margin:.2rem 0 0;color:var(--page-muted);font-size:.9rem;overflow-wrap:anywhere}.admin-list__actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.admin-inline-form{display:inline-flex;align-items:center;gap:.4rem}.admin-inline-form__label{font-size:.82rem;color:var(--page-muted)}.admin-inline-form select{min-width:7rem;height:2rem;border-color:#ffffff1f;background:#ffffff0a;color:var(--page-muted);padding:0 .5rem;font-size:.82rem;line-height:1.2}.admin-inline-form option{font-size:.82rem;color:var(--page-muted);background:var(--page-surface)}.admin-list__actions .button--compact{min-height:2rem}@media(max-width:768px){.admin-panel__heading{align-items:center}.admin-list__item{grid-template-columns:1fr;align-items:stretch}.admin-list__actions{justify-content:flex-start}.admin-inline-form{width:100%;flex-wrap:wrap}.admin-inline-form select{min-width:0;flex:1 1 12rem}}.project-list{display:grid;gap:1rem}.project-list--loading{opacity:.65;pointer-events:none;transition:opacity .12s ease-in}.project-list--loading:before{content:"Loading board...";display:inline-block;font-size:.82rem;color:var(--page-muted)}.project-card{padding:1.25rem;border:1px solid var(--page-border);border-radius:.35rem;background:var(--page-surface)}.project-card__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.project-card__header h2{margin:0;font-size:1.2rem}.task-form{margin-bottom:1rem}.task-form__label{display:block;margin-bottom:.4rem;font-size:.86rem;font-weight:600;color:#eee}.task-form__controls{display:flex;flex-flow:row nowrap;gap:.75rem;align-items:center}.task-form__controls .button{white-space:nowrap}.task-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.task-column{padding:.85rem;border:1px solid var(--page-border);border-radius:.3rem;background:var(--page-secondary)}.task-column h3{margin:0 0 .65rem;font-size:.82rem;letter-spacing:.06em;color:var(--page-primary)}.task-column__content{display:grid;gap:.65rem;min-height:4rem}.task-column__empty{margin:0;padding:1rem .25rem .25rem;font-size:.9rem;color:#eee}.task-column--drop-target{border-color:#f99933cc;box-shadow:0 0 0 2px #f9993333 inset}.task-card{padding:.55rem .6rem .6rem;border-radius:.3rem;border:1px solid var(--page-border);background:var(--page-secondary-soft);border-left-width:.35rem;cursor:grab;user-select:none;-webkit-user-select:none}.task-card h4{margin:0;font-size:.9rem;line-height:1.25}.task-card__label{display:block;margin:.45rem 0 .3rem;font-size:.78rem;font-weight:600;color:#eee}.task-card textarea{min-height:4.25rem;padding:.45rem .55rem;font-size:.84rem;user-select:text;-webkit-user-select:text}.task-card__header{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start}.task-card__header-actions{display:inline-flex;align-items:center;gap:.35rem}.task-card__comment-toggle{margin-top:.35rem;border:0;background:transparent;color:var(--page-muted);font:inherit;font-size:.75rem;font-weight:600;padding:0;cursor:pointer}.task-card__comment-panel{margin-top:.15rem}.task-card__comment-text{margin:0 0 .45rem;white-space:pre-wrap;color:var(--page-muted);font-size:.84rem;line-height:1.45}.task-card__comment-actions{margin-top:.45rem;display:flex;gap:.45rem;flex-wrap:wrap}.task-card__actions{margin-top:.45rem;display:flex;justify-content:flex-start;align-items:center;gap:.5rem;border-top:1px solid var(--page-border)}.task-card__mobile-move{display:none;gap:.35rem}.task-card__mobile-move .button:disabled{opacity:.4;cursor:not-allowed}.task-card__delete-button{border:0;border-radius:.3rem;background:transparent;width:1.85rem;height:1.85rem;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.task-card__delete-button img{width:.92rem;height:.92rem}.task-card__delete-button:focus,.task-card__delete-button:focus-visible{outline:none;box-shadow:none}.task-card--open{border-left-color:#f9b24f}.task-card--in-progress{border-left-color:#5ba6ff}.task-card--done{border-left-color:#49ba67}.task-card--dragging{opacity:.65;cursor:grabbing}.task-status-badge{border:1px solid var(--page-border);border-radius:999px;background:#ffffff0d;color:var(--page-fg);display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;font:inherit;cursor:default}.task-status-badge__dot{width:.45rem;height:.45rem;border-radius:50%;background:currentColor}.task-status-badge--open{color:#f9b24f}.task-status-badge--in-progress{color:#5ba6ff}.task-status-badge--done{color:#49ba67}button.task-status-badge{cursor:pointer}.empty-state{margin:0;padding:.25rem;font-size:.9rem;color:#eee}@media(max-width:768px){.board__header h1{font-size:1.35rem;line-height:1.15}.board__title{min-width:0;flex:0 1 auto}.board__header-actions{flex-wrap:nowrap;flex:0 0 0}[data-user-header-actions]:not([hidden]){display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:.35rem;width:100%;flex-direction:row-reverse}[data-user-header-actions]:not([hidden]) .button--ghost{display:inline-flex;align-items:center;justify-content:center;padding:.45rem;min-width:auto;line-height:1}.board__user-name,.board__logout-label{display:none}.board__title-icon{height:1.8rem}.page-shell{width:min(100% - 1.5rem,72rem);padding:1rem 0}.board-guest-gate{min-height:50vh;padding:2.25rem 1.25rem}.board__header-inner{width:min(100% - 1.5rem,72rem)}.board__add-project-button{min-width:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--page-primary)!important}.board__admin-button{min-width:auto!important;padding:.45rem!important;line-height:1!important}.board__add-project-label,.board__admin-label{display:none}.admin-panel__add-user-button{min-width:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--page-primary)!important}.admin-panel__add-user-label{display:none}.admin-panel__add-user-icon{display:block}.project-form__controls,.task-columns{grid-template-columns:1fr}.task-card{cursor:default}.task-card__mobile-move{display:inline-flex;margin-top:.5rem}}
