:root{--ink:#222e2b;--muted:#65736d;--paper:#f5f4ef;--line:#dcded5;--accent:#334e44}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button{cursor:pointer;background:var(--accent);color:white;border:1px solid var(--accent);padding:10px 20px;border-radius:3px}input,select{background:#fff;border:1px solid #bcc5bd;border-radius:3px;padding:10px;min-width:0}input:focus,select:focus,button:focus,a:focus{outline:2px solid #9c885a;outline-offset:3px}header{padding:24px 4vw;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:25px;background:#fcfcf9}.brand{text-decoration:none;font:22px/1.2 Georgia,serif;letter-spacing:2px}.brand span{display:block;font:11px/1.8 system-ui;letter-spacing:6px;text-align:center}.portal-label{color:var(--muted);font-size:13px}nav{margin-left:auto;display:flex;gap:20px;align-items:center;font-size:13px}nav a{text-decoration:none}nav form{margin:0}.text-button{padding:0;background:none;border:0;color:var(--muted)}main{max-width:1500px;margin:auto;padding:44px 4vw;min-height:75vh}h1{font:normal clamp(32px,4vw,52px)/1.15 Georgia,serif;letter-spacing:-.7px;margin:10px 0 28px}h2{font:normal 19px/1.4 Georgia,serif;margin:12px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:12px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.terms{font-size:12px;border-left:2px solid #a8b6a8;padding-left:20px}.terms strong{display:block;font:32px/1.4 Georgia}.filters{padding:24px;background:#eeefe7;border:1px solid var(--line);display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px}fieldset{grid-column:1/-1;border:0;margin:4px 0;padding:6px 0;display:flex;flex-wrap:wrap;gap:12px}legend{font-size:12px;color:var(--muted);padding:4px 0}.check{display:flex;align-items:center;gap:7px;font-size:13px}.check input{accent-color:var(--accent);width:17px;height:17px}.filter-actions{grid-column:1/-1;display:flex;align-items:center;gap:20px;font-size:12px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.card{background:white;text-decoration:none;border:1px solid var(--line);transition:transform .15s}.card:hover{transform:translateY(-3px)}.photo{aspect-ratio:1/1.15;background:#fafafa;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}.photo img{width:100%;height:100%;object-fit:contain}.card-body{padding:18px}.tag{font-size:11px;letter-spacing:.3px;color:#446652}.price{display:block;font:23px Georgia;margin:12px 0}.pagination{display:flex;justify-content:center;gap:30px;margin:40px 0}.login{max-width:460px;margin:4vh auto}.login form{display:grid;gap:12px;margin-top:25px}.login label{font-size:13px}.login input{width:100%}.login .helptext,.login ul{font-size:12px;color:var(--muted)}.errorlist{color:#942f32!important}.notice{background:#eee4cc;padding:14px 18px;font-size:14px}.back{display:inline-block;margin-bottom:28px}.detail{display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.gallery img{display:block;width:100%;margin-bottom:20px;background:white}.description h1{font-size:36px}.detail-price{font:38px Georgia;margin:12px 0 25px}.prose{border-top:1px solid var(--line);margin-top:25px;padding:25px 0;white-space:normal}.certificates{display:grid;gap:12px;font-size:14px}footer{padding:24px 4vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:white;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:18px}th{font-size:12px;font-weight:500;color:var(--muted)}@media(max-width:1100px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filters{grid-template-columns:1fr 1fr}.portal-label{display:none}}@media(max-width:760px){header{flex-wrap:wrap;gap:16px;padding:18px 5vw}nav{width:100%;margin-left:0;gap:16px;flex-wrap:wrap}main{padding:28px 5vw}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-body{padding:12px}.card h2{font-size:16px}.filters{padding:16px}.filters input[type=search]{grid-column:1/-1}.heading{align-items:flex-start}.terms{max-width:140px}.terms strong{font-size:24px}.detail{grid-template-columns:1fr;gap:24px}.description h1{font-size:30px}footer{flex-direction:column;gap:8px}}@media(max-width:400px){.grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.heading{display:block}.terms{max-width:none;margin:0 0 24px}}
/* RU-CARD-1 — reference: owner's ring card, 24 September 2026.
   Keep these tokens and composition stable; design changes require a new approved version. */
[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.card-open{overflow:hidden}
.item-dialog,.item-sheet{--card-ink:#14263c;--card-muted:#62738c;--card-line:#d8e0eb;--card-gold:#9b773e;position:relative;background:#fff;color:var(--card-ink);font:16px/1.6 Arial,Helvetica,sans-serif;border:0;border-radius:16px;padding:40px;max-width:1100px;width:calc(100% - 40px);box-shadow:0 25px 100px #10243c22}
.item-dialog{position:fixed;inset:0;margin:auto;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain}.item-dialog::backdrop{background:rgb(13 27 43 / 72%)}.item-sheet{margin:0 auto;width:100%}
.item-close{display:grid;place-items:center;position:absolute;right:14px;top:14px;z-index:2;width:44px;height:44px;min-height:44px;border:0;border-radius:50%;padding:0;background:#edf1f5;color:#14263c;font:30px/1 Arial;text-decoration:none}.item-close:hover{background:#e1e7ee}
.item-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}.item-images,.item-description{min-width:0}.item-description{padding-right:12px}.item-stage{position:relative;display:flex;align-items:center;justify-content:center;height:450px;background:#fff}.item-hero{width:100%;height:100%;display:block;object-fit:contain;touch-action:pan-y}.item-empty{font-size:15px;color:var(--card-muted)}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:44px;min-height:44px;display:grid;place-items:center;background:rgb(255 255 255 / 94%);color:var(--card-ink);border:1px solid var(--card-line);border-radius:50%;padding:0;font:32px/1 Georgia;box-shadow:0 2px 9px #10243c13}.gallery-prev{left:0}.gallery-next{right:0}.gallery-arrow:hover{background:#edf1f5}
.item-thumbnails{position:relative;display:flex;gap:12px;overflow-x:auto;margin-top:22px;padding:2px 2px 6px;scrollbar-width:thin}.item-thumbnails button{flex:0 0 82px;width:82px;height:82px;background:#fff;border:1px solid var(--card-line);border-radius:7px;padding:5px;display:block}.item-thumbnails button[aria-pressed=true]{border:2px solid var(--card-gold);padding:4px}.item-thumbnails img{width:100%;height:100%;object-fit:contain;display:block}
.item-collection{font-size:14px;letter-spacing:2px;color:var(--card-gold);font-weight:600;margin:0 0 18px}.item-description h1{font:normal 32px/1.18 Georgia,'Times New Roman',serif;letter-spacing:0;margin:0 0 24px;color:var(--card-ink)}.item-location{display:inline-block;background:#edf1f6;padding:4px 10px;border-radius:4px;font-size:14px}.item-price{font-size:34px;line-height:1.3;margin:26px 0 20px;font-weight:500}.item-price small{display:block;font-size:14px;font-weight:400;color:var(--card-muted);margin-top:6px}.item-discount{font-size:15px;margin:0 0 18px}.item-size{font-size:16px;margin:0 0 10px;font-weight:600}.item-prose{font-size:16px;color:var(--card-muted);line-height:1.75;overflow-wrap:anywhere}.item-code{font-size:14px;color:var(--card-muted);margin:12px 0}.item-certificates{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.item-certificates a{padding:10px 12px;border:1px solid var(--card-line);border-radius:6px;font-size:14px;text-decoration:none;overflow-wrap:anywhere}.item-certificates a:hover{background:#f4f6f9;border-color:#a9b7c8}
.certificate-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:20px}.certificate-toolbar h1{font-size:28px;margin:0 0 8px}.certificate-toolbar p{font-size:14px;margin:0;color:var(--muted)}.download-button{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;border-radius:5px;padding:10px 22px;white-space:nowrap}.certificate-pdf{display:block;width:100%;height:78vh;border:1px solid var(--line);background:#fff}.certificate-image{display:block;max-width:100%;height:auto;margin:0 auto;background:#fff}.certificate-help{font-size:14px}
@media(max-width:760px){.item-dialog,.item-sheet{width:calc(100% - 20px);padding:54px 22px 26px;border-radius:12px;max-height:calc(100dvh - 24px)}.item-sheet{width:100%;max-height:none}.item-layout{grid-template-columns:1fr;gap:26px}.item-description{padding:0}.item-stage{height:min(380px,85vw)}.item-description h1{font-size:28px}.item-thumbnails{margin-top:14px}.item-thumbnails button{flex-basis:68px;width:68px;height:68px}.item-collection{margin-bottom:12px}.item-price{font-size:30px}.item-certificates a{font-size:14px}.certificate-toolbar{align-items:flex-start;flex-wrap:wrap}.certificate-pdf{height:70vh}}

/* Employee operation forms. RU-CARD-1 composition is preserved. */
.item-operations{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid #d7dfeb;font:14px Arial,sans-serif}
.operation-link{display:inline-block;border:1px solid #c6d0dc;border-radius:5px;padding:12px 16px;text-decoration:none;color:#172c45;background:#fff}
.operation-page{max-width:760px;margin:40px auto}.operation-page h1,.operations-page h1{font-size:38px}.operation-page h2{font-size:23px;line-height:1.4}.operation-page p{line-height:1.6}
.operation-form{margin-top:24px;padding:28px;background:#fff;border:1px solid #d7dfeb;border-radius:10px}.operation-field{margin-bottom:22px}.operation-field>label{display:block;margin-bottom:8px}.operation-field input:not([type=checkbox]),.operation-field select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #bcc8d1;border-radius:4px;font:inherit}.operation-confirm label{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.operation-confirm input{margin-top:5px;flex:none}.operation-form>button{margin-right:20px}.operation-form button:disabled{opacity:.5;cursor:default}.errorlist{color:#9b2424;padding-left:22px;line-height:1.5}.muted{color:#617386;font-size:14px}.operation-state{font-size:22px;font-weight:600}.operation-pending{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin:24px 0 40px}.operation-pending article{padding:20px;border:1px solid #d7dfeb;background:#fff;border-radius:8px}.operation-table-scroll{overflow-x:auto}.operations-page table{width:100%}.operations-page th,.operations-page td{padding:16px;text-align:left;vertical-align:top}
@media(max-width:700px){.operation-page{margin:20px 0}.operation-form{padding:18px}.operation-page h1,.operations-page h1{font-size:30px}.item-operations{gap:8px}}

/* Approval forms v2. RU-CARD-1 gallery, typography and certificate layout preserved. */
.request-page{max-width:1200px;margin:0 auto}.request-page h1{font-size:clamp(2rem,4vw,3.5rem)}.request-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin:28px 0}.request-page label{display:block;margin:8px 0}.request-page input:not([type=checkbox]),.request-page select,.request-page textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #d6dfe8;background:#fff;color:#172a41;font:inherit}.request-page small{display:block;color:#67778a;font-size:.85rem}.request-items{max-height:550px;overflow:auto;border:1px solid #d6dfe8;margin:16px 0}.request-item{padding:16px 20px;background:white;border-bottom:1px solid #e5e9ee;display:flex;gap:24px;align-items:center}.request-item[hidden]{display:none}.request-item>label{display:flex;gap:14px;align-items:center;flex:1}.request-item input[type=checkbox],.request-confirm input{width:18px;height:18px;flex:none}.request-amount{width:240px}.request-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:24px 0}.request-total{font-size:1.25rem}.request-confirm{margin:24px 0!important}.request-page button.secondary{background:white;color:#243c52;border:1px solid #bdc9d5}.request-decision{background:#eef2f5;padding:24px;margin:28px 0}.request-page table{width:100%}.request-page details{margin-top:30px}.request-page .errorlist{color:#992a31}.request-page input:focus,.request-page select:focus,.request-page textarea:focus{outline:2px solid #365d73;outline-offset:2px}@media(max-width:640px){.request-item{display:block}.request-amount{width:100%;margin-top:12px}.request-decision{padding:16px}}

/* New-client panel belongs only to the sale form. RU-CARD-1 is unchanged. */
.request-page details.new-client{margin:14px 0 0;border:1px solid #d6dfe8;border-radius:6px;padding:12px 14px;background:#f7f9fb}.new-client summary{cursor:pointer;color:#243c52}.new-client [data-client-matches]{display:grid;gap:10px}.new-client button{max-width:100%;white-space:normal}.new-client [role=status]{font-size:.9rem}.new-client [hidden]{display:none!important}

/* Original supplied logo; existing portal layout and card styles retained. */
.brand-with-logo{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.brand-logo{display:block;width:51px;height:46px;object-fit:contain;flex-shrink:0}.brand-copy{white-space:nowrap}

/* Partner request photos: use the existing private catalog media. */
.request-items-with-photos .request-item>label{min-width:0;cursor:pointer;margin:0;padding:4px 0}
.request-items-with-photos .request-item-text{min-width:0;overflow-wrap:anywhere}
.request-item-photo{display:flex;align-items:center;justify-content:center;flex:0 0 96px;width:96px;height:96px;border:1px solid #e5e9ee;border-radius:5px;background:#fafafa;overflow:hidden;color:#67778a;font-size:12px;line-height:1.3;text-align:center}
.request-item-photo img{display:block;width:100%;height:100%;object-fit:contain}
.request-item-photo [hidden]{display:none}
.request-items-with-photos .request-item:has(input[name=items]:checked){background:#f0f5f7}
.request-items-with-photos .request-amount{flex-shrink:0}
@media(max-width:640px){.request-items-with-photos .request-item{padding:12px}.request-items-with-photos .request-item>label{gap:10px}.request-item-photo{flex-basis:76px;width:76px;height:76px}.request-items-with-photos .request-item-text{font-size:14px;line-height:1.45}}
