:root{--ink:#232331;--muted:#797885;--line:#e8e1d7;--paper:#fbfaf7;--bg:#f2efe9;--navy:#17242b;--navy2:#21333b;--gold:#ba8751;--gold2:#e9c58d;--red:#b24d49;--green:#39765d;--shadow:0 14px 34px rgba(36,31,25,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font-family:"Segoe UI",Arial,sans-serif;color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.app-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#e4e5e0;padding:28px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:4px 12px 38px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid #b98b59;color:#eac893;background:#283941;font-weight:800;letter-spacing:-.08em;border-radius:11px;font-size:22px}.brand strong{display:block;font-family:Georgia,serif;font-size:21px;letter-spacing:.03em}.brand small{display:block;color:#a4aaa8;letter-spacing:.2em;font-size:9px;margin-top:4px}.side-label{font-size:10px;font-weight:700;color:#8d9b9e;letter-spacing:.19em;padding:0 15px;margin-bottom:13px}.side-label-spaced{margin-top:34px}.side-nav,.category-list{display:grid;gap:5px}.nav-btn,.category-btn{width:100%;background:transparent;border:1px solid transparent;border-radius:9px;display:flex;align-items:center;gap:11px;color:#bac5c4;padding:12px 14px;text-align:left;font-size:13px}.nav-btn span,.category-btn span{font-size:17px;width:20px;text-align:center;color:#a59a83}.nav-btn em{margin-left:auto;font-style:normal;color:#86989b;font-size:11px}.nav-btn:hover,.category-btn:hover{background:#25383e;color:#fff}.nav-btn.active,.category-btn.active{color:#fff;background:#30434a;border-color:#476069}.nav-btn.active span,.category-btn.active span{color:#f1c27c}.category-btn{padding:9px 14px;font-size:12px}.category-btn small{margin-left:auto;color:#87999b}.sidebar-footer{margin-top:auto;border-top:1px solid #34434a;padding:18px 10px 0;display:flex;align-items:center;gap:8px;color:#91a1a1;font-size:10px;line-height:1.4}.status-dot{width:6px;height:6px;background:#bca170;border-radius:50%;flex:none}.main-content{min-width:0}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 35px;background:rgba(251,250,247,.8);border-bottom:1px solid var(--line)}.topbar-title{font-family:Georgia,serif;font-size:17px;font-weight:bold}.topbar-meta{display:flex;gap:17px;align-items:center;color:#8c8a8a;font-size:11px}.source-pill{border:1px solid #dfd5c8;border-radius:50px;padding:7px 10px;color:#987447;font-size:10px;font-weight:700;letter-spacing:.08em}.view{padding:28px 34px 30px}.hero-banner{min-height:205px;background:linear-gradient(108deg,#243940 0%,#2d4448 54%,#576054 100%);border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:space-between;position:relative;padding:32px 42px;color:#fff;box-shadow:0 15px 27px rgba(22,35,36,.11)}.hero-banner:before,.hero-banner:after{content:"";position:absolute;border:1px solid rgba(231,209,155,.13);width:340px;height:340px;border-radius:50%;right:8%;top:-170px}.hero-banner:after{width:240px;height:240px;right:12.4%;top:-120px}.banner-copy{max-width:600px;z-index:1}.eyebrow{display:block;font-size:10px;letter-spacing:.21em;font-weight:800;color:#b68855}.hero-banner .eyebrow{color:#e0b877}.hero-banner h1{font-family:Georgia,serif;font-size:35px;line-height:1.15;letter-spacing:-.025em;margin:11px 0 10px;font-weight:500}.hero-banner h1 em{color:#e8c38f;font-style:normal}.hero-banner p{font-size:12px;line-height:1.65;color:#d7dfdb;margin:0;max-width:535px}.banner-emblem{position:relative;z-index:1;min-width:136px;height:136px;display:grid;place-items:center;border:1px solid rgba(239,202,141,.38);border-radius:50%;font-family:Georgia,serif;font-size:75px;color:#ecc795;box-shadow:inset 0 0 0 10px rgba(239,202,141,.06),0 0 0 12px rgba(239,202,141,.05);margin-right:38px}.exp-banner{background:linear-gradient(108deg,#273740,#333e47 60%,#625845)}.search-row{display:flex;align-items:center;gap:20px;margin:27px 0}.search-box{background:#fff;border:1px solid #e1dcd3;border-radius:10px;display:flex;align-items:center;gap:11px;height:46px;padding:0 14px;width:min(600px,100%);box-shadow:0 3px 10px rgba(30,29,28,.025)}.search-icon{font-size:25px;color:#9e9587;line-height:1}.search-box input{flex:1;border:0;outline:0;min-width:0;background:transparent;color:var(--ink);font-size:13px}.search-box kbd{font-family:inherit;color:#aaa5a0;border:1px solid #e7e2db;border-radius:4px;font-size:10px;padding:3px 5px}.result-count{color:#99918b;font-size:11px;margin-left:auto}.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,41%);gap:22px;align-items:start}.section-heading{margin-bottom:14px;display:flex;align-items:end;justify-content:space-between}.section-heading h2,.panel-heading h2{font-family:Georgia,serif;margin:4px 0 0;font-size:22px;font-weight:500}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.entity-card{border:1px solid #e6e0d6;background:var(--paper);border-radius:12px;padding:11px;text-align:left;min-width:0;transition:transform .15s,box-shadow .15s,border-color .15s}.entity-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.entity-card.selected{border-color:#c39b62;box-shadow:0 0 0 2px rgba(190,142,78,.13)}.card-image{height:112px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(140deg,#f0ebe2,#e8e5de);overflow:hidden;position:relative}.card-image img{max-width:92%;max-height:100%;object-fit:contain;image-rendering:auto}.card-image .placeholder{font-family:Georgia,serif;color:#c2b8a9;font-size:40px}.card-badge{position:absolute;right:6px;top:6px;background:rgba(30,34,40,.74);color:#f9e6c4;border-radius:4px;font-size:9px;padding:4px 5px}.entity-card h3{font-size:12px;margin:10px 2px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entity-card p{font-size:10px;color:#8c8881;margin:0 2px 2px}.detail-panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:20px;position:sticky;top:18px;max-height:calc(100vh - 34px);overflow-y:auto}.detail-hero{display:flex;gap:16px;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--line)}.detail-art{width:86px;height:86px;border-radius:10px;background:linear-gradient(145deg,#e2dfd9,#f3ecdf);display:grid;place-items:center;flex:none;overflow:hidden}.detail-art img{max-height:100%;max-width:100%;object-fit:contain}.detail-art .placeholder{font-size:28px;color:#bca781}.detail-hero h2{font-family:Georgia,serif;font-size:23px;margin:5px 0 5px}.detail-hero p{font-size:11px;color:var(--muted);margin:0}.quality-chip{font-size:10px;padding:5px 8px;border-radius:5px;background:#eee6dc;color:#90683d;font-weight:700}.detail-section{padding-top:18px}.detail-section h3{font-family:Georgia,serif;font-size:16px;font-weight:500;margin:0 0 12px}.mini-gallery{display:flex;gap:8px;overflow-x:auto;padding:0 0 7px}.mini-card{flex:none;width:69px;border:1px solid #e3ddd3;border-radius:8px;background:#f7f4ef;padding:5px;text-align:center;color:#81766c}.mini-card.active{border-color:#b68855;background:#fff8ec}.mini-card img,.mini-card .mini-placeholder{width:55px;height:51px;object-fit:contain;display:grid;place-items:center;color:#bdac94;font-size:22px}.mini-card span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;padding-top:3px}.help-text{font-size:11px;line-height:1.55;color:#8b837b;margin:5px 0 12px}.stat-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:14px}.stat-box{background:#f5f0e9;border:1px solid #ece3d7;border-radius:7px;padding:10px}.stat-box span{display:block;color:#918375;font-size:10px}.stat-box strong{display:block;margin-top:3px;font-size:15px}.stage-list{display:grid;gap:7px}.stage-row{border:1px solid #e8e1d8;border-radius:8px;padding:9px 10px;background:#fff;display:flex;align-items:center;gap:10px}.stage-row input{accent-color:#b28351}.stage-row span{font-size:11px;font-weight:600}.stage-row small{display:block;color:#928c84;font-size:10px;margin-top:3px;font-weight:400}.stage-row .level-tag{margin-left:auto;font-size:9px;color:#9a7048;background:#f6ede1;border-radius:4px;padding:4px 6px;white-space:nowrap}.progress-controls{display:flex;gap:8px;align-items:center;margin-bottom:9px}.progress-controls label{font-size:10px;color:#8e8579}.progress-controls select{display:block;width:100%;border:1px solid #ddd5ca;border-radius:6px;background:#fff;color:#363238;padding:6px 8px;margin-top:4px}.progress-controls>label{flex:1}.progress-summary{display:flex;justify-content:space-between;align-items:center;background:#f4efe7;border-radius:7px;padding:10px 11px;font-size:11px}.progress-summary strong{color:#87623c}.material-table{width:100%;border-collapse:collapse}.material-table th{font-size:10px;color:#968b7b;font-weight:700;text-align:left;border-bottom:1px solid #ece6dd;padding:8px 3px}.material-table td{font-size:11px;border-bottom:1px solid #eee9e2;padding:8px 3px}.material-table td:first-child{max-width:135px;line-height:1.3}.material-table td:nth-child(n+2),.material-table th:nth-child(n+2){text-align:right}.material-table input{width:72px;text-align:right;border:1px solid #ded8cd;border-radius:5px;padding:5px;background:#fff}.missing{color:#b14d45;font-weight:700}.covered{color:#3e8066;font-weight:700}.material-summary{display:flex;justify-content:space-between;padding:12px 0 0;font-size:11px;color:#857c71}.material-summary strong{color:#ac5148}.notice{border:1px solid #ead6b9;background:#fbf4e8;border-radius:8px;padding:11px;font-size:11px;line-height:1.55;color:#866845}.notice strong{display:block;color:#705230;margin-bottom:3px}.load-more{display:block;margin:18px auto;background:#fff;border:1px solid #dbd2c6;color:#856442;border-radius:8px;padding:10px 24px;font-size:12px}.empty-state{padding:42px 20px;text-align:center;border:1px dashed #d9d0c5;border-radius:12px;color:#90877b;font-size:12px}.detail-empty{padding:35px 12px;text-align:center;color:#958b7e;font-size:12px}.main-footer{border-top:1px solid #e7e0d5;color:#9c9389;font-size:10px;text-align:center;padding:20px 30px 26px;margin:0 34px}.exp-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:19px;margin-top:22px;align-items:start}.exp-main{display:grid;gap:19px}.panel{border:1px solid var(--line);background:var(--paper);border-radius:13px;box-shadow:var(--shadow);padding:21px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-heading h2{font-size:20px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid label{font-size:10px;color:#847b72;font-weight:600}.form-grid input{display:block;width:100%;height:36px;border:1px solid #dfd7cc;border-radius:6px;padding:0 9px;background:#fff;margin-top:6px;font-size:13px;color:var(--ink)}.formula-note{font-size:10px;line-height:1.55;color:#968d83;margin:14px 0}.exp-results{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.result-box{background:#f4f0e8;border-radius:8px;padding:13px 10px;min-height:74px}.result-box strong{display:block;font-size:16px;color:#735332}.result-box span{display:block;font-size:10px;color:#948778;margin-top:5px}.result-box.highlight{background:#30454a}.result-box.highlight strong{color:#f3c584}.result-box.highlight span{color:#c5d2d0}.error-message{grid-column:1/-1;color:#b44d44;font-size:11px}.table-panel{padding-bottom:0}.table-panel input{width:110px;border:1px solid #dfd7cc;border-radius:6px;height:32px;padding:0 9px;background:white}.table-wrap{max-height:480px;overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;font-size:11px}.table-wrap th{text-align:right;position:sticky;top:0;background:#f5f1e9;z-index:1;color:#857865;font-size:10px;padding:10px 8px}.table-wrap th:first-child,.table-wrap td:first-child{text-align:left}.table-wrap td{text-align:right;padding:9px 8px;border-bottom:1px solid #eee7dc}.table-wrap tr:nth-child(even){background:#faf8f4}.table-wrap tr:hover{background:#f2e7d7}.cap-panel{background:#263a40;color:#e4e6e1;border:0}.cap-panel .eyebrow{color:#d5aa6b}.cap-number{font-family:Georgia,serif;font-size:72px;color:#efd0a1;line-height:1;margin:17px 0 11px}.cap-number span{font-family:"Segoe UI",sans-serif;font-size:13px;margin-left:3px}.cap-panel p{font-size:11px;color:#c1d0cb;line-height:1.65;margin:0}.quick-panel{margin-top:18px}.quick-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ede5db;font-size:11px}.quick-row:last-child{border:0}.quick-row span{color:#867d72}.quick-row strong{color:#745737}.exp-aside{position:sticky;top:18px}@media(max-width:1250px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-layout{grid-template-columns:minmax(0,1fr) minmax(340px,44%)}}@media(max-width:1000px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding:20px 8px}.brand{padding:0 6px 30px}.brand>div,.side-label,.nav-btn:not(.active) em,.category-btn small,.sidebar-footer span{display:none}.nav-btn,.category-btn{justify-content:center;padding:11px 6px;font-size:0}.nav-btn span,.category-btn span{font-size:18px}.sidebar-footer{justify-content:center}.topbar{padding:0 25px}.view{padding:25px}.main-footer{margin:0 25px}}@media(max-width:780px){.catalog-layout,.exp-layout{grid-template-columns:1fr}.detail-panel,.exp-aside{position:static;max-height:none}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.exp-aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-panel{margin:0}.hero-banner{padding:27px}.banner-emblem{display:none}}@media(max-width:560px){.app-shell{display:block}.sidebar{position:static;height:auto;padding:8px 12px;display:block}.brand{display:none}.side-nav{display:flex}.nav-btn{font-size:11px;justify-content:flex-start;flex:1;padding:8px}.side-label,.category-list,.sidebar-footer{display:none}.topbar{height:54px;padding:0 16px}.topbar-meta span:last-child{display:none}.view{padding:15px}.hero-banner{min-height:170px;padding:22px}.hero-banner h1{font-size:27px}.hero-banner p{font-size:11px}.search-row{margin:17px 0}.search-box kbd{display:none}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exp-aside{display:block}.quick-panel{margin-top:12px}.form-grid{grid-template-columns:repeat(2,1fr)}.exp-results{grid-template-columns:repeat(2,1fr)}.main-footer{margin:0 15px}.topbar-title{font-size:15px}}

.catalog-column,.detail-column{min-width:0}.card-grid{min-width:0}

[hidden]{display:none!important}
