:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;font-family:var(--font-sans);color:#111;background:#fafaf7;font-size:16px;line-height:1.45}*{box-sizing:border-box}::placeholder{color:#b5ad95;opacity:1;font-style:italic}html,body,#root{height:100%;margin:0;padding:0}.shell{flex-direction:column;height:100%;display:flex}.shell__header{border-bottom:1px solid #e5e5de;align-items:baseline;gap:1.25rem;padding:.5rem 1rem;display:flex}.shell__header h1{letter-spacing:.02em;margin:0;font-size:1rem;font-weight:500}.shell__breadcrumb{color:#555;flex-wrap:wrap;align-items:baseline;gap:.4rem;min-width:0;font-size:.85rem;display:flex}.shell__wordmark{color:#1a1a1a;text-transform:uppercase;letter-spacing:.08em;font-size:.88rem;font-weight:600;text-decoration:none}.shell__wordmark:hover{color:#000}.shell__breadcrumb .shell__crumb{color:#666;text-decoration:none}.shell__breadcrumb .shell__crumb:hover{color:#1a1a1a}.shell__crumb--current{color:#1a1a1a;font-weight:500}.shell__crumb-sep{color:#bbb}.shell__crumb-wearer{color:#888;margin-left:.3rem;font-size:.82rem}.shell__crumb-wearer-link{color:#5a4a36;text-decoration:none}.shell__crumb-wearer-link:hover{text-decoration:underline}.shell__hint{color:#999;margin:0 0 0 auto;font-size:.75rem}.shell__right-rail{background:#f8f8f2;border-left:1px solid #e5e5de;flex-direction:column;flex:none;width:220px;display:flex;overflow:hidden}.wearer-accordion{color:#333;background:#fbfbf5;border-bottom:1px solid #e5e5de;font-size:.78rem}.wearer-accordion__head{cursor:pointer;text-align:left;width:100%;font-size:inherit;color:inherit;background:0 0;border:none;align-items:baseline;gap:.4rem;padding:8px 12px;display:flex}.wearer-accordion__head:hover{background:#f4f0e8}.wearer-accordion__caret{color:#888;flex-shrink:0;width:.8rem}.wearer-accordion__label{color:#555;font-weight:500}.wearer-accordion__name{color:#1a1a1a;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.wearer-accordion__body{padding:0 12px 10px}.wearer-accordion__link-row{margin:0 0 6px}.wearer-accordion__link{color:#5a4a36;font-size:.78rem;text-decoration:none}.wearer-accordion__link:hover{text-decoration:underline}.wearer-accordion__date{color:#888;margin:0 0 6px;font-size:.72rem}.wearer-accordion__empty{color:#aaa;margin:0;font-style:italic}.wearer-accordion__list{margin:0;padding:0;list-style:none}.wearer-accordion__row{border-top:1px dashed #ece8df;justify-content:space-between;gap:6px;padding:2px 0;display:flex}.wearer-accordion__row:first-child{border-top:none}.wearer-accordion__row-name{color:#555;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wearer-accordion__row-value{color:#1a1a1a;font-variant-numeric:tabular-nums;flex-shrink:0}.file-actions{align-items:center;gap:4px;display:flex}.file-actions__name{color:#666;text-overflow:ellipsis;white-space:nowrap;max-width:240px;padding:0 4px;font-size:.75rem;font-style:italic;overflow:hidden}.file-actions__btn--ghost{color:#888;border-color:#eee}.file-actions__btn--ghost:hover{color:#333;background:#fafaf3}.file-actions__btn{color:#333;cursor:pointer;text-transform:lowercase;background:#fff;border:1px solid #ddd;border-radius:3px;padding:4px 10px;font-family:inherit;font-size:.8rem}.file-actions__btn:hover{background:#fafaf3}.file-actions__btn:disabled{color:#bbb;cursor:default;background:#f4f4ee}.file-actions__btn:disabled:hover{background:#f4f4ee}.file-actions__input{display:none}.settings{position:relative}.settings__popover{z-index:20;background:#fff;border:1px solid #ddd;border-radius:4px;flex-direction:column;gap:8px;min-width:200px;padding:10px 12px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 2px 8px #00000014}.settings__row{flex-direction:column;gap:4px;display:flex}.settings__label{color:#555;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.settings__choices{flex-direction:column;gap:2px;display:flex}.settings__choice{color:#222;cursor:pointer;align-items:center;gap:6px;font-size:.85rem;display:flex}.settings__choice--inline{flex-direction:row;align-items:center;gap:6px}.settings__select{background:#fff;border:1px solid #ccc;border-radius:3px;padding:2px 4px;font-size:.85rem}.settings__hint{color:#999;margin:0;font-size:.7rem}.inspector__actions{gap:6px;margin-top:12px;display:flex}.inspector__hint{color:#aaa;margin-top:8px;font-size:.7rem}.shell__table{background:#fff;flex:auto;min-height:0;display:flex}.canvas{-webkit-user-select:none;user-select:none;background:#fcfcf9;flex:auto;grid-template-rows:24px 1fr;grid-template-columns:24px 1fr;display:grid;position:relative;overflow:hidden}.ruler--corner{color:#888;background:#f4f4ee;border-bottom:1px solid #e5e5de;border-right:1px solid #e5e5de;grid-area:1/1}.ruler--top{background:#f4f4ee;grid-area:1/2}.ruler--left{background:#f4f4ee;grid-area:2/1}.canvas__svg{cursor:crosshair;touch-action:none;grid-area:2/2}.ruler__bg{fill:#f4f4ee}.ruler__edge{stroke:#c9c9c0;stroke-width:1px}.ruler__major{stroke:#7a7a70;stroke-width:1px}.ruler__minor{stroke:#9c9c92;stroke-width:1px}.ruler__fine{stroke:#bdbdb4;stroke-width:1px}.ruler__label{fill:#555;font-family:inherit}.grid__fine line{stroke:#f5f3ea;stroke-width:1px}.grid__minor line{stroke:#eceae1;stroke-width:1px}.grid__major line{stroke:#a09c8a;stroke-width:1px}.grid__axis line{stroke:#6c685c;stroke-width:1.5px}.toolbar{background:#f8f8f2;border-right:1px solid #e5e5de;flex-direction:column;flex:none;gap:4px;width:140px;padding:8px;display:flex}.toolbar__btn{color:#333;cursor:pointer;text-transform:lowercase;white-space:nowrap;background:#fff;border:1px solid #ddd;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-family:inherit;font-size:.8rem;display:flex}.toolbar__btn:hover{background:#fafaf3}.toolbar__btn--active{color:#f5f2ea;background:#2a2a26;border-color:#2a2a26}.toolbar__key{color:#999;flex:none;margin-left:4px;font-size:.65rem}.toolbar__btn--active .toolbar__key{color:#b5b1a5}.canvas--pen .canvas__svg,.canvas--guidePen .canvas__svg,.canvas--compass .canvas__svg{cursor:crosshair}.canvas--select .canvas__svg{cursor:default}.canvas--snap-off .canvas__svg{cursor:crosshair}.pen-close-indicator{fill:none;stroke:#0a66c2;stroke-width:1.5px}.preview--cross{stroke:#c0392b;stroke-dasharray:2 2}.pen-close-indicator--cross{stroke:#c0392b}.pen-offending-flash{fill:none;stroke:#c0392b;stroke-width:2.25px;opacity:.7;stroke-linecap:round}.path{fill:none;stroke:#1a1a18;stroke-width:1.25px;stroke-linejoin:round;stroke-linecap:round}.path--guide{stroke:#c0392b;stroke-width:1.5px}.path--panel{stroke:#1a1a18}.path--selected{stroke:#0a66c2}.path--sa-outer{stroke:#1a1a18;stroke-width:1.25px}.path--sa-inner{stroke:#1a1a18;stroke-width:1px;stroke-dasharray:3 2;opacity:.7}.segment--selected{stroke:#0a66c2;stroke-width:2px;fill:none;stroke-linecap:round}.segment-hit,.panel-hit,.closed-guide-hit{cursor:pointer}.path-group--selected .path{stroke:#0a66c2}.path-group--selected .path--panel{fill:#0a66c214}.notch{stroke:#1a1a18;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:miter;fill:none}.notch--wedge{fill:#0000000f}.notch--hover{stroke:#0a66c2;opacity:.6;stroke-dasharray:2 2}.notch--hover.notch--wedge{fill:#0a66c214}.dart-leg{stroke:#1a1a18;stroke-width:1.25px;stroke-linecap:round;fill:none;opacity:.8}.dart-fold{stroke:#1a1a18;stroke-width:1px;stroke-linecap:round;stroke-dasharray:3 2;fill:none;opacity:.8}.dart-leg--sa-ext,.dart-fold--sa-ext{opacity:.6}.dart-leg--ghost,.dart-fold--ghost{stroke:#0a66c2;opacity:.6}.dart-marker{fill:#0a66c2;opacity:.85}.dart-marker--center{fill:#0a66c2}.dart-marker--tip{fill:#1a1a18}.dart-marker--ghost{fill:none;stroke:#0a66c2;stroke-width:1.25px;stroke-dasharray:1 1;opacity:.6}.dart-marker--ghost-leg{fill:#0a66c2;opacity:.6}.dart-vertex{fill:#0000;stroke:#1a1a18;stroke-width:1.25px}.dart-vertex--ghost{stroke:#0a66c2;stroke-dasharray:1.5 1.5;opacity:.75}.dart-width-preview{stroke:#0a66c2;stroke-width:1.25px;opacity:.7;stroke-dasharray:3 2;fill:none}.slash-pivot-cut-dot{fill:#c0392b;stroke:none;opacity:.9}.slash-pivot-cut-line{stroke:#c0392b;stroke-width:1px;stroke-dasharray:2 2;fill:none;opacity:.9}.slash-pivot-cut-line--preview{opacity:.5}.slash-pivot-flap-preview{stroke:#1a1a18;stroke-width:1.25px;fill:none;opacity:.5}.slash-pivot-bridge-preview{stroke:#c0392b;stroke-width:1px;stroke-dasharray:2 2;fill:none;opacity:.9}.dart-leg--selected{stroke:#0a66c2;stroke-width:2px;opacity:1}.dart-fold--selected{stroke:#0a66c2;opacity:1}.dart-drag-handle{fill:#0000;stroke:#0a66c2;stroke-width:2px}.dart-drag-handle:hover{fill:#0a66c226}.landmark-label{color:#1a1a18;white-space:nowrap;-webkit-user-select:none;user-select:none;letter-spacing:.01em;font-family:system-ui,-apple-system,sans-serif}.ease-bracket{stroke:#1a1a18;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;fill:none}.ease-gather-wave{stroke:#1a1a18;stroke-width:1px;stroke-linecap:round;fill:none}.ease-label{fill:#1a1a18;letter-spacing:.05em;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,sans-serif}.ease-bracket--hover,.ease-gather-wave--hover{stroke:#0a66c2;opacity:.6;stroke-dasharray:2 2}.ease-anchor{fill:#0a66c2;stroke:none;opacity:.85}.ease-anchor--ghost{fill:none;stroke:#0a66c2;stroke-width:1.25px;stroke-dasharray:1 1;opacity:.6}.handle{fill:#fff;stroke:#0a66c2;stroke-width:1.25px;cursor:grab}.handle:active{cursor:grabbing}.handle-line{stroke:#0a66c2;stroke-width:1px;stroke-dasharray:2 2;opacity:.6}.node{fill:#0000;stroke:#1a1a18;stroke-width:1.25px;cursor:move}.node:hover{stroke:#0a66c2}.node--selected{stroke:#0a66c2;stroke-width:2px}.node--guide{stroke:#8b3a3a}.node--guide:hover{stroke:#6f2e2e}.node--guide.node--selected{stroke:#0a66c2;stroke-width:2px}.preview{fill:none;stroke:#1a1a18;stroke-width:1.25px;stroke-linecap:round}.preview--guide{stroke:#c0392b;stroke-width:1.5px}.compass-ref-line{stroke:#8b3a3a;stroke-width:.5px;stroke-dasharray:1 3;opacity:.4}.compass-ref-line--prior{stroke-dasharray:2 4;opacity:.5}.measurement-readout{color:#1a1a18;white-space:nowrap;pointer-events:none;background:#fcfcf9f7;border:1px solid #8b3a3a;border-radius:3px;padding:4px 8px;font-family:inherit;font-size:12px;line-height:1.3;display:inline-block;box-shadow:0 1px 3px #00000014}.measurement-readout__row{grid-template-columns:1rem 1fr;align-items:baseline;gap:6px;display:grid}.measurement-readout__label{color:#8b3a3a;font-weight:500}.measurement-readout__value{font-variant-numeric:tabular-nums}.measurement-readout__hint{color:#999;margin-top:2px;font-size:10px}.marquee{fill:#0a66c214;stroke:#0a66c2;stroke-width:1px;stroke-dasharray:4 3}.inspector{color:#333;background:#f8f8f2;flex:auto;width:100%;padding:12px;font-size:.8rem;overflow-y:auto}.inspector__empty{color:#aaa;margin:0}.inspector__title{color:#222;margin-bottom:8px;font-weight:500}.inspector__field{grid-template-columns:1.5rem 1fr 1.75rem;align-items:center;gap:6px;margin-bottom:6px;display:grid}.inspector__field span{color:#888;font-variant:all-small-caps}.inspector__field input{background:#fff;border:1px solid #ddd;border-radius:3px;width:100%;padding:4px 6px;font-family:inherit;font-size:.8rem}.inspector__field em{color:#999;font-size:.7rem;font-style:normal}.inspector__readouts{grid-template-columns:auto 1fr;gap:4px 8px;margin:0;display:grid}.inspector__readouts dt{color:#888;font-variant:all-small-caps}.inspector__readouts dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.inspector__notches{flex-direction:column;gap:4px;margin:8px 0 0;padding:0;list-style:none;display:flex}.inspector__notch{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:.75rem;display:grid}.inspector__notch-kind{font-variant:all-small-caps;color:#555}.inspector__notch-edge{color:#888;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.inspector__notch--ease{grid-template-columns:auto auto 1fr auto}.inspector__ease-text{background:#fff;border:1px solid #ddd;border-radius:3px;width:100%;min-width:60px;padding:2px 4px;font-family:inherit;font-size:.7rem}.welcome{justify-content:center;align-items:center;height:100%;padding:1rem;display:flex}.welcome__hero{text-align:center;max-width:540px}.welcome__title{text-transform:uppercase;letter-spacing:.06em;color:#1a1a1a;margin:0 0 .5rem;font-size:2.4rem;font-weight:600}.welcome__tagline{color:#555;margin:0 0 2rem;font-size:1rem}.welcome__cta{justify-content:center;gap:.75rem;display:flex}.welcome__btn{color:#2a2a26;cursor:pointer;background:#fff;border:1px solid #2a2a26;border-radius:4px;padding:.6rem 1.4rem;font-size:.95rem;text-decoration:none}.welcome__btn:hover{background:#f0f0e8}.welcome__btn--primary{color:#fafaf7;background:#2a2a26}.welcome__btn--primary:hover{background:#1a1a17}.auth{justify-content:center;align-items:center;height:100%;padding:1rem;display:flex}.auth__form{background:#fff;border:1px solid #e5e5de;border-radius:6px;flex-direction:column;gap:.85rem;width:100%;max-width:360px;padding:1.5rem;display:flex}.auth__title{margin:0 0 .25rem;font-size:1.25rem;font-weight:500}.auth__error{color:#7a1f1f;background:#fbeaea;border:1px solid #e8b8b8;border-radius:3px;padding:.5rem .7rem;font-size:.85rem}.auth__field{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.auth__field span:first-child{color:#555;text-transform:lowercase}.auth__field input{background:#fff;border:1px solid #ccc;border-radius:3px;padding:.5rem .6rem;font-family:inherit;font-size:.9rem}.auth__hint{color:#999;font-size:.7rem}.auth__submit{color:#fafaf7;cursor:pointer;background:#2a2a26;border:1px solid #2a2a26;border-radius:4px;margin-top:.5rem;padding:.6rem 1rem;font-size:.95rem}.auth__submit:disabled{opacity:.6;cursor:not-allowed}.auth__alt{color:#666;text-align:center;margin:0;font-size:.8rem}.auth__alt a{color:#2a2a26}.user-menu{align-items:center;gap:.5rem;margin-left:auto;font-size:.75rem;display:flex}.user-menu__email{color:#777;text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.user-menu__btn{color:#333;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:3px;padding:2px 8px;font-family:inherit;font-size:.75rem}.user-menu__btn:hover{background:#f0f0e8}.user-menu__btn--link{line-height:1.5;text-decoration:none;display:inline-block}.modal{z-index:50;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal__panel{background:#fff;border-radius:6px;flex-direction:column;width:100%;max-width:460px;max-height:80vh;display:flex;box-shadow:0 12px 40px #00000040}.modal__header{border-bottom:1px solid #e5e5de;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.modal__title{margin:0;font-size:1rem;font-weight:500}.modal__close{color:#888;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.25rem}.modal__close:hover{color:#222}.modal__error{color:#7a1f1f;background:#fbeaea;border:1px solid #e8b8b8;border-radius:3px;margin:.5rem 1rem;padding:.5rem;font-size:.85rem}.modal__empty{text-align:center;color:#888;padding:1.5rem 1rem;font-size:.9rem}.modal__list{margin:0;padding:.25rem 0;list-style:none;overflow-y:auto}.modal__row{border-top:1px solid #f4f4ee;align-items:stretch;display:flex}.modal__row:first-child{border-top:none}.modal__row-pick{color:#222;cursor:pointer;text-align:left;background:0 0;border:none;flex:auto;justify-content:space-between;align-items:center;padding:.6rem 1rem;font-family:inherit;font-size:.9rem;display:flex}.modal__row-pick:hover{background:#fafaf3}.modal__row-name{font-weight:500}.modal__row-date{color:#888;font-size:.75rem}.modal__row-del{color:#aaa;cursor:pointer;background:0 0;border:none;border-left:1px solid #f4f4ee;width:36px;font-size:1.1rem}.modal__row-del:hover{color:#b03030;background:#fef0f0}.modal__panel--narrow{max-width:380px}.recovery-dialog__msg{color:#222;margin:1rem 1rem .5rem;font-size:.95rem}.recovery-dialog__hint{color:#666;margin:0 1rem 1rem;font-size:.8rem}.recovery-dialog__actions{justify-content:flex-end;gap:.5rem;padding:.5rem 1rem 1rem;display:flex}.recovery-dialog__btn{cursor:pointer;border-radius:4px;padding:.45rem 1rem;font-family:inherit;font-size:.85rem}.recovery-dialog__btn--neutral{color:#555;background:#fff;border:1px solid #c4c4be}.recovery-dialog__btn--neutral:hover{background:#f0f0ec}.recovery-dialog__btn--danger{color:#b03030;background:#fff;border:1px solid #d4a4a4}.recovery-dialog__btn--danger:hover{background:#fdecec}.recovery-dialog__btn:disabled,.recovery-dialog__btn:disabled:hover{opacity:.5;cursor:not-allowed;background:inherit}.recovery-dialog__btn--primary{color:#fafaf7;background:#2a2a26;border:1px solid #2a2a26}.recovery-dialog__btn--primary:hover{background:#1a1a17}.print-dialog__options{flex-direction:column;gap:.5rem;padding:1rem 1rem .5rem;display:flex}.print-dialog__option{cursor:pointer;color:#222;align-items:flex-start;gap:.5rem;font-size:.9rem;display:flex}.print-dialog__option input[type=checkbox]{cursor:pointer;margin-top:.2rem}.print-dialog__option-text{flex-direction:column;gap:.1rem;display:flex}.print-dialog__option-label{font-weight:500}.print-dialog__option-hint{color:#777;font-size:.75rem}.print-dialog__actions{justify-content:flex-end;gap:.5rem;padding:.5rem 1rem 1rem;display:flex}.page-shell{background:#fafaf7;flex-direction:column;min-height:100%;display:flex}.page-shell__header{background:#fff;border-bottom:1px solid #e5e5de;align-items:center;gap:.5rem 1rem;padding:.85rem 1.25rem;display:flex}.page-shell__wordmark{color:#1a1a1a;text-transform:uppercase;letter-spacing:.08em;font-size:.92rem;font-weight:600;text-decoration:none}.page-shell__wordmark:hover{color:#000}.page-shell__breadcrumb{flex-wrap:wrap;flex:1;align-items:center;gap:.4rem;font-size:.95rem;display:flex}.page-shell__crumb{color:#555;text-decoration:none}.page-shell__crumb:hover{color:#1a1a1a}.page-shell__crumb--current{color:#1a1a1a;font-weight:500}.page-shell__crumb-sep{color:#aaa}.page-shell__user{flex-shrink:0;margin-left:auto}.hub{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2.5rem;padding:3rem 1.5rem;display:flex}.hub__prompt{color:#555;margin:0;font-size:1.05rem}.hub__doors{grid-template-columns:repeat(auto-fit,minmax(240px,320px));gap:1.25rem;width:100%;max-width:720px;display:grid}.hub__door{color:inherit;background:#fff;border:1px solid #d8d2c5;border-radius:6px;flex-direction:column;gap:.6rem;padding:1.75rem 1.5rem;text-decoration:none;transition:border-color .12s,transform .12s;display:flex}.hub__door:hover{border-color:#2a2a26;transform:translateY(-1px)}.hub__door-title{color:#1a1a1a;letter-spacing:-.005em;margin:0;font-size:1.5rem;font-weight:500}.hub__door-desc{color:#555;margin:0;font-size:.95rem;line-height:1.45}.page-list{flex:1;width:100%;max-width:760px;margin:0 auto;padding:2rem 1.5rem 3rem}.page-list__bar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.page-list__title{color:#1a1a1a;letter-spacing:-.005em;margin:0;font-size:1.65rem;font-weight:500}.page-list__primary{color:#fafaf7;cursor:pointer;background:#2a2a26;border:1px solid #2a2a26;border-radius:4px;padding:.5rem 1.1rem;font-size:.95rem}.page-list__primary:hover{background:#1a1a17}.page-list__primary:disabled{opacity:.55;cursor:not-allowed}.page-list__empty{color:#666;padding:2rem 0;font-size:.95rem}.page-list__empty p{margin:0 0 .5rem}.page-list__error{color:#842;background:#fdf2f2;border:1px solid #d9a;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.page-list__inline-link{color:#1a1a1a;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline;display:inline}.page-list__inline-link:disabled{opacity:.55;cursor:not-allowed}.patterns-tabs{border-bottom:1px solid #e5e5de;gap:.25rem;margin-bottom:.85rem;display:flex}.patterns-tabs__tab{font:inherit;color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem .85rem}.patterns-tabs__tab:hover{color:#1a1a1a}.patterns-tabs__tab--active{color:#1a1a1a;border-bottom-color:#2a2a26;font-weight:500}.page-list__sub-bar{justify-content:flex-end;margin-bottom:.5rem;display:flex}.page-list__section-head{border-bottom:1px solid #ece8df;align-items:baseline;gap:.6rem;margin:1.25rem 0 .4rem;padding-bottom:.25rem;display:flex}.page-list__section-head:first-child{margin-top:.25rem}.page-list__section-head-label{color:#1a1a1a;text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;font-weight:600}.page-list__section-head-hint{color:#888;font-size:.82rem}.page-list__empty--inline{text-align:left;color:#888;margin:.25rem 0 .75rem;padding:.4rem 0;font-style:italic}.page-list__row-link--static{cursor:default}.page-list__row-link--static:hover{background:inherit}.page-list__row-action{color:#555;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:4px;margin-left:auto;padding:.25rem .65rem;font-size:.82rem}.page-list__row-action:hover:not(:disabled){color:#1a1a1a;background:#f4f0e8;border-color:#2a2a26}.page-list__row-action:disabled{opacity:.5;cursor:not-allowed}.page-list__row-action--placeholder{visibility:hidden;pointer-events:none}.page-list__archived{border-top:1px solid #ece8df;margin-top:2rem;padding-top:.5rem}.page-list__archived-summary{cursor:pointer;color:#666;letter-spacing:.02em;padding:.5rem .75rem;font-size:.85rem}.page-list__archived-summary:hover{color:#1a1a1a}.wearer-sections{flex-direction:column;display:flex}.wearer-sections__section+.wearer-sections__section{border-top:1px solid #ece8df}.wearer-sections__head{width:100%;font:inherit;color:#1a1a1a;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:baseline;gap:.5rem;padding:.65rem .5rem;font-size:.95rem;display:flex}.wearer-sections__head:hover{background:#f4f0e8}.wearer-sections__caret{color:#888;flex-shrink:0;width:.85rem;font-size:.8rem}.wearer-sections__name{flex:1;font-weight:500}.wearer-sections__count{color:#888;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.82rem}.wearer-sections__body{padding:.1rem 0 .65rem 1.7rem}.wearer-sections__empty{color:#888;margin:.4rem 0;font-size:.88rem;font-style:italic}.page-list__col-head{letter-spacing:.04em;text-transform:uppercase;color:#9c9580;border-bottom:1px solid #ece8df;align-items:center;gap:.75rem;padding:.5rem .75rem .4rem;font-size:.78rem;display:flex}.page-list__col-head-name{flex:1}.page-list__col-head-meta{text-align:left;flex-shrink:0;min-width:6rem}.page-list__col-head-action{color:#6b6248;letter-spacing:.02em;text-transform:none;cursor:pointer;background:0 0;border:1px solid #d8d2c0;border-radius:4px;flex-shrink:0;padding:.2rem .6rem;font-family:inherit;font-size:.75rem}.page-list__col-head-action:hover{color:#3a3324;background:#f4f0e8}.page-list__rows{margin:0;padding:0;list-style:none}.page-list__row{align-items:center;gap:.5rem;display:flex}.page-list__row+.page-list__row{border-top:1px solid #ece8df}.page-list__row-link{color:inherit;border-radius:4px;flex:1;align-items:center;gap:.75rem;min-width:0;padding:.85rem .75rem;text-decoration:none;display:flex}.page-list__row-link:hover{background:#f4f0e8}.page-list__row-link--archived .page-list__row-name{color:#666}.page-list__row-name{color:#1a1a1a;flex:1;font-size:1rem}.page-list__row-tag{color:#765;background:#efeae0;border-radius:999px;flex-shrink:0;padding:.15rem .55rem;font-size:.78rem}.page-list__row-tag--alt{color:#555;background:#e8e5dc}.page-list__row-date{color:#888;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:6rem;font-size:.85rem}.new-wearer{background:#fff;border:1px solid #d8d2c5;border-radius:6px;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.new-wearer__title{color:#1a1a1a;margin:0;font-size:1.15rem;font-weight:500}.new-wearer__field{border:none;flex-direction:column;gap:.35rem;margin:0;padding:0;display:flex}.new-wearer__label{color:#555;padding:0;font-size:.85rem}.new-wearer__input{background:#fff;border:1px solid #ddd;border-radius:4px;padding:.5rem .7rem;font-size:1rem}.new-wearer__input:focus{border-color:#2a2a26;outline:none;box-shadow:0 0 0 2px #2a2a261f}.new-wearer__actions{justify-content:flex-end;gap:.6rem;margin-top:.25rem;display:flex}.new-wearer__cancel{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.new-wearer__cancel:hover:not(:disabled){background:#f4f0e8}.new-wearer__cancel:disabled{opacity:.55;cursor:not-allowed}.new-wearer__submit{color:#fafaf7;cursor:pointer;background:#2a2a26;border:1px solid #2a2a26;border-radius:4px;padding:.5rem 1.2rem;font-size:.9rem}.new-wearer__submit:hover:not(:disabled){background:#1a1a17}.new-wearer__submit:disabled{opacity:.55;cursor:not-allowed}.wearer-editor{width:100%;max-width:720px;margin:0 auto;padding:1.75rem 1.5rem 3rem}.wearer-editor__head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.wearer-editor__title-input{color:#1a1a1a;letter-spacing:-.005em;background:0 0;border:none;border-bottom:1px solid #ece8df;flex:1;padding:.25rem 0;font-size:1.85rem;font-weight:500}.wearer-editor__title-input:focus,.wearer-editor__title-input:hover{border-bottom-color:#cbbf95;outline:none}.wearer-editor__title-input::placeholder{font-weight:400}.wearer-editor__save{color:#666;flex-shrink:0;font-size:.82rem}.wearer-editor__save--error{color:#b44}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wearer-editor__work{flex-direction:column;gap:1.25rem;margin-top:1.25rem;display:flex}.wearer-editor__session-head{border-bottom:1px solid #ece8df;align-items:baseline;gap:.5rem;padding-bottom:.1rem;display:flex}.wearer-editor__session-label{letter-spacing:.06em;text-transform:uppercase;color:#8a8266;font-size:.78rem}.wearer-editor__session-label--active{color:#2a2a26}.wearer-editor__session-date{color:#2a2a26;font-variant-numeric:tabular-nums;font-size:.92rem}.wearer-editor__session-time{color:#8a8266;font-variant-numeric:tabular-nums;font-size:.85rem}.wearer-editor__session-action{justify-content:flex-end;gap:.5rem;padding-top:.4rem;display:flex}.wearer-editor__session-btn{cursor:pointer;border-radius:4px;padding:.5rem 1.1rem;font-size:.95rem;transition:background .12s,border-color .12s}.wearer-editor__session-btn--start{color:#f5efe2;background:#2a2a26;border:1px solid #2a2a26}.wearer-editor__session-btn--start:hover{background:#3a3a34;border-color:#3a3a34}.wearer-editor__session-btn--finish{color:#2a2a26;background:#fff;border:1px solid #6b6248}.wearer-editor__session-btn--finish:hover:not(:disabled){background:#f4f0e8}.wearer-editor__session-btn--discard{color:#7a5a3a;background:0 0;border:1px solid #d6c9a8}.wearer-editor__session-btn--discard:hover:not(:disabled){color:#5a3e1d;background:#f4ece0;border-color:#b89866}.wearer-editor__session-btn:focus-visible{outline-offset:2px;outline:2px solid #2a2a26}.wearer-editor__session-btn:disabled{opacity:.5;cursor:not-allowed}.wearer-editor__group{border:1px solid #e2dccb;border-radius:6px;min-width:0;margin:0;padding:.4rem 1rem .8rem}.wearer-editor__group--other{background:#fdfaf2}.wearer-editor__group-legend{letter-spacing:.04em;text-transform:uppercase;color:#6b6248;align-items:center;gap:.4rem;padding:0 .4rem;font-size:.85rem;display:flex}.wearer-editor__group-name{font-weight:500}.wearer-editor__group-remove{color:#c4bda8;cursor:pointer;background:0 0;border:none;border-radius:50%;width:1.3rem;height:1.3rem;padding:0;font-size:1rem;line-height:1;transition:color .12s,background .12s}.wearer-editor__group-remove:hover{color:#b34a4a;background:#f5ece6}.wearer-editor__group-remove:focus-visible{outline-offset:1px;outline:2px solid #2a2a26}.wearer-editor__row{align-items:center;gap:.6rem;display:flex}.wearer-editor__row>.wearer-field{min-width:0}.wearer-editor__row-remove{color:#c4bda8;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;width:1.4rem;height:1.4rem;padding:0;font-size:1.05rem;line-height:1;transition:color .12s,background .12s}.wearer-editor__row-remove:hover{color:#b34a4a;background:#f5ece6}.wearer-editor__row-remove:focus-visible{outline-offset:1px;outline:2px solid #2a2a26}.wearer-editor__apply-bar{justify-content:flex-end;padding-top:.4rem;display:flex}.wearer-editor__apply{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.wearer-editor__apply-label{color:#666;font-size:.82rem}.wearer-editor__apply-select{background:#fff;border:1px solid #ddd;border-radius:4px;min-width:12rem;padding:.25rem .5rem;font-size:.85rem}.wearer-editor__apply-error{color:#b34a4a;flex:100%;font-size:.85rem}.wearer-editor__rows{flex-direction:column;gap:0;display:flex}.wearer-editor__add-row{border-top:1px dashed #ece8df;flex-direction:column;gap:.5rem;margin-top:.4rem;padding:.5rem .1rem;display:flex}.wearer-editor__group--other .wearer-editor__rows>.wearer-editor__add-row:first-child{border-top:none;margin-top:0}.wearer-editor__add-fields{grid-template-columns:14rem 7rem 2rem;align-items:center;gap:.55rem;display:grid}.wearer-editor__add-name{background:#fff;border:1px solid #ddd;border-radius:4px;min-width:0;padding:.4rem .6rem;font-size:.95rem}.wearer-editor__add-value{text-align:right;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #ddd;border-radius:4px;width:100%;padding:.35rem .55rem;font-size:.95rem}.wearer-editor__add-value:focus,.wearer-editor__add-name:focus{border-color:#2a2a26;outline:none;box-shadow:0 0 0 2px #2a2a261f}.wearer-editor__add-unit{color:#888;font-size:.85rem}.wearer-editor__add-btn{color:#6b6248;cursor:pointer;background:0 0;border:1px solid #d8d2c0;border-radius:4px;align-self:flex-start;padding:.35rem .85rem;font-size:.85rem}.wearer-editor__add-btn:hover:not(:disabled){color:#3a3324;background:#f4f0e8}.wearer-editor__add-btn:disabled{opacity:.5;cursor:not-allowed}.wearer-editor__history{border-top:1px solid #ece8df;margin-top:2rem;padding-top:1.25rem}.wearer-editor__history-details>summary{cursor:pointer;list-style:none}.wearer-editor__history-details>summary::-webkit-details-marker{display:none}.wearer-editor__history-summary{color:#1a1a1a;align-items:center;gap:.45rem;font-size:1rem;font-weight:500;display:inline-flex}.wearer-editor__history-summary:before{content:"▸";color:#666;font-size:.75rem;transition:transform .12s}.wearer-editor__history-details[open]>summary .wearer-editor__history-summary:before{transform:rotate(90deg)}.wearer-editor__history-list{margin:.5rem 0 0;padding:0;list-style:none}.wearer-editor__history-row{border-top:1px dashed #ece8df}.wearer-editor__history-row:first-child{border-top:none}.wearer-editor__history-row-head{text-align:left;cursor:pointer;color:#666;background:0 0;border:none;align-items:baseline;gap:.85rem;width:100%;padding:.5rem 0;font-size:.9rem;display:flex}.wearer-editor__history-row-head:hover{background:#faf8f3}.wearer-editor__history-row-head[aria-expanded=true] .wearer-editor__history-date{color:#1a1a1a}.wearer-editor__history-date{color:#1a1a1a;flex-shrink:0;font-weight:500}.wearer-editor__history-time{color:#8a8266;font-variant-numeric:tabular-nums;margin-left:.5rem;font-size:.78rem;font-weight:400}.wearer-editor__history-count{color:#666}.wearer-editor__history-notes{color:#666;font-style:italic}.wearer-editor__history-detail{padding:.4rem 0 .75rem}.wearer-editor__history-values{margin:0;padding:0;list-style:none}.wearer-editor__history-value{justify-content:space-between;gap:.85rem;padding:.25rem .5rem;font-size:.9rem;display:flex}.wearer-editor__history-value-label{color:#1a1a1a}.wearer-editor__history-value-cm{color:#666;font-variant-numeric:tabular-nums}.wearer-editor__history-empty{color:#666;margin:.5rem 0;font-size:.9rem}.wearer-editor__history-blank{color:#8a8266;margin:.6rem .5rem;font-size:.85rem;line-height:1.45}.wearer-editor__history-actions{padding:.4rem .5rem 0}.wearer-editor__history-correct{color:#666;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.wearer-editor__history-correct:hover{color:#1a1a1a}.wearer-editor__undo-toast{color:#f5efe2;z-index:1000;background:#2a2a26;border-radius:6px;align-items:center;gap:1rem;padding:.6rem 1rem;font-size:.9rem;display:flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0000002e}.wearer-editor__undo-msg{font-variant-numeric:tabular-nums}.wearer-editor__undo-btn{color:#f5efe2;cursor:pointer;background:0 0;border:1px solid #6b6248;border-radius:4px;padding:.25rem .65rem;font-size:.85rem;transition:background .12s,border-color .12s}.wearer-editor__undo-btn:hover{background:#3a3a34;border-color:#a09c8a}.wearer-editor__undo-btn:focus-visible{outline-offset:2px;outline:2px solid #d8d2c0}@media (width<=480px){.wearer-editor__add-name,.wearer-editor__add-value,.wearer-editor__add-btn,.wearer-editor__apply-select{min-height:44px}}.wearer-field{border-bottom:1px solid #f1ecdf;grid-template-columns:14rem 7rem 2rem;align-items:center;gap:.55rem;padding:.25rem .1rem;display:grid}.wearer-field:last-child{border-bottom:none}.wearer-field__label{color:#1a1a1a;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.wearer-field__input{text-align:right;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #ddd;border-radius:4px;width:100%;padding:.35rem .55rem;font-size:.95rem}.wearer-field__input:focus{border-color:#2a2a26;outline:none;box-shadow:0 0 0 2px #2a2a261f}.wearer-field__static{text-align:right;font-variant-numeric:tabular-nums;color:#2a2a26;padding:.35rem .55rem;font-size:.95rem}.wearer-field__unit{color:#888;font-size:.85rem}.wearer-field[data-out-of-range=true] .wearer-field__input{background:#fbf3e9;border-color:#c79a73}.wearer-field__warn{color:#8a5a30;text-align:right;grid-column:1/-1;font-size:.78rem}.new-system{background:#fbf6e7;border:1px solid #d8cda1;border-radius:6px;flex-direction:column;gap:.85rem;max-width:760px;margin-bottom:1rem;padding:1.1rem 1.2rem;display:flex}.new-system__title{color:#1a1a1a;margin:0 0 .2rem;font-size:1.15rem;font-weight:600}.new-system__field{flex-direction:column;gap:.3rem;display:flex}.new-system__label{color:#4f4530;text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:600}.new-system__hint{color:#6d6045;text-transform:none;letter-spacing:normal;margin-left:.6rem;font-size:.82rem;font-weight:400}.new-system__input{font:inherit;background:#fff;border:1px solid #c2b489;border-radius:4px;padding:.45rem .6rem}.new-system__input:focus{outline-offset:-1px;outline:2px solid #8a7a47}.new-system__keys{background:#f7efd6;border:1px solid #d8cda1;border-radius:4px;flex-direction:column;gap:.55rem;padding:.65rem .7rem .8rem;display:flex}.new-system__keys-head{align-items:baseline;gap:.4rem;margin-bottom:.2rem;display:flex}.new-system__key-row{background:#fff;border:1px solid #e6d9b0;border-radius:4px;grid-template-columns:1fr 2rem;align-items:center;gap:.4rem;padding:.45rem .6rem;display:grid}.new-system__key-name{font:inherit;background:#fff;border:1px solid #c2b489;border-radius:3px;padding:.35rem .5rem}.new-system__key-remove{font:inherit;color:#8a5a30;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:0;font-size:1rem}.new-system__key-remove:hover:not(:disabled){background:#f7e4cf;border-color:#c79a73}.new-system__key-remove:disabled{color:#cdc4a8;cursor:not-allowed}.new-system__add-key{font:inherit;color:#4f4530;cursor:pointer;background:0 0;border:1px dashed #8a7a47;border-radius:4px;align-self:flex-start;padding:.4rem .85rem}.new-system__add-key:hover{background:#f7efd6}.new-system__error{color:#a8392a;font-size:.9rem}.new-system__actions{justify-content:flex-end;gap:.5rem;display:flex}.new-system__cancel,.new-system__submit{font:inherit;cursor:pointer;border:1px solid #c2b489;border-radius:4px;padding:.5rem 1rem}.new-system__cancel{color:#4f4530;background:#fff}.new-system__cancel:hover:not(:disabled){background:#f7efd6}.new-system__submit{color:#fbf6e7;background:#4f4530;border-color:#4f4530}.new-system__submit:hover:not(:disabled){background:#3a311f}.new-system__submit:disabled,.new-system__cancel:disabled{opacity:.6;cursor:not-allowed}.prefs{width:100%;max-width:640px;margin:0 auto;padding:1.75rem 1.5rem 3rem}.prefs__bar{border-bottom:1px solid #ece8df;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.5rem;padding-bottom:.85rem;display:flex}.prefs__title{letter-spacing:-.005em;margin:0;font-size:1.85rem;font-weight:500}.prefs__hint{color:#777;margin:0;font-size:.82rem}.prefs__section{margin-bottom:2rem}.prefs__section-title{color:#1a1a1a;margin:0 0 .85rem;font-size:1.05rem;font-weight:500}.prefs__row{flex-wrap:wrap;align-items:center;gap:.85rem 1.5rem;display:flex}.prefs__label{color:#1a1a1a;min-width:9rem;font-size:.95rem}.prefs__choices{flex-wrap:wrap;gap:1.25rem;display:flex}.prefs__choice{cursor:pointer;align-items:center;gap:.4rem;font-size:.95rem;display:inline-flex}.prefs__select{color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #d8d2c2;border-radius:4px;min-width:16rem;padding:.4rem .6rem;font-family:inherit;font-size:.95rem}.prefs__select:focus{outline-offset:1px;outline:2px solid #8a8266}.session-chooser__list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.session-chooser__option{text-align:left;cursor:pointer;width:100%;color:inherit;background:#fff;border:1px solid #ddd;border-radius:5px;flex-direction:column;gap:.2rem;padding:.7rem .9rem;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.session-chooser__option:hover{background:#f8f5ee;border-color:#2a2a26}.session-chooser__option:focus-visible{outline-offset:2px;outline:2px solid #2a2a26}.session-chooser__option-title{color:#1a1a1a;font-size:.95rem;font-weight:500}.session-chooser__option-desc{color:#666;font-size:.82rem;line-height:1.4}.page-shell__header{flex-wrap:wrap}.page-shell__breadcrumb{min-width:0}.page-list__bar{flex-wrap:wrap}@media (width<=640px){.page-shell__header{column-gap:.6rem;padding:.65rem .85rem}.page-list,.wearer-editor,.prefs{padding:1.25rem .85rem 2rem}.wearer-field,.wearer-editor__add-fields{grid-template-columns:minmax(0,1fr) 5.5rem 1.5rem;gap:.4rem}.wearer-editor__group{padding:.4rem .6rem .8rem}.page-list__row-action{padding:.2rem .5rem;font-size:.78rem}}@media (width<=520px){.user-menu__email,.page-list__row-date,.page-list__col-head-meta{display:none}}
