.purchase-settings,.purchase-editor,.purchase-calendar{background:#fff;border:1px solid var(--line);border-radius:7px;padding:24px;min-width:0}.purchase-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.purchase-heading h2{font-size:19px;letter-spacing:-.5px;line-height:1.5}.purchase-heading .quiet{font-size:11px;white-space:nowrap}.purchase-settings .field{margin-bottom:0}#settings-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px) auto;gap:18px;align-items:start}#settings-form .button{margin-top:30px;font-size:11px;min-height:44px;padding:12px 16px;gap:12px}#settings-errors{grid-column:1 / -1}.purchase-settings .field-hint{font-size:11px}#basis-hint{margin-top:12px}.purchase-data-note{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:20px 0 14px;padding-top:17px;border-top:1px solid var(--line);font-size:11px}#plan-note{color:var(--muted)}#storage-note{color:#087a55;max-width:580px}#storage-note.storage-failed{color:#984120}.purchase-toolbar{display:flex;gap:18px;flex-wrap:wrap;padding-bottom:14px}.purchase-toolbar button{font-size:11px}.purchase-toolbar #erase-plan{color:var(--muted);margin-left:auto}.purchase-privacy{color:var(--muted);max-width:840px}.purchase-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0 30px}.purchase-stat{border:1px solid var(--line);border-top:3px solid var(--priority-color);border-radius:5px;background:#fff;padding:20px 22px;min-width:0}.priority-overdue{--priority-color: #b42318;--priority-bg: #fff0ed;--priority-text: #99201a}.priority-today{--priority-color: #c4471c;--priority-bg: #fff3e7;--priority-text: #a63b14}.priority-soon{--priority-color: #806314;--priority-bg: #fff8d9;--priority-text: #735611}.priority-scheduled{--priority-color: #59636b;--priority-bg: #edf0f0;--priority-text: #4c565d}.priority-received{--priority-color: #087a55;--priority-bg: #eaf5ef;--priority-text: #086347}.purchase-stat h3{font-size:9px;letter-spacing:1px;color:var(--priority-text);font-weight:600}.purchase-stat strong{display:block;font-size:36px;font-weight:500;letter-spacing:-1px;line-height:1.2;margin:12px 0 7px;font-variant-numeric:tabular-nums}.purchase-stat p{font-size:10px;color:var(--muted)}.purchase-workspace{display:grid;grid-template-columns:370px minmax(0,1fr);gap:24px;align-items:start}.purchase-editor .purchase-heading h2{font-size:17px}.purchase-editor .purchase-heading{align-items:start}.purchase-editor .text-button{font-size:10px;white-space:nowrap}.purchase-draft-note{margin-bottom:22px;font-size:11px}.purchase-editor .field{margin-bottom:18px}.purchase-editor .field label{font-size:11px}.purchase-editor .field input,.purchase-editor .field select{font-size:13px;min-height:44px}.purchase-duration-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.purchase-duration-fields label{min-height:34px;align-items:start;line-height:1.5}.purchase-editor .field-hint{font-size:10px}.purchase-progress{border:0;border-top:1px solid var(--line);margin:28px 0 24px;padding:20px 0 0;min-width:0}.purchase-progress legend{font-size:12px;font-weight:500;padding-right:12px}.purchase-warning{font-size:11px;line-height:1.7;background:#fff3e7;border:1px solid #e9cfb8;padding:12px;border-radius:4px;color:#874015}.purchase-errors{padding:12px;background:#fff0ed;border:1px solid #e9c4bd;color:#99201a;border-radius:4px;font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:14px 0}.purchase-editor [aria-invalid=true],.purchase-settings [aria-invalid=true]{border-color:#b42318}.purchase-filters{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.purchase-filters label{display:block;font-size:10px;margin-bottom:8px;color:var(--muted)}.purchase-filters select{width:100%;font-size:11px;border:1px solid #cbd0d0;border-radius:4px;background:#fff;color:var(--ink);padding:12px;min-height:42px}.purchase-row{padding:22px 24px;border:1px solid var(--line);border-left:3px solid var(--priority-color);border-radius:5px;background:#fff;margin-bottom:14px;min-width:0}#purchase-list{max-height:850px;overflow-y:auto;scrollbar-width:thin;padding-right:4px}.purchase-row-heading{display:flex;gap:16px;align-items:start;justify-content:space-between}.purchase-row-heading h3{font-size:16px;line-height:1.5;letter-spacing:-.3px;overflow-wrap:anywhere;min-width:0}.purchase-badge{display:inline-flex;white-space:nowrap;font-size:9px;font-weight:600;background:var(--priority-bg);color:var(--priority-text);padding:5px 8px;border-radius:3px}.purchase-stage{font-size:10px;color:var(--muted);margin-top:5px}.purchase-next{font-size:14px;font-weight:500;margin:14px 0;color:var(--priority-text)}.purchase-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-block:1px solid var(--line);padding:14px 0}.purchase-timeline span{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}.purchase-timeline strong{font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.purchase-need{margin-top:12px;font-size:10px;color:var(--muted)}.purchase-row-note{font-size:11px;color:var(--muted);margin-top:7px}.purchase-row-actions{display:flex;gap:22px;justify-content:flex-end;margin-top:16px}.purchase-row-actions button{font-size:11px}.purchase-row-actions button:last-child{color:var(--muted)}.purchase-empty{background:#fff;border:1px dashed var(--line);border-radius:5px;padding:36px 24px;text-align:center;color:var(--muted);font-size:14px}.purchase-calendar{margin:32px 0 0;padding:28px}.purchase-calendar .purchase-heading{align-items:end}.purchase-calendar .eyebrow{font-size:9px;margin-bottom:10px}.purchase-calendar h2{font-size:26px}.calendar-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.calendar-controls h3{font-size:14px;font-weight:500;text-transform:capitalize;min-width:155px;text-align:center}.calendar-arrow{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:4px;width:34px;min-height:34px;font-size:17px}.calendar-controls .text-button{font-size:11px}.calendar-legend{display:flex;gap:22px;font-size:10px;color:var(--muted);margin-top:17px;flex-wrap:wrap}.calendar-month-picker{display:flex;align-items:center;gap:10px;margin-right:auto;color:var(--ink)}.calendar-month-picker input{font:inherit;font-size:12px;min-width:0;border:1px solid var(--line);padding:7px 9px;border-radius:4px;color:var(--ink);background:#fff}.calendar-legend span{display:inline-flex;align-items:center;gap:7px}.calendar-legend i{display:block;width:9px;height:9px;border-radius:2px}.milestone-start{--milestone-color: #a83a14;--milestone-bg: #fff0e9}.milestone-order{--milestone-color: #303940;--milestone-bg: #e9edef}.milestone-receipt{--milestone-color: #086347;--milestone-bg: #eaf5ef}.calendar-legend i{background:var(--milestone-color)}.calendar-scroll{position:relative;max-height:750px;overflow:auto;margin-top:22px;border:1px solid var(--line);border-radius:4px;scrollbar-width:thin}#calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:880px}.calendar-weekday{position:sticky;top:0;z-index:1;background:#eceeec;padding:12px;font-size:9px;font-weight:600;letter-spacing:1px;text-align:center;border-right:1px solid var(--line)}.calendar-day{min-height:110px;padding:10px 8px;border-top:1px solid var(--line);border-right:1px solid var(--line);background:#fff}.calendar-day.other-month{background:#f8f9f7}.calendar-day.current-day{background:#fff8f3}.calendar-date{font-size:11px;color:var(--muted);margin-bottom:8px}.other-month .calendar-date{color:#7d858a}.current-day .calendar-date{color:var(--accent);font-weight:700}.calendar-event{width:100%;display:block;border:0;border-left:2px solid var(--milestone-color);border-radius:3px;padding:7px 6px;margin:6px 0;background:var(--milestone-bg);color:var(--milestone-color);text-align:left}.calendar-event span{display:block;font-size:8px;line-height:1.5}.calendar-event strong{display:block;font-size:10px;line-height:1.5;font-weight:500;overflow-wrap:anywhere}.calendar-footnote{margin-top:16px;font-size:10px}.calendar-hint{font-size:11px}.calendar-scroll-hint{display:none;font-size:10px;color:var(--muted);margin-top:14px}.purchase-results{min-width:0}@media(max-width:1100px){.purchase-workspace{grid-template-columns:330px minmax(0,1fr);gap:18px}.purchase-editor{padding:20px}#settings-form{grid-template-columns:minmax(0,1fr) 260px}#settings-form .button{margin-top:0;grid-column:1 / 3;justify-self:start}.purchase-calendar .purchase-heading{align-items:start;flex-direction:column}.purchase-row{padding:20px}}@media(max-width:850px){.purchase-workspace{grid-template-columns:1fr;gap:28px}.purchase-editor{padding:24px}.purchase-summary{gap:10px}.purchase-stat{padding:18px 15px}.purchase-stat p{font-size:9px}.calendar-scroll-hint{display:block}.purchase-toolbar #erase-plan{margin-left:0}}@media(max-width:600px){.purchase-settings,.purchase-editor{padding:22px 18px}.purchase-settings .purchase-heading{align-items:start;flex-direction:column;gap:7px}#settings-form{grid-template-columns:1fr;gap:16px}#settings-form .button{grid-column:auto;width:100%;justify-content:space-between}.purchase-summary{grid-template-columns:1fr 1fr;margin-block:22px 26px}.purchase-stat strong{font-size:30px}.purchase-stat{padding:17px 18px}.purchase-toolbar{gap:14px 18px}.purchase-toolbar button{min-height:32px}.purchase-data-note{font-size:10px}.purchase-heading h2{font-size:17px}.purchase-heading .quiet{font-size:10px}.purchase-row{padding:18px 16px}.purchase-row-heading{gap:12px;flex-direction:column}.purchase-row-heading h3{font-size:16px}.purchase-timeline{gap:10px}.purchase-timeline strong{font-size:11px}.purchase-next{font-size:14px}.purchase-calendar{padding:22px 18px}.purchase-calendar h2{font-size:23px}.calendar-controls{gap:10px}.calendar-controls h3{min-width:145px;font-size:13px}.calendar-legend{gap:14px;font-size:9px}.purchase-filters{gap:10px}.purchase-filters select{font-size:10px;padding:11px 8px}.purchase-duration-fields{gap:12px}}@media(max-width:360px){.purchase-timeline{grid-template-columns:1fr;gap:12px}.purchase-timeline div{display:flex;justify-content:space-between;gap:10px}.purchase-timeline span{margin-bottom:0}.calendar-controls{gap:6px}.calendar-controls h3{min-width:132px;font-size:12px}}
