:root{color:#303039;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f7f8;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}html{background:#f7f7f8}body{background:#f7f7f8;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}img,svg{max-width:100%;display:block}#root{min-height:100vh}*{box-sizing:border-box}body{color:#303039;background:radial-gradient(circle at 8% 0,#ffe8ef9e,#0000 28%),radial-gradient(circle at 95% 12%,#e1ebffb8,#0000 30%),#f7f7f8;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh}.header{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border-bottom:1px solid #e8e8f0e6;justify-content:space-between;align-items:center;gap:16px;padding:14px 28px;display:flex;position:sticky;top:0;box-shadow:0 8px 30px #3030480a}.eyebrow{color:#9b9ba8;letter-spacing:.14em;margin:0 0 3px;font-size:9px;font-weight:800}.header h1{letter-spacing:-.03em;margin:0;font-size:19px}.header p:not(.eyebrow){color:#858592;margin:3px 0 0;font-size:11px}.header-badge{color:#777789;background:#fff;border:1px solid #e8e8ef;border-radius:999px;padding:6px 9px;font-size:11px}.header-actions{align-items:center;gap:8px;display:flex}.invite-button,.logout-button{color:#777789;background:#fff;border:1px solid #e1e1e9;border-radius:8px;padding:6px 9px;font-size:11px}.invite-button{color:#72549d;background:#faf6ff;border-color:#d9c9f1}.logout-button:hover{background:#f7f7fb}.calendar-container{max-width:1120px;margin:30px auto 56px;padding:0 20px}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.calendar-header>button{color:#555565;background:#fff;border:1px solid #e3e3e9;border-radius:12px;width:42px;height:42px;font-size:25px;transition:all .15s}.calendar-header>button:hover,.today-button:hover{background:#f0f0f5}.month-title{align-items:center;gap:14px;display:flex}.month-selects{align-items:center;gap:4px;display:flex}.month-selects select{color:#303039;background:#fff;border:1px solid #e3e3e9;border-radius:9px;padding:7px 24px 7px 9px;font-size:16px;font-weight:700}.today-button{color:#666675;background:#fff;border:1px solid #e3e3e9;border-radius:9px;padding:7px 12px;font-size:12px}.data-tools{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:14px;display:flex}.data-button{color:#3d5dad;background:#eef3ff;border:1px solid #dfe4f5;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700}.data-button.secondary{color:#a85b7a;background:#fff3f8;border-color:#ecdfe7}.data-message{color:#5c6f86;margin:0 0 12px;font-size:12px}.invite-code{color:#72549d;background:#faf6ff;border:1px solid #d9c9f1;border-radius:10px;margin:0 0 10px;padding:9px 12px;font-size:12px}.invite-code strong{letter-spacing:.12em;margin-left:5px}.calendar-card{background:#fffffff0;border:1px solid #e5e5ebe6;border-radius:18px;overflow:hidden;box-shadow:0 18px 45px #28284114,0 2px 5px #28284108}.weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekdays{background:#fcfcfd;border-bottom:1px solid #ececf1}.weekdays>div{text-align:center;color:#9494a1;padding:13px 8px;font-size:12px;font-weight:700}.weekdays .sunday,.day-number.sunday{color:#d5798c}.weekdays .saturday,.day-number.saturday{color:#7895ce}.calendar-grid{background:#e9e9ef;gap:1px}.day{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;min-height:135px;padding:9px;transition:background .15s}.day:hover{background:#fcfcff;box-shadow:inset 0 0 0 1px #dfe5fa}.day:focus-visible{outline-offset:-2px;outline:2px solid #8aaae5}.day.empty{cursor:default;background:#f8f8fa}.day.today{background:#f5f8ff;box-shadow:inset 0 0 0 2px #a7bce8}.day.selected-day{background:linear-gradient(145deg,#fffaff,#f4f7ff);position:relative;box-shadow:inset 0 0 0 2px #c4a7d9}.day.selected-day:after{content:"";background:#ad78b5;border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:7px}.day.period-day{background-color:#fff9fc}.day.period-open{outline-offset:-2px;background-image:repeating-linear-gradient(135deg,#c98fa817 0 2px,#0000 2px 7px);outline:1px dashed #b4709185}.day.period-closed{box-shadow:inset 0 0 0 999px #f5dae547}.period-marker{color:#aa6d89;justify-content:center;align-items:center;width:18px;height:18px;font-size:16px;line-height:1;display:inline-flex}.day-header{justify-content:space-between;align-items:center;gap:4px;margin-bottom:7px;display:flex}.day-number{color:#555563;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;font-size:12px;font-weight:700;display:inline-flex}.day.today .day-number{color:#fff;background:#5278c4}.holiday-label{color:#c75d7e;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:9px;font-weight:700;display:inline-flex;overflow:hidden}.events{flex-direction:column;gap:5px;display:flex}.event{text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:7px;align-items:center;gap:5px;width:100%;min-width:0;padding:6px 7px;font-size:11px;transition:filter .15s,transform .15s;display:flex;overflow:hidden}.event:hover{filter:brightness(.97);transform:translateY(-1px)}.event:focus-visible{outline-offset:1px;outline:2px solid #4b65b6b3}.event.me{color:#466cae;background:#e8f0ff}.event.wife{color:#aa5c76;background:#ffeaf0}.event.both{color:#6657a6;background:#f1ebff}.event-icon{flex:none;font-family:Apple Color Emoji,Segoe UI Emoji,sans-serif;font-size:13px}.event-title{-webkit-line-clamp:2;line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;max-height:2.6em;line-height:1.3;display:-webkit-box;overflow:hidden}.event-overflow{color:#8d8d9b;padding:2px 4px;font-size:10px;font-weight:700;display:block}.day-category-badges{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.day-category-badge{background:#ffffffb3;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;display:inline-flex}.event-list-panel{background:#ffffffd6;border:1px solid #e8e8ef;border-radius:16px;margin-top:24px;padding:20px;box-shadow:0 12px 32px #2828410b}.event-list-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.event-list-heading h2{letter-spacing:-.03em;margin:0;font-size:18px}.filter-button{color:#686875;background:#fff;border:1px solid #e1e1e9;border-radius:10px;min-height:38px;padding:8px 12px;font-size:12px}.filter-button.active{color:#6657a6;background:#f1ebff;border-color:#bca9f5}.event-list{gap:8px;display:grid}.event-list-item{color:#303039;text-align:left;background:#fff;border:1px solid #eeeef3;border-radius:12px;align-items:center;gap:10px;width:100%;min-width:0;padding:11px 12px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.event-list-item:hover{background:#fcfcff;border-color:#d9d9ea;transform:translateY(-1px);box-shadow:0 5px 16px #2828410f}.event-list-item.me{border-left:4px solid #82a5ed}.event-list-item.wife{border-left:4px solid #e99bb4}.event-list-item.both{border-left:4px solid #bca9f5}.event-list-icon{background:#f5f5fa;border-radius:9px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-family:Apple Color Emoji,Segoe UI Emoji,sans-serif;font-size:17px;display:inline-flex}.event-list-content{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.event-list-content strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.event-list-content small{color:#858592;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.event-list-kind{color:#8d8d9b;flex:none;font-size:10px}.event-list-empty{color:#8d8d9b;text-align:center;margin:0;padding:18px 8px 6px;font-size:12px}.day-detail-panel{background:linear-gradient(135deg,#fffafce6,#f7faffe6);border:1px solid #e8e8ef;border-radius:16px;margin-top:24px;padding:20px;box-shadow:0 12px 32px #2828410b}.day-detail-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.day-detail-header h2{letter-spacing:-.03em;margin:0;font-size:18px}.day-detail-list{gap:10px;margin-top:14px;display:grid}.day-detail-item{text-align:left;background:#ffffffe6;border:1px solid #ececf3;border-radius:12px;align-items:center;gap:10px;width:100%;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.day-detail-item:hover{border-color:#d6d4eb;box-shadow:0 5px 15px #2828410f}.day-detail-icon{background:#f5f5fa;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-family:Apple Color Emoji,Segoe UI Emoji,sans-serif;font-size:16px;display:inline-flex}.day-detail-copy{flex-direction:column;gap:4px;display:flex}.day-detail-copy strong{font-size:13px}.day-detail-copy small{color:#838390;font-size:11px}.day-detail-empty{color:#8d8d9b;margin:12px 0 0;font-size:12px}.legend{color:#777784;flex-wrap:wrap;align-items:center;gap:18px;margin-top:16px;font-size:12px;display:flex}.legend>div{align-items:center;gap:7px;display:flex}.legend-dot{border-radius:50%;width:9px;height:9px}.legend-dot.me{background:#82a5ed}.legend-dot.wife{background:#e99bb4}.legend-dot.both{background:#bca9f5}.legend-hint{color:#a0a0aa;margin-left:auto}.notification-panel{background:#ffffffd1;border:1px solid #e8e8ef;border-radius:16px;margin-top:24px;padding:20px}.notification-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.notification-card{background:linear-gradient(#fff,#fbfbff);border:1px solid #ececf3;border-radius:14px;flex-direction:column;gap:10px;padding:18px;display:flex}.notification-card h3{letter-spacing:-.02em;margin:0;font-size:15px}.notification-card p{color:#666674;margin:0;font-size:12px;line-height:1.6}.notification-card .add-button{width:fit-content;margin-top:6px}.notification-card .add-button:disabled{cursor:not-allowed;opacity:.5}.notification-status{color:#7a7a87;font-size:11px}.fertility-panel{background:#ffffffd1;border:1px solid #e8e8ef;border-radius:16px;margin-top:24px;padding:20px}.fertility-header,.section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.fertility-header h2,.section-header h3{letter-spacing:-.03em;margin:0;font-size:18px}.period-button{color:#4f3a92;background:#f4f1ff;border:1px solid #d9d4fa;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:700}.period-summary{background:linear-gradient(135deg,#fffafc,#f5f9ff);border:1px solid #f0dfe8;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;font-size:13px;display:flex}.period-summary strong{color:#303039}.period-summary span{color:#7a7a87;font-weight:700}.cycle-section,.self-test-section{margin-top:20px}.cycle-list,.self-test-list{gap:12px;margin-top:12px;display:grid}.cycle-card,.self-test-item{background:#fff;border:1px solid #ececf3;border-radius:12px;padding:14px 15px}.cycle-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.cycle-number{color:#5d5d6d;font-size:12px;font-weight:700}.cycle-status{border-radius:999px;justify-content:center;align-items:center;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.cycle-status.open{color:#2f7b58;background:#e5f6ec}.cycle-status.closed{color:#9a5e7d;background:#f7eef5}.cycle-range,.cycle-metadata{color:#666674;margin:8px 0 0;font-size:12px}.cycle-result-row{gap:10px;margin-top:12px;display:flex}.cycle-edit-button,.edit-inline-button{color:#646477;background:#fff;border:1px solid #dfe0e9;border-radius:8px;margin-top:10px;padding:6px 9px;font-size:11px}.cycle-edit-form{border-top:1px solid #f0f0f5;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;padding-top:14px;display:grid}.cycle-edit-form .full-width{grid-column:1/-1}.cycle-edit-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.cycle-edit-actions button{border-radius:8px;padding:7px 10px;font-size:11px}.result-button{color:#666674;background:#fff;border:1px solid #e0e0e7;border-radius:9px;flex:1;padding:8px 10px;font-size:12px;font-weight:700}.result-button.selected{color:#496bb2;background:#edf3ff;border-color:#7ea3d9}.result-button.positive.selected,.result-button.positive.selected{color:#aa5c76;background:#ffeaf2;border-color:#d68ab0}.self-test-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.form-group.compact{margin-bottom:0}.form-group.compact.full-width{grid-column:1/-1}.selftest-submit{grid-column:1/-1;width:100%}.self-test-item{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.self-test-item strong{color:#303039;font-size:13px;display:block}.self-test-item small{color:#7e7e8b;margin-top:4px;font-size:11px;display:block}.self-test-item p{color:#4d4d5d;flex:1;margin:0;font-size:12px;line-height:1.5}.self-test-item-actions{flex:none;gap:6px;display:flex}.self-test-edit-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.self-test-edit-form .full-width{grid-column:1/-1}.self-test-edit-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.self-test-edit-actions button{border-radius:8px;padding:7px 10px;font-size:11px}.remove-inline-button{color:#b25959;background:#fffaf9;border:1px solid #efb5b5;border-radius:8px;padding:6px 8px;font-size:11px}.empty-note{color:#8d8d9b;margin:12px 0 0;font-size:12px}.category-panel{background:#ffffffd1;border:1px solid #e8e8ef;border-radius:16px;margin-top:24px;padding:20px}.category-create-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.category-submit{align-self:end}.category-list{gap:10px;margin-top:14px;display:grid}.category-item{background:#fff;border:1px solid #ececf3;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.category-item-actions{gap:6px;display:flex}.category-edit-form{grid-template-columns:minmax(0,1fr) 64px 42px auto auto;align-items:center;gap:6px;width:100%;display:grid}.category-edit-form input:not([type=color]){color:#303039;background:#fff;border:1px solid #dedee6;border-radius:8px;min-width:0;padding:7px 8px;font-size:12px}.category-edit-form input[type=color]{background:#fff;border:1px solid #dedee6;border-radius:7px;width:34px;height:30px;padding:2px}.category-edit-form button{border-radius:8px;padding:7px 9px;font-size:11px}.category-chip{border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.category-chip-icon{background:#fffc;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:inline-flex}.modal-overlay{z-index:100;background:#1c1c2d6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border:1px solid #ffffff80;border-radius:20px;width:100%;max-width:470px;max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 25px 80px #0000002e}.modal-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:25px;display:flex}.modal h2{letter-spacing:-.04em;margin:0;font-size:23px}.close-button{color:#777783;background:#f5f5f8;border:0;border-radius:50%;width:32px;height:32px;font-size:22px;line-height:1}.form-group{margin-bottom:18px}.form-group>label:not(.checkbox-label){color:#60606e;margin-bottom:8px;font-size:12px;font-weight:750;display:block}.form-group input:not([type=checkbox]),.form-group textarea,.form-group select{color:#303039;background:#fff;border:1px solid #dedee6;border-radius:10px;outline:none;width:100%;padding:11px 12px;font-family:inherit;font-size:14px;transition:border .15s,box-shadow .15s}.form-group textarea{resize:vertical;min-height:88px}.form-group input:not([type=checkbox]):focus,.form-group textarea:focus,.form-group select:focus{border-color:#91a8dd;box-shadow:0 0 0 3px #edf2ff}.member-select,.icon-select{gap:8px;display:grid}.member-select{grid-template-columns:repeat(3,1fr)}.member-select button{color:#686875;background:#fff;border:1px solid #e0e0e7;border-radius:10px;padding:10px}.member-select button.selected.me{color:#466cae;background:#e8f0ff;border-color:#82a5ed}.member-select button.selected.wife{color:#aa5c76;background:#ffeaf0;border-color:#e99bb4}.member-select button.selected.both{color:#6657a6;background:#f1ebff;border-color:#bca9f5}.icon-select{grid-template-columns:repeat(3,minmax(0,1fr))}.icon-option{color:#6f6f7d;background:#fff;border:1px solid #e5e5eb;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:66px;padding:9px 6px;display:flex}.icon-option>span{font-size:20px;line-height:1.1}.icon-option small{font-size:10px}.icon-option.selected{color:#4569aa;background:#f0f4ff;border-color:#8ca6df}.checkbox-group{margin:3px 0 18px}.checkbox-label{color:#555563;cursor:pointer;align-items:center;gap:9px;font-size:13px;display:flex}.checkbox-label input{accent-color:#5d7fc7;cursor:pointer;width:16px;height:16px;margin:0}.time-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-grid .form-group,.form-grid .form-group:last-child{margin-bottom:0}.view-panel{flex-direction:column;gap:20px;display:flex}.view-summary{background:linear-gradient(135deg,#fff6f8,#f5f7ff);border:1px solid #f0d9e2;border-radius:16px;align-items:center;gap:14px;padding:16px 18px;display:flex;box-shadow:inset 0 0 0 1px #fffc}.view-icon{color:#b45d7d;background:#ffe8f1;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;font-family:Apple Color Emoji,Segoe UI Emoji,sans-serif;font-size:24px;display:inline-flex;box-shadow:inset 0 0 0 1px #b45d7d14}.view-summary h3{letter-spacing:-.03em;color:#303039;margin:0;font-size:22px}.view-summary p{color:#7a7a87;margin:5px 0 0;font-size:12px}.detail-list{flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.detail-list>div{background:#fff;border:1px solid #f3f3f7;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.detail-list dt{color:#7a7d8b;font-size:12px;font-weight:700}.detail-list dd{color:#303039;text-align:right;margin:0;font-size:14px;font-weight:600}.detail-tag{background:#ffffffb3;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.detail-memo{background:linear-gradient(#fff,#fbfbff);border:1px solid #f0f0f5;border-radius:12px;padding:14px 16px}.detail-memo h4{color:#5f6170;margin:0 0 8px;font-size:12px}.detail-memo p{color:#40414a;white-space:pre-wrap;margin:0;line-height:1.6}.modal-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:26px;display:flex}.modal-actions-right{gap:8px;display:flex}.modal-actions button{border-radius:10px;padding:10px 16px;font-size:13px}.cancel-button{color:#666674;background:#fff;border:1px solid #dedee6}.add-button{color:#fff;background:#303039;border:1px solid #303039}.form-error{color:#b04f63;margin:10px 0 0;font-size:12px;line-height:1.5}.delete-button{color:#bb5757;background:#fff;border:1px solid #efb5b5}.delete-button:hover{background:#fff3f3}.auth-container{background:linear-gradient(135deg,#fff8fa,#f3f6ff);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{background:#fffffff0;border:1px solid #e8e8ef;border-radius:20px;width:100%;max-width:430px;padding:30px;box-shadow:0 20px 60px #28284114}.auth-panel h1{letter-spacing:-.04em;margin:0;font-size:25px}.auth-description{color:#858592;margin:9px 0 24px;font-size:13px;line-height:1.6}.auth-field{margin-bottom:16px}.auth-field label{color:#60606e;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.auth-field input,.auth-field select{color:#303039;background:#fff;border:1px solid #dedee6;border-radius:10px;width:100%;padding:11px 12px;font-size:14px}.auth-choice{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:18px;display:grid}.auth-choice button{color:#686875;background:#fff;border:1px solid #e0e0e7;border-radius:10px;padding:10px 8px;font-size:12px}.auth-choice button.selected{color:#4569aa;background:#f0f4ff;border-color:#8ca6df}.auth-submit{width:100%;margin-top:5px}.auth-submit:disabled{cursor:wait;opacity:.65}.auth-switch{color:#5d7fc7;background:0 0;border:0;width:100%;margin-top:14px;font-size:12px;display:block}.auth-loading{color:#777784;font-size:13px}@media (width<=700px){.header h1{font-size:17px}.header p:not(.eyebrow),.header-badge{display:none}.header-actions{margin-left:auto}.calendar-container{flex-direction:column;min-height:calc(100vh - 56px);margin:0;padding:8px 4px 0;display:flex}.month-title{gap:8px}.month-selects select{padding-right:20px;font-size:14px}.calendar-card{border-radius:10px;flex:auto;min-height:0}.day-detail-panel,.event-list-panel,.fertility-panel,.category-panel{padding:14px}.day-detail-header,.event-list-heading,.fertility-header,.section-header{align-items:flex-start}.day-detail-header .add-button{padding:8px 10px;font-size:11px}.day-detail-item{padding:10px 12px}.category-create-form,.self-test-form{grid-template-columns:1fr}.calendar-grid{gap:0}.day{min-height:120px}.header{padding:10px 12px}.month-title{flex-direction:column}.calendar-header{margin-bottom:12px}.calendar-header>button{width:36px;height:36px}.calendar-header{flex:none;margin-bottom:8px}.calendar-header>button{border-radius:10px;width:36px;height:36px;font-size:22px}.today-button{padding:6px 9px}.weekdays>div{padding:7px 2px;font-size:11px}.calendar-grid{grid-template-rows:repeat(6,minmax(0,1fr));height:calc(100vh - 145px)}.event-list-panel{padding:16px 12px}.event-list-heading{flex-direction:column;align-items:flex-start;gap:10px}.filter-button{width:100%}.day{height:100%;min-height:0;padding:4px 3px;overflow:hidden}.day-header{align-items:flex-start;margin-bottom:3px}.day-number{width:21px;height:21px;margin-bottom:2px;font-size:10px}.holiday-label{font-size:8px}.events{gap:2px;overflow:hidden}.event{border-radius:4px;gap:2px;min-height:17px;padding:2px 3px;font-size:9px;line-height:1.15}.event-icon{font-size:9px}.event-title{-webkit-line-clamp:2;line-clamp:2;word-break:break-all;max-height:2.3em}.legend-hint{width:100%;margin-left:0}.modal{padding:22px 18px}.view-summary{padding:14px 12px}.view-summary h3{font-size:18px}.detail-list>div{padding:10px 12px}.detail-list dd{font-size:13px}.member-select,.icon-select{grid-template-columns:repeat(3,1fr)}.auth-panel{padding:24px 18px}}
