/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#f5f3ec;--muted:#a6aaa2;--panel:#191d19;--panel-2:#222722;--line:#343a34;--orange:#2684ff;--orange-2:#65a9ff;--green:#72d572;--red:#ff6b6b}*{box-sizing:border-box}html{background:#0d100d}body{color:var(--ink);background:radial-gradient(circle at 80% -10%,#2684ff29,#0000 30rem),#0d100d;min-height:100dvh;margin:0;font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2684ff73}.app-shell{max-width:1120px;min-height:100dvh;margin:auto;padding-bottom:86px}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d100de0;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:16px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;display:flex}.mark{background:var(--orange);color:#151515;border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;font-weight:1000;display:grid;transform:skew(-5deg)}.brand strong{letter-spacing:.08em;font-size:15px;display:block}.brand small{color:var(--muted);font-size:11px}.status-chip{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.status-dot{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #72d5721f}.main{padding:20px 16px}.eyebrow{color:var(--orange-2);letter-spacing:.16em;font-size:12px;font-weight:800}h1{letter-spacing:-.03em;margin:7px 0 4px;font-size:clamp(25px,7vw,42px);line-height:1.15}.lead{color:var(--muted);margin:0;font-size:14px}.hero{justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}.date-badge{color:var(--muted);border-left:1px solid var(--line);padding-left:20px;font-size:13px;display:none}.quick-grid{grid-template-columns:repeat(2,1fr);gap:11px;display:grid}.quick-card{border:1px solid var(--line);min-height:132px;color:var(--ink);text-align:left;background:linear-gradient(150deg,#222722,#171a17);border-radius:18px;padding:16px;transition:transform .15s,border-color .15s}.quick-card:active{transform:scale(.98)}.quick-card.primary{color:#f7fbff;background:linear-gradient(135deg,#318cff,#1264cf);border-color:#0000;grid-column:1/-1;min-height:156px}.quick-icon{margin-bottom:20px;font-size:25px;display:block}.quick-card strong{font-size:18px;display:block}.quick-card p{opacity:.7;margin:5px 0 0;font-size:12px}.section-title{justify-content:space-between;align-items:center;margin:25px 2px 12px;display:flex}.section-title h2{margin:0;font-size:16px}.text-button{color:var(--orange-2);background:0 0;border:0;font-size:12px}.recent-list{gap:8px;display:grid}.recent-row{background:var(--panel);border:1px solid var(--line);border-radius:14px;align-items:center;gap:12px;padding:13px;display:flex}.recent-icon{background:var(--panel-2);border-radius:11px;place-items:center;width:39px;height:39px;display:grid}.recent-main{flex:1;min-width:0}.recent-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.recent-main span,.recent-value span{color:var(--muted);font-size:11px}.recent-value{text-align:right}.recent-value strong{color:var(--orange-2);display:block}.bottom-nav{z-index:30;width:min(100%,1120px);padding:7px 6px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141814f5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-btn{color:#858b84;background:0 0;border:0;border-radius:12px;place-items:center;gap:2px;min-height:52px;font-size:10px;display:grid}.nav-btn b{font-size:19px;line-height:1}.nav-btn.active{color:var(--orange-2);background:#2684ff1a}.page-head{align-items:center;gap:12px;margin-bottom:18px;display:flex}.back{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:13px;width:43px;height:43px;font-size:18px}.page-head h1{margin:0;font-size:24px}.page-head p{color:var(--muted);margin:2px 0 0;font-size:12px}.form-card,.result-card,.admin-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin-bottom:12px;padding:17px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.field.full{grid-column:1/-1}.field label{color:#cdd0ca;margin:0 0 7px 2px;font-size:12px;font-weight:700;display:block}.field input,.field select{width:100%;min-height:49px;color:var(--ink);background:#101310;border:1px solid #404740;border-radius:12px;padding:0 13px;font-size:16px}.calc-button{background:var(--orange);color:#15110d;border:0;border-radius:14px;width:100%;min-height:54px;margin-top:15px;font-size:16px;font-weight:900}.result-card{background:linear-gradient(145deg,#2684ff29,var(--panel));border-color:#2684ff61}.area-result{border-bottom:1px solid #65a9ff40;margin-bottom:16px;padding-bottom:17px}.area-result>span{color:#b8d7ff;letter-spacing:.08em;font-size:12px;font-weight:800;display:block}.area-result>strong{color:#fff;letter-spacing:-.055em;margin:3px 0 0;font-size:clamp(44px,12vw,64px);font-weight:950;line-height:1;display:block}.area-result>strong b{color:var(--orange-2);letter-spacing:0;margin-left:7px;font-size:20px}.area-result>small{color:var(--muted);margin-top:9px;font-size:11px;display:block}.quantity-result{padding:2px 0 12px}.result-label{color:var(--muted);font-size:12px}.result-number{letter-spacing:-.04em;margin:4px 0;font-size:38px;font-weight:950}.result-number span{color:var(--orange-2);margin-left:5px;font-size:16px}.result-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:11px;display:flex}.result-meta span:first-child{color:#d6e8ff;white-space:nowrap;text-overflow:ellipsis;width:100%;overflow:hidden}.share-row{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px;display:grid}.share-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:12px;min-height:46px}.share-btn.line{color:#071b0e;background:#06c755;border:0;font-weight:900}.share-btn.pdf{color:#fff;background:#d9363e;border:0;font-weight:900}.field-note{color:var(--orange-2);margin:7px 2px 0;font-size:11px;display:block}.print-heading,.print-details{display:none}.searchbar{gap:8px;display:flex}.searchbar input{border:1px solid var(--line);background:var(--panel);min-width:0;min-height:50px;color:var(--ink);border-radius:13px;flex:1;padding:0 14px}.searchbar button{background:var(--orange);border:0;border-radius:13px;width:52px;font-size:20px}.filter-row{scrollbar-width:none;gap:8px;padding:12px 0 4px;display:flex;overflow:auto}.filter{white-space:nowrap;border:1px solid var(--line);color:var(--muted);background:var(--panel);border-radius:99px;padding:9px 13px;font-size:12px}.filter.active{background:var(--orange);border-color:var(--orange);color:#17110d;font-weight:800}.facility{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-top:10px;padding:15px}.facility-top{justify-content:space-between;gap:10px;display:flex}.facility h3{margin:0 0 3px;font-size:15px}.facility p{color:var(--muted);margin:0;font-size:12px}.distance{color:var(--orange-2);white-space:nowrap;font-size:13px;font-weight:800}.owned{color:var(--green);background:#72d5721a;border-radius:5px;margin-bottom:8px;padding:3px 6px;font-size:10px;display:inline-block}.facility-actions{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px;display:grid}.facility-actions button,.facility-actions a{text-align:center;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:10px;padding:10px 4px;font-size:11px;text-decoration:none}.notice{color:#f5c889;background:#ffb64817;border:1px solid #ffb64840;border-radius:12px;margin:12px 0;padding:12px;font-size:12px}.admin-grid{gap:12px;display:grid}.admin-card h3{margin:0 0 4px;font-size:15px}.admin-card>p{color:var(--muted);margin:0 0 14px;font-size:12px}.diag-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:11px 0;font-size:13px;display:flex}.diag-state{color:var(--green);align-items:center;gap:7px;font-size:11px;display:flex}.diag-state.warn{color:#ffbe6b}.diag-state .status-dot{width:7px;height:7px;box-shadow:none}.diag-state.warn .status-dot{background:#ffbe6b}.version{justify-content:space-between;align-items:end;display:flex}.version strong{font-size:29px}.version span{color:var(--muted);font-size:11px}.change-list{color:#d6d9d3;padding-left:18px;font-size:12px;line-height:1.8}.backup-button{border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--ink);border-radius:12px;min-height:47px;font-weight:700}.update-modal{z-index:100;background:#000000b3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-box{background:#202520;border:1px solid #414941;border-radius:21px;width:min(100%,410px);padding:22px;box-shadow:0 24px 80px #000}.modal-box h2{margin:10px 0 7px;font-size:21px}.modal-box p{color:var(--muted);font-size:13px;line-height:1.7}.modal-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:18px;display:grid}.modal-actions button{border:1px solid var(--line);background:var(--panel-2);min-height:48px;color:var(--ink);border-radius:12px}.modal-actions .primary-btn{background:var(--orange);color:#17110d;border:0;font-weight:900}.toast{z-index:90;color:#171917;white-space:nowrap;background:#f3f0e8;border-radius:12px;padding:11px 16px;font-size:12px;position:fixed;bottom:86px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #000}.quick-grid.unified{grid-template-columns:1fr 1fr}.quick-grid.unified .quick-card{grid-column:auto;min-height:168px}.quick-grid.unified.three-actions .primary{grid-column:1/-1}.location-card{background:linear-gradient(145deg,#2684ff1f,#171a17);border-color:#2684ff59}.site-card{background:linear-gradient(145deg,#72d57214,#171a17);border-color:#72d57247}.planning-button{color:#fff8f0;background:linear-gradient(135deg,#ff8a28,#d85b00);border-color:#ff8a28}.schedule-button{color:#f5fff8;background:linear-gradient(135deg,#41bd71,#168449);border-color:#41bd71}.schedule-register-toggle{color:#a4e6bd;background:#41bd7117;border:1px solid #41bd716b;border-radius:13px;align-items:center;gap:10px;width:100%;min-height:56px;margin-bottom:12px;padding:10px 13px;font-weight:900;display:flex}.schedule-register-toggle b{color:#092414;background:#41bd71;border-radius:9px;place-items:center;width:32px;height:32px;font-size:20px;display:grid}.schedule-register-form{border-color:#41bd715c}.schedule-register-button{color:#fff;background:linear-gradient(135deg,#41bd71,#168449);border:0;border-radius:12px;width:100%;min-height:50px;margin-top:14px;font-weight:900}.record-button{background:linear-gradient(145deg,#754bd747,#171a17);border-color:#9d7aff80}.schedule-check{cursor:pointer;background:#41bd7112;border:1px solid #41bd7159;border-radius:12px;align-items:center;gap:11px;min-height:58px;padding:10px 12px;display:flex}.schedule-check input{accent-color:#41bd71;width:22px;height:22px;min-height:0}.schedule-check span{gap:3px;display:grid}.schedule-check strong{font-size:13px}.schedule-check small{color:var(--muted);font-size:10px}.calendar-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px;display:flex}.calendar-toolbar button{border:1px solid var(--line);background:var(--panel-2);width:38px;height:38px;color:var(--ink);border-radius:10px;font-size:25px}.calendar-toolbar strong{font-size:17px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays span{color:var(--muted);text-align:center;border-bottom:1px solid var(--line);padding:8px 2px;font-size:10px}.calendar-weekdays span:first-child{color:#ff7c7c}.calendar-weekdays span:last-child{color:#75adff}.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;min-height:74px;padding:6px}.calendar-day:nth-child(7n){border-right:0}.calendar-day>b{place-items:center;width:23px;height:23px;font-size:11px;display:grid}.calendar-day.today>b{color:#0b2114;background:#55d184;border-radius:50%}.calendar-event{color:#9be5b7;white-space:nowrap;text-overflow:ellipsis;background:#41bd712b;border-radius:4px;margin-top:3px;padding:3px 4px;font-size:8px;display:block;overflow:hidden}.calendar-day>small{color:var(--muted);font-size:8px}.schedule-list{gap:9px;display:grid}.schedule-row{border:1px solid var(--line);background:var(--panel);border-left:4px solid #41bd71;border-radius:13px;grid-template-columns:72px 1fr;gap:12px;padding:13px;display:grid}.schedule-date{border-right:1px solid var(--line);align-content:center;padding-right:10px;display:grid}.schedule-date strong{color:#84dfa6;font-size:14px}.schedule-date span{color:var(--muted);font-size:9px}.schedule-row>div:last-child>span{color:#84dfa6;font-size:9px}.schedule-row h3{margin:3px 0;font-size:13px}.schedule-row p{color:var(--muted);margin:0;font-size:10px}.plan-save-button{color:#fff;background:linear-gradient(135deg,#ff8a28,#db5e00);border:0;border-radius:14px;width:100%;min-height:54px;margin-top:15px;font-size:15px;font-weight:900}.plan-list{gap:10px;display:grid}.plan-card{background:var(--panel);border:1px solid var(--line);border-left:4px solid #ff8a28;border-radius:14px;padding:15px}.plan-card>span{color:#ffae69;background:#ff8a281a;border-radius:5px;padding:4px 7px;font-size:10px}.plan-card h3{margin:10px 0 5px;font-size:15px}.plan-card p{color:var(--muted);margin:0 0 10px;font-size:12px}.plan-card div{color:#ddd;border-top:1px solid var(--line);padding-top:10px;font-size:12px}.plan-card div small{color:var(--muted);margin-top:7px;display:block}.plan-section{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:18px}.plan-section>h2{color:#ffb16f;margin:0 0 12px;font-size:14px}.plan-entry{gap:7px;margin-bottom:8px;display:grid}.worker-entry{grid-template-columns:minmax(0,1fr) auto}.partner-entry{grid-template-columns:1fr 70px 1fr}.machine-entry{grid-template-columns:1.2fr 90px 1fr 70px 60px}.material-entry{grid-template-columns:1.2fr 1.2fr 70px 60px}.plan-entry input,.plan-entry select,.planning-card textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);font:inherit;background:#0e1311;border-radius:10px;padding:10px}.planning-card textarea{resize:vertical}.attendance{border:1px solid var(--line);border-radius:10px;align-items:center;gap:6px;min-width:78px;padding:0 8px;font-size:12px;display:flex}.attendance input{accent-color:#41bd71;width:18px;min-height:18px;padding:0}.plan-add-button{color:#ffb16f;background:#ff8a2814;border:1px dashed #ff8a288c;border-radius:10px;min-height:38px;padding:0 14px;font-weight:800}.supervisor-field{background:#ff8a280f;border:1px solid #ff8a2857;border-radius:12px;margin-bottom:12px;padding:12px}.supervisor-field label{color:#ffb16f;margin:0 0 7px 2px;font-size:12px;font-weight:800;display:block}.supervisor-field input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--ink);background:#0e1311;border-radius:10px;padding:0 12px}.facility-plan-box{background:#2684ff0f;border:1px solid #2684ff4d;border-radius:12px;margin-bottom:10px;padding:12px}.facility-plan-box.waste{background:#41bd710d;border-color:#41bd714d}.facility-plan-box h3{color:#9bc9ff;margin:0 0 10px;font-size:12px}.facility-plan-box.waste h3{color:#8ee1ad}.timeline-section{margin:4px 0 16px}.timeline-toggle{width:100%;min-height:58px;color:var(--ink);text-align:left;background:#2684ff14;border:1px solid #2684ff66;border-radius:13px;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;padding:9px 12px;display:grid}.timeline-toggle b{background:var(--orange);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;font-size:20px;display:grid}.timeline-toggle span{font-weight:900}.timeline-toggle small{color:#8fc5ff;font-size:10px}.timeline-editor{border:1px solid var(--line);background:#121612;border-top:0;border-radius:0 0 13px 13px;padding:12px}.timeline-entry{grid-template-columns:110px 1fr;gap:8px;margin-bottom:8px;display:grid}.timeline-entry input{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);background:#0e1311;border-radius:10px;padding:0 11px}.planning-share-row{grid-template-columns:1fr 1fr;gap:9px;margin-top:10px;display:grid}.planning-share-row button{color:#fff;border:0;border-radius:12px;min-height:50px;font-weight:900}.planning-share-row .line{color:#071b0e;background:#06c755}.planning-share-row .pdf{background:#d9363e}.plan-print-pages,.record-print-sheet{display:none}@media (width<=560px){.timeline-toggle{grid-template-columns:36px 1fr}.timeline-toggle small{grid-column:2}.timeline-entry{grid-template-columns:96px 1fr}}.construction-record-list{gap:11px;display:grid}.construction-record{border:1px solid var(--line);background:var(--panel);border-radius:15px;overflow:hidden}.record-head{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:15px;display:flex}.record-head span{color:#bba5ff;font-size:9px;font-weight:800}.record-head h3{margin:5px 0;font-size:15px}.record-head p{color:var(--muted);margin:0;font-size:11px}.record-head>b{color:#bba5ff;font-size:23px}.record-detail{border-top:1px solid var(--line);padding:0 15px 15px}.record-facts{grid-template-columns:1fr 1fr;gap:8px;padding:13px 0;display:grid}.record-facts>div{background:#111511;border-radius:9px;padding:9px}.record-facts small,.record-facts strong{display:block}.record-facts small{color:var(--muted);font-size:9px}.record-facts strong{margin-top:4px;font-size:11px}.record-block{border-top:1px solid var(--line);padding:10px 0}.record-block>strong{color:#cbbdff;font-size:11px}.record-block p{color:#d5d8d2;white-space:pre-wrap;margin:5px 0 0;font-size:12px;line-height:1.65}.record-actions{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px;display:grid}.record-actions button,.edit-actions button{border:1px solid var(--line);background:var(--panel-2);min-height:42px;color:var(--ink);border-radius:10px;font-size:11px;font-weight:800}.record-actions .edit,.edit-actions .save{background:var(--orange);color:#fff;border:0}.record-actions .pdf{color:#fff;background:#d9363e;border:0}.record-edit-modal{z-index:80;background:#000000c7;padding:18px;position:fixed;inset:0;overflow:auto}.record-edit-modal>section{border:1px solid var(--line);background:var(--panel);border-radius:18px;width:min(100%,620px);margin:30px auto;padding:18px}.record-edit-modal h2{margin:0 0 16px}.record-edit-modal textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;resize:vertical;background:#0e1311;border-radius:10px;padding:10px}.edit-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;display:grid}@media (width<=700px){.partner-entry{grid-template-columns:1fr 72px}.partner-entry input:last-child{grid-column:1/-1}.machine-entry{grid-template-columns:1fr 90px 70px 55px}.machine-entry input:nth-child(3){grid-area:2/1/auto/-1}.material-entry{grid-template-columns:1fr 70px 55px}.material-entry input:nth-child(2){grid-area:2/1/auto/-1}}.calc-type-switch{background:var(--panel);border:1px solid var(--line);border-radius:15px;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;padding:5px;display:grid}.calc-type-switch.two-types{grid-template-columns:repeat(2,1fr)}.calc-type-switch button{min-height:52px;color:var(--muted);background:0 0;border:0;border-radius:11px;font-size:12px;font-weight:800}.calc-type-switch button b{margin-bottom:2px;font-size:17px;display:block}.calc-type-switch button.active{background:var(--orange);color:#fff;box-shadow:0 5px 18px #2684ff38}.unified-calc-title{background:linear-gradient(135deg,#2684ff33,#2684ff0f);border:1px solid #2684ff66;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:64px;margin-bottom:14px;padding:12px 17px;display:grid}.unified-calc-title>span{background:var(--orange);color:#fff;border-radius:10px;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.unified-calc-title>strong{font-size:16px}.unified-calc-title>small{color:var(--orange-2);font-size:10px;font-weight:800}.all-results{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px;display:grid}.all-results.two-results{grid-template-columns:repeat(2,1fr)}.all-results>div{background:#0a101894;border:1px solid #65a9ff2e;border-radius:11px;min-width:0;padding:11px 9px}.all-results span{color:#abcfff;white-space:nowrap;font-size:10px;display:block}.all-results strong{color:#fff;letter-spacing:-.04em;margin-top:5px;font-size:clamp(18px,5vw,26px);display:block}.all-results strong b{color:var(--orange-2);margin-left:3px;font-size:11px}.add-location-button{background:var(--orange);color:#fff;border:0;border-radius:14px;width:100%;min-height:56px;font-size:15px;font-weight:900}.site-count{color:var(--muted);font-size:12px}.work-site-list{gap:12px;display:grid}.work-site-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:16px}.work-site-head{justify-content:space-between;gap:12px;display:flex}.work-site-head h3{margin:0 0 4px;font-size:16px}.work-site-head p{color:var(--muted);margin:0;font-size:12px}.request-count{background:#2684ff1f;border:1px solid #2684ff47;border-radius:15px;align-content:center;place-items:center;min-width:58px;height:58px;display:grid}.request-count strong{color:var(--orange-2);font-size:22px;line-height:1}.request-count span{color:var(--muted);margin-top:4px;font-size:10px}.request-timeline{border-top:1px solid var(--line);margin-top:15px}.request-record{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 0;display:grid}.sequence-badge{color:#d8eaff;white-space:nowrap;background:#2684ff2e;border-radius:99px;padding:5px 8px;font-size:10px;font-weight:900}.request-record div{min-width:0}.request-record strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.request-record small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.request-record>b{color:var(--orange-2);white-space:nowrap;font-size:12px}.request-kind{color:#8fc5ff;background:#2684ff29;border-radius:999px;margin-bottom:5px;padding:2px 7px;font-size:9px;font-weight:900;display:inline-block}.request-kind.waste{color:#a6e5b4;background:#21ad5829}.request-amount{text-align:right;white-space:nowrap}.request-amount b{color:var(--orange-2);font-size:12px;display:block}.request-amount span{color:#8fc5ff;margin-top:4px;font-size:11px;font-weight:900;display:block}.calculation-kind{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;display:flex}.calculation-kind span{color:#fff;font-size:18px;font-weight:950}.calculation-kind small{color:#8fc5ff;font-weight:800}.empty-requests{color:var(--muted);background:#121512;border-radius:10px;margin:14px 0;padding:12px;font-size:11px;line-height:1.6}.site-calc-button{color:#a9ceff;background:#2684ff1a;border:1px solid #2684ff66;border-radius:11px;width:100%;min-height:43px;margin-top:12px;font-size:12px;font-weight:800}.auto-source{color:#ffb36e;background:#ff8a281a;border-radius:5px;margin-bottom:8px;padding:3px 6px;font-size:10px;display:inline-block}.map-preview{background:#111923;border:1px solid #2684ff59;border-radius:16px;height:160px;margin-bottom:12px;position:relative;overflow:hidden}.map-grid{opacity:.22;background-image:linear-gradient(#65a9ff59 1px,#0000 1px),linear-gradient(90deg,#65a9ff59 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;transform:rotate(-8deg)scale(1.3)}.map-preview>strong,.map-preview>small{z-index:2;position:absolute;left:15px}.map-preview>strong{font-size:14px;bottom:32px}.map-preview>small{color:var(--muted);font-size:10px;bottom:15px}.map-pin{z-index:2;color:#ff6b4a;text-shadow:0 2px 8px #000;font-size:19px;position:absolute}.facility-actions button:disabled{opacity:.45;cursor:not-allowed}.osm-map{z-index:1;background:#111923;border:1px solid #2684ff66;border-radius:18px;width:100%;height:clamp(280px,48vh,460px);overflow:hidden}.map-help{justify-content:space-between;gap:10px;padding:9px 3px 13px;display:flex}.map-help strong{color:#cfe4ff;font-size:11px}.map-help span{color:var(--muted);text-align:right;font-size:10px}.map-register-form{border-color:#2684ff61;margin-top:12px}.coordinate-state{color:var(--muted);background:#101310;border-radius:10px;margin-top:12px;padding:10px;font-size:11px}.coordinate-state.selected{color:#a9ceff;background:#2684ff1a}.coordinates{color:#77b4ff;margin-top:6px;font-size:10px;display:block}.leaflet-control-attribution{font-size:9px!important}@media (width>=760px){.main{padding:34px 32px 110px}.quick-grid{grid-template-columns:repeat(4,1fr)}.quick-grid.unified{grid-template-columns:1fr 1fr}.quick-grid.unified.three-actions{grid-template-columns:repeat(3,1fr)}.quick-grid.unified.three-actions .primary{grid-column:auto}.quick-grid.unified.four-actions{grid-template-columns:repeat(4,1fr)}.quick-grid.unified.four-actions .primary{grid-column:auto}.quick-grid.unified.five-actions{grid-template-columns:repeat(3,1fr)}.quick-grid.unified.five-actions .primary,.quick-card.primary{grid-column:auto}.date-badge{display:block}.admin-grid,.work-site-list,.plan-list,.schedule-list{grid-template-columns:1fr 1fr}.form-wrap{grid-template-columns:1.15fr .85fr;align-items:start;gap:14px;display:grid}.result-card{position:sticky;top:92px}}@media print{@page{size:A4 portrait;margin:8mm}html,body{color:#111!important;background:#fff!important}.topbar,.bottom-nav,.no-print,.toast,.update-modal{display:none!important}.app-shell,.main,.calculator-page{max-width:none;min-height:0;margin:0;padding:0}.print-heading{border-bottom:3px solid #2684ff;justify-content:space-between;align-items:end;margin-bottom:18px;padding-bottom:12px;display:flex}.print-heading strong{font-size:24px}.print-heading span{color:#555;font-size:12px}.form-wrap{grid-template-columns:1fr;display:grid}.form-card,.result-card{color:#111;box-shadow:none;break-inside:avoid;border:1px solid #bbb;position:static;background:#fff!important}.field label,.result-label,.result-meta{color:#444}.field input,.field select{color:#111;appearance:none;background:#fff;border:1px solid #aaa}.result-number span{color:#1264cf}.area-result>strong{color:#111}.area-result{border-color:#bbb}.all-results>div{background:#fff;border-color:#bbb}.all-results span{color:#444}.all-results strong{color:#111}.print-details{margin:18px 0 0;display:block}.print-details div{border-top:1px solid #ddd;grid-template-columns:100px 1fr;padding:8px 0;display:grid}.print-details dt{color:#555}.print-details dd{margin:0;font-weight:700}.planning-page>.no-print,.records-screen>:not(.record-print-sheet){display:none!important}.record-print-sheet,.plan-print-pages{color:#111;font-family:Yu Gothic,Meiryo,sans-serif;display:block}.plan-print-page{box-sizing:border-box;break-after:page;page-break-after:always;background:#fff;width:100%;height:274mm;overflow:hidden}.plan-print-page:last-child{break-after:auto;page-break-after:auto}.record-print-page{width:calc(100% - .5mm);height:auto;min-height:0;overflow:visible}.record-print-page .print-plan-table{outline-offset:-1px;outline:1px solid #111;width:100%}.record-print-page .print-plan-table th:last-child,.record-print-page .print-plan-table td:last-child{border-right:1px solid #111}.record-print-page .print-plan-table tr:last-child>th,.record-print-page .print-plan-table tr:last-child>td{border-bottom:1px solid #111}.plan-print-page header{border:1.5px solid #111;grid-template-columns:1fr 2.2fr 1fr;align-items:center;min-height:18mm;display:grid}.plan-print-page header>*{margin:0;padding:3mm}.plan-print-page header h1{text-align:center;border-left:1px solid #111;border-right:1px solid #111;font-size:19pt}.plan-print-page header span,.plan-print-page header div{font-size:8pt;line-height:1.6}.print-plan-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:8.5pt}.print-plan-table th,.print-plan-table td{text-align:left;vertical-align:middle;overflow-wrap:anywhere;border:1px solid #111;height:8mm;padding:1.5mm 2mm}.print-plan-table th{width:16%;font-weight:700;background:#e8e8e8!important}.print-plan-table .work-content-row td,.print-plan-table .work-content-row th{vertical-align:top;white-space:pre-wrap;height:21mm}.plan-print-page>h2{margin:2.5mm 0 1mm;font-size:9pt}.print-plan-table.compact th,.print-plan-table.compact td{height:6.5mm;padding:1mm 1.5mm;font-size:7.5pt}.timeline-print-page header{margin-bottom:4mm}.timeline-print-table th:first-child,.timeline-print-table td:first-child{text-align:center;width:24%}.timeline-print-table th,.timeline-print-table td{height:8.2mm;font-size:9pt}.timeline-print-notes{border:1px solid #111;min-height:18mm;margin-top:3mm;padding:2mm;font-size:8pt}.timeline-print-notes p{white-space:pre-wrap;margin:2mm 0 0}}.confirm-request{color:#ff9b9b;justify-content:flex-end;align-items:center;gap:4px;margin-top:6px;font-size:9px;display:flex}.confirm-request:has(input:checked){color:#8ee1ad}.confirm-request input{accent-color:#41bd71;width:14px;height:14px}.site-search-results{border:1px solid var(--line);background:#0d110e;border-radius:10px;gap:4px;margin-top:5px;padding:5px;display:grid}.site-search-results button{color:var(--ink);text-align:left;background:#171d18;border:0;border-radius:7px;padding:8px;font-size:11px}.site-search-results small{color:var(--muted);margin-top:3px;display:block}.dump-dispatch-button{color:#ffb16f;background:#ff8a281f;border:1px solid #ff8a2880;border-radius:12px;width:100%;min-height:48px;margin-top:12px;font-weight:900}.dump-dispatch-panel{background:var(--panel);border:1px solid #ff8a2859;border-radius:16px;margin-top:15px;padding:14px}.dump-row{border:1px solid var(--line);background:#111511;border-radius:12px;margin-top:9px;padding:12px}.dump-row header{justify-content:space-between;margin-bottom:9px;display:flex}.dump-row header b{color:#ff5e64}.dump-row>.line{width:100%;margin-top:8px}.nearby-facility-button{color:#8fc5ff;background:0 0;border:1px dashed;border-radius:9px;width:100%;min-height:38px;margin-top:8px;font-weight:800}.facility-plan-box.waste .nearby-facility-button{color:#8ee1ad}.facility-distance-note{color:#a9ceff;background:#101610;border-radius:9px;margin-top:9px;padding:9px;font-size:11px}.mix-schedule-entry{grid-template-columns:110px 100px 1fr;gap:7px;margin-bottom:7px;display:grid}.mix-schedule-entry input{border:1px solid var(--line);min-width:0;min-height:43px;color:var(--ink);background:#0e1311;border-radius:9px;padding:0 10px}.plan-search{gap:4px;margin-bottom:12px;display:grid}.plan-search>input{border:1px solid var(--line);background:var(--panel);min-height:50px;color:var(--ink);border-radius:12px;padding:0 13px}.plan-search>button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#151a16;border-radius:9px;padding:9px 12px}.plan-search>button small{color:var(--muted);margin-top:3px;display:block}.plan-control-row{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px;display:grid}.plan-control-row button{border:1px solid var(--line);background:var(--panel-2);min-height:44px;color:var(--ink);border-radius:10px;font-weight:800}.plan-control-row .draft{color:#ffae69;border-color:#ffae69}.planning-share-row{grid-template-columns:repeat(3,1fr)}.planning-share-row .email{background:#5575bd}.plan-preview-modal{z-index:100;background:#000000d1;padding:18px;position:fixed;inset:0;overflow:auto}.plan-preview-modal>section{color:#111;background:#fff;border-radius:18px;width:min(100%,720px);margin:20px auto;padding:20px}.plan-preview-modal>section>button{float:right;padding:8px 13px}.plan-preview-modal pre{white-space:pre-wrap;font-family:inherit;line-height:1.7}.record-filters{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px;display:grid}.record-filters select{border:1px solid var(--line);background:var(--panel);min-width:0;min-height:44px;color:var(--ink);border-radius:10px;padding:0 8px}.duplicate-warning{color:#ffb0b0;background:#ff6b6b14;border:1px solid #ff6b6b66;border-radius:10px;gap:4px;margin-top:10px;padding:10px;font-size:11px;display:grid}.location-stats{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px;display:grid}.location-stats div{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:9px;padding:8px 4px}.location-stats b,.location-stats span{display:block}.location-stats b{color:#8fc5ff;font-size:16px}.location-stats span{color:var(--muted);margin-top:3px;font-size:8px}.region-counts{flex-wrap:wrap;gap:5px;margin-bottom:11px;display:flex}.region-counts span{color:var(--muted);background:#171c18;border-radius:99px;padding:5px 7px;font-size:9px}.delete-location{color:#ff8e93!important}.timeline-toggle.mix{background:#ff8a2814;border-color:#ff8a2880}.timeline-toggle.mix b{background:#ff8a28}.timeline-toggle.mix small{color:#ffb16f}.mix-dispatch-editor{border-color:#ff8a2859}.create-dispatch-button{color:#fff;background:#ff8a28;border:0;border-radius:10px;width:100%;min-height:44px;margin:10px 0;font-weight:900}.plan-mix-dump-row{border:1px solid var(--line);background:#0e120f;border-radius:11px;margin-top:9px;padding:11px}.plan-mix-dump-row header{justify-content:space-between;margin-bottom:9px;display:flex}.plan-mix-dump-row header b{color:#ff5e64}.mix-line-button{color:#071b0e;background:#06c755;border:0;border-radius:9px;width:100%;min-height:42px;margin-top:8px;font-weight:900}.address-geocode-state{color:var(--muted);background:#101510;border-radius:9px;margin-top:9px;padding:9px 11px;font-size:10px}.address-geocode-state.searching{color:#ffcf83}.address-geocode-state.found{color:#8ee1ad;background:#41bd7114}.address-geocode-state.not-found{color:#ff9b9b;background:#ff6b6b14}.daishin-map-pin-wrap{background:0 0!important;border:0!important}.daishin-map-pin{background:#e93843;border:3px solid #fff;border-radius:50% 50% 50% 0;width:30px;height:30px;display:block;position:relative;transform:rotate(-45deg);box-shadow:0 3px 9px #00000073}.daishin-map-pin i{background:#fff;border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=700px){.mix-schedule-entry{grid-template-columns:96px 1fr}.mix-schedule-entry input:last-child{grid-column:1/-1}}.photo-button{box-shadow:0 12px 28px #a719543d;color:#fff7fb!important;background:linear-gradient(135deg,#e74670,#a71954)!important;border-color:#0000!important}.photo-mode-switch{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:13px;padding:5px;display:grid}.photo-mode-switch button{min-height:49px;color:var(--muted);background:0 0;border:0;border-radius:10px;font-weight:900}.photo-mode-switch button.active{color:#fff;background:#2d8b58}.photo-mode-switch span{background:#ffffff26;border-radius:99px;margin-left:5px;padding:2px 6px}.camera-input{display:none}.photo-connectivity{color:#8ee1ad;background:#41bd711a;border-radius:99px;width:max-content;margin:-5px 0 10px auto;padding:5px 9px;font-size:9px;font-weight:800}.photo-connectivity[data-online=false]{color:#ffc36c;background:#ffb5471a}.photo-save-settings{border:1px solid var(--line);background:#111713;border-radius:12px;gap:8px;margin-top:13px;padding:12px;display:grid}.photo-save-settings strong{font-size:12px}.photo-save-settings label{color:#dce2dc;align-items:center;gap:8px;font-size:11px;display:flex}.photo-save-settings input{accent-color:#41bd71}.camera-launch-panel{text-align:center;background:linear-gradient(145deg,#41bd711f,#41bd7108);border:1px solid #41bd7159;border-radius:15px;gap:8px;margin-top:14px;padding:18px;display:grid}.camera-launch-panel b{font-size:15px}.camera-launch-panel p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.camera-launch-button{color:#fff;background:#2d8b58;border:0;border-radius:12px;min-height:54px;font-size:15px;font-weight:950}.live-camera-shell{margin-top:14px}.live-camera-stage{aspect-ratio:3/4;touch-action:none;background:#050706;border:1px solid #ffffff38;border-radius:16px;width:100%;position:relative;overflow:hidden}.live-camera-stage video{object-fit:cover;width:100%;height:100%;transform:translateZ(0)}.camera-loading{color:#d7ded8;text-align:center;background:#080c09;place-items:center;padding:24px;font-size:12px;line-height:1.7;display:grid;position:absolute;inset:0}.live-blackboard{z-index:3;aspect-ratio:1/.68;color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:#07372af5;border:2px solid #fff;position:absolute;overflow:hidden;box-shadow:0 4px 15px #00000073,inset 0 0 0 1px #0006}.live-blackboard:active{cursor:grabbing}.live-blackboard header{border-bottom:1px solid #ffffffd9;justify-content:space-between;align-items:center;height:17%;padding:0 3%;font-size:clamp(6px,2.3vw,13px);display:flex}.live-blackboard dl{grid-template-columns:27% 73%;height:83%;margin:0;font-size:clamp(5px,1.75vw,10px);line-height:1;display:grid}.live-blackboard dt,.live-blackboard dd{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff8c;align-items:center;min-width:0;margin:0;padding:0 5%;display:flex;overflow:hidden}.live-blackboard dt{color:#d5f5e7;border-right:1px solid #ffffff8c;font-weight:800}.live-blackboard dd{padding-left:4%}.live-blackboard i{color:#ffffffb3;font-size:9px;font-style:normal;position:absolute;bottom:1px;right:2px}.camera-hint{color:#9ca59e;text-align:center;margin:7px 2px 0;font-size:9px}.camera-error{color:#ffb4b4;background:#ff6b6b14;border:1px solid #ff6b6b66;border-radius:10px;gap:8px;margin-top:9px;padding:11px;font-size:10px;line-height:1.55;display:grid}.camera-error button{color:#fff;background:#d94b52;border:0;border-radius:8px;min-height:38px;font-weight:800}.camera-tools{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:9px;display:grid}.camera-tools button{border:1px solid var(--line);color:#e7ece8;background:#151b16;border-radius:10px;min-height:42px;padding:5px;font-size:9px;font-weight:800}.blackboard-adjustments{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.blackboard-adjustments label{color:#bdc8c0;gap:4px;font-size:10px;font-weight:800;display:grid}.blackboard-adjustments input,.blackboard-adjustments select{width:100%;min-height:38px}.camera-actions{grid-template-columns:1fr 82px 1fr;align-items:center;gap:12px;margin-top:12px;display:grid}.camera-actions>button:not(.camera-shutter){border:1px solid var(--line);color:#e7ece8;background:#151b16;border-radius:11px;min-height:46px;font-size:10px;font-weight:800}.camera-shutter{background:0 0;border:3px solid #fff;border-radius:50%;width:74px;height:74px;margin:auto;padding:6px}.camera-shutter span{background:#fff;border-radius:50%;width:100%;height:100%;display:block;box-shadow:0 0 0 1px #00000040}.camera-shutter:disabled{opacity:.45}.camera-shutter:not(:disabled):active span{transform:scale(.9)}.photo-save-note{color:var(--muted);margin:10px 2px 0;font-size:10px;line-height:1.6}.photo-progress{border:1px solid var(--line);background:var(--panel);border-radius:15px;margin-top:14px;padding:14px}.photo-progress h2{margin:0 0 10px;font-size:14px}.photo-progress>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.photo-progress span{color:var(--muted);background:#101511;border-radius:10px;padding:10px;font-size:10px}.photo-progress b{color:#fff;margin-top:4px;font-size:22px;display:block}.photo-filters{grid-template-columns:1fr 1fr auto;gap:7px;margin-bottom:12px;display:grid}.photo-filters select,.photo-filters button{border:1px solid var(--line);background:var(--panel);min-width:0;min-height:44px;color:var(--ink);border-radius:10px;padding:0 9px;font-weight:800}.photo-filters button{color:#fff;background:#d9363e;border:0}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.photo-card{border:1px solid var(--line);background:var(--panel);border-radius:14px;overflow:hidden}.photo-card>img{aspect-ratio:4/3;object-fit:cover;background:#090c0a;width:100%}.photo-card-body>div:last-child{flex-wrap:wrap;gap:6px;display:flex}.photo-card-body>div:last-child a{border:1px solid var(--line);min-height:36px;color:inherit;border-radius:9px;justify-content:center;align-items:center;padding:7px 10px;font-size:10px;font-weight:800;text-decoration:none;display:inline-flex}.photo-card-body{padding:11px}.photo-tags{justify-content:space-between;align-items:center;gap:5px;display:flex}.photo-tags span,.photo-tags b{border-radius:99px;padding:4px 6px;font-size:8px}.photo-tags span{color:#a9ceff;background:#182019}.photo-tags b{color:#8ee1ad;background:#41bd7126}.photo-card h3{margin:9px 0 3px;font-size:12px}.photo-card p{color:#d3d8d2;margin:0;font-size:10px}.photo-card small{color:var(--muted);margin-top:7px;font-size:8px;display:block}.photo-card em{color:#8ee1ad;margin-top:7px;font-size:8px;font-style:normal;display:inline-block}.photo-card-body>div:last-child{grid-template-columns:1fr auto;gap:6px;margin-top:9px;display:grid}.photo-card-body button{border:1px solid var(--line);min-height:36px;color:var(--ink);background:#151b16;border-radius:8px;font-size:9px;font-weight:800}.photo-card-body button.danger{color:#ff9b9b}.photo-print-sheet{display:none}@media (width<=560px){.photo-grid{grid-template-columns:1fr}.photo-filters{grid-template-columns:1fr 1fr}.photo-filters button{grid-column:1/-1}.photo-metadata-grid{grid-template-columns:1fr 1fr}.live-camera-stage{max-height:72dvh;margin-inline:auto}.camera-actions{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0e0be6;border-radius:14px;padding:8px;position:sticky;bottom:64px}}@media (orientation:landscape) and (height<=650px){.live-camera-stage{aspect-ratio:4/3;max-height:72dvh}.camera-actions{position:static}.photo-metadata-grid{grid-template-columns:repeat(2,1fr)}}@media print{.photo-screen>:not(.photo-print-sheet){display:none!important}.photo-print-sheet{color:#111;background:#fff;font-family:Yu Gothic,Meiryo,sans-serif;display:block}.photo-print-sheet>header{border-bottom:2px solid #111;justify-content:space-between;align-items:end;padding-bottom:4mm;display:flex}.photo-print-sheet>header h1{margin:0;font-size:20pt}.photo-print-sheet>header p{margin:0;font-size:8pt}.photo-print-sheet>section{break-inside:avoid;border-bottom:1px solid #888;grid-template-columns:58% 42%;min-height:82mm;padding:5mm 0;display:grid}.photo-print-sheet img{object-fit:contain;background:#eee;width:100%;height:72mm}.photo-print-sheet table{border-collapse:collapse;width:100%;font-size:8pt}.photo-print-sheet th,.photo-print-sheet td{text-align:left;vertical-align:top;border:1px solid #444;padding:2mm}.photo-print-sheet th{background:#eee;width:29%}}.photo-filters button:disabled{opacity:.45;cursor:not-allowed}@media print{body{background:#fff!important}.topbar,.bottom-nav,.toast,.update-modal{display:none!important}.main,.app-shell{background:#fff!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}@page{size:A4 portrait;margin:10mm}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
