:root{font-family:Arial,'PingFang SC',sans-serif;color:#333;background:#f4f3f9;font-size:16px;--accent:#8500aa}*{box-sizing:border-box}body{margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}button,input,select,textarea{font:inherit}button,.file-button{min-height:44px;padding:10px 14px;background:white;border:1px solid #b5a9bd;border-radius:8px;color:#563163;cursor:pointer;touch-action:manipulation}button:hover{background:#f4eafa}button:disabled{opacity:.45;cursor:default}.primary{color:white;background:var(--accent);border-color:var(--accent)}.primary:hover{background:#68008b}.quiet{background:transparent}.danger{color:#a1273a}input,select{width:100%;min-width:0;min-height:44px;padding:9px;border:1px solid #b9b1c0;border-radius:7px;background:white;color:#222}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #c396dd;outline-offset:2px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:bold;color:#54465c}h1,h2,p{margin-top:0}h1{font-size:27px;margin-bottom:0;font-weight:500}h1 span{font-size:17px;color:#76617e}h2{font-size:19px;margin-bottom:12px}.eyebrow{display:block;letter-spacing:1.5px;font-size:10px;font-weight:bold;color:#7c6188;margin-bottom:6px}.app-header{background:white;padding:20px max(18px,calc((100vw - 1440px)/2));display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e4dce8}main{max-width:1440px;padding:0 20px;margin:auto}.status-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 2px;font-size:12px;color:#5a4664}.status-row.ready{color:#246c44}.profile-card{background:white;border:1px solid #e2dce7;border-radius:16px;padding:20px;box-shadow:0 5px 22px #39204606}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.section-heading h2{margin-bottom:14px}.section-heading span{font-size:12px;color:#786581}.profile-select{display:grid;grid-template-columns:1fr 1.6fr;gap:14px}.selected-name{font-size:13px;overflow-wrap:anywhere;color:#7a6384;margin:9px 0 20px}.field-grid{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr 1fr 1.3fr;gap:12px}.convention{font-size:12px;color:#7e7383;margin:14px 0}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.library-tools{border:1px solid #e2dce7;border-radius:12px;background:#fff;margin-top:14px}.library-tools summary{padding:15px;cursor:pointer;font-size:14px;font-weight:bold;color:#64446e}.tools-body{padding:0 15px 15px;font-size:13px;line-height:1.6}.tools-body p:last-child{margin-bottom:0}.file-button input{display:none}.file-button{display:inline-flex;justify-content:center;font-size:16px;font-weight:normal}.message{white-space:pre-wrap;font-size:14px;line-height:1.5;padding:0}.message:not(:empty){padding:13px;border-left:3px solid #8500aa;background:#eee6f4;margin:12px 0}.message.error{border-color:#ae243d;background:#fff0f2;color:#8a2437}.chart-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:18px 0 10px}.chart-toolbar label{flex-direction:row;align-items:center}.chart-toolbar select{width:90px}.check input{width:20px;height:20px;min-height:0;accent-color:var(--accent)}.chart-toolbar button{font-size:13px;min-height:40px}.chart-nav{display:flex;gap:8px;overflow-x:auto;white-space:nowrap;padding:10px 0 14px;scrollbar-width:thin;position:sticky;top:0;background:#f4f3f9f5;z-index:2}.chart-nav a{padding:8px 12px;border:1px solid #ded4e5;border-radius:20px;background:white;color:#6f3483;text-decoration:none;font-size:13px;min-height:36px}.report{background:white;border:1px solid #e5dfe9;border-radius:18px;padding:18px;min-width:0}.app-footer{text-align:center;font-size:12px;color:#897b91;line-height:1.8;padding:25px 10px}.app-footer a{color:#755082}dialog{color:#333;border:1px solid #d7cadd;border-radius:15px;padding:22px;max-width:min(92vw,650px);max-height:90dvh;overflow:auto;box-shadow:0 15px 70px #29103540}dialog::backdrop{background:#20112d70}dialog p{font-size:14px;line-height:1.6;white-space:pre-wrap}dialog label{margin-bottom:16px}.notes-dialog[open]{display:flex;flex-direction:column;width:min(94vw,1000px);height:min(88dvh,820px);max-width:1000px;resize:both;overflow:auto}.dialog-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.dialog-heading h2{overflow-wrap:anywhere}.dialog-heading p{font-size:12px;color:#80688b}.notes-dialog textarea{flex:1;min-height:180px;width:100%;resize:none;border:1px solid #c4b4cd;border-radius:8px;padding:14px;line-height:1.7;font-size:17px}.notes-dialog #draft-status{font-size:12px;margin:9px 0;color:#7a6384}#choice-text{white-space:pre-wrap;overflow-wrap:anywhere}#trash-list{display:grid;gap:12px;margin-bottom:14px}.trash-record{padding:12px;border:1px solid #dfd2e6;border-radius:8px;overflow-wrap:anywhere}.trash-record button{margin-top:8px}body.modal-open{overflow:hidden}
@media(max-width:1050px){.field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.name-field{grid-column:span 2}.field-grid label:last-child{grid-column:span 2}}
@media(max-width:600px){.app-header{padding:16px 14px}h1{font-size:24px}h1 span{font-size:15px}.app-header button{font-size:12px;max-width:105px}main{padding:0 12px}.profile-card{padding:16px;border-radius:13px}.profile-select{grid-template-columns:1fr;gap:12px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.name-field{grid-column:span 2}.field-grid label:last-child{grid-column:span 1}.actions button{flex:1 1 auto;font-size:14px}.convention{line-height:1.5}.report{padding:12px;border-radius:12px}.chart-toolbar{gap:9px}.chart-toolbar .check{font-size:12px}.chart-toolbar button{flex:1 1 29%}.chart-nav{margin:0 -12px;padding:10px 12px}.notes-dialog[open]{margin:auto;width:calc(100vw - 16px);height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 18px);max-height:100dvh;padding:16px;resize:none}.dialog-heading h2{font-size:18px}.notes-dialog textarea{font-size:17px}.section-heading{align-items:baseline}.section-heading h2{font-size:18px}.section-heading span{white-space:nowrap}}
@media print{body{padding:0;background:white}.app-header,.status-row,.profile-card,.library-tools,.message,.chart-toolbar,.chart-nav,.app-footer,dialog{display:none!important}main{max-width:none;padding:0}.report{border:0;border-radius:0;padding:0}a{color:inherit}}

label{min-width:0}.direction,.direction span,.direction strong{min-width:0;overflow-wrap:anywhere}.table-viewport{min-width:0}