:root{--primary: #b83227;--primary-dark: #8f241b;--surface: #ffffff;--surface-muted: #faf6ee;--border: #e6dccb;--border-dark: #cfc2ab;--text-main: #241f1a;--text-muted: #6a6055;--shadow-soft: 0 2px 12px rgba(36,31,26,0.07);--pd-blue: #24528f;}
.pd-desk{background: var(--surface);border: 1px solid var(--border);border-radius: 1.1rem;box-shadow: var(--shadow-soft);overflow: hidden;margin-bottom: 1.5rem;}
.pd-desk::before{content: "";display: block;height: 8px;background: repeating-linear-gradient(135deg, var(--primary) 0 14px, #ffffff 14px 24px, var(--pd-blue) 24px 38px, #ffffff 38px 48px);}
.pd-rail-wrap{margin-bottom: 1.1rem;padding-bottom: 0.25rem;border-bottom: 1px solid var(--border);}
.pd-rail-title{font-size: 0.78rem;font-weight: 800;text-transform: uppercase;letter-spacing: 0.06em;color: var(--text-muted);margin: 0 0 0.6rem;}
.pd-rail{display: flex;gap: 0.6rem;overflow-x: auto;overflow-y: hidden;padding: 0.45rem 0.25rem 1.6rem;scroll-snap-type: x proximity;}
.pd-tile{position: relative;flex: 0 0 auto;width: 138px;scroll-snap-align: start;cursor: pointer;margin: 0;}
.pd-tile-input{position: absolute;opacity: 0;inset: 0;width: 100%;height: 100%;margin: 0;cursor: pointer;}
.pd-tile-face{display: flex;flex-direction: column;gap: 0.1rem;height: 100%;padding: 0.6rem 0.7rem;background: var(--surface);border: 2px dashed var(--border-dark);border-radius: 0.5rem;transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;}
.pd-tile:hover .pd-tile-face{border-color: var(--primary);transform: translateY(-2px);}
.pd-tile-input:checked + .pd-tile-face{border-style: solid;border-color: var(--primary);box-shadow: 0 0 0 3px rgba(184,50,39,0.14);}
.pd-tile-input:focus-visible + .pd-tile-face{outline: 2px solid var(--pd-blue);outline-offset: 2px;}
.pd-tile-code{font-size: 1.3rem;font-weight: 800;letter-spacing: 0.06em;color: var(--primary);line-height: 1.1;}
.pd-tile-name{font-size: 0.82rem;font-weight: 700;color: var(--text-main);line-height: 1.25;}
.pd-tile-fmt{font-family: ui-monospace, SFMono-Regular, Menlo, monospace;font-size: 0.72rem;color: var(--text-muted);margin-top: 0.2rem;}
.pd-body{display: grid;grid-template-columns: 1fr;}
@media (min-width: 992px){.pd-body{grid-template-columns: 340px minmax(0, 1fr);}.pd-controls{border-right: 1px solid var(--border);border-bottom: none;background: var(--surface-muted);}.pd-rail{display: grid;grid-template-columns: repeat(3, 1fr);gap: 0.5rem;overflow: visible;padding: 0.2rem 0 0.9rem;}.pd-tile{width: auto;}.pd-tile-face{padding: 0.5rem 0.55rem;}.pd-tile-code{font-size: 1.1rem;}.pd-tile-name{font-size: 0.74rem;}.pd-tile-fmt{font-size: 0.66rem;}.pd-tile:hover .pd-tile-face{transform: none;}}
.pd-controls{padding: 1.25rem;border-bottom: 1px solid var(--border);}
.pd-form{display: flex;flex-direction: column;gap: 1rem;}
.pd-field{display: flex;flex-direction: column;gap: 0.35rem;min-width: 0;}
.pd-label{font-size: 0.8125rem;font-weight: 700;color: var(--text-main);margin: 0;}
.pd-input{width: 100%;box-sizing: border-box;border: 1px solid var(--border-dark);border-radius: 0.6rem;padding: 0.55rem 0.7rem;font-size: 0.9375rem;color: var(--text-main);background: var(--surface);}
.pd-input:focus{outline: 2px solid var(--primary);outline-offset: 1px;border-color: var(--primary);}
.pd-hint{font-size: 0.75rem;color: var(--text-muted);margin: 0;line-height: 1.45;}
.pd-stepper{display: grid;grid-template-columns: 2.4rem 1fr 2.4rem;gap: 0.35rem;}
.pd-stepper .pd-input{text-align: center;font-weight: 700;}
.pd-step{border: 1px solid var(--border-dark);border-radius: 0.6rem;background: var(--surface);color: var(--text-main);font-size: 1.1rem;font-weight: 700;cursor: pointer;}
.pd-step:hover{border-color: var(--primary);color: var(--primary);}
.pd-checks{display: flex;flex-direction: column;gap: 0.55rem;border-top: 1px solid var(--border);padding-top: 0.9rem;}
.pd-check{display: flex;align-items: flex-start;gap: 0.5rem;font-size: 0.8125rem;color: var(--text-main);font-weight: 600;line-height: 1.4;margin: 0;cursor: pointer;}
.pd-check input{margin-top: 0.15rem;accent-color: var(--primary);}
.pd-actions{display: grid;grid-template-columns: 1fr;gap: 0.5rem;}
.pd-btn{border: 1px solid transparent;border-radius: 0.6rem;padding: 0.7rem 1rem;font-size: 0.9375rem;font-weight: 700;cursor: pointer;transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;}
.pd-btn-primary{background: var(--primary);color: #ffffff;}
.pd-btn-primary:hover{background: var(--primary-dark);}
.pd-btn-ghost{background: var(--surface);color: var(--text-muted);border-color: var(--border-dark);}
.pd-btn-ghost:hover{color: var(--primary);border-color: var(--primary);}
.pd-btn:focus-visible,.pd-tab:focus-visible,.pd-tool:focus-visible,.pd-cp:focus-visible,.pd-step:focus-visible{outline: 2px solid var(--pd-blue);outline-offset: 2px;}
.pd-out-wrap{padding: 1.25rem;min-width: 0;}
.pd-anat{background: var(--surface-muted);border: 1px solid var(--border);border-radius: 0.6rem;padding: 0.75rem 0.9rem;margin-bottom: 1rem;}
.pd-anat-head{font-size: 0.75rem;font-weight: 800;text-transform: uppercase;letter-spacing: 0.05em;color: var(--text-muted);margin: 0 0 0.35rem;}
.pd-anat-pc{font-size: 0.78rem;color: var(--text-muted);margin: 0.5rem 0 0;}
.pd-al{display: flex;flex-wrap: wrap;gap: 0.3rem;align-items: center;margin-top: 0.35rem;}
.pd-al-n{width: 1.25rem;height: 1.25rem;border-radius: 50%;background: var(--text-main);color: #ffffff;font-size: 0.7rem;font-weight: 700;display: inline-flex;align-items: center;justify-content: center;flex: 0 0 auto;}
.pd-chip{font-size: 0.78rem;font-weight: 700;padding: 0.15rem 0.5rem;border-radius: 0.3rem;}
.pd-opt{border: 1px dashed var(--border-dark);}
.pd-p{color: var(--text-main);border-radius: 0.25rem;padding: 0.03rem 0.28rem;}
.pd-p-number{background: #fde3bd;}
.pd-p-street{background: #d7e6fb;}
.pd-p-unit{background: #e6dffb;}
.pd-p-area{background: #d6f1dd;}
.pd-p-city{background: #fbdada;}
.pd-p-region{background: #d3eefb;}
.pd-p-postcode{background: #fbef9c;white-space: nowrap;}
.pd-p-country{background: #e8e4dd;}
.pd-desk.pd-mono .pd-card .pd-p{background: transparent;padding: 0;}
.pd-head{display: flex;flex-wrap: wrap;gap: 0.75rem;justify-content: space-between;align-items: flex-end;margin-bottom: 0.9rem;}
.pd-title{font-size: 1.15rem;font-weight: 800;color: var(--text-main);margin: 0;}
.pd-note{font-size: 0.8rem;color: var(--text-muted);margin: 0.15rem 0 0;}
.pd-tabs{display: inline-flex;background: var(--surface-muted);border: 1px solid var(--border);border-radius: 0.6rem;padding: 0.2rem;gap: 0.15rem;}
.pd-tab{border: 0;background: transparent;padding: 0.35rem 0.8rem;border-radius: 0.45rem;font-size: 0.82rem;font-weight: 700;color: var(--text-muted);cursor: pointer;}
.pd-tab:hover{color: var(--primary);}
.pd-tab.pd-on{background: var(--surface);color: var(--primary);box-shadow: 0 1px 3px rgba(36,31,26,0.14);}
.pd-tools{display: flex;flex-wrap: wrap;gap: 0.4rem;margin-bottom: 0.9rem;}
.pd-tool{display: inline-flex;align-items: center;gap: 0.35rem;background: var(--surface);border: 1px solid var(--border-dark);color: var(--text-muted);border-radius: 0.5rem;padding: 0.4rem 0.7rem;font-size: 0.8125rem;font-weight: 600;cursor: pointer;}
.pd-tool:hover{color: var(--primary);border-color: var(--primary);}
.pd-done{color: #0f7a4a;border-color: rgba(15,122,74,0.5);}
.pd-cards{display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 0.9rem;}
.pd-card{position: relative;background: var(--surface-muted);border: 1px solid var(--border);border-radius: 0.6rem;padding: 1.1rem 1rem 0.8rem;overflow: hidden;}
.pd-card::before{content: "";position: absolute;left: 0;right: 0;top: 0;height: 4px;background: repeating-linear-gradient(135deg, var(--primary) 0 10px, #ffffff 10px 16px, var(--pd-blue) 16px 26px, #ffffff 26px 32px);}
.pd-stamp{position: absolute;top: 1rem;right: 0.8rem;width: 2.6rem;height: 2.9rem;display: flex;align-items: center;justify-content: center;font-size: 0.8rem;font-weight: 800;letter-spacing: 0.04em;color: var(--primary);background: var(--surface);border: 2px dashed var(--primary);border-radius: 0.2rem;transform: rotate(3deg);}
.pd-idx{font-size: 0.7rem;font-weight: 800;letter-spacing: 0.08em;text-transform: uppercase;color: var(--text-muted);margin: 0 0 0.45rem;}
.pd-addr{display: flex;flex-direction: column;gap: 0.22rem;padding-right: 3.3rem;font-size: 0.95rem;line-height: 1.55;color: var(--text-main);overflow-wrap: anywhere;}
.pd-tel{font-size: 0.82rem;color: var(--text-main);margin: 0.6rem 0 0;font-family: ui-monospace, SFMono-Regular, Menlo, monospace;}
.pd-tel-l{font-family: inherit;font-weight: 800;color: var(--text-muted);text-transform: uppercase;font-size: 0.7rem;letter-spacing: 0.06em;margin-right: 0.2rem;}
.pd-tel em{font-family: system-ui, sans-serif;font-style: normal;font-size: 0.68rem;font-weight: 700;border-radius: 999px;padding: 0.05rem 0.45rem;margin-left: 0.25rem;}
.pd-fic{background: #d6f1dd;color: #0f5c34;}
.pd-fmt{background: #fbe6c4;color: #7a4a06;}
.pd-cp{display: inline-flex;align-items: center;gap: 0.3rem;margin-top: 0.7rem;background: transparent;border: 1px solid var(--border-dark);color: var(--text-muted);border-radius: 0.4rem;padding: 0.25rem 0.6rem;font-size: 0.75rem;font-weight: 700;cursor: pointer;}
.pd-cp:hover{color: var(--primary);border-color: var(--primary);}
.pd-cp.pd-done{color: #0f7a4a;border-color: rgba(15,122,74,0.5);}
.pd-lines{list-style: none;margin: 0;padding: 0;border: 1px solid var(--border);border-radius: 0.6rem;overflow: hidden;}
.pd-lrow{display: flex;align-items: center;justify-content: space-between;gap: 0.75rem;padding: 0.55rem 0.8rem;border-bottom: 1px solid var(--border);}
.pd-lrow:nth-child(odd){background: var(--surface-muted);}
.pd-lrow:last-child{border-bottom: none;}
.pd-ltxt{font-size: 0.88rem;color: var(--text-main);overflow-wrap: anywhere;}
.pd-ltel{font-family: ui-monospace, SFMono-Regular, Menlo, monospace;color: var(--text-muted);margin-left: 0.5rem;}
.pd-lrow .pd-cp{margin-top: 0;flex: 0 0 auto;}
.pd-code{background: #241f1a;color: #f3ead9;border-radius: 0.6rem;padding: 0.9rem 1rem;font-size: 0.8rem;line-height: 1.65;max-height: 460px;overflow: auto;margin: 0;white-space: pre;}
.pd-byline{display: flex;flex-wrap: wrap;gap: 0.5rem 1.25rem;font-size: 0.82rem;color: var(--text-muted);margin: 0 0 1.5rem;}
.pd-byline a{color: var(--primary);font-weight: 600;}
.pd-content{margin-bottom: 2rem;}
.pd-content h2{font-size: 1.5rem;font-weight: 800;color: var(--text-main);margin: 2.25rem 0 0.75rem;}
.pd-content h3{font-size: 1.125rem;font-weight: 800;color: var(--text-main);margin: 1.5rem 0 0.5rem;}
.pd-content p{font-size: 1rem;color: var(--text-muted);line-height: 1.75;margin-bottom: 1rem;}
.pd-content a{color: var(--primary);font-weight: 600;}
.pd-content strong{color: var(--text-main);}
.pd-content p.pd-lead{font-size: 1.1rem;color: var(--text-main);border-left: 4px solid var(--primary);padding-left: 1rem;}
.pd-mono-t{font-family: ui-monospace, SFMono-Regular, Menlo, monospace;background: var(--surface-muted);border: 1px solid var(--border);border-radius: 0.3rem;padding: 0.05rem 0.35rem;font-size: 0.88em;color: var(--text-main);}
.pd-table-wrap{overflow-x: auto;margin-bottom: 1.25rem;border: 1px solid var(--border);border-radius: 0.75rem;}
.pd-table{width: 100%;border-collapse: collapse;font-size: 0.88rem;min-width: 720px;}
.pd-table th,.pd-table td{padding: 0.6rem 0.8rem;text-align: left;border-bottom: 1px solid var(--border);color: var(--text-muted);vertical-align: top;}
.pd-table th{background: var(--surface-muted);color: var(--text-main);font-weight: 800;font-size: 0.78rem;text-transform: uppercase;letter-spacing: 0.04em;}
.pd-table tr:last-child td{border-bottom: none;}
.pd-table td:first-child{color: var(--text-main);font-weight: 700;white-space: nowrap;}
.pd-ranges{list-style: none;margin: 0 0 1.25rem;padding: 0;display: grid;grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));gap: 0.6rem;}
.pd-ranges li{background: var(--surface-muted);border: 1px solid var(--border);border-radius: 0.6rem;padding: 0.65rem 0.8rem;font-size: 0.85rem;color: var(--text-muted);line-height: 1.5;}
.pd-ranges strong{display: block;font-size: 0.75rem;text-transform: uppercase;letter-spacing: 0.05em;color: var(--primary);margin-bottom: 0.15rem;}
.pd-steps{counter-reset: pd;list-style: none;margin: 0 0 1.25rem;padding: 0;display: grid;gap: 0.7rem;}
.pd-steps li{counter-increment: pd;position: relative;padding-left: 2.4rem;font-size: 0.98rem;color: var(--text-muted);line-height: 1.65;}
.pd-steps li::before{content: counter(pd);position: absolute;left: 0;top: 0.1rem;width: 1.7rem;height: 1.7rem;border-radius: 50%;background: var(--primary);color: #ffffff;font-size: 0.85rem;font-weight: 800;display: flex;align-items: center;justify-content: center;}
.pd-callout{background: var(--surface-muted);border: 1px solid var(--border);border-left: 4px solid var(--primary);border-radius: 0 0.75rem 0.75rem 0;padding: 1rem 1.15rem;margin-bottom: 1.5rem;}
.pd-callout-title{font-size: 0.95rem;font-weight: 800;color: var(--text-main);margin: 0 0 0.5rem;}
.pd-callout p{font-size: 0.94rem;}
.pd-callout p:last-child{margin-bottom: 0;}
@media (max-width: 575px){.pd-rail-wrap,.pd-controls,.pd-out-wrap{padding-left: 0.9rem;padding-right: 0.9rem;}.pd-tile{width: 122px;}.pd-cards{grid-template-columns: 1fr;}.pd-lrow{flex-direction: column;align-items: flex-start;}.pd-head{align-items: flex-start;}}
@media (prefers-reduced-motion: reduce){*{transition-duration: 0.01ms !important;}}