@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{color-scheme:light;--paper:#eee8dc;--sheet:#f8f4eb;--ink:#282c27;--muted:#817e72;--line:#d8d0c2;--forest:#2a453d;--forest-deep:#203830;--rust:#ae583e;--gold:#c39046;--green:#557563;--soft-green:#e0e8df;--soft-rust:#f0ded3;--shadow:0 22px 65px #36382b13;--mono:"DM Mono",monospace;--sans:"DM Sans",Arial,sans-serif;--serif:"Playfair Display",Georgia,serif}
*{box-sizing:border-box}html{min-width:320px;background:var(--paper);scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;background:radial-gradient(ellipse at 7% 16%,#fff9eb7a 0,transparent 34%),var(--paper)}button,input,textarea,select{font:inherit}button{color:inherit}.paper-grain{position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E")}
.topbar{height:76px;padding:0 max(calc((100vw - 1376px)/2),36px);display:flex;align-items:center;border-bottom:1px solid #cfc8ba;background:#f4efe5d9;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-size:19px;font-weight:700;letter-spacing:-.06em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px 10px 10px 3px;background:var(--forest);color:#f8f4eb;font:600 18px var(--serif);letter-spacing:0;transform:rotate(-3deg)}.topbar-note{margin-left:31px;display:flex;align-items:center;gap:8px;color:#686a60;font:10px var(--mono);letter-spacing:.09em}.tiny-dot{height:6px;width:6px;background:var(--rust);border-radius:50%}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.quiet-button,.icon-button{height:36px;border:1px solid var(--line);background:#f8f4eb;color:#56594f;cursor:pointer;transition:background .2s,border .2s,color .2s}.quiet-button{padding:0 13px;font-size:12px}.quiet-button span{padding-left:7px;color:var(--rust)}.quiet-button:hover,.icon-button:hover{background:#fffaf0;border-color:#b5aa95;color:var(--forest)}.icon-button{width:36px;display:grid;place-items:center}.icon-button svg,.search-box svg,.detail-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.import-label input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
main{max-width:1376px;margin:0 auto;padding:49px 36px 0}.intro{margin:0 auto 39px;max-width:1180px}.eyebrow,.section-kicker{font:10px var(--mono);letter-spacing:.1em;color:#7a786d}.eyebrow{display:flex;align-items:center;gap:11px}.eyebrow span{color:var(--rust);font-size:11px}.intro-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:17px}.intro h1{font-weight:500;font-size:clamp(43px,6vw,76px);line-height:.99;letter-spacing:-.065em;margin:0}.intro h1 em{font-family:var(--serif);font-weight:500;color:var(--rust);letter-spacing:-.04em}.intro p{margin:18px 0 0;color:#737166;font-size:14px}.intro-stamp{flex:none;display:flex;gap:11px;align-items:center;margin:0 43px 10px 0;padding:10px 13px;border:1px solid #cfc5b2;transform:rotate(-2deg);color:var(--forest);font:9px/1.45 var(--mono);letter-spacing:.045em}.intro-stamp svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.workbench{display:grid;grid-template-columns:minmax(285px,340px) minmax(0,1fr);min-height:680px;background:var(--sheet);border:1px solid #d3cbbb;box-shadow:var(--shadow);position:relative}.inventory{padding:25px 22px 18px;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:680px}.inventory-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}.section-kicker span{color:var(--rust);margin-left:5px}.inventory-head h2{font:500 27px/1.1 var(--serif);margin:7px 0 0;letter-spacing:-.035em}.add-button{width:37px;height:37px;border:1px solid var(--forest);border-radius:50%;font-size:25px;font-weight:300;background:var(--forest);color:#f7f1e6;line-height:1;cursor:pointer;transition:transform .25s,background .2s}.add-button:hover{transform:rotate(90deg);background:var(--rust);border-color:var(--rust)}.search-box{height:40px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #c9c1b3;color:#858174}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.search-box input::placeholder{color:#999486}.filter-row{display:flex;gap:7px;margin:14px 0 8px}.filter-chip{border:1px solid transparent;background:none;color:#777468;padding:5px 8px;font-size:11px;cursor:pointer;border-radius:2px}.filter-chip:hover,.filter-chip.is-active{color:var(--forest);border-color:#b8c4b6;background:#e8eee6}.item-list{display:grid;align-content:start;gap:5px;margin:4px -7px 12px;max-height:422px;overflow:auto;padding:0 7px 4px;scrollbar-width:thin;scrollbar-color:#c5bdad transparent}.item-card{width:100%;padding:12px 10px 11px;text-align:left;border:1px solid transparent;background:transparent;display:grid;grid-template-columns:35px minmax(0,1fr) 9px;gap:9px;align-items:center;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}.item-card:hover{background:#f0ece3;transform:translateX(2px)}.item-card.is-selected{background:#e8e7db;border-color:#c9cdbb}.item-card-icon{height:34px;width:34px;border-radius:10px 10px 10px 3px;background:#d9e1d7;color:var(--forest);display:grid;place-items:center}.item-card-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.item-card-copy{min-width:0}.item-card-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.item-card-meta{display:block;margin-top:3px;color:#818073;font:9px var(--mono);letter-spacing:.01em}.item-card-dot{width:6px;height:6px;border-radius:50%;background:#a6a398}.item-card-dot.is-warranty{background:#668872}.item-card-dot.is-due{background:var(--rust)}.inventory-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:14px;color:#898679;font:9px var(--mono)}.offline-indicator{display:flex;align-items:center;gap:7px;color:#667c6b}.offline-indicator i{width:6px;height:6px;background:#6c9876;border-radius:50%;box-shadow:0 0 0 3px #6c98761c}
.record{padding:29px clamp(25px,4vw,57px) 32px;min-width:0;position:relative;overflow:hidden}.record:before{content:"";position:absolute;width:170px;height:170px;right:-82px;top:-86px;border:1px solid #d8d0c2;border-radius:50%;box-shadow:0 0 0 17px #eee8dc,0 0 0 18px #d8d0c2,0 0 0 36px #eee8dc,0 0 0 37px #d8d0c2;opacity:.34;pointer-events:none}.record-loading{padding:90px 20px;text-align:center;color:var(--muted)}.record-topline{position:relative;z-index:1;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.record-category{display:flex;align-items:center;gap:8px;font:10px var(--mono);letter-spacing:.09em;color:#777468}.record-category .detail-icon{width:25px;height:25px;display:grid;place-items:center;background:#dfe5dc;color:var(--forest);border-radius:8px 8px 8px 2px}.record-category .detail-icon svg{width:15px;height:15px}.record-actions{display:flex;gap:7px}.small-action{width:34px;height:32px;border:1px solid var(--line);background:transparent;color:#66685e;display:grid;place-items:center;cursor:pointer;transition:all .18s}.small-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.small-action:hover{border-color:var(--rust);color:var(--rust);background:#fff9f0}.record h2{position:relative;font:500 clamp(32px,4vw,49px)/1.05 var(--serif);letter-spacing:-.045em;margin:15px 0 6px;max-width:750px}.record-subtitle{color:#858073;font:11px var(--mono)}.status-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:21px 0 21px;padding:10px 12px;background:#e9eee7;border-left:2px solid #718b75;color:#45614e;font-size:12px}.status-strip.is-alert{background:#f1e4da;border-color:var(--rust);color:#8b503b}.status-strip svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.status-strip strong{font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 26px}.stat{padding:14px 13px 15px 0;min-width:0}.stat+.stat{border-left:1px solid var(--line);padding-left:17px}.stat-label{display:block;font:9px var(--mono);letter-spacing:.07em;color:#8a8579}.stat-value{display:block;margin-top:7px;font:500 20px/1.1 var(--serif);letter-spacing:-.02em;overflow-wrap:anywhere}.stat-caption{display:block;margin-top:5px;font-size:10px;color:#878274}.record-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(190px,.8fr);gap:34px}.timeline-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.timeline-head h3,.note-card h3{font:500 19px var(--serif);margin:0;letter-spacing:-.02em}.timeline-head .section-kicker{font-size:9px}.log-button{display:flex;align-items:center;gap:6px;border:0;background:none;color:var(--rust);font-size:11px;font-weight:600;cursor:pointer}.log-button:hover{color:var(--forest)}.log-button span{font-size:19px;line-height:12px}.timeline{position:relative;padding-left:20px}.timeline:before{content:"";position:absolute;left:4px;top:8px;bottom:10px;width:1px;background:#d1c9b9}.timeline-entry{position:relative;padding:0 0 19px 5px}.timeline-entry:before{content:"";position:absolute;left:-20px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--rust);box-shadow:0 0 0 3px var(--sheet),0 0 0 4px #c9a995}.entry-date{font:9px var(--mono);color:#918b7d;letter-spacing:.025em}.entry-title{font-size:13px;font-weight:600;margin:4px 0 3px}.entry-detail{font-size:11px;line-height:1.55;color:#777367;white-space:pre-line}.entry-cost{margin-top:6px;display:inline-block;color:#62796a;font:10px var(--mono)}.entry-reminder{margin-top:6px;color:#ad5f42;font-size:10px}.empty-timeline{padding:15px;border:1px dashed #cdc4b4;color:#8b8578;font-size:12px}.note-card{padding:16px 16px 17px;background:#e8e2d5;border-top:2px solid #c39046;align-self:start;transform:rotate(.4deg)}.note-card h3{margin:7px 0 10px}.note-card p{color:#737064;font-size:11px;line-height:1.65;white-space:pre-line;margin:0}.note-card .note-empty{font-style:italic;color:#9b9588}.note-card .serial{display:block;margin-top:13px;padding-top:11px;border-top:1px solid #d0c8b9;font:10px var(--mono);color:#62675c;overflow-wrap:anywhere}.empty-state{height:100%;min-height:480px;display:grid;place-content:center;text-align:center;padding:30px}.empty-state .empty-mark{margin:0 auto 20px;width:55px;height:55px;display:grid;place-items:center;border:1px solid #c5bcae;border-radius:16px 16px 16px 3px;color:var(--forest);font:27px var(--serif)}.empty-state h2{font:500 25px var(--serif);margin:0}.empty-state p{max-width:280px;color:#817d71;font-size:12px}.empty-state .primary-button{margin:10px auto 0}.page-footer{max-width:1180px;margin:22px auto 0;padding:0 0 28px;display:flex;justify-content:space-between;gap:20px;color:#898477;font:9px var(--mono);letter-spacing:.025em}
.dialog{width:min(540px,calc(100vw - 28px));max-height:min(90vh,800px);padding:0;border:1px solid #cfc5b3;background:var(--sheet);color:var(--ink);box-shadow:0 25px 100px #1e282344}.dialog::backdrop{background:#26332eb5;backdrop-filter:blur(3px)}.dialog form{padding:24px 27px 25px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:21px}.dialog-head h2,.confirm-dialog h2{font:500 28px var(--serif);letter-spacing:-.035em;margin:5px 0 0}.close-button{border:1px solid var(--line);background:transparent;font-size:22px;line-height:1;width:32px;height:32px;cursor:pointer;color:#777}.field{display:grid;gap:6px;margin:0 0 13px;color:#65665b;font-size:11px}.field input,.field textarea,.field select{width:100%;min-width:0;border:1px solid #d3cbbb;background:#fcf9f2;padding:10px 11px;border-radius:0;color:var(--ink);font-size:12px;outline:none}.field textarea{resize:vertical;min-height:62px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#63816e;box-shadow:0 0 0 2px #66857124}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}.reminder-field span{display:flex;align-items:center;gap:8px;color:#545a50}.reminder-field input[type=checkbox]{width:auto;accent-color:var(--forest)}.reminder-field input[type=date]:disabled{opacity:.45}.dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:21px;padding-top:17px;border-top:1px solid var(--line)}.primary-button,.danger-button{border:1px solid var(--forest);background:var(--forest);color:#fbf5e9;padding:10px 15px;font-size:12px;font-weight:600;cursor:pointer;transition:background .18s,border .18s,transform .18s}.primary-button span{margin-left:8px;color:#e8b978}.primary-button:hover{background:var(--forest-deep);transform:translateY(-1px)}.text-button{border:0;background:transparent;color:#757166;padding:9px 6px;font-size:12px;cursor:pointer}.text-button:hover{color:var(--rust)}.danger-button{background:var(--rust);border-color:var(--rust)}.danger-button:hover{background:#8e432e}.confirm-dialog p{color:#777367;font-size:12px}.toast{position:fixed;z-index:20;left:50%;bottom:23px;transform:translate(-50%,18px);opacity:0;padding:11px 16px;max-width:calc(100vw - 28px);background:var(--forest-deep);color:#fff7e8;font-size:12px;box-shadow:0 5px 24px #18241d30;pointer-events:none;transition:opacity .2s,transform .2s}.toast.is-visible{opacity:1;transform:translate(-50%,0)}.print-only{display:none}
@media(max-width:900px){main{padding:38px 24px 0}.workbench{grid-template-columns:minmax(245px,285px) minmax(0,1fr)}.inventory{padding:22px 15px 16px}.record{padding:25px 25px}.record-grid{grid-template-columns:minmax(0,1fr)}.note-card{max-width:none}.item-list{max-height:450px}.intro-stamp{margin-right:8px}}
@media(max-width:650px){.topbar{height:62px;padding:0 16px}.brand{font-size:18px}.brand-mark{width:31px;height:31px}.topbar-note{display:none}.quiet-button{height:33px;padding:0 8px;font-size:10px}.icon-button{height:33px;width:33px}main{padding:29px 13px 0}.intro{margin-bottom:25px}.eyebrow{font-size:9px}.intro-row{align-items:flex-start;margin-top:13px;gap:12px}.intro h1{font-size:clamp(39px,11.5vw,56px)}.intro p{font-size:12px;max-width:290px;margin-top:12px}.intro-stamp{display:none}.workbench{display:flex;flex-direction:column;min-height:0}.inventory{min-height:0;padding:16px 14px 11px;border-right:0;border-bottom:1px solid var(--line)}.inventory-head{margin-bottom:10px}.inventory-head h2{font-size:23px}.add-button{width:34px;height:34px}.search-box{height:36px}.filter-row{margin:8px 0 5px}.filter-chip{font-size:10px;padding:4px 8px}.item-list{display:flex;overflow-x:auto;overflow-y:hidden;max-height:none;margin:4px -7px 3px;padding:0 7px 6px;scroll-snap-type:x mandatory;scrollbar-width:none}.item-list::-webkit-scrollbar{display:none}.item-card{flex:none;width:min(245px,72vw);grid-template-columns:31px minmax(0,1fr) 8px;padding:9px 8px;scroll-snap-align:start}.item-card-icon{width:30px;height:30px}.inventory-foot{padding-top:9px;font-size:8px}.record{padding:20px 16px 22px;min-height:510px}.record:before{width:120px;height:120px;right:-62px;top:-57px;box-shadow:0 0 0 12px #eee8dc,0 0 0 13px #d8d0c2,0 0 0 25px #eee8dc,0 0 0 26px #d8d0c2}.record-topline{gap:8px}.record h2{font-size:36px;max-width:calc(100% - 5px);margin-top:12px}.record-subtitle{font-size:9px}.record-actions{gap:5px}.small-action{width:31px;height:30px}.status-strip{margin:16px 0;padding:9px;font-size:11px}.stats-grid{margin-bottom:20px}.stat{padding:11px 8px 12px 0}.stat+.stat{padding-left:10px}.stat-label{font-size:8px}.stat-value{font-size:17px}.stat-caption{font-size:9px}.record-grid{gap:19px}.timeline-head h3,.note-card h3{font-size:18px}.timeline-head .section-kicker{font-size:8px}.timeline-head{gap:5px}.log-button{font-size:10px;white-space:nowrap}.entry-title{font-size:12px}.entry-detail{font-size:10px}.note-card{padding:13px 14px}.note-card p{font-size:10px}.page-footer{margin-top:14px;padding:0 0 18px;font-size:8px}.page-footer span:first-child{max-width:55%}.dialog form{padding:20px 17px}.dialog-head h2,.confirm-dialog h2{font-size:25px}.field-pair{gap:9px}.field{font-size:10px}.field input,.field textarea,.field select{font-size:12px;padding:9px}.dialog-actions{gap:7px}.primary-button,.danger-button{padding:10px 11px;font-size:11px}}
@media(max-width:370px){main{padding-left:10px;padding-right:10px}.intro h1{font-size:38px}.record{padding-left:13px;padding-right:13px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-value{font-size:15px}.page-footer{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{body{background:#fff}.paper-grain,.topbar,.intro,.inventory,.record-actions,.log-button,.page-footer,.toast{display:none!important}main{max-width:none;padding:0}.workbench{display:block;border:0;box-shadow:none;min-height:0}.record{padding:0;overflow:visible}.record:before{display:none}.record h2{font-size:33px}.record-grid{grid-template-columns:1.6fr 1fr}.note-card{background:#f5f1e8;print-color-adjust:exact}.status-strip{print-color-adjust:exact}.print-only{display:block}}
@media(max-width:650px){.item-list{display:grid;overflow:visible;max-height:none;scroll-snap-type:none}.item-card{width:100%;scroll-snap-align:none}.decision-option{grid-template-columns:64px minmax(0,1fr) 72px;gap:6px}.decision-option span:first-child{font-size:8px}.decision-cost{font-size:8px}.dialog-intro{font-size:11px}#decisionDialog{max-height:calc(100dvh - 16px);overflow:auto}}
.dialog-intro{font-size:12px;line-height:1.65;color:#777367;margin:-8px 0 18px}.decision-button{display:flex;align-items:center;gap:7px;margin-top:14px;padding:8px 10px;border:1px solid #bfad8d;background:#f2ecdf;color:#665b47;font-size:10px;cursor:pointer;transition:background .18s,color .18s}.decision-button:hover{background:#e8dfce;color:var(--rust)}.decision-button span{color:var(--rust);font-size:15px}.decision-result{margin:16px 0 0;padding:15px;background:#e3e9df;border-left:2px solid #6d8974}.decision-result.is-replace{background:#f0e3d9;border-color:var(--rust)}.decision-result h3{font:500 23px var(--serif);margin:0 0 5px}.decision-result p{font-size:11px;line-height:1.6;color:#6d6c61;margin:0}.decision-compare{display:grid;gap:10px;margin-top:14px}.decision-option{display:grid;grid-template-columns:76px minmax(0,1fr) 90px;align-items:center;gap:9px;font:9px var(--mono);color:#717166}.decision-track{height:7px;background:#d2d6ca;overflow:hidden}.decision-fill{display:block;height:100%;background:#63816e;transition:width .35s}.decision-option.is-replace .decision-fill{background:var(--rust)}.decision-cost{text-align:right;color:var(--ink);font-weight:500}
 .decision-save{margin-top:14px}
