*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:radial-gradient(ellipse at 30% 20%,#1c1535,#0d0b18 60%,#07060f);background-attachment:fixed;color:#e2e4f0;min-height:100vh}button{cursor:pointer;border:none;background:none;font-family:inherit}input{font-family:inherit;font-size:14px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}.add-btn{width:100%;text-align:left;padding:8px 10px;border-radius:6px;color:#fff6;font-size:13px;font-weight:500;transition:background-color .15s,color .15s}.add-btn:hover{background-color:#ffffff0f;color:#ffffffb3}.add-form{display:flex;flex-direction:column;gap:6px;margin-top:4px}.add-form input{width:100%;padding:8px 10px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:6px;outline:none;font-size:13px;color:#e2e4f0;transition:border-color .15s,box-shadow .15s}.add-form input::placeholder{color:#ffffff4d}.add-form input:focus{border-color:#5e6ad2;box-shadow:0 0 0 3px #5e6ad240}.add-form-actions{display:flex;gap:6px;align-items:center}.add-form-submit{background-color:#5e6ad2;color:#fff;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:600;transition:background-color .15s,box-shadow .15s}.add-form-submit:hover{background-color:#6b77e0;box-shadow:0 2px 8px #5e6ad266}.add-form-cancel{color:#ffffff59;font-size:14px;line-height:1;padding:2px 7px;border-radius:5px;transition:background-color .1s,color .1s}.add-form-cancel:hover{background-color:#ffffff12;color:#ffffffb3}.board-list-page{padding:40px}.board-list-header{margin-bottom:28px;display:flex;align-items:center;gap:8px;justify-content:space-between}.app-name{font-size:15px;font-weight:700;color:#e2e4f0;letter-spacing:.01em;display:flex;align-items:center;gap:6px}.app-name:before{content:"";display:inline-block;width:18px;height:18px;background-image:url(/favicon.svg);background-size:contain;background-repeat:no-repeat}.user-name{font-size:12px;font-weight:500;color:#ffffff80;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:4px 12px}.logout-btn{font-size:12px;font-weight:500;color:#ffffff73;padding:6px 14px;border-radius:6px;border:1px solid transparent;display:flex;align-items:center;gap:6px;margin-left:auto;transition:color .15s,background-color .15s,border-color .15s}.logout-btn:before{content:"";display:inline-block;width:14px;height:14px;background-color:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E");mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;flex-shrink:0}.logout-btn:hover{color:#f87171;background-color:#ef44441a;border-color:#ef444433}.board-list-header h1{color:#ffffffb3;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.board-list-header h1:before{content:"·";color:#5e6ad2;margin-right:8px;font-size:20px;line-height:0;vertical-align:middle}.board-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.board-card{width:192px;height:96px;background:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px;color:#e2e4f0;font-weight:600;font-size:14px;cursor:pointer;transition:background-color .15s,border-color .15s,box-shadow .2s,transform .15s;display:flex;align-items:flex-start}.board-card:hover{background:#ffffff1a;border-color:#ffffff29;box-shadow:0 8px 24px #5e6ad233,0 2px 8px #0000004d;transform:translateY(-2px)}.board-card:active{transform:translateY(0)}.board-create{width:192px}.board-create .add-btn{width:192px;height:96px;background:transparent;border:1px dashed rgba(255,255,255,.12);border-radius:10px;color:#ffffff59;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;transition:background-color .15s,border-color .15s,color .15s}.board-create .add-btn:hover{background:#ffffff0a;border-color:#5e6ad280;color:#ffffffa6}.board-create .add-form{background:#ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px}.card{background:#ffffff12;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 12px;margin-bottom:6px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:13px;line-height:1.5;color:#dde1f0;cursor:grab;transition:border-color .15s,box-shadow .15s,transform .1s,background .15s}.card:hover{background:#ffffff1a;border-color:#ffffff29;box-shadow:0 4px 16px #00000059;transform:translateY(-1px)}.card:active{cursor:grabbing;transform:translateY(0)}.card.dragging{box-shadow:0 0 0 1px #5e6ad2,0 16px 40px #5e6ad259;border-color:#5e6ad299;background:#5e6ad21f;transform:rotate(1deg);cursor:grabbing}.card-delete{color:#ffffff4d;font-size:14px;line-height:1;padding:2px 5px;border-radius:4px;opacity:0;transition:opacity .1s,background-color .1s,color .1s;flex-shrink:0;margin-top:2px}.card:hover .card-delete{opacity:1}.card-delete:hover{background-color:#ef444426;color:#ef4444}.column{width:272px;flex-shrink:0;position:relative;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;display:flex;flex-direction:column;max-height:calc(100vh - 110px)}.column:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:11px;pointer-events:none;z-index:0}.column>*{position:relative;z-index:1}.column-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:2px 4px}.column-header h3{font-size:13px;font-weight:600;color:#e2e4f0;letter-spacing:.01em;flex:1}.column-delete{color:#ffffff59;font-size:16px;line-height:1;padding:3px 7px;border-radius:6px;transition:background-color .15s,color .15s;opacity:0}.column:hover .column-delete{opacity:1}.column-delete:hover{background-color:#ef444426;color:#ef4444}.card-list{flex:1;overflow-y:auto;min-height:8px;border-radius:8px;transition:background-color .2s;padding:2px 0}.card-list.dragging-over{background-color:#5e6ad214}.board-view{display:flex;flex-direction:column;height:100vh;overflow:hidden}.board-loading{color:#ffffff80;padding:24px;font-size:14px}.board-header{display:flex;align-items:center;gap:14px;padding:10px 20px;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0}.board-header h2{color:#e2e4f0;font-size:15px;font-weight:600;letter-spacing:.01em}.back-btn{color:#ffffff73;font-size:13px;font-weight:500;padding:4px 10px;border-radius:6px;border:1px solid transparent;transition:background-color .15s,color .15s,border-color .15s}.back-btn:hover{background-color:#ffffff0f;border-color:#ffffff14;color:#ffffffbf}.columns-container{display:flex;flex-direction:row;align-items:flex-start;gap:12px;padding:16px 20px;overflow-x:auto;flex:1}.add-list-form{flex-shrink:0;width:272px}.add-list-form .add-btn{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#ffffff80;font-size:13px;font-weight:500;padding:10px 14px;text-align:left;transition:background-color .15s,border-color .15s,color .15s}.add-list-form .add-btn:hover{background:#ffffff1a;border-color:#ffffff24;color:#fffc}.add-list-form .add-form{background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:380px;background:#ffffff12;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:36px 32px}.auth-logo{font-size:15px;font-weight:700;color:#fff9;margin-bottom:28px;letter-spacing:.01em}.auth-logo-dot{color:#5e6ad2;font-size:22px;line-height:0;vertical-align:middle;margin-right:4px}.auth-title{font-size:20px;font-weight:700;color:#e2e4f0;margin-bottom:24px;line-height:1.3}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-size:12px;font-weight:600;color:#ffffff80;letter-spacing:.04em;text-transform:uppercase}.auth-field input{background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#e2e4f0;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.auth-field input::placeholder{color:#ffffff40}.auth-field input:focus{border-color:#5e6ad2;box-shadow:0 0 0 3px #5e6ad233}.auth-error{font-size:13px;color:#f87171;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;padding:8px 12px}.auth-submit{margin-top:4px;background:#5e6ad2;color:#fff;border-radius:8px;padding:11px;font-size:14px;font-weight:600;transition:background-color .15s,box-shadow .15s,opacity .15s}.auth-submit:hover:not(:disabled){background:#6b77e0;box-shadow:0 4px 12px #5e6ad266}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin-top:20px;font-size:13px;color:#fff6;text-align:center}.auth-switch-btn{color:#8b96e9;font-size:13px;font-weight:500;text-decoration:underline;text-underline-offset:2px;transition:color .1s}.auth-switch-btn:hover{color:#a5aef0}
