:root{color-scheme:light;font-family:Inter,BIZ UDPGothic,Yu Gothic UI,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--ink: #171d35;--muted: #626b7c;--quiet: #9299a8;--paper: #f8f5f7;--panel: #ffffff;--line: #e4dce3;--line-strong: #cbbcc8;--blue: #ff5168;--blue-dark: #d93a53;--blue-soft: #fff0f3;--green: #008c7b;--red: #e5485f;--amber: #b87908;--purple: #202747;--shadow: 0 14px 40px rgba(23, 29, 53, .11)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.auth-shell{min-height:100vh;background:linear-gradient(135deg,rgba(255,81,104,.12),transparent 34%),linear-gradient(315deg,rgba(32,39,71,.08),transparent 40%),var(--paper)}.auth-page{width:min(1180px,100%);margin:0 auto;padding:18px}.auth-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px}.auth-brand{display:inline-flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--ink);padding:0;font-size:18px;font-weight:900}.auth-nav{display:inline-flex;gap:8px}.auth-nav button{min-height:38px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:0 14px;font-weight:900}.auth-nav button.selected{border-color:#ff516873;background:var(--blue-soft);color:var(--blue-dark)}.auth-nav button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.auth-hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.78fr);gap:26px;align-items:center;min-height:calc(100vh - 94px);padding:34px 0}.auth-copy{display:grid;gap:18px}.auth-kicker{width:fit-content;border:1px solid rgba(255,81,104,.24);border-radius:999px;background:#fff;color:var(--blue-dark);padding:6px 12px;font-size:13px;font-weight:900}.auth-copy h1{max-width:760px;margin:0;color:#17202a;font-size:clamp(38px,6vw,72px);line-height:1.05}.auth-copy p{max-width:680px;margin:0;color:var(--muted);font-size:17px;line-height:1.9}.auth-cta-row{display:flex;flex-wrap:wrap;gap:10px}.auth-feature-strip{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}.auth-feature-strip span{display:inline-flex;align-items:center;gap:7px;border-radius:8px;background:#fff;color:var(--muted);padding:9px 11px;font-size:13px;font-weight:900}.auth-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:760px}.auth-feature-grid article{display:grid;gap:7px;min-width:0;border:1px solid rgba(228,220,227,.9);border-radius:8px;background:#ffffffc2;padding:12px}.auth-feature-grid svg{color:var(--blue)}.auth-feature-grid strong{font-size:14px}.auth-feature-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.auth-preview,.auth-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:18px;box-shadow:var(--shadow)}.auth-preview{display:grid;gap:14px}.brand-mark{display:grid;width:46px;height:46px;place-items:center;overflow:hidden;border:1px solid rgba(228,220,227,.9);border-radius:12px;background:#fff;box-shadow:0 8px 20px #171d3514}.brand-mark img{display:block;width:38px;height:38px;object-fit:contain}.auth-panel{width:min(440px,100%);justify-self:end}.auth-panel-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.auth-panel-header button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:8px;background:#f5eef2;color:var(--muted)}.auth-panel h2{margin:0 0 8px;font-size:28px}.auth-panel-header p{margin:0 0 16px;color:var(--muted);line-height:1.7}.preview-month{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:14px}.preview-month header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.preview-month header strong{font-size:22px}.preview-month header span,.preview-card span{color:var(--muted);font-size:12px;font-weight:900}.preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.preview-grid div{min-height:88px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px}.preview-grid div.selected{border-color:var(--blue);background:var(--blue-soft)}.preview-grid span{display:block;font-weight:900}.preview-grid b{display:grid;gap:2px;margin-top:18px;border-left:4px solid var(--green);border-radius:4px;background:var(--blue-soft);color:var(--blue-dark);padding:4px 6px;font-size:13px}.preview-grid b small{color:var(--muted);font-size:10px}.preview-card{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;background:#fff;padding:14px}.preview-card.muted{border-left-color:var(--green)}.preview-card.accent{border-left-color:var(--purple);background:#fbf8ff}.preview-card strong{display:block;margin-top:6px;font-size:20px}.preview-card p{margin:6px 0 0;color:var(--muted);line-height:1.6}.auth-form,.event-form{display:grid;gap:16px}label,.field-block{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:13px;font-weight:700}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}input[readonly]{background:#f7f9fb;color:var(--ink);cursor:default}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{border-color:var(--blue);box-shadow:0 0 0 3px #ff516826;outline:none}.primary-button,.secondary-button,.icon-button,.logout-button,.view-tabs button,.calendar-toolbar button,.event-actions button,.event-actions a,.auth-switch button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:6px;text-decoration:none}.primary-button{min-height:40px;padding:0 14px;background:var(--blue);color:#fff;font-weight:800}.primary-button:hover{background:var(--blue-dark)}.primary-button:disabled{cursor:not-allowed;opacity:.55}.secondary-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.primary-button.compact{min-height:36px}.secondary-button.compact{min-height:36px;padding:0 14px}.primary-button.full,.secondary-button.full{width:100%}.secondary-button{min-height:40px;padding:0 13px;background:#eef3f7;color:var(--ink);font-weight:800}.icon-button{width:40px;min-width:40px;min-height:40px;background:#eef3f7;color:var(--ink)}.inline-add-row,.person-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.person-picker{position:relative;display:grid;gap:8px}.person-picker-layer{position:absolute;z-index:45;top:calc(100% + 6px);right:0;left:0;display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;box-shadow:var(--shadow);max-height:min(320px,56vh);overflow:auto}.person-picker-layer header{display:flex;align-items:center;justify-content:space-between;gap:8px}.person-picker-layer header button,.person-picker-list button{border:0;border-radius:6px;background:#f3f6f9;color:var(--ink)}.person-picker-layer header button{display:grid;width:30px;height:30px;place-items:center}.person-picker-list{display:grid;gap:6px}.person-picker-list button{min-height:38px;padding:0 10px;text-align:left}.person-create-layer{max-height:min(520px,76vh);padding:12px}.person-create-fields{display:grid;gap:12px}.secondary-button:hover{background:#e0e8ef}.auth-switch{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px}.auth-switch button{background:transparent;color:var(--blue);font-weight:800}.auth-hint{margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.form-error,.notice{border-radius:8px;padding:12px 14px}.form-error,.notice.danger{margin:0;background:#d84a3a1a;color:#9c3126}.notice{margin:16px 0;border:1px solid rgba(185,120,5,.24);background:#b978051a;color:#745018}.app-notice{width:min(1480px,calc(100% - 36px));margin:14px auto 0}.install-tip{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;width:min(1480px,calc(100% - 36px));margin:12px auto 0;border:1px solid rgba(255,81,104,.28);border-radius:8px;background:#fff;padding:10px;box-shadow:0 10px 24px #171d3514}.install-tip strong{display:block;font-size:14px}.install-tip p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.install-tip .primary-button{min-height:34px;padding:0 12px;font-size:12px}.install-tip .icon-button{width:34px;height:34px;min-height:34px;background:#f5eef2;color:var(--muted)}.calendar-shell{min-height:100vh;background:var(--paper)}.app-header{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:18px;border-bottom:1px solid var(--line);background:#fffffff5;padding:10px 18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand-row{display:flex;align-items:center;gap:11px}.brand-row strong,.brand-row span{display:block}.brand-row span{margin-top:2px;color:var(--muted);font-size:12px}.view-tabs{display:inline-grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-self:center;width:min(480px,100%);border:1px solid var(--line);border-radius:8px;background:#f7f9fb;padding:3px}.view-tabs button{min-height:36px;background:transparent;color:var(--muted);font-weight:800}.view-tabs button.selected{background:#fff;color:var(--blue);box-shadow:0 1px 5px #171d351f}.logout-button{min-height:38px;padding:0 12px;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:800}.logout-button:hover{background:#eef3f7;color:var(--ink)}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:12px;width:min(1480px,100%);margin:0 auto;padding:12px}.calendar-panel,.day-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 10px 24px #171d3512}.calendar-panel{min-width:0;overflow:hidden}.day-panel{align-self:start;min-width:0;padding:12px}.calendar-toolbar{display:grid;grid-template-columns:38px minmax(150px,1fr) 38px auto;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:8px}.calendar-toolbar h1{margin:0;text-align:center;font-size:24px;font-weight:900}.calendar-toolbar button{min-height:36px;padding:0 11px;background:#eef3f7;color:var(--ink);font-weight:800}.calendar-toolbar .today-button{border:1px solid var(--line-strong);background:#fff}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--line);gap:1px}.weekday{min-height:30px;background:#f7f9fb;color:var(--muted);padding:7px;text-align:center;font-size:13px;font-weight:900}.day-cell{position:relative;display:grid;min-height:122px;border:0;border-radius:0;background:#fff;color:var(--ink);text-align:left}.day-select{display:grid;grid-template-rows:24px minmax(76px,1fr);width:100%;min-height:100%;border:0;border-radius:0;background:transparent;padding:6px;color:inherit;text-align:left}.day-cell:hover,.day-select:hover{background:#fff8fa;outline:2px solid rgba(255,81,104,.28);outline-offset:-2px}.day-cell.outside{background:#f6f8fa;color:#9aa7b0}.day-cell.selected{background:#fff7fa;outline:2px solid var(--blue);outline-offset:-2px}.day-number{display:inline-grid;width:26px;height:26px;place-items:center;border-radius:999px;font-size:13px;font-weight:900}.day-cell.today .day-number{background:var(--red);color:#fff}.day-add{position:absolute;right:6px;top:6px;display:grid;width:22px;height:22px;place-items:center;border:1px solid var(--line);border-radius:999px;background:#ffffffe6;color:var(--blue);opacity:0;transition:opacity .15s ease}.day-cell:hover .day-add,.day-add:focus-visible{opacity:1}.day-events{display:grid;align-content:start;gap:4px;min-width:0}.event-chip,.more-chip{display:flex;min-width:0;align-items:center;gap:4px;overflow:hidden;border-radius:4px;padding:3px 5px;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.event-chip{border-left:3px solid var(--blue);background:var(--blue-soft);color:var(--blue-dark)}.event-chip svg{flex:0 0 auto}.event-chip.type-call{border-left-color:#5b6ee1;background:#f0f2ff;color:#394bb0}.event-chip.type-meal{border-left-color:var(--red);background:#fff0f3;color:var(--blue-dark)}.event-chip.type-cafe{border-left-color:#b87908;background:#fff7e8;color:#895900}.event-chip.type-other{border-left-color:var(--green);background:#edf9f6;color:#087061}.event-chip-time{margin-right:.25em}.event-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.status-needs_reply{border-left-color:var(--red)!important}.status-booked,.status-done{border-left-color:var(--green)!important}.status-coordinating,.status-place_deciding,.status-needs_booking,.status-tentative,.status-hold{border-left-color:var(--amber)!important}.status-ended,.status-canceled{opacity:.62}.more-chip{background:#eef1f4;color:var(--muted)}.day-summary p,.next-card span{margin:0;color:var(--muted);font-size:13px;font-weight:800}.day-summary h2{margin:4px 0 0;font-size:24px}.day-summary h2 span{display:inline-flex;margin-left:8px;border-radius:999px;background:#eef3f7;color:var(--muted);padding:3px 7px;vertical-align:middle;font-size:11px;font-weight:900}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.mini-stats div{border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px}.mini-stats svg{color:var(--blue)}.mini-stats span{display:block;margin-top:4px;font-size:22px;font-weight:900}.mini-stats p{margin:2px 0 0;color:var(--muted);font-size:12px}.next-card{margin-top:10px;border:1px solid rgba(0,133,111,.25);border-radius:8px;background:#00856f14;padding:11px}.next-card strong{display:block;margin-top:7px;overflow-wrap:anywhere}.next-card p{margin:6px 0 0;color:var(--muted)}.panel-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0}.ad-banner-slot{display:grid;min-height:72px;align-content:center;justify-items:center;gap:3px;margin-top:10px;border:1px dashed #d7c9d5;border-radius:8px;background:repeating-linear-gradient(135deg,#ff51680d 0,#ff51680d 8px,#2027470a 8px,#2027470a 16px),#fff;color:var(--quiet)}.ad-banner-slot span{font-size:11px;font-weight:900}.ad-banner-slot strong{color:var(--muted);font-size:13px;font-weight:900}.ad-banner-slot .adsbygoogle{width:100%;min-height:72px}.form-panel{margin:0 0 16px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;padding:15px}.form-panel h3{margin:0 0 14px}.form-section{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:14px}.form-section:first-child{border-top:0;padding-top:0}.form-section h4{margin:0;color:var(--ink);font-size:14px}.date-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:10px 11px}.date-choice span{color:var(--muted);font-size:13px;font-weight:800}.date-choice strong{text-align:right}.radio-group{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0;margin:0;border:0;padding:0}.radio-group legend{grid-column:1 / -1;margin-bottom:2px;color:var(--muted);font-size:13px;font-weight:800}.radio-group label{display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 10px;color:var(--ink)}.radio-group input{width:auto;min-width:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.time-picker{position:relative;display:grid;gap:8px}.time-trigger{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:42px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 11px;text-align:left}.time-trigger svg{color:var(--blue)}.time-trigger strong{font-size:16px}.time-trigger span{color:var(--muted);font-size:12px;font-weight:900}.time-trigger:disabled{cursor:not-allowed;opacity:.55}.time-tbd-option{display:inline-flex;width:fit-content;min-height:28px;align-items:center;gap:7px;color:var(--muted);font-size:13px;font-weight:900}.time-tbd-option input{width:auto;min-width:0}.time-picker-panel{position:absolute;z-index:50;top:calc(100% + 4px);right:0;left:0;display:grid;gap:8px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;box-shadow:var(--shadow);pointer-events:auto}.time-picker-head{display:flex;align-items:center;justify-content:flex-end;gap:8px}.time-picker-head span,.time-picker-subtitle{color:var(--muted);font-size:12px;font-weight:900}.time-picker-head button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:8px;background:#f5eef2;color:var(--muted)}.time-shortcuts,.time-option-grid{display:grid;gap:6px}.time-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.time-more-button{display:flex;min-height:36px;align-items:center;justify-content:center;gap:6px;border:1px dashed rgba(100,116,139,.34);border-radius:999px;background:#fff8fa;color:var(--ink);font-size:12px;font-weight:900}.time-more-button svg{color:var(--blue);transition:transform .16s ease}.time-more-button[aria-expanded=true] svg{transform:rotate(90deg)}.time-option-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:150px;overflow:auto;padding-right:2px}.time-shortcuts button,.time-option-grid button{min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:0 8px;font-size:12px;font-weight:900}.time-shortcuts button:hover,.time-option-grid button:hover{border-color:var(--line-strong);background:#fff8fa;color:var(--ink)}.time-shortcuts button.selected,.time-option-grid button.selected{border-color:#ff51686b;background:var(--blue-soft);color:var(--blue-dark)}.status-picker{display:grid;gap:8px}.status-picker>span{color:var(--muted);font-size:13px;font-weight:800}.status-picker>div{display:flex;flex-wrap:wrap;gap:7px}.status-picker button{min-height:32px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:0 10px;font-size:12px;font-weight:900}.status-picker button:hover{border-color:var(--line-strong);background:#f4f7fa;color:var(--ink)}.status-picker button.selected{border-color:#ff516859;background:var(--blue-soft);color:var(--blue-dark)}.details-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--blue-dark);font-weight:900}.details-toggle:hover{background:#f4f8ff}.form-details{display:grid;gap:12px}.record-only-form .record-section{border:1px solid rgba(106,85,200,.18);border-radius:8px;background:#fbf8ff;padding:12px}.record-only-form .record-section h4{margin:0;color:var(--purple)}.record-only-form textarea{background:#fff}.day-panel .form-grid{grid-template-columns:1fr}.day-panel .form-actions{flex-direction:column}.day-panel .form-actions button{width:100%}.form-actions{display:flex;gap:10px}.day-events-list{display:grid;gap:10px}.event-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;background:#fff;padding:12px}.event-time{color:var(--blue-dark);font-weight:900}.event-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.event-title-line strong{min-width:0;overflow-wrap:anywhere}.event-title-line span{border-radius:999px;background:#eef3f7;color:var(--muted);padding:3px 8px;font-size:11px;font-weight:900}.event-meta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:8px;color:var(--muted);font-size:13px}.event-meta span{display:inline-flex;align-items:center;gap:5px}.event-main p{margin:9px 0 0;color:var(--ink);line-height:1.6;overflow-wrap:anywhere}.event-record-summary{display:grid;gap:6px;margin-top:10px;border:1px solid var(--line);border-left:3px solid var(--purple);border-radius:8px;background:#fbf8ff;padding:9px 10px}.event-record-summary>span{color:var(--muted);font-size:12px;font-weight:900}.event-record-summary p{display:-webkit-box;margin:0;overflow:hidden;font-size:13px;line-height:1.55;white-space:pre-line;-webkit-box-orient:vertical;-webkit-line-clamp:2}.event-record-summary strong{display:block;color:var(--purple);font-size:11px}.impression-text{border-left:3px solid var(--purple);padding-left:9px}.event-actions{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;justify-content:flex-end}.event-actions button,.event-actions a{display:inline-flex;width:64px;min-height:34px;align-items:center;justify-content:center;gap:4px;background:#eef3f7;color:var(--ink);padding:0 8px;font-size:12px;font-weight:900}.event-actions button:not(.edit-action):not(.record-action){width:34px;font-size:0}.event-actions .record-action{background:#f4efff;color:var(--purple)}.event-actions .delete-action{background:transparent;color:var(--muted);opacity:.72}.event-actions button:hover,.event-actions a:hover{background:#e0e8ef}.workspace-view{width:min(1280px,100%);margin:0 auto;padding:18px}.section-heading{margin-bottom:16px}.section-heading h1{margin:0;font-size:28px}.section-heading p{margin:6px 0 0;color:var(--muted)}.people-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}.people-workspace{display:grid;gap:16px}.person-card{position:relative;display:grid;grid-template-columns:minmax(220px,.95fr) minmax(240px,1.15fr) auto;align-content:start;align-items:center;align-self:start;gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px 14px;box-shadow:0 8px 20px #171d350f}.person-card.selected{border-color:#ff5168bf;background:#fff7fa;box-shadow:0 0 0 3px #ff516824,0 8px 20px #171d350f}.person-card.editing{border-color:#6a55c88c;background:#fbf9ff}.person-card.selected:before{position:absolute;top:10px;bottom:10px;left:0;width:4px;border-radius:0 999px 999px 0;background:var(--blue);content:""}.person-card header,.person-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.person-card h2{display:flex;align-items:baseline;gap:8px;margin:0;font-size:22px}.person-age-inline{border-radius:999px;background:#f1f4f7;color:var(--muted);padding:3px 7px;font-size:12px;font-weight:900}.person-card header .person-age-inline{background:#f1f4f7;color:var(--muted);padding:3px 7px;font-size:12px}.person-main-fields{min-width:0;flex:1}.inline-profile-field{display:grid;gap:5px;margin:0 0 8px}.inline-profile-field span{color:var(--muted);font-size:12px;font-weight:900}.inline-profile-field input,.inline-profile-field select{min-height:40px}.person-card header p{margin:3px 0 0;color:var(--muted)}.person-card header span{border-radius:999px;background:var(--blue-soft);color:var(--blue-dark);padding:5px 9px;font-size:12px;font-weight:900}.person-edit-button{display:grid;width:36px;height:36px;min-width:36px;place-items:center;border:0;border-radius:8px;background:#eef3f7;color:var(--muted)}.person-edit-button:hover,.person-card.editing .person-edit-button{background:#f4efff;color:var(--purple)}.person-facts{display:flex;flex-wrap:wrap;gap:7px}.person-facts span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#f1f4f7;color:var(--muted);padding:5px 9px;font-size:12px;font-weight:800}.person-next{display:grid;width:100%;text-align:left;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px;cursor:default}.person-card>.person-facts{grid-column:1}.person-card>.person-next,.person-card>.editing-field{grid-column:2;grid-row:1 / span 2}.person-card>footer{grid-column:3;grid-row:1 / span 2}.person-card>.inline-app-create{grid-column:2}.person-card.editing{grid-template-columns:minmax(0,1fr);align-items:stretch}.person-card.editing>.person-facts,.person-card.editing>.person-next,.person-card.editing>.editing-field,.person-card.editing>footer,.person-card.editing>.inline-app-create{grid-column:1;grid-row:auto}.person-next.empty{border-style:dashed;color:var(--muted);background:#fff}.person-next span{display:block;color:var(--muted);font-size:12px;font-weight:900}.person-next strong{display:block;margin-top:4px;overflow-wrap:anywhere}.person-next:hover{border-color:var(--line);background:#f8fafc}.profile-app-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.inline-app-create{margin-top:-2px}.person-next.editing-field{gap:6px;cursor:default}.person-next.editing-field textarea{min-height:86px;resize:vertical}.inline-profile-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:stretch;width:100%}.inline-profile-actions button{flex:1}.person-detail{grid-column:1 / -1;align-self:start;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 20px #171d350f}.person-timeline{display:grid;gap:14px;padding:14px}.person-edit-panel{margin:14px}.inline-event-editor{margin:0}.timeline-group{display:grid;gap:10px}.timeline-group h3{margin:0;color:var(--muted);font-size:13px}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px}.settings-panel{display:grid;gap:16px;align-content:start;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;box-shadow:0 8px 20px #171d350f}.settings-panel header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start}.settings-panel header svg{color:var(--blue)}.settings-panel h2{margin:0;font-size:20px}.settings-panel p{margin:4px 0 0;color:var(--muted);line-height:1.6}.toggle-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:13px}.toggle-row input{width:20px;min-width:20px;height:20px;margin-top:2px;accent-color:var(--blue)}.toggle-row strong,.toggle-row small{display:block}.toggle-row small{margin-top:4px;color:var(--muted);line-height:1.5}.app-name-list{display:flex;flex-wrap:wrap;gap:8px}.app-name-pill{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--ink);padding:4px 5px 4px 11px;font-weight:900}.app-name-pill button{display:grid;width:24px;height:24px;place-items:center;background:#e9eff5;color:var(--muted)}.settings-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.settings-inline-form button{min-height:40px}.empty-state{border:1px dashed var(--line-strong);border-radius:8px;background:#f8fafc;padding:22px;color:var(--muted);text-align:center}.empty-state.compact{padding:14px;text-align:left}@media(max-width:1120px){.app-header{grid-template-columns:1fr}.view-tabs{justify-self:stretch}.logout-button{justify-self:end}.calendar-layout,.people-grid{grid-template-columns:1fr}}@media(max-width:760px){.auth-page{padding:12px}.auth-header{align-items:flex-start;min-height:0}.auth-brand{font-size:15px}.auth-nav{flex-wrap:wrap;justify-content:flex-end}.auth-nav button{min-height:34px;padding:0 10px;font-size:12px}.auth-hero{grid-template-columns:1fr;min-height:0;gap:18px;padding:28px 0}.auth-copy{gap:14px}.auth-copy h1{font-size:38px}.auth-copy p{font-size:15px;line-height:1.8}.auth-cta-row{display:grid;grid-template-columns:1fr}.auth-feature-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.auth-feature-strip span{padding:8px 9px;font-size:12px}.auth-feature-grid{grid-template-columns:1fr;gap:8px}.auth-feature-grid article{grid-template-columns:auto minmax(0,1fr);gap:4px 8px;padding:10px}.auth-feature-grid article p{grid-column:2}.auth-panel,.auth-preview{width:100%;padding:14px}.auth-panel{position:fixed;z-index:60;right:0;bottom:0;left:0;max-height:min(78vh,620px);overflow:auto;border-width:1px 0 0;border-radius:18px 18px 0 0;padding:16px 14px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -18px 42px #171d3538}.auth-panel:before{display:block;width:42px;height:4px;border-radius:999px;background:#d9cbd6;margin:0 auto 12px;content:""}.auth-panel-header{gap:10px}.auth-panel h2{font-size:22px}.auth-panel-header p{margin-bottom:12px;font-size:13px;line-height:1.55}.auth-panel .auth-form{gap:12px}.auth-panel input{min-height:44px}.preview-grid div{min-height:72px}body{background:#f6f8fb;-webkit-text-size-adjust:100%;text-size-adjust:100%}input,select,textarea{font-size:16px}.calendar-shell{display:block;min-height:100vh;height:auto;overflow:visible;padding-bottom:0;scroll-padding-bottom:calc(166px + env(safe-area-inset-bottom))}.app-header{position:relative;z-index:24;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:8px;border-bottom:1px solid #dbe3eb;background:#fffffffa;padding:6px 10px;-webkit-backdrop-filter:none;backdrop-filter:none}.brand-row{grid-column:1;grid-row:1;min-width:0}.brand-mark{width:32px;height:32px;border-radius:8px;font-size:14px}.brand-row strong{font-size:14px}.view-tabs{position:fixed;z-index:30;right:0;bottom:0;left:0;grid-column:auto;grid-row:auto;width:100%;border-width:1px 0 0;border-radius:0;background:#fffffff7;padding:5px 8px calc(5px + env(safe-area-inset-bottom));box-shadow:0 -10px 24px #171d351f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.logout-button{grid-column:2;grid-row:1;width:34px;min-height:34px;border-radius:8px;padding:0;justify-self:end;font-size:0}.view-tabs button{display:grid;gap:2px;min-height:44px;min-width:0;border-radius:8px;padding:5px 2px;font-size:11px;line-height:1.1}.view-tabs button svg{justify-self:center}.view-tabs button.selected{background:var(--blue-soft);box-shadow:none}.calendar-layout,.workspace-view{padding:6px}.workspace-view{flex:1 1 auto;min-height:0;overflow:auto;padding-bottom:calc(86px + env(safe-area-inset-bottom));overscroll-behavior:contain}.app-notice{position:fixed;z-index:70;right:10px;bottom:calc(124px + env(safe-area-inset-bottom));left:10px;width:auto;margin:0;box-shadow:0 12px 28px #171d352e}.install-tip{grid-template-columns:minmax(0,1fr) auto;width:auto;margin:6px;padding:9px}.install-tip .primary-button{grid-column:2}.install-tip .icon-button{grid-column:2;grid-row:1;width:30px;height:30px;min-height:30px;align-self:start}.install-tip .primary-button+.icon-button{grid-row:auto}.calendar-layout{display:flex;flex-direction:column;gap:6px;height:auto;min-height:0;overflow:visible}.calendar-panel,.day-panel{border-radius:8px;box-shadow:none}.calendar-panel{flex:0 0 auto}.calendar-toolbar{position:relative;grid-template-columns:36px minmax(0,1fr) 36px;gap:6px;border-bottom:0;padding:5px 6px 42px}.calendar-toolbar .today-button{position:absolute;right:10px;bottom:6px;min-height:28px;border-radius:999px;padding:0 10px;font-size:12px}.calendar-toolbar h1{font-size:20px}.calendar-toolbar button{min-height:36px;border-radius:8px;padding:0}.weekday{min-height:22px;padding:3px 2px;font-size:11px}.day-cell{min-height:56px}.day-select{grid-template-rows:18px minmax(32px,1fr);padding:2px}.day-add{display:none}.day-number{width:18px;height:18px;font-size:11px}.day-cell.selected{outline-width:2px}.day-cell.today .day-number{background:var(--blue);color:#fff}.event-chip,.more-chip{border-left-width:2px;border-radius:4px;padding:1px 3px;font-size:9.5px;line-height:1.1}.event-chip{gap:2px}.event-chip svg{width:10px;height:10px}.event-chip-time{display:none}.event-chip-name{display:block;overflow:hidden;text-overflow:ellipsis}.day-events{gap:1px}.day-events .event-chip:nth-of-type(n+3){display:none}.day-panel{order:2;align-self:stretch;min-height:0;overflow:visible;overscroll-behavior:contain;scrollbar-gutter:stable;border:0;background:transparent;padding:0}.day-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:8px 10px}.day-summary h2{margin:0;font-size:15px}.day-summary p{font-size:12px}.mini-stats,.next-card{display:none}.panel-actions{display:block;margin:0}.panel-actions .primary-button,.panel-actions .secondary-button.full:first-child{position:static;display:inline-flex;width:100%;min-height:42px;align-items:center;justify-content:center;border-radius:8px;padding:0 12px;box-shadow:none;font-size:14px}.panel-actions .primary-button svg,.panel-actions .secondary-button.full:first-child svg{width:18px;height:18px}.panel-actions .secondary-button.full:not(:first-child){width:100%;margin-top:8px}.form-panel{border-radius:8px;margin:6px 0;padding:10px}.time-picker-panel{position:static;margin-top:2px;box-shadow:0 8px 18px #171d3514}.form-panel h3{font-size:18px}.day-events-list{gap:6px;margin-top:6px;padding-bottom:calc(126px + env(safe-area-inset-bottom))}.ad-banner-slot{position:fixed;z-index:28;right:0;bottom:calc(58px + env(safe-area-inset-bottom));left:0;min-height:54px;margin:0;border-width:1px 0 0;border-radius:0;background:#fff;box-shadow:0 -8px 18px #171d3514}.ad-banner-slot strong{font-size:12px}.panel-actions,.form-grid,.radio-group,.mini-stats,.event-row,.people-grid,.settings-grid,.settings-inline-form{grid-template-columns:1fr}.event-row{grid-template-columns:42px minmax(0,1fr) auto;gap:7px;border-left-width:3px;padding:8px}.event-time{font-size:12px}.event-title-line strong{font-size:14px}.event-meta{gap:6px 9px;margin-top:5px;font-size:11px}.event-title-line span{padding:2px 6px;font-size:10px}.event-actions{gap:5px;align-self:start;justify-content:flex-end;max-width:118px}.event-actions button,.event-actions a{width:52px;min-height:32px;height:32px;padding:0 6px;font-size:11px}.event-actions button:not(.edit-action):not(.record-action){width:32px}.section-heading h1{font-size:22px}.section-heading p{font-size:13px;line-height:1.5}.person-card footer{align-items:stretch;flex-direction:column}.person-card header{align-items:flex-start;flex-direction:row}.person-card{grid-template-columns:minmax(0,1fr);gap:9px;padding:12px}.person-card>.person-facts,.person-card>.person-next,.person-card>.editing-field,.person-card>footer,.person-card>.inline-app-create{grid-column:1;grid-row:auto}.person-card h2{font-size:19px}.person-card header p{margin-top:1px;font-size:13px}.person-facts{gap:5px}.person-facts span{padding:4px 7px;font-size:11px}.person-next{padding:8px}.person-next span{font-size:11px}.person-next strong{display:-webkit-box;margin-top:3px;overflow:hidden;font-size:13px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.brand-row span{display:none}.view-tabs{gap:2px}}
