/* Utility controls match the calculator service. No inline styles required. */
@media(min-width:761px){.utility-page[data-utility=random-picker] .utility-graphic svg:has(#ladder-trace):not(.wide-ladder){max-width:100%;width:100%;height:auto}}
textarea{font:inherit;resize:vertical;border:1px solid #cdd8ce;border-radius:8px;background:#fff;padding:12px;width:100%;min-height:110px;line-height:1.7;word-break:normal}textarea:focus{outline:2px solid var(--green);outline-offset:1px}.utility-private{font-size:12px!important;color:var(--muted)}.utility-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:start}.utility-layout .field{margin-bottom:16px}.utility-layout .form-panel{min-width:0}.utility-result{min-width:0;overflow:hidden}.utility-check{display:flex;align-items:center;gap:9px;padding:8px 0;font-size:13px}.utility-check input{width:18px;height:18px;accent-color:var(--green)}.utility-page .fields{gap:12px}.utility-page .fields input{padding:10px;width:100%;border:1px solid #cdd8ce;border-radius:8px}.utility-page input[type=text],.utility-page input[type=password],.utility-page select{width:100%;padding:10px;border:1px solid #cdd8ce;border-radius:8px}.utility-page .form-actions{flex-wrap:wrap;gap:8px}.utility-page .form-actions button{min-height:44px}.utility-table{border-collapse:collapse;width:100%;font-size:12px;word-break:normal}.utility-table th{text-align:left;color:var(--green);background:#edf3ed;font-weight:600}.utility-table th,.utility-table td{padding:11px 9px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.table-scroll{max-width:100%;overflow:auto;margin:12px 0 20px}.list-result{max-height:330px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f8f4;border:1px solid var(--line);border-radius:8px;padding:16px;font:13px/1.8 Consolas,'Malgun Gothic',monospace;word-break:normal}.utility-result h3{font-size:17px;margin:24px 0 12px}.overflow-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f8f4;border-radius:8px;padding:14px;max-height:220px;overflow:auto;font-size:13px;word-break:normal}mark{background:#ffe2bd;color:#743e11}.utility-graphic{width:100%;overflow:auto}.utility-graphic svg{display:block;max-width:100%;height:auto;margin:auto}.utility-page[data-utility=random-picker] .utility-graphic svg:has(#ladder-trace){max-width:none;width:auto;max-height:550px}.path-buttons,.export-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.export-actions .copy-button{margin:0;min-height:40px;font-size:12px}.export-note{font-size:12px;color:var(--muted);margin:12px 0 0}.export-actions button:disabled{opacity:.45;cursor:default}.winner-result{font-size:25px;color:var(--green);font-weight:700;overflow-wrap:anywhere}.team-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.team-editor label{display:block;color:var(--green);font-weight:600;margin-bottom:8px}.qr-notice{text-align:center;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-top:12px;overflow-wrap:anywhere}.qr-code svg{max-width:100%;height:auto;display:block;margin:auto;image-rendering:pixelated}.qr-notice p{font-size:12px;margin:14px 0 0;white-space:pre-wrap}.device-settings{padding:16px;background:#f4f7f0;border:1px solid var(--line);border-radius:12px;margin:16px 0 20px;min-width:0}.device-settings summary{font-size:13px;cursor:pointer;color:var(--green)}.device-settings .copy-button{font-size:12px;margin:6px 6px 0 0}.directory-search{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:22px;font-weight:600;color:var(--green)}.directory-search input{flex:1;min-width:160px;border:1px solid #cdd8ce;border-radius:8px;background:white;padding:12px;font-weight:400}.directory-search button{margin:0}.tool-card-frame{position:relative;min-width:0}.tool-card-frame .tool-card{height:100%;padding-right:58px}.favorite-toggle{position:absolute;right:12px;top:15px;border:0;background:transparent;color:#71876e;font-size:24px;padding:4px;min-width:35px;min-height:35px}.favorite-toggle[aria-pressed=true]{color:#b98323}.tool-card-frame .arrow{display:none}.print-only{display:none}[hidden]{display:none!important}
@media(max-width:760px){.utility-layout{grid-template-columns:1fr;gap:16px}.utility-result{padding:20px}.utility-layout .form-panel{padding:20px}.team-editor{grid-template-columns:1fr}.directory-search{display:block}.directory-search input{display:block;width:100%;margin:10px 0}.utility-page .fields{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-page h1{font-size:29px}.utility-table{font-size:11px}.qr-notice{padding:15px}}
@media print{body.printing-result header,body.printing-result footer,body.printing-result .breadcrumbs,body.printing-result .reading-layout,body.printing-result .form-panel,body.printing-result .device-settings,body.printing-result .export-actions,body.printing-result .export-note,body.printing-result .path-buttons,body.printing-result button,body.printing-result .skip,body.printing-result .timer-controls,body.printing-result .timer-limit{display:none!important}body.printing-result{background:white;font-size:12px}body.printing-result main{padding:0;max-width:none}body.printing-result .page-heading{margin:0;padding:10px 0}body.printing-result .page-heading p{display:none}body.printing-result .utility-layout,body.printing-result .calculator-layout,body.printing-result .timer-layout{display:block}body.printing-result .result-panel,body.printing-result .timer-display{border:0;background:white;padding:0;position:static;box-shadow:none}body.printing-result .table-scroll,body.printing-result .list-result,body.printing-result .overflow-preview{overflow:visible;max-height:none}body.printing-result .print-only{display:block}body.printing-result [data-print-copies="2"],body.printing-result [data-print-copies="4"]{display:grid;grid-template-columns:1fr 1fr;gap:20px}body.printing-result .qr-notice{break-inside:avoid}body.printing-result .utility-graphic{overflow:visible}body.printing-result .utility-graphic svg{max-width:100%!important;width:100%!important}body.printing-result #utility-status{display:none}}
