:root{--forest-green:#495045;--warm-cream:#f7f2e9;--soft-cream:#fbf7ef;--sage-green:#8fa382;--lavender-purple:#765773;--warm-beige:#c9b8a7;--line-color:#cdd1c3;--text-color:#30463d;--muted-text:#6c7a70;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--warm-cream);color:var(--text-color);font:16px/1.65 Arial,sans-serif}#library-app h1,#library-app h2,#library-app .brand{font-family:Georgia,serif;font-weight:400}#library-app h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.15;margin:8px 0 24px}#library-app h2{font-size:1.7rem;line-height:1.3;margin:8px 0 20px}#library-app a{color:var(--lavender-purple)}#library-app p{overflow-wrap:anywhere}#library-app button,#library-app .button{font:inherit;cursor:pointer;border:1px solid #a6b29d;border-radius:8px;background:transparent;color:var(--forest-green);padding:10px 17px;text-decoration:none;display:inline-block}#library-app button:disabled{opacity:.55;cursor:wait}#library-app .primary{background:var(--forest-green);color:white;border-color:var(--forest-green)}#library-app .purple{background:var(--lavender-purple);color:white;border-color:var(--lavender-purple)}#library-app label{display:block;font-size:.9rem;color:var(--forest-green)}#library-app input,#library-app select,#library-app textarea{display:block;width:100%;font:inherit;border:1px solid #abb4a6;border-radius:8px;padding:11px 13px;margin:7px 0 18px;background:rgba(255,255,255,.3);color:var(--text-color)}#library-app textarea{resize:vertical}#library-app input[type=file]{padding:9px;font-size:.85rem}#library-app :focus-visible{outline:3px solid #9a7398;outline-offset:3px}#library-app small{display:block;color:var(--muted-text);font-size:.78rem}#library-app .eyebrow{font-size:.7rem;letter-spacing:.18em;color:#6e806c}#library-app .panel{border:1px solid var(--line-color);border-radius:10px;background:rgba(255,255,255,.22);padding:26px;margin-bottom:24px}#library-app .actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}#library-app .notice{padding:14px 18px;margin-bottom:22px;background:#e4e9da;border:1px solid #a2b695;border-radius:8px}#library-app .notice.error{background:#f2e3e2;border-color:#bd777b;color:#713e4d}#library-app .brand{text-decoration:none;color:#314b40;font-size:2.4rem;display:block;line-height:1.3}#library-app .brand span{display:block;font:12px/1.5 Arial,sans-serif;margin-top:8px}#library-app .admin{display:grid;grid-template-columns:245px 1fr;min-height:100vh}#library-app .sidebar{border-right:1px solid var(--line-color);padding:25px 18px;display:flex;flex-direction:column;background:#f3eee3}#library-app .sidebar .brand{padding:0 10px 30px}#library-app .sidebar nav{display:flex;flex-direction:column;gap:8px}#library-app .sidebar nav button{border:none;text-align:left;font-size:.95rem;padding:14px 12px}#library-app .sidebar nav button.active{background:#dfe4d6}#library-app .account{margin-top:auto;padding:35px 10px 0}#library-app .account button{margin-top:12px}#library-app .workspace{min-width:0}#library-app .admin-top{display:flex;justify-content:space-between;align-items:center;padding:18px 35px;border-bottom:1px solid var(--line-color);font-size:.85rem}#library-app .menu-button{display:none}#library-app .workspace-inner{padding:35px;max-width:1600px}#library-app .page-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:20px}#library-app .page-heading h1{margin-bottom:10px}#library-app .summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}#library-app .summary-grid h2{font-size:1.35rem}#library-app .summary-grid p{font-size:.85rem;color:var(--muted-text)}#library-app .metric{display:block;font:1.7rem Georgia,serif;margin:25px 0 12px}#library-app .table-scroll{overflow-x:auto}#library-app table{border-collapse:collapse;width:100%;font-size:.86rem;white-space:normal}#library-app th,#library-app td{padding:16px 12px;text-align:left;border-bottom:1px solid var(--line-color);vertical-align:middle}#library-app th{background:#e8eade;font-weight:500;white-space:nowrap}#library-app .product-cell{display:flex;gap:16px;align-items:center;min-width:170px}#library-app .mini{width:55px;height:70px;object-fit:cover;object-position:top;border-radius:5px}#library-app .status{display:inline-block;padding:4px 8px;border-radius:20px;font-size:.75rem;background:#e5e0e6;color:#765773}#library-app .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}#library-app .wide{grid-column:1/-1}#library-app .product-heading{display:flex;gap:30px;align-items:center;margin-bottom:25px}#library-app .detail-art{width:130px;height:180px;object-fit:cover;object-position:top;border-radius:8px}#library-app dl{display:grid;grid-template-columns:1fr 1.3fr;gap:9px 20px;font-size:.9rem}#library-app dt{color:var(--muted-text)}#library-app dd{margin:0;overflow-wrap:anywhere}#library-app .narrow{max-width:780px}#library-app .stock-preview{background:#e4e9da;padding:20px;border-radius:8px;margin:20px 0}#library-app .document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}#library-app .document-grid article{border:1px solid var(--line-color);border-radius:8px;padding:20px}#library-app .document-grid h2{font-size:1.3rem}#library-app .document-grid a{display:block;margin-top:20px}#library-app .login-wrap{max-width:580px;margin:60px auto;padding:25px}#library-app .login-wrap>.brand{text-align:center;margin-bottom:35px}#library-app .login h1{font-size:2.3rem}#library-app .login button.primary{width:100%;margin:15px 0}#library-app .login-links{display:flex;justify-content:space-between;gap:12px;margin:15px 0 25px}#library-app .login-links button{border:0;font-size:.85rem;padding:0;color:var(--lavender-purple)}dialog{border:1px solid #abb4a6;border-radius:12px;background:#f7f2e9;color:#30463d;max-width:850px;width:90%;padding:30px;max-height:85vh;overflow:auto}dialog::backdrop{background:#23382b66}dialog button{font:inherit;padding:10px 16px;border:1px solid #a6b29d;border-radius:7px;background:#e3e8d9;cursor:pointer}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem}dialog .actions{display:flex;gap:15px;flex-wrap:wrap}#library-app.public-library{max-width:1220px;margin:auto;padding:40px 30px 75px}#library-app .catalogue-intro{max-width:900px;padding:35px 0}#library-app .catalogue-intro h1{font-size:clamp(2.5rem,5vw,4.2rem)}#library-app .catalogue-intro p:not(.eyebrow){font-size:1.2rem;max-width:750px;color:#5b7062}#library-app .catalogue-controls{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:18px;align-items:center;border-block:1px solid var(--line-color);padding:25px 0}#library-app .catalogue-controls input,#library-app .catalogue-controls select{margin-bottom:0}#library-app .catalogue-controls button{margin-top:27px}#library-app #public-count{font-size:.85rem;color:var(--muted-text);margin:25px 0}#library-app .botanical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}#library-app .botanical-card{border:1px solid var(--line-color);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--text-color);background:#fbf7ee;display:flex;flex-direction:column}#library-app .botanical-card>img{width:100%;aspect-ratio:1.25;object-fit:cover;object-position:top}#library-app .botanical-card>div{padding:20px;display:flex;flex-direction:column;flex:1}#library-app .botanical-card h2{font-size:1.55rem;margin-bottom:8px}#library-app .botanical-card p{font-size:.85rem;margin:7px 0}#library-app .botanical-card hr{border:0;border-top:1px solid var(--line-color);width:100%;margin:12px 0}#library-app .botanical-card span{color:#765773;font-size:.85rem;margin-top:auto;padding-top:22px}#library-app .latin{font-style:italic;color:#65786b}#library-app .chinese{font-size:1.4rem;color:#65786b}#library-app .back{display:inline-block;margin:15px 0 35px;text-decoration:none}#library-app .plant-hero{display:grid;grid-template-columns:1fr 1.7fr;gap:60px;align-items:center;margin-bottom:45px}#library-app .plant-hero>img{width:100%;max-height:450px;object-fit:cover;object-position:top;border-radius:10px}#library-app .profile-grid{display:grid;grid-template-columns:1.2fr 1.3fr 1fr;gap:35px;border-block:1px solid var(--line-color);padding:35px 0}#library-app .profile-grid section+section{border-left:1px solid var(--line-color);padding-left:30px}#library-app .variant{display:block;border:1px solid var(--line-color);border-radius:8px;padding:15px;margin:12px 0;text-decoration:none}#library-app .related{padding-top:35px}#library-app [hidden]{display:none!important}@media(max-width:1100px){#library-app .botanical-grid{grid-template-columns:repeat(3,1fr)}#library-app .summary-grid{gap:12px}#library-app .admin{grid-template-columns:205px 1fr}#library-app .workspace-inner{padding:25px}#library-app .page-heading{display:block}#library-app .page-heading .actions{margin:20px 0}#library-app .profile-grid{grid-template-columns:1fr 1fr}#library-app .profile-grid section:last-child{grid-column:1/-1;border-left:0;padding-left:0}#library-app .catalogue-controls{grid-template-columns:2fr 1fr 1fr}#library-app .catalogue-controls button{margin-top:0;justify-self:start}}@media(max-width:760px){#library-app .admin{display:block}#library-app .sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:260px;transform:translateX(-100%);box-shadow:10px 0 30px #30463d22}#library-app .sidebar.open{transform:translateX(0)}#library-app .menu-button{display:block}#library-app .admin-top{padding:14px 20px}#library-app .workspace-inner{padding:22px 16px}#library-app .summary-grid{grid-template-columns:1fr}#library-app .summary-grid .panel{margin:0}#library-app .summary-grid{margin-bottom:22px}#library-app .metric{margin:12px 0;font-size:1.35rem}#library-app .form-grid{grid-template-columns:1fr}#library-app .wide{grid-column:auto}#library-app .document-grid{grid-template-columns:1fr}#library-app .panel{padding:20px}#library-app.public-library{padding:20px 18px 45px}#library-app .catalogue-intro{padding:20px 0}#library-app .catalogue-controls{grid-template-columns:1fr 1fr}#library-app .catalogue-controls label:first-child{grid-column:1/-1}#library-app .botanical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#library-app .botanical-card>div{padding:14px}#library-app .botanical-card h2{font-size:1.25rem}#library-app .plant-hero{grid-template-columns:1fr;gap:25px}#library-app .plant-hero>img{max-width:350px;margin:auto;height:330px}#library-app .profile-grid{grid-template-columns:1fr}#library-app .profile-grid section+section{border-left:0;padding-left:0;border-top:1px solid var(--line-color);padding-top:20px}#library-app .profile-grid section:last-child{grid-column:auto}#library-app dl{grid-template-columns:1fr 1fr}#library-app table button{white-space:nowrap}#library-app .login-wrap{margin:20px auto;padding:16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

#library-app .menu-close{display:none}@media(max-width:800px){#library-app .sidebar{overflow-y:auto;overscroll-behavior:contain}#library-app .sidebar>*{flex-shrink:0}#library-app .menu-close{display:block;align-self:flex-end;margin-bottom:12px}}

.supplier-download{display:block;overflow-wrap:anywhere;padding:.5rem 0}.supplier-documents summary{cursor:pointer;padding:.5rem 0}.supplier-documents .document-grid{align-items:start}.source-credit{font-size:.85rem;color:var(--muted)}

.breadcrumbs{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:1rem 0;color:#607268;font-size:.9rem}.breadcrumbs a,.back-row a{color:#765276}.back-row{margin:.75rem 0 1.25rem}.admin-return{padding:1rem;border:1px solid #ced2c5;border-radius:10px;background:#e6ebdf}h1:focus{outline:none}
