@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;700&display=swap";*{box-sizing:border-box;margin:0;padding:0;text-decoration:none;list-style:none}:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{color:#1d2939;background:linear-gradient(#eef3f8 0%,#dde7f1 100%);font-family:Inter,Noto Sans JP,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#ffffffe6 0,#0000 32%),linear-gradient(#eef3f8 0%,#dde7f1 100%);min-width:1280px;margin:0;overflow:hidden}#root{height:100svh}#auth-screen{place-items:center;min-height:100svh;padding:24px;display:grid}.auth-card{background:#fffffff0;border:1px solid #cfd8e3;border-radius:28px;width:min(100%,440px);overflow:hidden;box-shadow:0 20px 45px #0f172a1f}.auth-loading-card{max-width:440px}.auth-card-header{color:#fff;background:linear-gradient(135deg,#101828f5 0%,#21436ef2 100%);padding:28px 28px 20px}.auth-eyebrow{letter-spacing:.18em;color:#fff;margin:0 0 8px;font-size:.74rem;font-weight:700}.auth-card-header h1{color:#fff;margin:0 0 10px;font-size:1.9rem;line-height:1.2}.auth-description{color:#fff;margin:0;font-size:.92rem;line-height:1.6}.auth-tab-row{grid-template-columns:repeat(2,1fr);padding:20px 20px 0;display:grid;transform:translateY(1px)}.auth-tab-row,.auth-tab-button:first-of-type{border-radius:14px 0 0}.auth-tab-row,.auth-tab-button:last-of-type{border-radius:0 14px 0 0}.auth-tab-button{color:#64748b;cursor:pointer;background:#edf3f9;border:1px solid #d7e2ee;min-height:44px;font-weight:700}.auth-tab-button.active{color:#0f172a;background:#fff;border-bottom-color:#fff}.auth-form-panel{background:#fff;border:1px solid #d7e2ee;border-radius:0 0 20px 20px;gap:10px;margin:0 20px 20px;padding:24px 20px 20px;display:grid}.auth-field-label{color:#475467;margin:0;font-size:.87rem;font-weight:600}.auth-field{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;width:100%;min-height:40px;padding:8px 12px}.auth-field:focus{outline-offset:1px;border-color:#60a5fa;outline:2px solid #93c5fd}.auth-message,.app-error-message{color:#fff;margin:0;font-size:.85rem}.auth-submit-button{color:#fff;cursor:pointer;background:#1d4ed8;border:0;border-radius:10px;min-height:48px;margin-top:10px;padding:0 14px;font-weight:700}.auth-submit-button:disabled{opacity:.7;cursor:wait}#app-shell{grid-template-rows:auto minmax(0,1fr);gap:16px;width:min(100% - 48px,1760px);height:100svh;margin:0 auto;padding:16px 24px;display:grid;overflow:hidden}#app-layout{grid-template-columns:minmax(280px,360px) minmax(320px,520px) minmax(520px,1fr);gap:16px;min-height:0;display:grid}.app-column{gap:16px;height:100%;min-height:0;display:grid;overflow:hidden}.app-panel{background:#fffffff0;border:1px solid #cfd8e3;border-radius:18px;box-shadow:0 14px 40px #0f172a14}.app-header-panel{color:#f8fafc;background:linear-gradient(135deg,#101828f5 0%,#21436ef2 100%);padding:20px 24px}.pad-16{padding:16px}#app-header{margin-bottom:0}.app-header-top-row{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}#app-header h1{color:#fff;letter-spacing:2px;margin:8px 0 10px;font-size:2rem;line-height:1.1}.app-section-description{color:#fff;margin:0;font-size:.95rem}.app-session-icon-box{justify-items:center;gap:6px;display:grid}.app-session-icon{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff38;border-radius:999px;width:48px;height:48px;font-size:1rem;font-weight:700}.app-session-caption{color:#fff;text-align:center;word-break:break-word;max-width:180px;margin:0;font-size:.76rem}#make-tasks,#daily-tasks,#overdue-tasks,#completed-tasks{min-height:0;overflow:hidden}#daily-tasks,#overdue-tasks,#completed-tasks{grid-template-rows:auto minmax(0,1fr);display:grid}#daily-tasks{order:-1}#make-tasks h2,#daily-tasks h2,#overdue-tasks h2,#completed-tasks h2,#task-calendar h2{color:#0f172a;margin:0 0 16px;font-size:1.1rem}#task-form{align-content:start;gap:10px;display:grid}.section-scroll-body{align-content:start;min-height:0;padding-right:2px;display:grid;overflow:auto}.task-input-label{color:#475467;margin:0;font-size:.87rem;font-weight:600}.task-input-field,.daily-tasks-date-input,.task-edit-input{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;width:100%;min-height:36px;padding:8px 12px}.task-input-field:focus,.daily-tasks-date-input:focus,.task-edit-input:focus{outline-offset:1px;border-color:#60a5fa;outline:2px solid #93c5fd}.task-input-error{color:#dc2626;margin:0;font-size:.85rem}.task-submit-button,.task-edit-button,.task-delete-button,.task-save-button,.task-status-button,.daily-tasks-nav-button{cursor:pointer;border:0;border-radius:10px;min-height:40px;padding:0 14px;font-weight:700}.task-submit-button,.task-save-button{color:#fff;background:#1d4ed8}.task-submit-button{letter-spacing:.01em;min-height:46px;margin-top:16px;font-size:.96rem}.task-edit-button,.daily-tasks-nav-button{color:#166534;background:#dcfce7}.task-delete-button{color:#b91c1c;background:#fee2e2}.task-status-button{color:#1d4ed8;background:#dbeafe;width:fit-content;margin-top:10px}.daily-tasks-header{grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;margin-bottom:12px;display:grid}.task-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.task-item{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #dbe4ee;border-radius:14px;padding:10px 12px}.task-main-row{grid-template-rows:auto auto;grid-template-columns:22px minmax(0,1fr) auto 72px;align-items:center;gap:4px 8px;display:grid}.task-action-group{grid-area:1/4/3;grid-template-rows:repeat(2,minmax(40px,auto));align-self:start;justify-items:stretch;gap:6px;width:72px;display:grid}.task-edit-button,.task-delete-button{width:100%;min-width:0;min-height:34px;padding:0 10px;font-size:.82rem}.task-checkbox{grid-area:1/1;margin:0}.task-title,.task-tag,.task-meta-text{margin:0}.task-title{color:#111827;grid-area:1/2;font-size:.94rem;line-height:1.3}.task-tag{color:#1d4ed8;white-space:nowrap;background:#eff6ff;border-radius:999px;grid-area:1/3;padding:4px 8px;font-size:.74rem;font-weight:700}.task-meta-text{color:#475467;grid-area:2/2/auto/4;font-size:.82rem;line-height:1.25}.task-status-button{grid-area:2/2/auto/4;min-height:32px;margin-top:0;padding:0 10px;font-size:.8rem}.task-edit-row{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px;margin-top:8px;display:grid}.empty-message{color:#667085;margin:0}.task-item-error{color:#dc2626;margin:8px 0 0;font-size:.8rem}#calendar-panel{scrollbar-width:thin;height:100%;max-height:none;margin-bottom:16px;overflow:hidden}#task-calendar{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}#task-calendar .fc{--fc-border-color:#d9e2ec;--fc-button-bg-color:#1d4ed8;--fc-button-border-color:#1d4ed8;--fc-button-hover-bg-color:#1e40af;--fc-button-hover-border-color:#1e40af;--fc-button-active-bg-color:#1e3a8a;--fc-button-active-border-color:#1e3a8a;--fc-today-bg-color:#2563eb14;--fc-event-bg-color:#2563eb;--fc-event-border-color:#2563eb;height:100%;min-height:0}#task-calendar .fc-toolbar-title{font-size:1rem}footer{text-align:center;color:#f8fafc;background:linear-gradient(135deg,#101828f5 0%,#21436ef2 100%);border-radius:18px}@media (width<=1200px){body{min-width:0;overflow:auto}#app-layout{grid-template-columns:1fr;gap:32px;height:auto}#app-shell{width:min(96%,1760px);height:auto;padding:16px 0;display:block;overflow:visible}#app-header{margin-bottom:32px}.app-header-top-row{flex-direction:column}.app-session-icon-box{justify-items:start}.app-column{gap:32px;height:auto;overflow:visible}#calendar-panel{height:auto;max-height:none;margin-bottom:0;overflow:visible}#task-calendar{height:550px;display:block;overflow:hidden}#task-calendar .fc{height:auto}.fc .fc-toolbar{flex-direction:column-reverse;gap:8px}#make-tasks h2,#daily-tasks h2,#overdue-tasks h2,#completed-tasks h2,#task-calendar h2{margin:0 0 16px}#make-tasks h2,#daily-tasks h2,#overdue-tasks h2,#completed-tasks h2,#task-calendar .fc-toolbar-chunk h2{margin:8px 0}footer{margin-top:24px}}
